Como mapear comandos no Vim?

1

Estou usando o gVim e não há uma opção de divisão vertical no item de menu Arquivo. Quero mapear o padrão :split e sua abreviação :sp para :vsplit e :vsp , respectivamente, para que substitua a divisão horizontal em todos os lugares.

    
por w17t 28.10.2016 / 14:30

1 resposta

2

Aqui está o seu problema: Você não está usando o vim como o vim. Você está usando o vim como o notepad ++. Se você estivesse usando o vim como o vim, você poderia simplesmente fazer:

:vsplit file

(ou melhor ainda, digite <C-w>v ) e então você não precisaria de um mouse, ou um gui, ou um menu ou qualquer coisa. Então, se você quiser remapear

:split

para

:vsplit

você pode simplesmente executar

:cnoremap split vsplit
:cnoremap sp vsp

Isso resolveria completamente o seu problema.

Mas isso não é problema seu. Se você remapear esses comandos e depois usar o mouse no arquivo :split a, os remapeamentos não terão efeito. Então, neste ponto, você realmente tem duas opções.

  1. que eu prefiro muito mais, e recomendo, é parar de usar os botões do menu. Toda vez que você mover a mão do teclado para o mouse, arraste o cursor do mouse até o botão de menu, role para baixo, clique no botão direito, navegue pelos arquivos, clique para abrir o arquivo correto, você parou de usar o vim. Agora você está usando o notepad ++ dentro do vim. Você poderia ter feito o mesmo em dois botões! ( <C-w>v ) Se você quiser levar essa abordagem ao extremo, você também pode executar

    :set guioptions=
    

    que removerá todos os botões do menu. No entanto, como é o seu fluxo de trabalho, você pode optar pela opção 2:

  2. Adicione isso ao seu .vimrc :

    an 10.320 &File.Sp&lit-Open\.\.\.<Tab>:vsp  :browse vsp<CR>
    

    Isso adicionará uma opção "divisão vertical" à sua barra de menus.

por 28.10.2016 / 19:05