MacVim では、タブの名前は、そのタブで最後に開かれたバッファの名前に設定されているように見えます。これは、分割を使用するときに混乱を招きます。タブ名をタブの左上のウィンドウに固定するにはどうすればよいですか?
2 に答える
次の関数は、左上のウィンドウにロードされたバッファの名前を返します。
function! GuiTabLabel()
return bufname(winbufnr(1))
endfunction
guitablabel
MacVim について言及したので、 を使用して、定義した関数に設定できます。
set guitablabel=%{GuiTabLabel()}
上記の関数の問題は、作業ディレクトリによっては、タブ名が左上のバッファ内のファイルのフル パスに設定され、かなり長くなる可能性があることです。
パスを破棄して、ファイル名のみを使用するように関数を変更します。
function! GuiTabLabel()
return fnamemodify(bufname(winbufnr(1)), ":t")
endfunction
これを永続化するには、関数を .vimrc で定義し、関数の後に:
set guitablabel=%!GuiTabLabel()
しかし、MacVim を使用している場合、単純なセットが機能しません。MacVim のスタートアップが私の変更を上書きしているようです。.gvimrc に設定すると、MacVim で機能します。:scriptnames
Windows gvim :verbose set guitablabel
.
詳細:help setting-guitablabel
とより複雑な関数の例については、 を参照してください。:help fname-modifiers
その他のパス修飾子オプションについては、を参照してください。
次のようなものを使用できます
au BufEnter * set guitablabel=%{fnamemodify(bufname(winbufnr(1)), ":t")}
詳細については:help statusline
、 および:help guitablabel
を参照してください。これは基本的に、タブ ラベルを左上のウィンドウの名前に設定します。これの残りは:help
...、、、、BufEnter
などにfnamemodify(
あります。bufname(
winbufnr(