mac はopen
というコマンドでダブルクリックのようなことをできる。
参考: 知ってるとちょっと便利なMacの固有コマンド
また、vim のコマンドラインモードでは%
で今編集中のファイルのパスを手に入れることができる。
(おまけ)
これは vim の今の作業ディレクトリからの相対パスになる。
また、フルパスにしたり拡張子にしたりもできる。
気になる人は:tab h %:p
とかしてみるとマニュアルが引ける。
挙動を確かめて見たい場合は:!echo %:e
とかやってみるとわかる。
これを知っていると、例えば.html
を編集している時に以下のコマンドで編集ファイルをブラウザで開ける。
:!open %
vim の作業ディレクトリを開きたい場合は、.
が今の作業ディレクトリを表すのでこう。
:!open .
編集しているファイルのあるディレクトリを開きたいなら、%
に:h
を付ける。
:!open %:h
だいたいこんな感じ。
ただし、open
はまんまダブルクリックなので、:!open %
の際に例えば.md
ファイルがエディタに紐づいているとエディタが開いてしまう。
そんな時は-a
でアプリを指定するか、.app
に含まれている実行ファイルを直接使う。
-a
ならこう。
:!open -a /Applications/Google\ Chrome.app %
.app
を使うならこう。こっちはopen
を使ってないので細かい挙動が決められる。
:!/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome --new-window %
で、ここらまで行くとさすがに長いので、適当に自作コマンドを作る。
.vimrc
command! B !/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome --new-window %
command! B
に続けて書くだけ。B
の部分は大文字で始まって入れば良いので、今まで紹介した!
で始まるコマンドを適当に登録すれば良い。
呼ぶ時はこう。
:B
快適だ :D