バッファ移動のショートカットキー設定
今まで、下記のようなスクリプトを実行して vim を起動していたが・・・
#!/bin/sh /Applications/vim-6.2.532-osxj/Vim.app/Contents/MacOS/Vim -g $1 &
この場合、vim のプロセスが幾つも起動されるので、非力な Mac だと、ちょっと厳しい。
そこで・・・「.zshrc」の Alias 設定を下記のように書き換えた。
alias gvim='open -a /Applications/vim-6.2.532-osxj/Vim.app'
こうすると、gvim コマンドを実行する度に、ファイルはバッファに読まれる。
更に、「.vimrc」に下記を追加する。
map <LEFT> <ESC>:bp!<CR> map <RIGHT> <ESC>:bn!<CR> map <UP> <ESC>:ls<CR> map <DOWN> <ESC>:b!<SPACE>
こうしておくと、下記が可能となる。
:bn :bn :b には ! を付けておくと、編集内容を保存しなくとも移動できる。
注意点として、「:q」等で vim を終了すると全てのバッファを閉じて終了してしまうので、現在のバッファを閉じるだけであれば「:bd」を使う事。
その後
id:cooldaemon:20060202 このエントリで書いた問題点を忘れていた・・・orz
対処として、下記の Script を書いた。
#!/bin/sh VI_COMMAND=/Applications/vim-6.2.532-osxj/Vim.app if [ $# = 0 ] open -a $VI_COMMAND then while [ $# != 0 ] do if [ ! -e $1 ] then touch $1 fi open -a $VI_COMMAND $1 shift done fi
ファイルが存在しない場合は、touch コマンドでファイルを新規作成している為、編集終了時にファイルサイズが 0 であってもファイルは残ってしまう。何か上手い方法ないかなー?
ついでに、複数ファイルを一度に指定できるようにしてみた。