tmux está mostrando zsh para vim com 'pane_current_command'

0

Por alguma razão, o Tmux está mostrando zsh quando deveria mostrar vim para a saída de #{pane_current_command} , isso está estragando meu painel ciente do vim movendo comandos no tmux que dependem dele funcionando corretamente:

# vim aware commands
# pane/split switching
bind -n C-h run "(tmux display-message -p '#{pane_current_command}' | grep -iq vim && tmux send-keys C-h) || tmux select-pane -L" #left
bind -n C-j run "(tmux display-message -p '#{pane_current_command}' | grep -iq vim && tmux send-keys C-j) || tmux select-pane -D" #down
bind -n C-k run "(tmux display-message -p '#{pane_current_command}' | grep -iq vim && tmux send-keys C-k) || tmux select-pane -U" #up
bind -n C-l run "(tmux display-message -p '#{pane_current_command}' | grep -iq vim && tmux send-keys C-l) || tmux select-pane -R" #right
bind -n C-\ run "(tmux display-message -p '#{pane_current_command}' | grep -iq vim && tmux send-keys 'C-\') || tmux select-pane -l" #next
# pane/split creation
bind | run "(tmux display-message -p '#{pane_current_command}' | grep -iq vim && tmux send-keys C-w && tmux send-keys v) || tmux split-window -h" #verticle
bind - run "(tmux display-message -p '#{pane_current_command}' | grep -iq vim && tmux send-keys C-w && tmux send-keys s) || tmux split-window -v" #horizontal
# pane/split close
bind x run "(tmux display-message -p '#{pane_current_command}' | grep -iq vim && tmux send-keys C-w && tmux send-keys q) || tmux kill-pane "

Estou começando o vim por meio de um alias:

alias vim='rbenv only -r 2.3.5 -c "/usr/local/bin/vim" $@'

é realmente o alias que está causando o problema. Como faço para corrigir isso? Existe alguma maneira de definir o nome do processo atual?

Encontrei jobs -Z , mas isso não parece funcionar para um alias.

    
por Thermatix 20.10.2017 / 13:24

1 resposta

1

Ok, então depois de ver o comentário deixado por @ B-Layer eu criei uma função bash simples para substituir o alias que eu estava usando que me permite ter o meu bolo e comê-lo!

A função:

function vim()
{
    cmd="exec /usr/local/bin/vim $@"
    rbenv only -r $GLOBAL_RUB_VERSION -c "$cmd";
}

Agora ele me permite começar o vim usando o rbenv, então ele sempre começa com a mesma versão do ruby que o vim foi compilado. Agora (o motivo dessa música e dança) YouCompleteMe nunca vai reclamar / falhar porque eu mudei as versões ruby.

    
por 23.10.2017 / 11:17

Tags