Cygwin なんでも掲示板

一覧最新記事過去一覧 | 検索FAQアンテナHOME
(新規投稿・発言はできません)


スレッド

└◇210:
bashのコマンドラインで日本語入力するには? [iotsuka] 02/22 11:52

 └◇222:Re:bashのコマンドラインで日本語入力するには? [樋口] 02/27
  └◇241:Re[2]:bashのコマンドラインで日本語入力するには? [坂本] 03/02
   └◇243:Re[3]:bashのコマンドラインで日本語入力するには? [樋口] 03/02
    ├◇244:Re[4]:bashのコマンドラインで日本語入力するには? [樋口] 03/02
    └◇245:Re[4]:bashのコマンドラインで日本語入力するには? [坂本] 03/02
     ├◇246:Re[5]:bashのコマンドラインで日本語入力するには? [坂本] 03/02
     ├◇247:Re[5]:bashのコマンドラインで日本語入力するには? [通りすが] 03/02
     └◇248:Re[5]:bashのコマンドラインで日本語入力するには? [樋口] 03/02
      └◇249:Re[6]:bashのコマンドラインで日本語入力するには? [坂本] 03/02 <


210● bashのコマンドラインで日本語入力するには?[ iotsuka ] 2002 02/22 11:52
bashのコマンドラインで日本語入力するにはどうすればよいのでしょうか。
lessなどの表示はパッチをあてて日本語表示されます。
ls -N で日本語のファイル名も表示されます。
しかし
grepなどで日本語を使おうとするとだめです。
sedなんかでは,いちいちスクリプトファイルを作って
sed -f hoge.sed hogehoge
とかやっている始末です。

もうひとつ。
windows2000でlessをすると画面が流れてしまいます。
スクロールバーでさかのぼることは可能なんですが,
やはり不便です。
どうすればよいのでしょうか?
スレッド一覧


222● Re:bashのコマンドラインで日本語入力するには?[ 樋口 ] 2002 02/27 06:21
>bashのコマンドラインで日本語入力するにはどうすればよいのでしょうか。

~/.inputrcに

set convert-meta off
set meta-flag on
set output-meta on

と書いておけば、とりあえず表示は化けなくなります。

ただしBSで2バイト系の文字を消すと1バイトずつしか消えません。これは
bash(というか内部で使用しているreadline)が2バイト系コードの行編集に
対応していない為で、私の所に置いてあるbash-jpのバイナリを使うとか、
同じ所に置いてあるパッチを使って自分でmakeするなどして、~/.inputrcに
(上記の内容に加えて)

set kanji-code sjis

を加えれば問題なく入力/表示できるようになるはずです。

ちなみにgrepも、Cygwin標準パッケージのgrepは日本語対応してないので、
日本語文字列を検索するような場合は、grep-2.4.2のmultibyte patchを
使ったり、jvim付属のjgrepを使ったりする必要があります。

# これらも一応私の所にバイナリ/ソース/パッチを置いてます

>windows2000でlessをすると画面が流れてしまいます。

こちらはちょっと分かりません。
手元では(Win2000ですが)問題なく動作していますが...

http://www2.raidway.ne.jp/%7Eyzone/

スレッド一覧


241● Re[2]:bashのコマンドラインで日本語入力するには?[ 坂本 ] 2002 03/02 02:27
初めまして、坂本と言います。
便乗質問させていただきます。

> ~/.inputrcに
>
> set convert-meta off
> set meta-flag on
> set output-meta on
>
> と書いておけば、とりあえず表示は化けなくなります。
>
> set kanji-code sjis
>
> を加えれば問題なく入力/表示できるようになるはずです。
環境はWin2Kです。
上記のとおり試してみましたが、日本語が通りません。
日本語を正常に扱う為には他に何が必要なのでしょうか?
リンク先を教えて頂けるのでも結構です。
宜しくお願い致します。

#ちなみにlessは流れずに表示できます。
スレッド一覧


243● Re[3]:bashのコマンドラインで日本語入力するには?[ 樋口 ] 2002 03/02 06:45
おかしいですね。それで行けるはずなんですが。
詳細がわからないのでちょっと質問責めになります。

1.Cygwin標準パッケージのbashを使ってますか?
 それともX on WindowsのRPMとかを使ってますか?

2.bash上で「echo $BASH_VERSION」するとどう表示されますか?

3.「cat ~/.inputrc」で前レスの.inputrcの内容が表示されますか?

4.「日本語」というのは「sjisな2バイト文字」ですよね?
 (euc-jpはそもそもコンソールがサポートしてません)

5.「通らない」というのは具体的にどうなるんでしょうか?
 (IME上での入力はできるが、ENTERしてもbashのコマンドライン
 に表示されない?)

6.私の所のbash-jpのバイナリを使っても駄目ですか?


5.も駄目って事はないと思うんですが(というかそれが駄目なら
私の所でも駄目なはずなので)

http://www2.raidway.ne.jp/%7Eyzone/dists/cygwin/bash/

スレッド一覧


244● Re[4]:bashのコマンドラインで日本語入力するには?[ 樋口 ] 2002 03/02 06:47
ぐは。書き直したのにミスってしまった...
削除だらけになるのもあれなのでコメントにします。

>5.も駄目って事はないと思うんですが

は6.の間違いです。
スレッド一覧


245● Re[4]:bashのコマンドラインで日本語入力するには?[ 坂本 ] 2002 03/02 09:29
> おかしいですね。それで行けるはずなんですが。
> 詳細がわからないのでちょっと質問責めになります。
宜しくお願いします。

> 1.Cygwin標準パッケージのbashを使ってますか?
>  それともX on WindowsのRPMとかを使ってますか?
bashを使っています。

> 2.bash上で「echo $BASH_VERSION」するとどう表示されますか?
echo $BASH_VERSIONと表示されます。

> 3.「cat ~/.inputrc」で前レスの.inputrcの内容が表示されますか?
はい。

KOCHAN:~$ cat .inputrc
set convert-meta off
set meta-flag on
set output-meta on
set kanji-code sjis

> 4.「日本語」というのは「sjisな2バイト文字」ですよね?
>  (euc-jpはそもそもコンソールがサポートしてません)
そうです。SJISです。

> 5.「通らない」というのは具体的にどうなるんでしょうか?
>  (IME上での入力はできるが、ENTERしてもbashのコマンドライン
>  に表示されない?)
たとえば、vi あああとして保存してlsとすると
コンソール上で ??????となってしまいます。
また、ls -Nでも同様です。

> 6.私の所のbash-jpのバイナリを使っても駄目ですか?
パッチの使い方が分らなかったので樋口さんの所から
bash-2.05a-jp-2.tar.bz2と jvim-2.1a-1.tar.bz2を
getしました。
解凍したもの全てを/usrに上書きコピーしました。
それが良くなかったのでしょうか?

宜しくご教授ください。
スレッド一覧


246● Re[5]:bashのコマンドラインで日本語入力するには?[ 坂本 ] 2002 03/02 09:31
坂本です。

> > 2.bash上で「echo $BASH_VERSION」するとどう表示されますか?
> echo $BASH_VERSIONと表示されます。
#手が滑りました^^;

KOCHAN:~/test$ echo $BASH_VERSION
2.05a.0(1)-release
と表示されます。
宜しくお願いします。
スレッド一覧


247● Re[5]:bashのコマンドラインで日本語入力するには?[ 通りすがり ] 2002 03/02 10:14
>たとえば、vi あああとして保存してlsとすると
>コンソール上で ??????となってしまいます。
>また、ls -Nでも同様です。

lsのコマンドを打つとき
Torisugari:~$ ls --show-control-chars
としてみたらどうでしょう?
スレッド一覧


248● Re[5]:bashのコマンドラインで日本語入力するには?[ 樋口 ] 2002 03/02 15:01
>たとえば、vi あああとして保存してlsとすると
>コンソール上で ??????となってしまいます。
>また、ls -Nでも同様です。

これはbashの問題ではなく、lsの方の問題です。
通りすがりさんも書かれてますが、~/.bashrcなどで
>alias ls='ls --show-control-chars'
などとしておくと良いでしょう。ちなみに私は
>alias ls='ls --show-control-chars --color -F'
としてます。

# 環境自体は特に問題無さそうです
スレッド一覧


249● Re[6]:bashのコマンドラインで日本語入力するには?[ 坂本 ] 2002 03/02 18:27
> これはbashの問題ではなく、lsの方の問題です。
> 通りすがりさんも書かれてますが、~/.bashrcなどで
> >alias ls='ls --show-control-chars'
> などとしておくと良いでしょう。ちなみに私は
> >alias ls='ls --show-control-chars --color -F'
> としてます。
>
> # 環境自体は特に問題無さそうです
試したところ無事表示されるようになりました。
これでやりたいことが出来るようになります。
本当にありがとう御座いました。
スレッド一覧

早田のホームページへ
CGIROOM