Q. kterm 上のコマンドプロンプトに日本語を入力すると化けてしまいます。
A. まず、[管理番号 358] および [管理番号 360] を参照してください。
kterm(1) の中では、通常ユーザからのコマンド入力を処理するプログラム
shell (シェル) が走っています。高機能 shell (tcsh, zsh, bash) は、
その編集機能のための入力と日本語文字入力とを区別できないので、これら
に日本語を入力したいときはしかるべき設定をしなければなりません。また、
現状では両者を完全に両立するのは難しいようです。
1. tcsh (ports/shells/tcsh), ja-tcsh (ports/japanese/tcsh),
4.1-RELEASE 以降では csh(1) (/bin/csh) は tcsh のハードリンク。
コンパイル時に漢字サポートを有効にしたものであれば、
% set dspmbyte=euc
とすれば日本語が入力できると思います。漢字コードについては `euc'
と `sjis' をサポートしています。漢字サポートが有効かどうかは、
シェル変数 version に `kan' 及び `dspm' を含むかどうかで判断でき
ますので、もしこれが無効になっている場合、tcsh をコンパイル仕直す
必要があります。
% echo $version
tcsh 6.09.01 (Astron) 2000-01-14 (i386-intel-FreeBSD)
options 8b,nls,dl,al,kan,sm,rh,color,dspm
^^^ ^^^^
また、シェル変数 nokanji が設定されていないことも条件です。
これでも日本語を通さないようなら stty(1) で 8bit を通すように
設定してみてください。
% stty cs8 -istrip -parenb
2. zsh (ports/shells/zsh), (ports/shells/zsh-devel)
デフォルトで EUC なら入力できます。
zsh-3.1.6 The Z shell (development version)
というバージョンで、一応編集もできています (ja-rxvt-2.7.2 上で確認)。
JIS X0208 な文字を一文字と認識してくれないので、そこに気を使う必要は
ありますが…。
3. bash 1.x (ports/shells/bash1), bash 2.x (ports/shells/bash2)
~/.inputrc に以下の記述を加えておけば EUC を扱えます。
set convert-meta off
set meta-flag on
set output-meta on
また非公式ですが、日本語パッチを適用することで、上記の設定なしに
日本語の行編集も行なえるようです。
グループ名: kterm