[過去ログ] NTEmacs スレッド 3 (981レス)
上下前次1-新
抽出解除 レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
リロード規制です。10分ほどで解除するので、他のブラウザへ避難してください。
672(12): 2013/11/04(月)20:37 ID:tQ324Mec0(1/3) AAS
ag + ag.el で改行コードが DOS 形式のファイルを検索すると
どうしても行末に ^M が付いてしまうんですが、
どういう風に設定したらいいんでしょうか?
改行コードをいろいろ弄ってもうまくいきません。
(setq default-process-coding-system '(utf-8-dos . utf-8-unix))
674: 672 2013/11/04(月)22:36 ID:tQ324Mec0(2/3) AAS
>>673
わざわざありがとうございます。
ag.el に関しては何も設定せずデフォルトのオプションのまま M-x ag してるだけです。
ただ ag を動かすために fakecygpty と次のページの設定をしています。
外部リンク[html]:www49.atwiki.jp
一応 ag は手元でビルド可能な 0.15 を使用しています。
ファイルの改行を UNIX に変更すれば改行コードの設定を弄れば問題ないんですが、
省1
676(1): 672 2013/11/04(月)23:22 ID:tQ324Mec0(3/3) AAS
>>675
もともと fakecygpty は以下の shell の問題の対処で導入したんですが、
Emacs (22.3) や Cygwin 環境が古いためかもしれません。
外部リンク:www.emacswiki.org
それで fakecygpty の設定をしないと ag のプロセスは起動されても、
アイドルなままで終了もしないので、
ag-kill-buffers で終了するしかなくなります。
677: 672 2013/11/05(火)00:16 ID:Avl0fwS40(1/3) AAS
Emacs 側の設定で簡単に対処できればと思ったんですが、
私の環境も古いままで十分に検証もできないので、
基本的な設定で対処できそうなポイントがなければ結構です。
default-process-coding-system の改行コードを弄るくらいしか思い付かなかったので、
ここを変えてみてもどうもうまくいかないようです。
car を *-unix にするとさらに ^M^M となるし。
ファイルの改行が UNIX なら上の設定でいいようですが。
681(1): 672 2013/11/05(火)20:56 ID:Avl0fwS40(2/3) AAS
>>678
私は素人ですがどうも駄目なようです。
>>679
Cygwin 1.7.16 なので普通に binary でマウントされるようです。
>>680
> CR+CR+LF
そんな感じですよね。対処はわかりませんが。
683: 672 2013/11/05(火)23:23 ID:Avl0fwS40(3/3) AAS
>>682
ありがとうございます。でもどうやら駄目みたいです。
普通にコンパイルしたのとサイズも同じですね。
684(2): 2013/11/10(日)12:51 ID:Tz5z8u2PP(1/2) AAS
>>672
process-coding-system-alist をいぢじるのはどう?
(cons "ag" (cons 'utf-8-dos . 'utf-8-dos))
みたいなのを追加するとか。
>>671
起動を早くしたければ、(require 'XXXX) は一切やめて、
全て、autoload と eval-after-load に整理する方法がある。
省5
691: 672 2013/11/11(月)01:14 ID:9cZ5MS8o0(1) AAS
>>684
process-coding-system-alist を使う方がいいでしょうが、
ただ結果は同じになります。
(setq process-coding-system-alist
(cons '("fakecygpty" utf-8-dos . utf-8-unix)
process-coding-system-alist))
*-dos にしても ^M が付くので、
省1
700(1): 2013/11/12(火)00:35 ID:0r4D1Rbo0(1/3) AAS
>>672
(trace-function-background 'start-process) を設定して、M-x agを動かすと、
*trace-output*バッファにどう表示されるだろう。うちは、以下の通り。
1 -> start-process: name="ag" buffer=#<buffer *ag text:aaa dir:c:/gnupack/home/test/*>
program="fakecygpty" program-args=("bash" "-c" "ag --nocolor --literal --smart-case --nogroup --column -- aaa")
fakecygptyを経由しているけど、fakecygpty-program-listにbashがあるから
有効になっていのであって、fakecygpty-program-listにagは登録していない。
省1
701: 672 2013/11/12(火)00:53 ID:brCbvXnE0(1/4) AAS
>>700
1 -> start-process: name="ag" buffer=#<buffer *ag*> program="fakecygpty" program-args=("sh" "-c" "ag --nocolor --literal --smart-case --nogroup --column -- cygwin")
(setq fakecygpty-program-list '("sh" "bash"))
(setq fakecygpty-exclusion-buffer-name-list '("*grep*"))
こんな感じです。
何だかよくわからなくなってきた。
705: 672 2013/11/12(火)21:12 ID:brCbvXnE0(2/4) AAS
runemacs -q で起動して、
emacs 22 に無い use-region-p と region-active-p を読み込む以外、
次の設定だけでテストしても駄目ですね。
お騒がせしました。しばらく自分で考えてみます。
(setq explicit-shell-file-name "bash")
(setq shell-file-name "sh")
(setq shell-command-switch "-c")
省19
707: 672 2013/11/12(火)21:45 ID:brCbvXnE0(3/4) AAS
>>706
一応 >>676 と >>681 で書きましたが、
Emacs 22.3 と Cygwin 1.7.16 です。
>>676 の問題の対処のために fakecygpty を通しているので、
この辺りもかなり怪しいです。
710: 672 2013/11/12(火)23:50 ID:brCbvXnE0(4/4) AAS
>>709
そうでしたか。なるほどうまくいきました。
うちの環境でも ag はかなり高速なので助かります。
たびたびヒントをいただいいたりわざわざ検証していただいた皆さん、
どうもありがとうございました。
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.033s