Abra novos buffers vim em novas janelas?

1

Eu gosto do vim, mas não gosto de seus buffers. Existe alguma maneira de iniciar um gvim separado sempre que você normalmente abrir um arquivo em um novo buffer? Eu provavelmente poderia alias :edit para algum outro comando de lançamento, mas essa é a abordagem correta?

    
por Jeff 21.01.2013 / 02:23

3 respostas

0

O GVim não suporta múltiplas janelas "toplevel" (veja Usando o Vim / Gvim com várias janelas GUI ). Mas você pode criar um comando de usuário que inicie um novo processo gVim. Algo parecido com isto:

: command -nargs = * -complete = file Novo: sistema de chamadas ('gvim'. shellescape (< f-args >))

Esse comando pode falhar de maneiras interessantes com nomes de arquivos "criativos". Eu tentei torná-lo robusto sem torná-lo complexo, mas eu não testei extensivamente.

Existem várias desvantagens em insistir em usar o Vim dessa maneira. Você pode não gostar do tratamento de buffer do Vim, mas pode ser bastante útil se você puder aprender a usá-lo.

    
por 21.01.2013 / 03:16
2

Para mim, a divisão de janelas e a capacidade de alternar rapidamente, puxar e colar entre elas são essenciais para o trabalho eficaz com o Vim. Claro, você pode desenvolver seu próprio fluxo de trabalho idiossincrático, mas eu recomendaria contra isso. Em vez disso, esforce-se para seguir o que um vasto exército de usuários do Vi (m) achou muito útil. Apesar da curva de aprendizado às vezes íngreme, é importante saber a diferença entre arquivos, buffers, janelas e guias.

Como uma espécie de meio-termo, você pode experimentar a abertura de novos arquivos em fichas de registro (por exemplo, usar :tabedit em vez de :edit ) como alternativa ao lançamento de uma instância Vim totalmente separada. A sensação é como nos navegadores da Web, e você mantém o benefício de registros e marcas compartilhadas.

    
por 21.01.2013 / 08:22
0

A "forma buffer" tem muitos benefícios: todos os buffers que você trabalha com registros compartilhados, por exemplo, ou um mapeamento global ou opção definida em uma janela estão disponíveis para todos os outros, ou você pode copiar / colar e múltiplos registros sem um gerenciador de janelas, ou você pode referenciar partes de outros buffers em comandos Ex ...

De qualquer forma, você provavelmente poderia fazer algo como :!gvim filename . Mas, na ausência de uma lista razoável de benefícios desse método e de desvantagens do "modo de buffer", não há realmente nenhum sentido em fazer isso.

    
por 21.01.2013 / 14:23