回答:
私は頻繁にCtrl- 6このために使用します。
2つのファイル間をすばやく行き来できるので便利です。
を使用CTRL-W gf
して、新しいタブでファイルを開くことができます。
新しく開いたファイルは、いつものように:bd
、またはCTRL-6
バッファを変更するその他の通常の方法で閉じることができます。
nnoremap gf <C-W>gf
であり、新しいタブで開くのに使用した方がよい場合があります。
gfを使用してファイルに降り、:bfを使用して戻ります
Ctrl-Shift-6は1つです。
:e#↲
別です。
CTRL-W fで動作しました。
組み込みバージョンがあることを発見するためだけにこれらのコマンドのマップを完成させるのに長い時間を費やしてしまったことは非常に憂鬱です。
質問のパート2の答えはわかりませんが、パート1のお手伝いはできます。
:e#
Vimは編集中のファイル(バッファ)のリストを保持します。入力した場合
:buffers
現在編集中のすべてのファイルが一覧表示されます。そのリストの横に%が付いているファイルが現在のファイルです。横に#が付いているものが代替ファイルです。:e#は、現在のファイルと代替ファイルを切り替えます。それほど多く入力するのではなく、F2を:e#にマッピングして、現在のファイルと代替ファイルを簡単に切り替えられるようにします。これを.vimrcに追加して、コマンドをF2にマップします。
nmap `<F2> :e#<CR>`
:help alternate-fileを参照してください。
私はあなたのgfコマンドを見ていませんが、:eまたは:findコマンドを使用していると思います。
これが正しいと仮定すると、単に:eまたは:findを:new(または垂直分割の場合は:vnew)に置き換えるだけで、ファイルは同じウィンドウではなく新しいウィンドウで開きます。
例えば
「ヘッダーとcppを切り替える nmap、s:find%:t:r.cpp <CR> nmap、S:new%:t:r.cpp <CR> nmap、h:find%:t:rh <CR> nmap、H:new%:t:rh <CR> nmap、F:new = expand( "<cfile>:t")<CR> <CR> nmap、d:new = expand( "<cfile>")<CR> <CR>
gf
組み込みです。それは私たち全員に属しています。:-)