Ось так :
autocmd BufReadPost,FileReadPost,BufNewFile,BufEnter * call system("tmux rename-window 'vim | " . expand("%:t") . "'")
Декомпозиція:
autocmd BufReadPost,FileReadPost,BufNewFile,BufEnter * call
Під час читання буфера, читання файлів або буфера нового події файлу (див. :help autocmd-events
) Виконайте наступну команду:
call system()
Викличте системну функцію та передайте їй текст:
"tmux rename-window 'vim | "
Перейменуйте поточне вікно рядком, починаючи з vim |
. expand("%:t")
Додайте до рядка ім'я файлу (див. Цю статтю щодо форматування та цю публікацію для вставки для розширення)
. "'"
Додайте фінал, '
щоб закрити команду.
Після розширення він буде мати вигляд (під час редагування .vimrc-файлу):
system("tmux rename-window 'vim | .vimrc'")
Як сказав @erthalion у коментарі, ви можете очистити, залишаючи vim за допомогою:
autocmd VimLeave * call system("tmux rename-window 'tmux'")