Como configurar o vim para interagir com shells de linha de comando interativos?

3

De tempos em tempos, quero usar o vim como bloco de rascunho para comandos que gostaria de enviar para um shell de linha de comando como psql (Postgres), ghci (linguagem de programação Haskell), octave (' calculadora '), gnuplot (enredo) etc.

A vantagem é que você pode colocar comentários ao lado de linhas de comando, documentar diretamente sua sessão, desenvolver linhas de comando incrementalmente, testar exemplos ad-hoc em manuais, etc.

Recursos pro que eu gostaria de usar: enviar uma seleção para um shell, enviar e-mail as próximas 10 linhas para um shell, exibem a saída de um comando do shell em um buffer de saída do vim, em um registrador de yim do vim, o insere diretamente etc.

Deve haver algum suporte para um conceito de sessão de shell, ou seja, o shell não deve ser iniciado para cada comando do zero.

Eu poderia viver com um tipo de xterm de controle remoto que eu colocaria lado a lado em uma janela vim.

    
por maxschlepzig 20.09.2012 / 20:27

2 respostas

2

Experimente vim-slime , um ambiente inspirado no modo SLIME do Emacs. Envia o conteúdo do Vim para uma tela ou sessão do tmux.

No futuro, você provavelmente também pode usar o Xiki , mas por enquanto seu suporte ao Vim está incompleto.

    
por 20.09.2012 / 21:03
0

maxschlepzig: Este é um tópico antigo, mas espero que ainda seja útil fornecer informações que acabei de aprender sobre o slime-vim. Você pode configurar a seguinte combinação de teclas (F2, neste caso) em .vimrc para enviar a linha atual.

vmap <F2> :SlimeSend<CR>

nmap <F2> :SlimeSend<CR>

F2 pode ser substituído por qualquer outra chave.

    
por 16.07.2015 / 16:50