Solaris 10 の設定: 日本語を入出力する (2)

TeraTerm や PuTTY を利用して SSH 経由で Solaris 10 にログインする。
bash に対する日本語入出力は、>> Solaris 10 の設定: 日本語を入出力する << でできるようになったんだが、vi に対して日本語の入力が行えない。。。

そもそも論 Solaris 10 の vi は、多くの Linux ディストリビューションが実装している vim のような vi クローンではなく、UNIX 純正の vi であるため、日本語(マルチバイト)は入力できない。vim のインストールが必要だが、今回取り上げたい内容とは違うので、それはまた別の機会に。。。 ( ゚Д゚)マンドクセー

Solaris 10 の vim だけならまだしも、

Windows TeraTerm/PuTTY Solaris 10 Linux

の環境下で Linux 上の vim でも同じ現象が発生する。
もちろん、

Windows TeraTerm/PuTTY Linux

のように間に Solaris 10 をはさまず、直接接続した場合には、Linux 上の vim に対して日本語入力が行える。

$ cat << EOF > テスト文書
> これは、テストのための文書です。
> てすと
> テスト
> 手栖斗
> EOF
$ cat テスト文書
これは、テストのための文書です。
てすと
テスト
手栖斗
$ vi テスト文書

これは、テストのための文書です。
てすと
テスト
手栖斗
                  ← "これは、テストのための文書です。"を貼り付けたつもり、、、何も入力できない。
c^A&c^A^Yc^A(     ← "てすと"を貼り付けたつもり、、、文字化けしてる。
                  ← "テスト"を貼り付けたつもり、、、何も入力できない。
f       ^Kf f^W   ← "手栖斗"を貼り付けたつもり、、、文字化けしてる。

※1 貼り付けは、マウスで選択して、右クリックでやった。
※2 Solaris 10 経由の Linux でも若干の文字化け具合は違うが、ほぼ同様の結果が得られた。

・・・そして、悩みに悩んで丸2日間・・・ (´ー`)チラネーヨ

  1. $HOME/.profile の”stty istrip”行をコメントアウト、または削除する。

    $ vi $HOME/.profile

    --- $HOME/.profile.old
    +++ $HOME/.profile
    @@ -3,7 +3,7 @@
     # All rights reserved.
     #
     # ident        "@(#)local.profile      1.10    01/06/23 SMI"
    -stty istrip
    +#stty istrip
     PATH=/usr/bin:/usr/ucb:/etc:.
     LANG=ja_JP.UTF-8
     export PATH LANG
  2. $HOME/.profile を読み込みなおす。または、ログインしなおす。

    $ source $HOME/.profile

    とりあえずなら、”stty -istrip”を実行してもよい。

    $ stty -istrip

“stty istrip”ってなんスか? (´ー`)チラネーヨ

[-]istrip
入力文字の高位ビット(8 番目のビット)をクリアする。

これじゃ、英数文字しか表現できんわな。 ( ゚Д゚) ムホー

参考文書

タイトルとURLをコピーしました