Usando o tmux com ambos emacs e vim

16

Qual é a melhor ligação de chave padrão para o tmux e por que se alguém usa o emacs algumas vezes e algumas vezes usa o vim (no Linux Mint 12)? Ctrl-b está OK, mas isso conflita um pouco com o shell bash e o emacs.

    
por justingordon 25.01.2012 / 07:28

7 respostas

9

Encontrei uma boa resposta em um post relacionado: Qual é a seqüência de prefixo / escape menos conflitante para tela ou tmux?

E eu fui com Ctrl- \. Abaixo está meu ~ / .tmux-conf:

set-window-option -g mode-keys vi
set-window-option -g window-status-current-bg blue
set-window-option -g automatic-rename on
set-option -g status-keys vi
set-option -g history-limit 100000
set-option -g base-index 1
set-option -s escape-time 0
setw -g mode-mouse on
set-option -g mouse-select-pane on

# We won't worry about sending C-\ to any programs
# bind-key C-\ send-prefix

# hit C-\ twice to go to last window
bind-key C-\ last-window
bind-key b set-option status

bind-key / command-prompt "split-window 'exec man %%'"
# vim's definition of a horizontal/vertical split is reversed from tmux's
bind s split-window -v
bind v split-window -h

# move around panes with hjkl, as one would in vim after pressing ctrl-w
bind h select-pane -L
bind j select-pane -D
bind k select-pane -U
bind l select-pane -R

# resize panes like vim
bind < resize-pane -L 10
bind > resize-pane -R 10
bind - resize-pane -D 10
bind + resize-pane -U 10

# C-b is not acceptable, due to emacs, bash, and vim
unbind-key C-b
set-option -g prefix C-\
    
por 04.02.2012 / 08:17
4

Eu prefiro strongmente o C-] , que não entra em conflito com ligações do vi, e entra em conflito com a ligação abort-recursive-edit padrão no Emacs. Eu uso isso raramente o suficiente, e em circunstâncias bastante desagradáveis, que digitá-lo duas vezes não é um grande drama.

    
por 25.01.2012 / 07:30
1

Eu tenho usado Ctrl- / por um tempo e não encontrei conflito com nada pelo menos no vim / bash. Eu não uso o emacs, então não sei se isso entra em conflito com alguma coisa importante.

Além disso, uma pequena nota que eu acredito que eu tive que ligá-lo a C-_ para fazê-lo funcionar, já que é a chave que ele envia.

    
por 25.01.2012 / 15:32
1

escolhi Ctrl + Alt + b, por exemplo

unbind C-b
set -g prefix M-C-b
    
por 07.10.2013 / 01:47
1

Eu uso o C- \. Note que você precisa escapar com aspas simples:

unbind-key C-b
set-option -g prefix C-'\'
    
por 24.09.2015 / 05:21
0

A melhor solução que encontrei para isso é usar apenas '. O único lugar que isso me causa problemas é colar diretamente no código (com buffers do sistema), caso contrário, é a solução perfeita.

set -g prefix '
bind-key ' send-prefix
    
por 17.01.2013 / 18:43
0

Outra boa ideia é usar M-F3 . Ele não entra em conflito com o emacs e vi, a combinação é bastante conveniente, é 'bastante fechada para o M-F2 e o M-F1 usado para o comando run e o menu virtualdesktops.

[Estou usando o emacs, e começando alguns vim (dentro do emacs por enquanto) e usando o linuxMint canela para distro]

    
por 26.03.2013 / 23:29

Tags