Ilekroć otwieram sesję tmux w terminalu, wszystkie zakładki zawierające sesje vim są oznaczone vim
.
Moje pytanie brzmi: jak skonfigurować, aby oznaczać karty tmux nazwą edytowanego pliku lub czymś takim, vim | test.cpp
jak tytuł karty, o której mowa.
Odpowiedzi:
Proszę bardzo :
Rozkład:
Podczas odczytu bufora, odczytu pliku lub buforowania nowego zdarzenia pliku (patrz
:help autocmd-events
) wykonaj następną komendę:Wywołaj funkcję systemową i przekaż jej tekst:
Zmień nazwę bieżącego okna na ciąg rozpoczynający się od
vim |
Dodaj do ciągu nazwę pliku (zobacz ten artykuł na temat formatowania i ten wpis na temat rozszerzenia insert)
Dodaj końcowy,
'
aby zamknąć polecenie.Po rozwinięciu będzie wyglądać (podczas edycji pliku .vimrc):
Jak powiedział @erthalion w komentarzu, możesz wyczyścić pozostawiając vima za pomocą:
źródło
BufEnter
zdarzenie do tej listy (aby zmienić etykietę, nawet gdy przełączamy się między istniejącymi buforami) i coś takiegoautocmd VimLeave * call system("tmux rename-window 'tmux'")
do czyszczenia.Aby przywrócić domyślny schemat nazewnictwa tmux podczas zamykania vima, możesz również:
źródło
To właśnie umieściłem w moim vimrc dzięki odpowiedzi @raphael
Instaluję również wtyczkę tmux-plugins / vim-tmux-focus-events dla zdarzeń FocusGained i FocusLost.
źródło