windowsのgvimからcygwinのgrepやzshを使う
2007/03/20
vimから:grepで検索したときに、cygwinのgrepを使って検索するように以下を設定した。
set grepprg=grep\ -nH
これで、vimから正規表現含みでgrepできるようになった。
と思っていたら、findstr(windows付属のコマンド)でも正規表現できたみたいでした。
C:\> findstr /? (略) 正規表現クイック リファレンス: . ワイルドカード: 任意の文字 * 繰り返し: ゼロ個以上の直前の文字またはクラス ^ 行位置: 行頭 $ 行位置: 行末 [class] 文字クラス: セットの任意の 1 文字 [^class] 逆クラス: セット以外の任意の 1 文字 [x-y] 範囲: 指定した範囲の任意の文字 \x エスケープ: メタ文字 x のリテラル使用 \<xyz 単語位置: 単語の先頭 xyz\> 単語位置: 単語の終わり FINDSTR の詳細な正規表現に関しては、オンライン ヘルプのコマンド リファレンスを 参照してください。
でも慣れてるgrepの方がいい。
ついでに、外部コマンド呼出し時のshellも変更した。
set shell=c:\\cygwin\\bin\\zsh
これで、zshの機能が使えるようになったので、vimの中で
:r!echo {1..10}
とやると
1 2 3 4 5 6 7 8 9 10
が挿入されるようになった。他に有意義なzshの利用方法って何があるだろう?