vimでackを実行しようとしています。しかし、何らかの理由でvimはackを実行した後に停止することにしました。 vimが止まるのをどうやって止めますか?
(一部のシステムではackと呼ぶことをack-grepといいます。)
vimで私がすること:
:!ack something
何が起こるのか?
$vim myfile.myextension
somefile.someext
356: : this line contains something and somewhat
[1]+ Stopped vim chatconfig.js
私が実行すると、fg
次のように言います。
vim myfile.myextension
Press ENTER or type command to continue
Enterを押すとvimに戻ります。
私が期待することは次のとおりです。
$vim myfile.myextension
somefile.someext
356: : this line contains something and somewhat
Press ENTER or type command to continue
だからfgはありません。
ackをパイピングして愚かなことを処理する解決策があります。
:!ack something | grep -v "asdasdasd"
しかし、私はgrepにパイプするときに自動的に発生するトリックを知りたいです。
Vim7.4、Ubuntu 15.10、ack 2.14
答え1
私のvimrcには次のハックがあります。
set shellcmdflag=-ic
vimで動作するbashエイリアスを取得します。これにより、説明された動作が発生します。 ackを別のプロセスにパイプすると、ackは非対話型で実行されます。
解決策はハッキングを削除することです。