Como copiar linhas selecionadas para a área de transferência no vim. Eu sei fazer isso para todos os arquivos de texto , mas quero fazer para as linhas selecionadas. Obrigado!
87
Como copiar linhas selecionadas para a área de transferência no vim. Eu sei fazer isso para todos os arquivos de texto , mas quero fazer para as linhas selecionadas. Obrigado!
Respostas:
SHIFTVcoloca você no modo de seleção de linhas. Em seguida, "*ypuxa as linhas atualmente selecionadas para o
*
registro que é a área de transferência. Existem alguns registros diferentes, para finalidades diferentes. Consulte a seçãoselection and drop registers
para obter detalhes sobre as diferenças entre*
e+
registros no Windows e Linux.fonte
Se você estiver no Linux e estiver usando um VIm versão 7.3.74 ou superior (a versão que é instalada no Ubuntu 11.10 em diante satisfaz isso), você pode fazer
set clipboard=unnamedplus
que colocará o texto puxado na área de transferência global e permitirá que você cole da área de transferência global, sem ter que usar nenhum registro especial. Ao contrário da solução da ldigas, isso também funcionará em versões não-gui do VIm.
fonte
vim-gnome
pacote em vez devim
.vim --version | grep "+xterm_clipboard"
.clipboard=unnamed
( vim.wikia.com/wiki/Accessing_the_system_clipboard )irá, ... uhmm, resumindo, sempre que você selecionar / puxar algo, coloque-o na área de transferência também (não no do Vim, mas no teclado global do sistema de janelas). Dessa forma, você não precisa pensar em colocar as coisas em um registro especial.
fonte
Para GVIM, pressione
v
para entrar no modo visual; selecione o texto e cliqueCtrl+Insert
para copiar a seleção para a área de transferência global.No menu, você pode ver que a tecla de atalho é,
"+y
ou seja, segure a tecla Shift, pressione"
,+
depois solte Shift e pressioney
(complicado em comparação a Shift + Insert).fonte
Se você está usando o vim no MAC OSX, infelizmente ele vem com uma versão mais antiga e não está de acordo com as opções da área de transferência. Felizmente, o homebrew pode resolver esse problema facilmente.
instale o vim:
brew install vim --with-lua --with-override-system-vim
instale o gui verion do vim:
brew install macvim --with-lua --with-override-system-vim
reinicie o terminal para ter efeito.
acrescente a seguinte linha a ~ / .vimrc
set clipboard=unnamed
agora você pode copiar a linha no vim com
yy
e colá-la em todo o sistema.fonte
Instale "xclip" se você não ...
sudo apt-get install xclip
O Xclip coloca os dados na área de transferência "seleção / realçada" que você clica com o botão do meio para colar em oposição a "ctrl + v"
Enquanto estiver no vim, use os comandos ex:
ou
ou
Em seguida, clique com o botão do meio para colar em qualquer outro aplicativo ...
fonte
Se o vim for compilado com suporte para área de transferência, então você pode usar o
"*y
significado: puxar o texto visualmente selecionado para o registro*
('*' é para área de transferência)Se não houver suporte para área de transferência, acho que a única outra maneira é usar
Ctrl+Insert
depois de selecionar visualmente o texto no vim.fonte
Eu adicionei a seguinte linha ao meu
.vimrc
Isso permite que você copie o texto selecionado para a área de transferência pressionando
F5
. Você deve estar no modo visual para que isso funcione.fonte
~/.vimrc
Obrigado, isso é muito melhor.Adicione o seguinte código ao seu
.vimrc
:fonte