Primeiro você deve instalar uma versão do vim habilitada para área de transferência. Para acomodar usuários com ambientes não gráficos (por exemplo, usuários do Ubuntu Server) vim
e vim-tiny
não se conecte a esse recurso. Você desejará instalar o GVim , que será lançado graficamente ou em seu terminal. O GVim substituirá o vim
comando.
Você pode puxar o texto para o 'buffer de corte' do primeiro vim e colar o texto no segundo vim. Para copiar para o buffer de corte global, use o +
registro. A "
tecla permite especificar qual registro usar ao executar uma operação de puxar ou colar.
No primeiro vim, coloque uma linha no +
registro:
"+yy
em seguida, para colar do +
registro no segundo vim:
"+p
Para mais informações sobre os registros disponíveis, confira :help registers
. Você também pode usar "+p
para colar o texto copiado de qualquer outra fonte no seu sistema.
"*yy
,"*p
Também funciona. se você acertar:reg
, você vai ver que o registro da estrelaA melhor solução que funcionou para mim (que não exige que eu mude meus hábitos de combinação de teclas) está aqui: https://stackoverflow.com/questions/9166328/how-to-copy-selected-lines-to-clipboard-in- vim
apenas coloque:
no seu
.vimrc
.fonte
set clipboard=unnamedplus
GVim instalado. No entanto, consegui usar o xfce4-terminal para o Vim em vez do programa GVim real.Gosto da solução do Bill e criei um mapeamento:
o primeiro no modo visual copia tudo em / tmp / vitmp e o segundo copia o conteúdo de / tmp / vitmp no arquivo
fonte
"*y
parece estar quebrado em servidoresEu me movo entre várias máquinas da família Unix e descobri que a seguinte sequência sempre funciona para mim:
Na fonte vi session:
ESC m a
para marcar a primeira linhaESC m b
para marcar a última linha:'a,'b w! xfer
para gravar o intervalo em um arquivo inicialNa sessão de destino:
ESC :r xfer
para ler textoEu sei que não é bonito, mas sempre funciona para mim!
fonte
Na verdade, é bastante simples: instale uma versão
vim
compatível com a área de transferência. casovim
contrário, obtenha uma das seguintes opções:Uma vez instalado, basta executar
vim
. Você também pode verificar se a área de transferência está ativada executando:você deveria ver
+xterm_clipboard
.fonte
Provavelmente todos vocês odeiam esta resposta. Eu trabalhava no vi nos anos 80 em uma variedade de computadores Unix e tive a ocasião recente de brincar no Linux.
Minha solução para recortar e colar é usar o Putty em execução no Windows para acessar minha caixa do Linux.
O Putty permite copiar qualquer txt em sua janela, simplesmente destacando-o. você pode ir para outra janela / sessão do Putty e clicar com o botão direito do mouse para colar.
não poderia ser mais fácil. e agora há vim. Pena que não estava por aí nos meus dias, teria me ajudado a defender a máfia do emacs.
fonte
Não é exatamente o uso de yy, mas se você selecionar o texto que deseja copiar com o mouse (às vezes pode precisar usar Shift- [arrastar]), alterne para a outra janela do terminal e faça um [clique no meio] ou Shift- [meio clique] lá, o texto será inserido no seu ponto de inserção atual.
Isso funciona para a maioria dos programas de linha de comando e GUI, não apenas para o vim.
fonte