[mew-win32 04340] Re: 全文検索ができない

Hideyuki SHIRAI ( 白井秀行 ) shirai at example.com
2006年 1月 17日 (火) 15:59:49 JST


白井です。

From: Yasushi <paf03637 at example.com> さん曰く
Subject: [mew-win32 04339] Re: 全文検索ができない
Message-ID: <20060117.151837.01367481.paf03637 at example.com>
Date: Tue, 17 Jan 2006 15:18:37 +0900 (LMT)

> > うーーん、情報が少なすぎてなんとも言えないのですが。。。
>
> すみません。何をお知らせすれば良いのかわかりませんでした。

まぁ、慣れていないとわかりにくいですからね。

> > ↓これを *scratch* バッファに書いて、最後で C-cC-e するとなんと
> > 表示されますか?また、"egrep" を "grep" に変えたのもやってみてく
> > ださい。
> >
> > (let ((pro (start-process "temp" (current-buffer) "egrep")))
> >   (set-process-coding-system pro 'undecided 'japanese-shift-jis))
>
> grep, egrepともに"Process temp exited abnormally with code
> 2"となりました。

その前に何も出ませんでしたか? 日本語になるかどうかはわかりませ
んが、こんなの↓

# 言い忘れましたが、テストは全部 mew を立ち上げた状態でやってく
# ださいませ。

-------------------------------------------------------------------------
(let ((pro (start-process "tmp" (current-buffer) "grep")))
  (set-process-coding-system pro 'undecided 'japanese-shift-jis)))
使用法: grep [オプション]‥‥ 文字列パターン [ファイル]‥‥ << この行
詳しくは`grep --help'を実行してください。                   << この行

Process tmp exited abnormally with code 2
-------------------------------------------------------------------------

他のエラーがなく、この『使用法』のメッセージがでないということは、

・grep(.exe) が存在することは Meadow からちゃんとわかっている
・だけど、grep(.exe) がちゃんと動いていない

ということだと推測できます。なので、Mew 以前の問題だと思います。
とりあえず、以下に実験は続く、ですが。


(1) grep, egrep が本当に動かしたい grep, egrep かどうかの確認を
    する。この出力はぼくの環境なので、大山さんは当然違うと思いま
    すが、もしかして、なにかの batch ファイルか何かになっていま
    せんか?

-------------------------------------------------------------------------    
(mew-which-exec "grep") ここで C-xC-e
"c:/bin/grep.exe"
-------------------------------------------------------------------------

-------------------------------------------------------------------------
(mew-which-exec "egrep") ここで C-xC-e
"c:/bin/egrep.exe"
-------------------------------------------------------------------------


(2) 本当に grep が動かないかもう一度確認する。こんなヘルプメッセー
    ジが出ますか?

-------------------------------------------------------------------------
(let ((pro (start-process "tmp" (current-buffer) "grep" "--help")))
  (set-process-coding-system pro 'undecided 'japanese-shift-jis))  ここで C-xC-e

使用法: grep [オプション]‥‥ 文字列パターン [ファイル] ‥‥
「ファイル」もしくは標準入力から「パターン」の検索を行なう。
例: grep -i 'hello world' menu.h main.c

正規表現の選択と解釈方法:
 <<snip>>
バグは <bug-gnu-utils at example.com> へ報告してください。
-------------------------------------------------------------------------


(3) 本当に grep が動かないかしつこく確認する。shift_jis で

% cat c:/tmp/test.txt 
テスト
test
% 

なファイルを書いて、

(let ((pro (start-process "tmp" (current-buffer)
			  "grep" "-n" "-i" "test" "c:/tmp/test.txt" "c:/tmp/test.txt")))
  (set-process-coding-system pro 'undecided 'japanese-shift-jis))

とか

(let ((pro (start-process "tmp" (current-buffer)
			  "grep" "-n" "-i" "テスト" "c:/tmp/test.txt" "c:/tmp/test.txt")))
  (set-process-coding-system pro 'undecided 'japanese-shift-jis))

を動かすと、*scratch* の最後に

c:/tmp/test.txt:2:test
c:/tmp/test.txt:2:test

c:/tmp/test.txt:1:テスト
c:/tmp/test.txt:1:テスト

なのが出てきますか?

# あと、grep 自体はちゃんと動きますか?というのもあります :-)

-- 
白井秀行 (mailto:shirai at example.com)



Mew-win32 メーリングリストの案内