問題
Vim標準のファイラー「netrw」でファイルを開くときに、xキーでデフォルトのソフトで開けることがわかりました。
しかし、フォルダを指定したソフト(VScode)で開く方法がわかりません。
解決方法をご教示ください。
環境
Windows10
Vim + netrw
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
回答2件
0
ベストアンサー
netrw ではファイルの拡張子別に処理を変えることができます(:help netrw_filehandler
)が、ディレクトリの処理は内部で行われてしまうため変更できません。
自分でキーマップとスクリプトを書けば自由にできます。
例えば以下のスクリプトを vim の plugin ディレクトリに設置すれば netrw バッファで gv キーにより VSCode を開くことができます。
netrw 標準の x キーを置き換えたい場合は、もう少し変更が必要になります。
なお、パスを指定して VSCode を開くにはスキーマを利用しています。
Opening VS Code with URLs
gist - Open path with VSCode in windows+vim+netrw
vim
1let g:netrw_open_custom_prog = '"vscode://file/%s"' 2 3function! Netrw_open_custom(file) abort 4 let l:path = a:file 5 if exists('b:netrw_curdir') 6 let l:path = b:netrw_curdir . '/' . a:file 7 endif 8 if glob(l:path) != '' 9 execute '!start' printf(g:netrw_open_custom_prog, l:path) 10 endif 11endfunction 12 13augroup Netrw_open_custom 14 autocmd! 15 autocmd FileType netrw nnoremap <buffer> gv :call Netrw_open_custom(netrw#GX())<CR> 16augroup END
投稿2020/04/24 10:41
総合スコア167
0
指定したフォルダを指定したアプリケーションで開きたいなら、
カレントディレクトリを変更してから、!vscode
なりするか、そのディレクトリを指定するかですかね。(良い方法が思いつかない…)
netrwでカーソル上にあるディレクトリに移動したい場合はcd
で移動できます。
移動後、カレントディレクトリが変わっているかを:pwd
で確認できます。
ちなみに、netrwのキーマップ一覧は↓ヘルプで確認できます。
:h netrw-browse-maps
投稿2020/03/22 13:01
編集2020/03/22 13:48総合スコア130
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。