[ 2013/05/27 renewals ] ☆☆☆ かってに Linux3 (続き2) ☆☆☆
                        *** Freely Linux3. (it continues, 2) ***
     情報化社会の発展を図る活動として、
          ( 単にNPO協賛活動として )
                 無料で利用可能な、Linuxの普及の為、
★ Linuxで、インターネット等を、
    "MS-Windows" と同じ様に
          快適にする情報を無料提供。
410-0022 JAPAN by H.MATSUMOTO ( MACMIL.CO.JP (有)松商商会 ) 〒410-0022 マックミルズ 1F ( MACMIL.CO.JP MATSUSHOW CO.,LTD.)
当ページへの、多数のアクセスありがとう。 当ページは、多くの関連HPを参考に、Linux ( Fedora等) での利用や、 応用方法、開発等をし、結果・無料公開してます。 この場を借りて、各関連HP、各検索サイト、各開発者、多くの訪問者 等々へ Linuxの普及を願いつつ、感謝と、エールを送ります。 ・PC9801, DOS/V, Win9X, Win2000,WinXP, UNIX, Linux の各種ソフト作成、 メインは、C(言語)、現在は、Linux 30台位使用して、システム研究開発中。 27年近く(PC8001 〜 現在まで)、各種業務システム構築の現役者が提供。(松本英男) "マックミル" は、(有)松商商会 の登録商標です。( MACMIL.CO.JP )
●検索は、Ctrl +  F  で。( アルファベットは、半角文字で検索のこと )
* As for search,with Ctrl +  F .
*******<< ★ かってに Linux [ 開始 ] >>*******
Fedora 7 から、Fedora core7(FC7) でなく、Fedora 7(F-7) に名称変更
Fedora core4,5,6, Fedora 7,8 の、
ダウンロード、インストール、update の方法含む(構築)は、ここをクリック
Fedora 18 (F18, F-18)(FC18) Fedora 17 (F17, F-17)(FC17) Fedora 17 Preview (test3) Fedora 17 Beta (test2) Fedora 17 Alpha (test1) Fedora 16 (F16, F-16)(FC16) 2011/11/08 Fedora 15 (F15, F-15)(FC15) 2011/05/25 Fedora 14 (F14, F-14)(FC14) 2010/11/02 Fedora 13 (F13, F-13)(FC13) 2010/05/25 Fedora 12 (F12, F-12)(FC12) 2009/11/17 Fedora 11 (F11, F-11)(FC11) 2009/06/09 Fedora 10 (F10, F-10)(FC10) 2008/11/25 Fedora 9 (F9, F-9)(FC9) 2008/05/13 Fedora 8 (F8, F-8)(FC8) Fedora 7 (F7, F-7)(FC7) Fedora 7 test4 Fedora core6 (FC6)
Fedora core5, 6, Fedora 7, 8, 9 の検索で、
ここに来た場合は ( DVD.iso ダウンロード等)
"かってに Linux4" が、
Fedora core5, 6,
Fedora 7, 8, 9 の、インストール等の実践記録です。
Fedora core5, 6,
Fedora 7, 8, 9 の検索で、来た方は、
お手数ですが、ここをクリックして下さい。
Fedora 17 (F-17) リリース(release) スケジュール 2012/05/22 http://fedoraproject.org/wiki/Releases/17/Schedule
============================================================== *******<< ★ かってに KDEメニューエディタ [ 開始 ] >>*******
増加に伴い、ここの内容は、下記に引っ越ししました。
下記を、クリックして下さい。

★ かってに Linux17 (続き16)へ
* Freely Linux17. (it continues, 16) to

● コントロールセンター ● Kメニューを編集-KDEメニューエディタ /usr/bin/kmenuedit
*******<< ★ かってに KDEメニューエディタ [ 終り ] >>******* ============================================================== ============================================================== *******<< ★ かってに vsftp [ 開始 ] >>*******
● Fedora での、FTP サーバー設定

・ /etc/vsftpd/vsftpd.conf を、
下記のように、# を、はずし、
修正、又は、追加し、vsftpd の、
サービスを、再起動する。

# vi /etc/vsftpd/vsftpd.conf
anonymous_enable=NO  ←  anonymousユーザ(匿名ユーザ)のログイン禁止

ascii_upload_enable=YES  ←  アスキーモードでのアップロードを許可

ascii_download_enable=YES ←  アスキーモードでのダウンロードを許可

chroot_local_user=YES  ←  一般ユーザーによるホームディレクトリより
                           上層へのアクセス禁止 ( 最下行へ追加 )

use_localtime=YES  ←  タイムスタンプ時間を日本時間に変更(最下行へ追加)
・Fedora core2, core3, core4 の、 サービスで、vsftpd を設定すると "vsftpd dead but subsys locked" の、エラーがでる場合。
$ su
# del /var/lock/subsys/vsftpd
# /sbin/chkconfig vsftpd on ← FTPサーバー自動起動設定
# /etc/rc.d/init.d/vsftpd restart
( # /sbin/service vsftpd restart )
 ◆ 上記で、chroot_local_user=YES を指定したので、
ftp で、アクセスする、user の、ホームの下に、 etc を作成し、そこに、localtime を、コピーする、 ( これを作成しないと、UTC となり、JST ではないので、 タイムスタンプ時間が、日本時間表示とならない ) ( 下記の例だと、chroot により、 /home/testuser/etc が、 /etc として、使用される為 ) ftp で、アクセスする、user を、testuser とした場合の例。 ( testuser は、実際の、各自の、user 名がはいる ) $ su # mkdir /home/testuser/etc # cp -p /etc/localtime /home/testuser/etc # chown root:root /home/testuser/etc
*******<< ★ かってに vsftp [ 終り ] >>******* ============================================================== ============================================================== *******<< ★ かってに kterm [ 開始 ] >>*******
2007/04/28 に、kterm パッチを改定。
Fedora core 2, 3, 4, 5, 6,
Fedora 7, 8, Fedora 9 に対応OK
kernel 2.6.18
kernel 2.6.19
kernel 2.6.20
kernel 2.6.21
kernel 2.6.22
kernel 2.6.23
kernel 2.6.24
( "ktermpat.tar" から、
  "ktermfc7.tar" に、改定済み )
参考) MS-DOS 画面風端末は、kterm を使う。
いままで、kterm + kinput2 を使用していたが、
kterm でも、euc で、Anthy の、SCIM入力メソッド が、使用できる為、
現在、Fedora core4,5, core6, Fedora 7,8 で、kterm + Anthy を使用中
注) kterm を使用する場合、euc にしてあること
   ( /etc/sysconfig/i18n で、euc に設定 )
◆ kterm 設定 参照のこと
kterm + Anthy の、SCIM入力メソッド へは、下記を、クリック
漢字キー(「半角/全角 漢字」) 変換に設定
kterm + Anthy の、SCIM入力メソッド
及び、
kterm + kinput2 ( cannna ) IIIMF, IIim (iiim ) の、コーナー へ
kterm  -->  "MS-Windows" の、 コマンドプロンプトに相当。
   ・.bashrc の、設定で、( ここを、クリック )
     kterm 上で、dos コマンドと同じ様に、fc, copy, xcopy, del, move, dir が、
     使えるようになる。
● Fedora core6,
   Fedora 7, 8, Fedora 9 へ、kterm-6.2.0 のインストール方法
   2008/01/07 改定
2008/01/07 追加

前準備として、
libutempter-?????.rpm
libutempter-devel-?????.rpm
が、必要。
$ rpm -qa | grep libutempter
で、インストール確認し、 インストールされてなければ、先に、インストールしておく。 無いと、 make 時
/usr/bin/ld: cannot find -lutempter
の、エラー(error)となる。
参考) 内容表示
$ rpm -ql libutempter-1.1.4-3.fc6
/usr/lib/libutempter.so.0
/usr/lib/libutempter.so.1.1.4
/usr/libexec/utempter
/usr/libexec/utempter/utempter
/usr/share/doc/libutempter-1.1.4
/usr/share/doc/libutempter-1.1.4/COPYING
/usr/share/doc/libutempter-1.1.4/README

$ rpm -ql libutempter-devel-1.1.4-3.fc6
/usr/include/utempter.h
/usr/lib/libutempter.so
各Fedora の、ダウンロード
Fedora core6, Fedora 7 までの場合
libutempter-1.1.4-3.fc6.i386.rpm
libutempter-devel-1.1.4-3.fc6.i386.rpm

ダウンロード utem-fc6.rpm
ダウンロード後、
$ cp utem-fc6.rpm libutempter-1.1.4-3.fc6.i386.rpm
にて、使用のこと。

ダウンロード utemdfc6.rpm
ダウンロード後、
$ cp utemdfc6.rpm libutempter-devel-1.1.4-3.fc6.i386.rpm
にて、使用のこと。
Fedora 8 の場合
libutempter-1.1.4-4.fc8.i386.rpm
libutempter-devel-1.1.4-4.fc8.i386.rpm

ダウンロード utem-fc8.rpm
ダウンロード後、
$ cp utem-fc8.rpm libutempter-1.1.4-4.fc8.i386.rpm
にて、使用のこと。

ダウンロード utemdfc8.rpm
ダウンロード後、
$ cp utemdfc8.rpm libutempter-devel-1.1.4-4.fc8.i386.rpm
にて、使用のこと。
Fedora 9 の場合
libutempter-1.1.5-2.fc9.i386.rpm
libutempter-devel-1.1.5-2.fc9.i386.rpm

ダウンロード utem-fc9.rpm
ダウンロード後、
$ cp utem-fc9.rpm libutempter-1.1.5-2.fc9.i386.rpm
にて、使用のこと。

ダウンロード utemdfc9.rpm
ダウンロード後、
$ cp utemdfc9.rpm libutempter-devel-1.1.5-2.fc9.i386.rpm
にて、使用のこと。
インストールされてなければ、
上記の、該当する、libutempter を、ダウンロードし、
下記を、実施する。
( 当方の場合用 (ここは無視すること) cd /usr/local/src/kterm
必ず、別々に、rpm 実施のこと。
( 同時の場合、libutempter-1*.rpm のみ、インストールされてると、
  libutempter-devel-1*.rpm が、インストールされない為 )

$ su
# rpm -Uvh libutempter-1*.rpm
# rpm -Uvh libutempter-devel-1*.rpm
# exit
・ソースファイルの入手 ( kterm ダウンロード )
    ftp://ftp.x.org/contrib/applications/kterm-6.2.0.tar.gz
    ( ftp://ftp.sra.co.jp/pub/x11/kterm/kterm-6.2.0.tar.gz )
2008/01/07 追加
先に、上記の、libutempter 確認しておくこと
1) ソースファイルの展開 ( ここでは、/usr/local/src/kterm に、ダウンロードする例 )
$ su
# cd /usr/local/src
# mkdir kterm
# chmod 777 kterm
# exit
$ cd /usr/local/src/kterm
/usr/local/src/kterm に、上記 より、kterm-6.2.0.tar.gz を、ダウンロードする
上記のから、ダウンロードできない場合は、
kterm620.tar ( kterm-6.2.0.tar.gz ) 左記をクリックし、
/usr/local/src/kterm に、ダウンロードした後、
kterm-6.2.0.tar.gz に、リネームする。
( $ cd /usr/local/src/kterm )
$ mv kterm620.tar kterm-6.2.0.tar.gz
( $ cd /usr/local/src/kterm )
$ tar -zxvf kterm-6.2.0.tar.gz
$ chmod +w -R kterm-6.2.0
自分で、ソースの修正したい方の、参考
    ( すでに、修正済みを準備してあるので、ここは、参考まで )
http://www.asahi-net.or.jp/~wp7s-mrn/sap/kterm.html 参考 注) 以下は、kterm-6.2.0.fed7.patch にはいってますので、 処理しないで下さい。 1. main.c 83行目 #include の後ろに、以下を追加。 #include #include #include #include "data.h" #include "error.h" 2. scrollbar.c 327行目を修正 前)Char *realloc(), *calloc(); 後)Char *realloc() /** , *calloc() **/ ; 3. screen.c 49行目を修正 前)Char *calloc(), *malloc(), *realloc(); 後)extern Char /** *calloc(), *malloc(), **/ *realloc();
2007/04/28
Fedora core6, Fedora 7, 8, Fedora 9 へ、対応に、下記追加改定
4. button.c 44行目を修正 前)extern char *malloc(); 後)// extern char *malloc(); 5. charproc.c 105行目を修正 前)extern char *malloc(); 後)// extern char *malloc(); これだけだと、make install 後、kterm を立上げると、 kterm: no available ptys となり、動作しない。
・そこで、 kterm-6.2.0-37.src.rpm を、参考に、 kterm-6.2.0-utmp98.patch を、追加し、
上記の、以前の、パッチは、Feodora core6, Fedora 7,8 で、
エラーになるので、
kterm-6.2.0.fed7.patch 作成しました [ 2007/04/28 ] 左記をクリック。
( 下の方に、パッチの内容は表示してあります ) 注) 上記クリックで、ktermfc7.tar が、ダウンロードできます。[2007/04/28更新] "ktermfc7.tar" となってますが、ダウンロード後、 ( 圧縮してないので、解凍不要です。ダウンロード可能にする為 xxx.tar ) kterm-6.2.0.fed7.patch に、リネームして下さい。 ( main.c, screen.c, scrollbar.c, Imakefile が変更となる )
2) ソースの修正済みを、ダウンロードし、パッチをあてる。
/usr/local/src/kterm に、上記 より、ktermfc7.tar を、ダウンロードし、 kterm-6.2.0.fed7.patch に、リネームする。
( $ cd /usr/local/src/kterm )
$ mv ktermfc7.tar kterm-6.2.0.fed7.patch
$ patch -p0 < kterm-6.2.0.fed7.patch
3) make する
$ cd /usr/local/src/kterm/kterm-6.2.0
$ xmkmf -a; make
$ su
# make install; make install.man
# exit
4) kterm を実行してみる
$ kterm -xim -km euc -fg green -bg black -geometry 80x28 &
  [ Fedora core2,3,4 では、kinput2 -canna +kinput -xim になってる事 ]
( Fedora core5,6, Fedora 7,8 では、kterm が、
  kinput2 と、canna(かんな) は、不要で、
  日本語入力システムの、SCIM + Anthy で、漢字(euc)が使える )
参考)
◆ Fedora core5 以降で、kterm を、8x16 フォントで利用する方法
下記の、詳細は、上記を、クリックのこと。
$ ./kterm -xim -km euc \
  -fn -shinonome-*-medium-r-*--16-*-*-*-c-*-iso8859-1 \
  -fr -shinonome-*-medium-r-*--16-*-*-*-c-*-jisx0201.1976-0 \
  -fk -shinonome-*-medium-r-*--16-*-*-*-c-*-jisx0208.1990-0 -geometry 80x28 &
( 上記、4行は、本来は、1行のもの )
( -xim は、Fedora core4 の、kinput2 で、使用の為で、
  Fedora core5 以降 では、ダミー )
5) kterm の、設定へ 左記、クリック。
  ( 下記は、参考です)
kterm-6.2.0.new.patch [ 2004/06/26 ] 上記の、以前の、パッチは、Feodora core6, Fedora 7,8 で、 エラーになるので、下記を、作成しました [ 2007/04/28 ] ● kterm-6.2.0.fed7.patch [ 2007/04/28 ]
diff -ubBpEr kterm-6.2.0.orig/Imakefile kterm-6.2.0/Imakefile
--- kterm-6.2.0.orig/Imakefile	1996-07-12 14:01:04.000000000 +0900
+++ kterm-6.2.0/Imakefile	2007-04-28 17:52:05.000000000 +0900
@@ -24,6 +24,8 @@ XCOMM $Id: Imakefile,v 6.3 1996/07/12 05
          PTYLIB = -lpucc
 #endif
 
+ PTYLIB = -lutempter -lutil
+
  OSMAJORVERSION = OSMajorVersion
  OSMINORVERSION = OSMinorVersion
 
diff -ubBpEr kterm-6.2.0.orig/button.c kterm-6.2.0/button.c
--- kterm-6.2.0.orig/button.c	1996-07-02 14:01:46.000000000 +0900
+++ kterm-6.2.0/button.c	2007-04-28 17:52:20.000000000 +0900
@@ -41,7 +41,7 @@ button.c	Handles button events in the te
 #include "error.h"
 #include "menu.h"
 
-extern char *malloc();
+// extern char *malloc();
 
 extern void DoSecureKeyboard();
 
diff -ubBpEr kterm-6.2.0.orig/charproc.c kterm-6.2.0/charproc.c
--- kterm-6.2.0.orig/charproc.c	1996-07-12 14:01:36.000000000 +0900
+++ kterm-6.2.0/charproc.c	2007-04-28 17:52:34.000000000 +0900
@@ -102,7 +102,7 @@ extern jmp_buf VTend;
 extern XtAppContext app_con;
 extern Widget toplevel;
 extern void exit();
-extern char *malloc();
+// extern char *malloc();
 extern char *realloc();
 extern fd_set Select_mask;
 extern fd_set X_mask;
diff -ubBpEr kterm-6.2.0.orig/main.c kterm-6.2.0/main.c
--- kterm-6.2.0.orig/main.c	1996-07-12 14:01:38.000000000 +0900
+++ kterm-6.2.0/main.c	2007-04-28 17:52:05.000000000 +0900
@@ -81,6 +81,7 @@ SOFTWARE.
 #include <X11/Xlocale.h>
 #include <pwd.h>
 #include <ctype.h>
+#include <termios.h>
 #include "data.h"
 #include "error.h"
 #include "menu.h"
@@ -1677,11 +1678,12 @@ char *name;
  * has problems, we can re-enter this function and get another one.
  */
 
+int tty;
+
 get_pty (pty)
     int *pty;
 {
-#ifdef __osf__
-    int tty;
+#if defined(__osf__) || defined(linux)
     return (openpty(pty, &tty, ttydev, NULL, NULL));
 #endif
 #if defined(SYSV) && defined(i386) && !defined(SVR4)
@@ -2321,6 +2323,8 @@ spawn ()
 #endif	/* TIOCSWINSZ */
 #endif	/* sun */
 
+	addToUtmp(ttydev, NULL, screen->respond);
+
 	if (!am_slave) {
 #ifdef USE_HANDSHAKE
 	    if (pipe(pc_pipe) || pipe(cp_pipe))
@@ -2925,85 +2929,6 @@ spawn ()
 #endif
 #endif
 
-		(void) setutent ();
-		/* set up entry to search for */
-		ptyname = ttydev;
-#ifndef __sgi
-		if (PTYCHARLEN >= (int)strlen(ptyname))
-		    ptynameptr = ptyname;
-		else
-		    ptynameptr = ptyname + strlen(ptyname) - PTYCHARLEN;
-		(void) strncpy(utmp.ut_id, ptynameptr, sizeof (utmp.ut_id));
-#else
-		(void) strncpy(utmp.ut_id,ptyname + sizeof("/dev/tty")-1,
-			       sizeof (utmp.ut_id));
-
-#endif
-		utmp.ut_type = DEAD_PROCESS;
-
-		/* position to entry in utmp file */
-		(void) getutid(&utmp);
-
-		/* set up the new entry */
-		utmp.ut_type = USER_PROCESS;
-#ifndef linux
-		utmp.ut_exit.e_exit = 2;
-#endif
-		(void) strncpy(utmp.ut_user,
-			       (pw && pw->pw_name) ? pw->pw_name : "????",
-			       sizeof(utmp.ut_user));
-		    
-#ifndef __sgi
-		(void)strncpy(utmp.ut_id, ptynameptr, sizeof(utmp.ut_id));
-#else
-		(void) strncpy(utmp.ut_id,ptyname + sizeof("/dev/tty")-1,
-			       sizeof (utmp.ut_id));
-#endif
-		(void) strncpy (utmp.ut_line,
-			ptyname + strlen("/dev/"), sizeof (utmp.ut_line));
-
-#ifdef HAS_UTMP_UT_HOST
-		(void) strncpy(buf, DisplayString(screen->display),
-			       sizeof(buf));
-#ifndef linux
-	        {
-		    char *disfin = strrchr(buf, ':');
-		    if (disfin)
-			*disfin = '\0';
-		}
-#endif
-		(void) strncpy(utmp.ut_host, buf, sizeof(utmp.ut_host));
-#endif
-		(void) strncpy(utmp.ut_name, pw->pw_name, 
-			       sizeof(utmp.ut_name));
-
-		utmp.ut_pid = getpid();
-#ifdef SVR4
-		utmp.ut_session = getsid(0);
-		utmp.ut_xtime = time ((Time_t *) 0);
-		utmp.ut_tv.tv_usec = 0;
-#else
-		utmp.ut_time = time ((Time_t *) 0);
-#endif
-
-		/* write out the entry */
-		if (!resource.utmpInhibit)
-		    (void) pututline(&utmp);
-#ifdef WTMP
-#ifdef SVR4
-		if (term->misc.login_shell)
-		    updwtmpx(WTMPX_FILE, &utmp);
-#else
-		if (term->misc.login_shell &&
-		     (i = open(etc_wtmp, O_WRONLY|O_APPEND)) >= 0) {
-		    write(i, (char *)&utmp, sizeof(struct utmp));
-		    close(i);
-		}
-#endif
-#endif
-		/* close the file */
-		(void) endutent();
-
 #else	/* USE_SYSV_UTMP */
 		/* We can now get our ttyslot!  We can also set the initial
 		 * UTMP entry.
@@ -3418,39 +3343,7 @@ Exit(n)
 #endif /* USE_HANDSHAKE */
 	    ) {
 	    ptyname = ttydev;
-	    utmp.ut_type = USER_PROCESS;
-	    if (PTYCHARLEN >= (int)strlen(ptyname))
-		ptynameptr = ptyname;
-	    else
-		ptynameptr = ptyname + strlen(ptyname) - PTYCHARLEN;
-	    (void) strncpy(utmp.ut_id, ptynameptr, sizeof(utmp.ut_id));
-	    (void) setutent();
-	    utptr = getutid(&utmp);
-	    /* write it out only if it exists, and the pid's match */
-	    if (utptr && (utptr->ut_pid == screen->pid)) {
-		    utptr->ut_type = DEAD_PROCESS;
-#ifdef SVR4
-		    utmp.ut_session = getsid(0);
-		    utmp.ut_xtime = time ((Time_t *) 0);
-		    utmp.ut_tv.tv_usec = 0;
-#else
-		    utptr->ut_time = time((Time_t *) 0);
-#endif
-		    (void) pututline(utptr);
-#ifdef WTMP
-#ifdef SVR4
-		    updwtmpx(WTMPX_FILE, &utmp);
-#else
-		    /* set wtmp entry if wtmp file exists */
-		    if ((fd = open(etc_wtmp, O_WRONLY | O_APPEND)) >= 0) {
-		      i = write(fd, utptr, sizeof(utmp));
-		      i = close(fd);
-		    }
-#endif
-#endif
-
-	    }
-	    (void) endutent();
+	    removeFromUtmp();
 	}
 #else	/* not USE_SYSV_UTMP */
 	register int wfd;
diff -ubBpEr kterm-6.2.0.orig/screen.c kterm-6.2.0/screen.c
--- kterm-6.2.0.orig/screen.c	1996-06-23 17:00:26.000000000 +0900
+++ kterm-6.2.0/screen.c	2007-04-28 17:52:05.000000000 +0900
@@ -46,7 +46,7 @@
 #include <sys/ptem.h>
 #endif
 
-extern Char *calloc(), *malloc(), *realloc();
+extern Char /** *calloc(), *malloc(), **/ *realloc();
 extern void free();
 
 ScrnBuf Allocate (nrow, ncol, addr)
diff -ubBpEr kterm-6.2.0.orig/scrollbar.c kterm-6.2.0/scrollbar.c
--- kterm-6.2.0.orig/scrollbar.c	1996-07-12 14:01:39.000000000 +0900
+++ kterm-6.2.0/scrollbar.c	2007-04-28 17:52:05.000000000 +0900
@@ -324,7 +324,7 @@ ScrollBarOn (xw, init, doalloc)
 	register TScreen *screen = &xw->screen;
 	register int border = 2 * screen->border;
 	register int i;
-	Char *realloc(), *calloc();
+	Char *realloc() /** , *calloc() **/ ;
 
 	if(screen->scrollbar)
 		return;
● 参考) patch 関連コマンド使用例
$ bzcat aaa.patch.bz2 > aaa.patch
$ diff -c --recursive main.c new/main.c > aaa.patch
$ patch -p1 < aaa.patch
$ patch -p0 -d . < PATCH_FILE

-p オプションは差分作成時の相対ディレクトリを有効にします
 (-p がないと全てのファイルがカレントディレクトリにあると仮定されます)。

 -p の後ろの 0 は差分ファイルに記録されている
相対ディレクトリを全て有効にするという意味です。 

1、2 と増えていくと、記録された相対ディレクトリが頭から
1つづつ削られます 
(例 : -p1 だと usr/local/src => local/src、
      -p2 だと usr/local/src => src)。
この後は、
kterm [ コマンドプロンプトに相当 ] の、設定
を参照のこと。 ここを、クリック
*******<< ★ かってに kterm [ 終り ] >>******* ============================================================== ============================================================== *******<< ★ kterm の、設定 [ 開始 ] >>*******
● kterm の、設定
   ( kterm の、euc で、Anthy の、SCIM入力メソッド が、使用できる )
参考 1) MS-DOS 画面風端末は、kterm を使う。
kterm  -->  "MS-Windows" の、 コマンドプロンプトに相当。
   ・.bashrc の、設定で、( ここを、クリック )
     kterm 上で、dos コマンドと同じ様に、fc, copy, xcopy, del, move, dir が、
     使えるようになる。
kterm は、漢字入力で、kinput2 を使用する。
kinput2 を使うためには、
	*inputMethod: kinput2
を、リソースファイル( .Xresources や .Xdefaults )に
付け加える必要あり。( 下記に、設定載せてある )

そして "XMODIFIERS" 変数を "@im=kinput2" に設定。
XMODIFIERS="@im=kinput2"; export XMODIFIERS (shの場合)
[ setenv XMODIFIERS "@im=kinput2" (cshの場合) ]
下記設定( .Xdefaults と .Xresources )は、
● kterm と、kinput2 利用時の、設定
   ( .Xdefaults と .Xresources は、同じもの )
◆ .Xdefaults に、( 又は、~/.Xresources [ どちらも、同じものを作る ] ) $ vi ~/.Xdefaults ! 等幅フォント *VT100*fontList: -alias-fixed-medium-r-normal--16-* *VT100*boldFontList: -alias-fixed-bold-r-normal--16-* ! --16- は、k16 を、設定しないと、ank, kanji が、1:2に、ならない KTerm*KanjiFont: k16 $ cp ~/.Xdefaults ~/.Xresources ( cp --> .Xresources の方を使用するものも、ある為 ~/.Xresources に、同じものを、コピー ) を追加し、下記を実施。 $ xrdb ~/.Xresources ( これでダメなら、再ログインする ) $ kterm -xim -km euc -fg green -bg black -geometry 80x28 & [ kinput2 -canna +kinput -xim になってる事 ]
	注) Fedora の、場合、下記の設定にて、euc にしてあること
	# /etc/sysconfig/i18n を下記のように、euc にする
# LANG="eu_US.UTF-8"
# SUPPORTED="en_US.UTF-8:en_US:en"
# LANG="ja_JP.UTF-8"
# SUPPORTED="ja_JP.UTF-8:ja_JP:ja"
LANG="ja_JP.eucJP"
SUPPORTED="ja_JP.eucJP:ja_JP:ja"
SYSFONT="latarcyrheb-sun16"
2013/05/17 追加)
● CentOS 6.4 で kde 使用時は、/home/xxx/.dmrc に、
Language=ja_JP.utf8
や
Language=ja_JP.eucjp
が、書き込まれ、
# /etc/sysconfig/i18n の設定が、再立上げしても、
反映されないので、注意のこと。
# fc7 # vi /home/mac/.dmrc
[Desktop]
Session=kde
# fe16 fedora 16 # vi /home/mac/.dmrc
[Desktop]
Session=kde-plasma
# .dmrc.ce64 cp /usr/mac/.dmrc.ce64 /home/mac/.dmrc # vi /home/mac/.dmrc
[Desktop]
Session=kde
Language=ja_JP.utf8
### Language=ja_JP.eucjp
次に、.bashrc 設定を参照し、 dir, type 等、kterm 等で、使用可能にする。 参考として、"MS-Windows"の、dir /ad の様に、 次に、デイレクトリーのみ表示する、バッチファイルを参照。 jjjjjjjj +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 参考 2) 端末 konsole の、設定 ( 日本語表示用 ) konsole(端末) 画面に、フォーカスし、 マウスの、右クリックで、 設定で フォントを、選択し、 Gothic[Shinonome], 標準, 11 に、設定 ( Fedora core3, core4, core5 ) Fixed, 標準, 12 に、設定 ( RedHat 9.0 ) Gothic, 標準, 12 に、設定 ( Fedora core1 ) Monospace, 標準, 12 に、設定 ( Fedora core1 ) 上記の、どれか、又は、kterm を使用 ( 13 は、画面が、乱れる ) サイズを、選択し、 80 x 25 に、設定 設定の保存をする を、選択。 注) 一部漢字表示が、不完全なので、kterm が良い。
PATH は、.bashrc ではなく、.bash_profile に追記。
( .bash_profile は、ログイン時だけに実行される設定ファイル )

$ vi ~/.bash_profile
	PATH=$PATH:/home/myhome; export PATH
● Fedora core2, 3, 4, 5, 6, Fedora 7, 8 の場合、kterm が、ないので、
Fedora core1 の、/usr/X11R6/bin/kterm 
[ kterm-6.2.0-37.rpm ] を持ってくる。

    [ http://www.rpmfind.net/linux/RPM/ にも、Fedora Core1 用有 ]

・又は、kterm-6.2.0 ダウンロードで、パッチをあてて、使用する。
   ★ かってに kterm を参照のこと。
● Fedora core2, 3, 4, 5, 6, Fedora 7, 8 の場合 kterm での vi で、BS が、DEL になるので、 .vimrc に、次のように付け加える。 $ vi ~/.vimrc
set t_kD=Ctrl-V<DEL>
この後は、
kterm の、euc で、Anthy の、SCIM入力メソッド が、使用できるので、

下記、漢字キー(「半角/全角 漢字」) 変換に設定
を参照のこと。 ここを、クリック
kterm ダウンロード・インストール方法 (ここを、クリック)
*******<< ★ kterm の、設定 [ 終り ] >>******* ============================================================== ============================================================== *******<< ★ 漢字キー(「半角/全角 漢字」) 変換に設定 [ 開始 ] >>*******
kterm + Anthy の、SCIM入力メソッド
及び、
kterm + kinput2 ( cannna ) IIIMF, IIim (iiim ) の、コーナーです。

 ◆ Fedora core5,6, Fedora 7,8 の、
    Anthy の、SCIM ( 日本語入力システム ) で、
    ( いままで、kterm + kinput2 を使用していたが、
      kterm でも、euc で、Anthy の、SCIM入力メソッド が使用できる為、
      現在、Fedora core5, 6, Fedora 7,8 で、kterm + Anthy を使用中 )
Ctrl + Space
"半角/全角" キー
Shift + Space(半角(ANK)、全角の、スペース切替用の為、そのままにする)
上記、2つの方法で、日本語変換(漢字モード)の、オン/オフ を切替える。
設定 SCIM入力メソッドの設定 ( 漢字ツールバーの、SCIM を、右クリックでも可 ) フロントエンド 全体設定 キーボード配列 "日本語" を選択する。 ホットキー 開始終了 "Control+space,Zenkaku_Hankaku" を、 開始終了 "Control+space,Shift+space,Kanji" に変更する。 開始終了 "Control+space,Kanji" に変更する。 (Shift+space は、ANKスペース, 漢字スペース切替え用に付き、使用しない)
Ctrl + Space
"半角/全角" キー
Shift + Space(半角(ANK)、全角の、スペース切替用の為、そのままにする)
上記、2つの方法で、日本語変換(漢字モード)の、オン/オフ を切替える。

"SCIM入力メソッドの設定" で、設定する他に、下記でも、OK。
 ( 設定後、X-Windows を、再立上のこと )

$ vi $HOME/.scim/config  [ 当方用メモ scimconf.fed5 ]
変更(Shift + space は、半角(ANK)、全角の、スペース切替用の為、そのままにする)
/Hotkeys/FrontEnd/Trigger = Control+space,Shift+space,Kanji
/Hotkeys/FrontEnd/Trigger = Control+space,Kanji
入力モード順次切り替えに、無変換 ( Muhenkan ) の、追加
この項目は、Config に、無いので下記を、丸ごと追加
/IMEngine/Anthy/CircleInputModeKey = Control+comma,Control+less,Muhenkan
◆ Anthy SCIM の、設定の続き、( kterm の、euc で、使用可能 )
   及び、
   Fedora core5 (core6, Fedora 7,8 以降も同様) で、
   kterm を、8x16 の、フォントで、利用する。 へは、
"かってに Linux4" にある、
"Anthy の、SCIM入力メソッドの設定" へ 左記を、クリックして下さい。
● iBus ( Intelligent Input Bus for Linux / Unix OS )
Fedora 11 の、iBus ( ibus ) で、
漢字キー(「半角/全角 漢字」) 変換に設定
するには。
Fedora 11 にて、 メニュー → アプリケーション → 設定 → 入力メソッド から、 "一般" で、"キーボードショートカット" の、 "切り替え" の、右端の、"..." をクリック。 キーコード: の欄に、Kanji と、入力し、適用を選択する。
aaaaaaaaaakkkkkkkkkkkkk aaaaaaaaaakkkkkkkkkkkkk ● Fedora core2 入力メソッド切替
● canna が、立上がって無い時。
$ su
# /etc/rc.d/init.d/canna start
( # /etc/init.d/canna start )
# /sbin/chkconfig canna on
● Linux の、X-Window 上の、kinput2 で、 漢字キー(「半角/全角 漢字」 と表示されている) を 活かして日本語入力への切換えに使うよう設定する。 ( Shift + Space も、漢字 だけでも、可 ) ( ただし、kterm の設定は、どちらか、一方のみ )
# /bin/vi /etc/X11/Xmodmap
	keycode 49 = Kanji
を、追加。 ( /usr/X11R6/bin/xmodmap /etc/X11/Xmodmap ) ( /etc/X11/xinit/xinitrc-common:usermodmap=$HOME/.Xmodmap ) ( /etc/X11/xinit/xinitrc-common:sysmodmap=/etc/X11/Xmodmap )
# /bin/vi /etc/X11/Xmodmap
にて、追加の際、コメントに、
! extension
があれば、
! !!extension
に修正。
( Fedora core3 では、うまくいかない )
注) 上記で、ダメなら、下記を作成する。
$ /bin/vi $HOME/.Xmodmap [ 注) ドット + Xmodmap ]
	keycode 49 = Kanji

# /bin/vi /root/.Xmodmap [ 注) ドット + Xmodmap ]
	keycode 49 = Kanji
#/bin/vi /usr/X11R6/lib/X11/app-defaults/Kinput2
	!*ConversionStartKeys: \
	!	Shift<Key>space \n\
	!	Ctrl<Key>Kanji
	*ConversionStartKeys: \
		Shift<Key>space \n\
		<Key>Kanji	! Alt<Key>Kanji
を、修正追加の後、再立ち上げ。 <Key>Kanji --> 漢字 で、切替え。 注) ~/.Xresources 等に、上記を入れると、 Kinput2 ではなく、~/.Xresources 等が、有効となる。 以上で、Shift + Space か、漢字 で、 日本語入力への切換えができる。     注) 漢字入力システム kinput2 が、起動していない時、
$ su
# /usr/X11R6/bin/kinput2 -canna +kinput -xim &
	 ( 1. kinput2 の起動オプションに +kinput を付け加えて、
	      kinput2 プロト コルは使用しないようにする
	   2. kterm の起動オプションに -xim を付け加えて、
	      kterm が XIM プロトコルを使うようにする )
にて、起動のこと。 更に、必要に応じて、下記が必要。 ( bash )
# XMODIFIERS="@im=kinput2"; export XMODIFIERS
# LANG=ja_JP.eucJP
( csh の時、setenv XMODIFIERS @im=kinput2 )
● Canna のキー操作を ATOK風に
( $ cp /var/lib/canna/sample/just.canna $HOME/.canna )
( $ cp /var/lib/canna/just.canna $HOME/.canna [ Fedora の場合 ] )

$ cp /usr/share/canna/just.canna $HOME/.canna
                            [ Fedora core3, Fedora core4 の場合 ]

$ vi $HOME/.canna
	; (setq romkana-table "just.cbp") を、
	(setq romkana-table "default.cbp") にする。[ 小文字入力が、ダメな為 ]
・漢字モード以外で。
        Ctrl + a         -->  先頭の文字に移動
        Ctrl + e         -->  最後の文字に移動
・kinput2 で可。( iiimx では無効 )
        Ctrl + 無変換     -->  "あ連", "あ固", "ア固", "ア 固"
        Shift + 無変換    -->  "あ連", "A固", "A 固"
・以下 kinput2, iiimx で可。
        Insert            -->  記号入力モード
			       ( リストから選んだら、Enter )
        Ctrl + a         -->  先頭の文字に移動
    ◆ 入力した字種の変換
        Ctrl + u 又は F6 --> 全角ひらかな
        Ctrl + i 又は F7 --> 全角カタカナ
        Ctrl + o 又は F8 --> 半角
        Ctrl + p 又は F9 --> 全角英数
       又は、
         上記、4種を、ローテーション(rotation)する。

-------------------------------------------------------
参考)
・Fedora core4 の、iiimx 使用の時のみ ( kinput2 では無効 )
        Ctrl + Shift + Space
		Switch lang
			1. ja (CannaLE)
			2. en (default)
★ 上記の、$HOME/.canna を、編集し、 変換表示を、" あ固 " から、 "[あ固]" のように、 [ ] をつけると、見やすくなる。 ・オリジナルは、[ ] がない。
(defmode zenkaku-hiragana-mode " あ固 " romkana-table '(zenkaku hiragana kakutei) t)
(defmode zenkaku-katakana-mode " ア固 " romkana-table '(zenkaku katakana kakutei) t)
(defmode hankaku-katakana-mode " ア 固 " romkana-table '(hankaku katakana kakutei) t)
(defmode zenkaku-eisu-mode     " A固 " nil '(zenkaku kakutei) nil)
(defmode hankaku-eisu-mode     " A 固 " nil '(hankaku kakutei) nil)

(set-mode-display 'empty-mode            " あ連 ")
(set-mode-display 'yomi-mode             " あ連 ")
(set-mode-display 'henkan-nyuuryoku-mode " あ連 ")
(set-mode-display 'chikuji-yomi-mode     " あ自 ")
(set-mode-display 'chikuji-bunsetsu-mode " あ自 ")
・変換表示を、" あ固 " から、 "[あ固]" のように、 [ ] をつけると、見やすくなる。
(defmode zenkaku-hiragana-mode "[あ固]" romkana-table '(zenkaku hiragana kakutei) t)
(defmode zenkaku-katakana-mode "[ア固]" romkana-table '(zenkaku katakana kakutei) t)
(defmode hankaku-katakana-mode "[ア 固]" romkana-table '(hankaku katakana kakutei) t)
(defmode zenkaku-eisu-mode     "[A固]" nil '(zenkaku kakutei) nil)
(defmode hankaku-eisu-mode     "[A 固]" nil '(hankaku kakutei) nil)

(set-mode-display 'empty-mode            "[あ連]")
(set-mode-display 'yomi-mode             "[あ連]")
(set-mode-display 'henkan-nyuuryoku-mode "[あ連]")
(set-mode-display 'chikuji-yomi-mode     "[あ自]")
(set-mode-display 'chikuji-bunsetsu-mode "[あ自]")
・Mozilla Firefox 等で、上記が、有効にならない場合。 上記で、作成した .canna を下記の様に、 /etc/canna/default.canna へ、コピーする。
$ su
# cp -p $HOME/.canna /etc/canna/default.canna
● 参考) Canna 関連
★ Fedora core3 --> かんな Version 3.7p3

★ かんなマニュアル
http://www.glasscom.com/tone/linux/Japanese/canna.pdf

★ かんなでの全角スペース入力
    @ を2回連続入力すればいい

★ かんなでの「・」の入力
   「てん」といれて、スペースを押すと「・」が候補に出てきます。

★記号入力、コード入力、部首入力、単語登録、環境設定
   「Home」キーでメニューが出る。
    最後は、Ctrl + h キー、又は、BackSpace で復帰する。
● Fedora で、常時、EUC 漢字に設定するには
# vi /etc/sysconfig/i18n
# LANG="eu_US.UTF-8"
# SUPPORTED="en_US.UTF-8:en_US:en"
# LANG="ja_JP.UTF-8"
# SUPPORTED="ja_JP.UTF-8:ja_JP:ja"
LANG="ja_JP.eucJP"
SUPPORTED="ja_JP.eucJP:ja_JP:ja"
SYSFONT="latarcyrheb-sun16"
に、設定。 ◆ 更に、man コマンド用 も、下記の様に、EUC の設定にする。 # vi /etc/man.config
PAGER		/usr/bin/less -is
の箇所を、コメントにし、 下記のように、
# PAGER		/usr/bin/less -is
PAGER		/usr/bin/lv
と、変更追加する。
● 参考) Fedora core4 の場合の、IIIMF。
/usr/X11R6/lib/X11/xinit/xinput.d/iiimf
	XIM=iiimx
	XIM_PROGRAM=iiimx
	GTK_IM_MODULE=iiim
	gnome-im-settings-daemon >/dev/null
	#QT_IM_MODULE=iiimqcf

/usr/X11R6/lib/X11/xinit/xinitrc.d/xinput.sh
	[ -z "$XMODIFIERS" -a -n "$XIM" ] && XMODIFIERS="@im=$XIM"
/etc/X11/xinit/xinitrc.d/xinput ( 以前 )
( *.shという名前でないと実行しなくなった )
          |
          V
/etc/X11/xinit/xinitrc.d/xinput.sh
・上記により、 XMODIFIERS=@im=iiimx が、セットされる。 ・Fedora core4 で、 ◆ とりあえず、回避方法として、
$ su
# vi /etc/kde/kdm/Xsession
if [ "$1" != "default" -a "$1" != "custom" ]; then
を、
### if [ "$1" != "default" -a "$1" != "custom" ]; then
if [ "$1" != "default" -a "$1" != "custom" -a ! -x "$HOME/.Xclients" ]; then
に、変更する。
又は、
$ su
# vi /usr/X11R6/lib/X11/xinit/xinitrc.d/xinput.sh
###	[ -z "$XMODIFIERS" -a -n "$XIM" ] && XMODIFIERS="@im=$XIM"
	[ -z "$XMODIFIERS" -a -n "$XIM" ] && XMODIFIERS="@im=kinput2"
として、再立上し、
$ su
# /usr/X11R6/bin/kinput2 -canna +kinput -xim &
# exit
$ kterm -xim -km euc -fg green -bg black -geometry 80x28 &
で、Fedora core4 で、kterm で、漢字入力が使用できる。
参考) ● 画面コピー PrintScrnキー ( PrintScreen key ) --> スナップショット 又は メニュー --> グラフィックス --> Ksnapshot 又は $ /usr/bin/ksnapshot *******<< ★ 漢字キー(「半角/全角 漢字」) 変換に設定 [ 終り ] >>******* ============================================================== ============================================================== *******<< ★ .bashrc の、設定 [ 開始 ] >>******* ● .bashrc の、設定 $HOME/.bashrc, /root/.bashrc に、あるので、 下記の様に、追加する。
# .bashrc

# User specific aliases and functions

# Source global definitions
if [ -f /etc/bashrc ]; then
	. /etc/bashrc
fi

#=====<< ここから、下に記入 >>=====

# PATH は、.bashrc ではなく、.bash_profile に追記。

# alias vi='vim'
# /usr/bin/vim -> /bin/vi
alias vi='vi'

# clear: 画面クリア
alias cls='clear'

alias type='cat'
# alias fc='cmp'
alias fc='diff'
alias df='df -T'
alias copy='cp -p'
### alias xcopy='cp -iup'
alias xcopy='cp -up'
alias del='rm'
alias move='mv'
alias dir='ls --color=tty -o -d -q -a -t -r'
alias dirz='ls --color=tty -l -d -q -a -t -r -Z'
alias dir2='ls --color=tty -o -q -a -t -r'
alias dirad='/usr/bin/dirad.bat' ##### 下記、dirad.bat 参照
alias his='history'
◆ 1度登録した、alias(エイリアス)を、解除するには、
   unalias コマンドを利用
◆ "ls: オプションが違います -- 4" 等の、エラー
ファイル名に、"-" (マイナス) のついたもの、
例えば、"-4.jpg" 等が、あると、( C 等の、アプリで作られる )
ls * や、上記、alias で、登録した、
dir *  で、エラーがでる。( 下記、4 は、-4.jpg の、4 と思われる )
ls: オプションが違います -- 4
通常、-4.jpg 等は、作成できないが、C 等からは、可能な為。
参考) SELinux 現在のラベル
$ ls -alZ /home2
drwxrwxrwx  root     root     root:object_r:default_t          dai2
drwxrwxrwx  root     root     system_u:object_r:default_t      dvd
*******<< ★ .bashrc の、設定 [ 終り ] >>******* ============================================================== =====<< start dirad.bat >>====================================
参考)● <<< シェルスクリプト ( シェルプログラミング ) >>>

http://cyberam.dip.jp/linux_command/shellscript/shellscript_main.html
● "dirad.bat" の作成。
     "MS-Windows"の、dir /ad の様に、デイレクトリーのみ表示。
下記、内容の、dirad.bat を作成し、
# chomod 755 dirad.bat の後、 /usr/bin/ に、コピーした場合は、 上記の、.bashrc に、 alias dirad='/usr/bin/dirad.bat' と登録し、 $ dirad /home/ の様に使用。
$ vi dirad.bat
$ su
# chomod 755 dirad.bat
# cp -p dirad.bat /usr/bin/
#!/bin/bash
#  .ps20
# dirad.bat
# ver 2.2
# feb.23,2012
# nov.24,1993
# by H.MATSUMOTO ( macmil.co.jp )
#  .ps99

# for UNIX
# chmod +x dirad.bat

# usege: dirad.bat path
#	ex.  dirad.bat /home/

### env | grep LS_COLORS	( 出力に色をつける )
### ls --color=tty -l -d -q -a -t -r *


### <<< シェルスクリプト ( シェルプログラミング ) >>>
# http://cyberam.dip.jp/linux_command/shellscript/shellscript_main.html
#
#
# シェル変数の利用
#   変数名と値の間の "=" の前後にスペースを入れてはならない。
#   ( 変数に、代入する場合、u_name= $xxxx の様に、space を空けず、
#     下記の様に、u_name=$xxxx と、すること。)
#	u_name=$(/bin/uname -r)
#
#   変数を参照する場合は変数名の前に" $ "を付ける
#	echo $u_name
#	echo /lib/modules/$u_name/kernel/drivers/
#	echo /lib/modules/$(uname -r)/kernel/drivers/
#
# 特殊なシェル変数
#	$$	シェルスクリプトのプロセスID
#	$* 	全引数
#	$@ 	全引数(空白区切り)
#	$# 	引数の数
#	$0 	コマンド名
#	$1 	1番目の引数
#	$?	直前のコマンドの終了ステータス
#	$!  	最後に実行したバックグラウンドコマンドのPID
#
# 算術演算
#	シェルスクリプトでは算術演算にexprコマンドを使用
#	` ---> shift + @
# var1=100
# num1=`expr 10 + 30`
# num2=`expr $var1 - 30`
# num3=`expr $var1 \* 10`
# num4=`expr 2096 / $var1`
# num5=`expr 2096 % $var1`
# echo $num1 $num2 $num3 $num4 $num5
#
# 文字列
#	= 	等しい
#	!= 	等しくない
#	-z	ゼロである
#	-n	None ゼロでない
# 数字
#	-eq 	等しい (equal to)
#	-ne 	等しくない (not equal to)
#	-lt 	より小さい (less than)			A < B
#	-le 	以下 (less than and equal to)		A <= B
#	-gt 	より大きい (greater than)		A > B
#	-ge 	以上 (greater than and equal to)	A >= B
#
# その他
#	!	NOT
#	-a	AND
#	-o	OR
#
# ファイル
#	-b  	ブロックデバイスファイルであれば真
#	-c 	キャラクタデバイスファイルであれば真 (rawデバイスファイル真)
#	-d 	ディレクトリであれば真
#	-e 	ファイル存在すれば真
#	-f 	ファイルが普通のファイルなら真
#	-L 	シンボリックリンクファイルなら真
#	-r 	読み取り可能ファイルであれば真
#	-s 	ファイルサイズが0でなければ真
#	-w 	書き込み可能ファイルであれば真
#	-x 	ファイルが実行可能であれば真


# find $1 -name "*" -type d -maxdepth 1


if [ $# -eq 0 -o $# -gt 1 ]; then
	echo "Ver 2.20 Feb.23,2012 Copyleft 1984-2012 by macmil.co.jp"
 	echo "Usage: dirat.bat path"
 	echo "                    path   ->   ex. /home/    "

	exit 1
fi



for "file" in $1/*
do
	if [ -d "$file" ]; then
		ls -l -d -q -a "$file" | sed s?//?/?
	fi
done

exit $?		# $?  -->  直前のコマンドの終了ステータスを表します

# end dirad.bat
=====<< end dirad.bat >>==================================== ============================================================== *******<< ★ C(X-window)で、漢字入力プログラムを造る [ 開始 ] >>*******
● C で、X-Window 上の、漢字入力プログラムを造る方法。


・Linux XIM(漢字入力)(下記、修正ソフトを利用のこと)


・Linux XIM(漢字入力)サンプル xim?.c の、修正ソフト
 * +++++++++++++++++++++++++++++++++++++++++++++++++++
 * (http://home.catv.ne.jp/pp/ginoue/im/index.html)
 * にあったサンプルプログラムを Linux RedHatで
 * 動作するように修正を加えたもの。
 *
 * 主な修正は、
 * setlocale()のあとに、XSetLocaleModifiers("")を呼び出す点。
 * +++++++++++++++++++++++++++++++++++++++++++++++++++


・Linux XIM で、漢字入力する方法。
  上記、Linux XIM(漢字入力)サンプル xim3.c の、
  修正ソフトが、最適。
/*
 * <<< X11R6の、XIM >>>
 *
 * Xlibのレベルで日本語入力の初期設定等、必要な作業。 
 * ( 注.  日本語入力で、必要なものだけ、抜粋 )
 *
 * 1. ヘッダファイルを追加 
include <X11/Xlocale.h>
* * ++++++++++++++++++++++++++++++++++++ * X_LOCALEが定義されている場合 * setlocale()で_Xsetlocale()を * 呼ぶように#defineする * * X_LOCALEが定義されていない場合 * setlocale()そのものを呼ぼうとする * * という動作になります。 * この仕組みにより,システムの * Cライブラリにsetlocale()などの * 国際化関数群が含まれない場合に, * Xの国際化関数で代用するといったことが * 可能になっています。 * * 従来のLinuxシステムは, * libc5という国際化に対応していない * バージョンの * Cライブラリを使用してきました。 * * そこで,この機構を利用した国際化が * 行われてきました。 * * X_LOCALEが必要か * ディストリビューションで区別すれば, * * cc のフラグに -DX_LOCALE を * つける必要があります. * Slackware、RedHat(〜4.2)、 * Debian(bo/bo-jp)、Caldera OpenLinux * * cc のフラグに -DX_LOCALEが不要 * Debian(Hamm/Hamm-jp)、RedHat(5.0〜 ) * ++++++++++++++++++++++++++++++++++++ * * 2. main 関数の始めの部分を修正 *
setlocale(LC_CTYPE, ""); 
XSetLocaleModifiers ("");
* * * 3. XOpenIM() によるIM(Input Method)のオープン
X_im= XOpenIM(Dsp, NULL, NULL, NULL);
* * 4. XCreateIC() によるIC(Input Context)の作成
X_ic = XCreateIC(X_im, 
	XNInputStyle, XIMPreeditNothing | XIMStatusNothing,
	XNClientWindow, Win,
	NULL);
* によるIC(Input Context)の作成 * 他に、 *
X_ic = XCreateIC(X_im, 
	XNInputStyle, XIMPreeditPosition | XIMStatusNothing,
	XNClientWindow, Win,
	XNPreeditAttributes, X_ic_pedit_attrr,
	NULL);

X_ic = XCreateIC(X_im, 
	XNInputStyle, XIMPreeditPosition | XIMStatusArea,
	XNClientWindow, Win,
	XNPreeditAttributes, X_ic_pedit_attrr,
	XNStatusAttributes, status_attr,
	NULL);
* があるが、SpotLocation属性、FontSet属性を、 * 指定する必要有り。 * * ++++++++++++++++++++++++++++++++++++ * http://sanchi.appi.keio.ac.jp/~syl/XBUGS/report-XCreateIC.txt * * 仕様上は不要な属性をXCreateIC()で * 指定しなければならない * * ・症状 * XCreateIC()で入力スタイルが * Preedit PositionのICを生成する場合、 * SpotLocation属性と * FontSet属性を * 指定しない失敗する。また、Preedit Areaと * Status AreaでもFontSet属性の * 指定が必要になる。 * * Xlib(R6以降)の仕様では、 * これらの属性は指定しなくても良いことになっている * * XNInputStyle, XIMPreeditPosition | XIMStatusArea, * * ・回避策 * SpotLocation属性とFontSet属性を指定する。 * ++++++++++++++++++++++++++++++++++++ * * 5. XSelectInput() イベントマスクの設定
XSelectInput(Dsp, Win,
	ExposureMask | KeyPressMask | FocusChangeMask);
* * 6. XFilterEvent() によりイベントをXIMサーバに送る
if (XFilterEvent(&event, None) == True)
	{ 処理 }
* * 7. switch(event.type) によるフォーカスの通知
switch(event.type)
{
case FocusIn :
	XSetICFocus(X_ic);
	break;

case FocusOut :
	XUnsetICFocus(X_ic);
	break;
}
* * 8. 実行環境の設定で、
$ LANG=ja_JP.eucJP
$ export XMODIFIERS="@im=kinput2"
* ( .bashrc で、設定されてない時 ) * ( csh の時、setenv XMODIFIERS @im=kinput2 ) * * 等が、必要。 * * 9. 実行後、Shift + SPACEを入力すると * kinput2で、日本語入力。 *
-------------------------------------------------------
XCreateIC で、エラーがでる時の、参考。( 一部、抜粋 )

	X_ic = XCreateIC (X_im, 
		XNInputStyle, XIMPreeditPosition | XIMStatusNothing,
		XNPreeditAttributes, X_ic_pedit_attrr,
		XNClientWindow, Win,
		NULL);

	if (X_ic == NULL)
	{
	    /* 上記で、エラーがでる時の処理 */

	    X_ic = XCreateIC (X_im, 
		XNInputStyle, XIMPreeditNothing | XIMStatusNothing,
		XNClientWindow, Win,
		NULL);

	} /* if */


	if (X_ic == NULL)
	{
		printf("Error : XCreateIC() !\n");

		XCloseIM(X_im);

/* exit */
		exit (0);
	} /* if */
-------------------------------------------------------
* +++++++++++++++++++++++++++++++++++++++++++++++ * 以下、参考。 *
$ vi ~/.bashrc
* XMODIFIERS=@im=kinput2 ; export XMODIFIERS * ( csh の時、setenv XMODIFIERS @im=kinput2 ) *
● kterm と、kinput2 利用時の、設定
   ( .Xdefaults と .Xresources は、同じもの )
$ vi ~/.Xdefaults  ( .Xdefaults と .Xresources は、同じもの )
!  .ps20
! .Xresources
! .Xdefaults
! ver 1.5
! nov.14,2004
! dec.24,2000
! by H.MATSUMOTO ( macmil.co.jp )
!  .ps99

inputMethod: kinput2

XClipboard*International: True
XClipboard*inputMethod: kinput2
XClipboard*fontSet:\
-misc-fixed-medium-r-normal--14-130-75-75-c-70-iso8859-1,\
-misc-fixed-medium-r-normal--14-*-*-*-*-*-jisx0208.1983-0 



! <<< start for kterm >>>

! MS-Windows の、[Alter] + [漢字] と、同じ様に、
! /bin/vi /usr/X11R6/lib/X11/app-defaults/Kinput2 を、変更した時
!
!*VT100*translations:  #override \
!	Shift<Key>space:     begin-conversion(_JAPANESE_CONVERSION)
!*VT100*translations:  #override \
!	<Key>Kanji:     begin-conversion(_JAPANESE_CONVERSION)
KTerm*VT100*translations:  #override \
	<Key>Kanji:     begin-conversion(_JAPANESE_CONVERSION)

*VT100*background:black
*VT100*foreground:green

! 等幅フォント
*VT100*fontList: -alias-fixed-medium-r-normal--16-*
*VT100*boldFontList: -alias-fixed-bold-r-normal--16-*
! --16- は、k16 を、設定しないと、ank, kanji が、1:2に、ならない	
KTerm*KanjiFont: k16

! <<< end   for kterm >>>

! <<< start for iiimf >>>
!!! 変換開始キーを Ctrl-space から Shift-space に変更する

!!! *conversionOnKeys: Zenkaku_Hankaku <Shift>space

!!! *ConversionStartKeys: Shift<Key>space \n\
!!!	Alt<Key>Zenkaku_Hankaku \n\
!!!	Zenkaku_Hankaku    

*ConversionStartKeys: \
	Shift<Key>space \n\
	<Key>Kanji	! Alt<Key>Kanji

! <<< end   for iiimf >>>
$ cp ~/.Xdefaults ~/.Xresources ( cp --> デスクトップ環境に GNOME をご利用の場合、 $HOME/.Xdefaults が無効とされてしまう事がある為 ~/.Xresources に、同じものを、コピー )
*
参考) kinput2 -canna +kinput -xim & を、~/.Xclients に、追加する。
      ( /etc/kde/kdm/Xsession から、呼び出される )
上記を、~/.Xclients に、追加すると、立上時、自動で、実施される。
参考) kinput2 -canna +kinput -xim & を、~/.Xclients に、追加する。
      ( /etc/kde/kdm/Xsession から、呼び出される )
● Canna のキー操作を ATOK風に
( $ cp /var/lib/canna/sample/just.canna $HOME/.canna )
( $ cp /var/lib/canna/just.canna $HOME/.canna [ Fedora の場合 ] )

$ cp /usr/share/canna/just.canna $HOME/.canna
                            [ Fedora core3, Fedora core4 の場合 ]

$ vi $HOME/.canna
	; (setq romkana-table "just.cbp") を、
	(setq romkana-table "default.cbp") にする。[ 小文字入力が、ダメな為 ]
・漢字モード以外で。
        Ctrl + a         -->  先頭の文字に移動
        Ctrl + e         -->  最後の文字に移動
・kinput2 で可。( iiimx では無効 )
        Ctrl + 無変換     -->  "あ連", "あ固", "ア固", "ア 固"
        Shift + 無変換    -->  "あ連", "A固", "A 固"
・以下 kinput2, iiimx で可。
        Insert            -->  記号入力モード
			       ( リストから選んだら、Enter )
        Ctrl + a         -->  先頭の文字に移動
    ◆ 入力した字種の変換
        Ctrl + u 又は F6 --> 全角ひらかな
        Ctrl + i 又は F7 --> 全角カタカナ
        Ctrl + o 又は F8 --> 半角
        Ctrl + p 又は F9 --> 全角英数
       又は、
         上記、4種を、ローテーション(rotation)する。

-------------------------------------------------------
参考)
・Fedora core4 の、iiimx 使用の時のみ ( kinput2 では無効 )
        Ctrl + Shift + Space
		Switch lang
			1. ja (CannaLE)
			2. en (default)
★ 上記の、$HOME/.canna を、編集し、 変換表示を、" あ固 " から、 "[あ固]" のように、 [ ] をつけると、見やすくなる。 ・オリジナルは、[ ] がない。
(defmode zenkaku-hiragana-mode " あ固 " romkana-table '(zenkaku hiragana kakutei) t)
(defmode zenkaku-katakana-mode " ア固 " romkana-table '(zenkaku katakana kakutei) t)
(defmode hankaku-katakana-mode " ア 固 " romkana-table '(hankaku katakana kakutei) t)
(defmode zenkaku-eisu-mode     " A固 " nil '(zenkaku kakutei) nil)
(defmode hankaku-eisu-mode     " A 固 " nil '(hankaku kakutei) nil)

(set-mode-display 'empty-mode            " あ連 ")
(set-mode-display 'yomi-mode             " あ連 ")
(set-mode-display 'henkan-nyuuryoku-mode " あ連 ")
(set-mode-display 'chikuji-yomi-mode     " あ自 ")
(set-mode-display 'chikuji-bunsetsu-mode " あ自 ")
・変換表示を、" あ固 " から、 "[あ固]" のように、 [ ] をつけると、見やすくなる。
(defmode zenkaku-hiragana-mode "[あ固]" romkana-table '(zenkaku hiragana kakutei) t)
(defmode zenkaku-katakana-mode "[ア固]" romkana-table '(zenkaku katakana kakutei) t)
(defmode hankaku-katakana-mode "[ア 固]" romkana-table '(hankaku katakana kakutei) t)
(defmode zenkaku-eisu-mode     "[A固]" nil '(zenkaku kakutei) nil)
(defmode hankaku-eisu-mode     "[A 固]" nil '(hankaku kakutei) nil)

(set-mode-display 'empty-mode            "[あ連]")

$ vi ~/.Xclients #! /bin/bash # 漢字入力システム kinput2 の起動 if [ -x /usr/X11R6/bin/kinput2 ] ; then /usr/X11R6/bin/kinput2 -canna +kinput -xim & XMODIFIERS="@im=kinput2" export XMODIFIERS fi
*
$ xrdb -merge ~/.Xdefaults ( これでダメなら、再ログインする )
*
$ export XMODIFIERS="@im=kinput2"
* ( .bashrc で、設定されてない時 ) * ( csh の時、setenv XMODIFIERS @im=kinput2 ) * +++++++++++++++++++++++++++++++++++++++++++++++ */
*******<< ★ C(X-window)で、漢字入力プログラムを造る [ 終了 ] >>******* ==============================================================

★ かってに Linux2 (続き1)へ * Freely Linux2. (it continues, 1) to


★ かってに Linux4 (続き3)へ * Freely Linux4. (it continues, 3) to


★ かってに Linux5 (続き4)へ * Freely Linux5. (it continues, 4) to


★ かってに Linux6 (続き5)へ * Freely Linux6. (it continues, 5) to


★ かってに Linux7 (続き6)へ * Freely Linux7. (it continues, 6) to


★ かってに Linux8 (続き7)へ * Freely Linux8. (it continues, 7) to


★ かってに Linux9 (続き8)へ * Freely Linux9. (it continues, 8) to


★ かってに Linux10 (続き9)へ * Freely Linux10. (it continues, 9) to


★ かってに Linux11 (続き10)へ * Freely Linux11. (it continues, 10) to


★ かってに Linux12 (続き11)へ * Freely Linux12. (it continues, 11) to


★ かってに Linux13 (続き12)へ * Freely Linux13. (it continues, 12) to


★ かってに Linux14 (続き13)へ * Freely Linux14. (it continues, 13) to


★ かってに Linux15 (続き14)へ * Freely Linux15. (it continues, 14) to


★ かってに Linux16 (続き15)へ * Freely Linux16. (it continues, 15) to


★ かってに Linux17 (続き16)へ * Freely Linux17. (it continues, 16) to


★ かってに Linux18 (続き17)へ * Freely Linux18. (it continues, 17) to


★ かってに Linux19 (続き18)へ * Freely Linux19. (it continues, 18) to


★ かってに Linux20 (続き19)へ * Freely Linux20. (it continues, 19) to


★ かってに Linux21 (続き20)へ * Freely Linux21. (it continues, 20) to


★ かってに Linux22 (続き21)へ * Freely Linux22. (it continues, 21) to


★ かってに Linux23 (続き22)へ * Freely Linux23. (it continues, 22) to


★ かってに Linux24 (続き23)へ * Freely Linux24. (it continues, 23) to


★ かってに Linux25 (続き24)へ * Freely Linux25. (it continues, 24) to


★ かってに Linux26 (続き25)へ * Freely Linux26. (it continues, 25) to


★ かってに Linux27 (続き26)へ * Freely Linux27. (it continues, 26) to


★ かってに Linux28 (続き27)へ * Freely Linux28. (it continues, 27) to


★ かってに Linux29 (続き28)へ * Freely Linux29. (it continues, 28) to


★ かってに Linux30 (続き29)へ * Freely Linux30. (it continues, 29) to


★ かってに Linux31 (続き30)へ * Freely Linux31. (it continues, 30) to


★ かってに Linux32 (続き31)へ * Freely Linux32. (it continues, 31) to


★ かってに Linux33 (続き32)へ * Freely Linux33. (it continues, 32) to


★ かってに Linux34 (続き33)へ * Freely Linux34. (it continues, 33) to


★ かってに Linux35 (続き34)へ * Freely Linux35. (it continues, 34) to


★ かってに Linux36 (続き35)へ * Freely Linux36. (it continues, 35) to


★ かってに Linux37 (続き36)へ * Freely Linux37. (it continues, 36) to


★ かってに Linux38 (続き37)へ * Freely Linux38. (it continues, 37) to


★ かってに Linux39 (続き38)へ * Freely Linux39. (it continues, 38) to


★ かってに Linux40 (続き39)へ * Freely Linux40. (it continues, 39) to


★ かってに Linux41 (続き40)へ * Freely Linux41. (it continues, 40) to


★ かってに Linux42 (続き41)へ * Freely Linux42. (it continues, 41) to


★ かってに Linux43 (続き42)へ * Freely Linux43. (it continues, 42) to


★ かってに Linux44 (続き43)へ * Freely Linux44. (it continues, 43) to


★ かってに Linux45 (続き44)へ * Freely Linux45. (it continues, 44) to


かってに Linuxヘ、戻る * Freely Linux. ( it returns )




● 本サイトに掲載されている情報は個人の責任において、
   使用のこと。
   利用により、問題が発生しても、
   当方は一切責任を負いかねます。 
   リンクは、自由に。

   The information carried by this site is set
   with individual responsibility. Use it.
   Even if a problem occurs by use We cannot take any responsibility.
   A link is free.

410-0022 JAPAN  by H.MATSUMOTO ( MACMIL.CO.JP  有限会社 松商商会 )
410-0022 JAPAN  by H.MATSUMOTO ( MACMIL.CO.JP  MATSUSHOW CO.,LTD.)
(C) 1998-2013 H.MATSUMOTO All Rights Reserved ( MACMIL.CO.JP )
新会社法施行(2006/05/01施行)後、有限会社 松商商会 は、
特例有限会社という、新会社法の、株式会社です。(商号は、有限会社 を継続)
資本金 2017/05 5千万円→1千万円に減資 創業 1983/05/20 法人設立 1984/09/29
★ ソフトダウンロードへ

topヘ、戻る