vim(例:e .
:)でディレクトリを開いて取得した「Netrwディレクトリのリスト」は、ナビゲーションに通常のvimとは異なるキーバインディングセットを使用するようです。
私のhjklキーが再マップされました。
noremap d h
noremap h gj
noremap t gk
noremap n l
noremap e d
noremap l n
ただし、ディレクトリリストで「t」(上矢印とも呼ばれます)を押すと、実際にファイルが開かれるのではなく、カーソルの下にファイルが開きます。このディレクトリリストモードで同様のキーマッピングを達成するにはどうすればよいですか?
答え1
私が理解できないかと心配です。
[根本原因を特定する前に、いくつかの冗長な内容を削除しました。]
何を達成したいですか?とにかく、あなたのnoremapリストは私には理解できません。
ああ!わかりました!
あなたはDVORAKキーボードレイアウト、そうではありませんか?これでマッピングが理解され始めます。 (話すのを忘れました…そうです!)
NETRWプラグインのソースコードを見ると、netrwバッファはBUFFER ONLY nnoremapsを設定しているようです...もちろんバッファを上書きします。私は解決策を探しています。
私が知る限り、$VIMRUNTIME/autoload/netrw.vimファイルにいくつかの大手術をしなければなりません。しかし、別の考えが浮かんだ。
netrw プラグインはバッファを開くとファイルの種類を "netrw" に設定するので、.vimrc で自動コマンドを設定することで、netrw ウィンドウで必要なキー変換を設定できます。
augroup netrw_dvorak_fix
autocmd!
autocmd filetype netrw call Fix_netrw_maps_for_dvorak()
augroup END
function! Fix_netrw_maps_for_dvorak()
noremap <buffer> d h
noremap <buffer> h gj
noremap <buffer> t gk
noremap <buffer> n l
noremap <buffer> e d
noremap <buffer> l n
" and any others...
endfunction
mapコマンドを接続できないため、必ず実行してください。あなたのために働く必要があります。
常に dvorak noremap を使用している場合は、<buffer> 修飾子を削除できるようです。
答え2
最近のより簡単な解決策は、マッピングを次の場所に配置することです.vim/after/ftplugin/netrw.vim
。
noremap <buffer> d h
noremap <buffer> h gj
noremap <buffer> t gk
noremap <buffer> n l
noremap <buffer> e d
noremap <buffer> l n
<buffer>
理由を説明するにはlornixが必要です。