Da ich mit Homeoffice zu einem eher sporadischen Workplace-Setup gezwungen war, habe ich meine Konfigurationen für tmux und vim überarbeitet, um auf meine tägliche Arbeit auf einem einzelnen Laptopbildschirm so angenehm wie möglich erledigen zu können. Dabei hat mich vor allem das Wechseln zwischen tmux-panes und vim-splits am meisten verwirrt. Was die Datei jetzt in einem separaten vim offen oder muss ich die andere Tastenkombination verwenden, um innerhalb von vim zu wechseln? Dazu habe ich vim-tmux-navigator entdeckt. Die Konfiguration ist simpel:
Das vim-tmux-navigator Plugin wird installiert.
Wer vundle verwendet, fügt die folgende Zeile seiner .vimrc hinzu: ``` Plugin 'christoomey/vim-tmux-navigator'
Anschliessend wird das Plugin installiert (in vim ausführen): ```
:PluginInstall
Wer pathogen verwendet lädt das Repo in seine Plugins herunter: ``` $ cd ~/.vim/bundle $ git clone https://github.com/christoomey/vim-tmux-navigator
# Konfiguration tmux
In die Datei ~/.tmux.conf wird folgendes hinzugefügt:
is_vim="ps -o state= -o comm= -t '#{pane_tty}' | grep -iqE '^[^TXZ ]+ +(\S+\/)?g?(view|n?vim?x?)(diff)?$'" bind-key -n 'C-h' if-shell "$is_vim" 'send-keys C-h' 'select-pane -L' bind-key -n 'C-j' if-shell "$is_vim" 'send-keys C-j' 'select-pane -D' bind-key -n 'C-k' if-shell "$is_vim" 'send-keys C-k' 'select-pane -U' bind-key -n 'C-l' if-shell "$is_vim" 'send-keys C-l' 'select-pane -R' tmux_version='$(tmux -V | sed -En "s/^tmux ([0-9]+(.[0-9]+)?).*/\1/p")' if-shell -b '[ "$(echo "$tmux_version < 3.0" | bc)" = 1 ]' "bind-key -n 'C-\' if-shell "$is_vim" 'send-keys C-\' 'select-pane -l'" if-shell -b '[ "$(echo "$tmux_version >= 3.0" | bc)" = 1 ]' "bind-key -n 'C-\' if-shell "$is_vim" 'send-keys C-\\' 'select-pane -l'" bind-key -T copy-mode-vi 'C-h' select-pane -L bind-key -T copy-mode-vi 'C-j' select-pane -D bind-key -T copy-mode-vi 'C-k' select-pane -U bind-key -T copy-mode-vi 'C-l' select-pane -R bind-key -T copy-mode-vi 'C-' select-pane -l
Jetzt kann zwischen vim- und tmux-Fenstern mit CTRL+hjkl einfach hin- und hergewechselt werden.
Wir verwenden Cookies, um sicherzustellen, dass Sie die beste Erfahrung auf unserer Website machen. Durch die Nutzung unserer Seite stimmen Sie unserer Cookie-Richtlinie zu.