Por que não pode copiar para o Windows 7 para o VIM?

1

Quais seriam os comandos para poder fazer CTRL + V no gVim?

No OS XI pode copiar texto para o vim, mas no Windows não estou recebendo.

Anderson Juhasc
fonte

Respostas:

2

Eu recomendaria um dos itens a seguir, em vez de configurar atalhos personalizados:

  1. Colar do registro:

    "+ ++p

  2. Cole usando o botão do meio do mouse

  3. Cole usando o menu de contexto

EDITAR:

De acordo com essa resposta, talvez seja necessário que a área de transferência seja definida como não nomeada para que a registradora cole no trabalho.

set clipboard=unnamed

tidbeck
fonte
Apenas "+ p não funciona no mac ou ganhar ...
Anderson Juhasc
@ AndersonJuhasc de acordo com esta resposta, você pode precisarset clipboard=unnamed
marque em
2

Da documentação do vim :

mswin.vim

Para usar o modo MS-Windows padrão de CTRL-X, CTRL-C e CTRL-V, use o script $ VIMRUNTIME / mswin.vim. Você poderia adicionar esta linha ao seu arquivo _vimrc: source $ VIMRUNTIME / mswin.vim

shf301
fonte
2

Embora você possa configurar atalhos de teclado como Otiel sugere, acho que pode ser mais útil entender como copiar e colar funciona no Vim e aprender o que esses comandos realmente significam.

A cortar, copiar e colar comandos no Vim ( d, ye p) trabalhar com os chamados registros que possuem o texto último corte ou copiado. Por padrão, eles usam o registrador sem nome "", enquanto a área de transferência do sistema é o "+registrador.

Você pode prefixar comandos com um registro para aquele. Então, para copiar do Vim para o Windows, use "+ye cole do Windows, use "+p.

Você também tem 26 registros nomeados "apara o "zqual você pode usar para qualquer coisa que você quiser. Isso pode ser muito útil ao realizar operações complexas de edição.

Existem mais registros especiais também, para mais informações, veja :help registers.

hammar
fonte
Usando '+ y' em OSX?
Anderson Juhasc
0

Adicione o seguinte no seu vimrcarquivo (deve estar localizado abaixo C:\Program Files\Vim\_vimrc):

" CTRL-X = cut
vnoremap <C-X> "+x
" CTRL-C = copy
vnoremap <C-C> "+y
" CTRL-V = paste
map <C-V> "+gP
cmap <C-V> <C-R>+
exe 'inoremap <script> <C-V>' paste#paste_cmd['i']
exe 'vnoremap <script> <C-V>' paste#paste_cmd['v']
imap <S-Insert> <C-V>
vmap <S-Insert> <C-V>

Ou use o pcomando no vim para colar o conteúdo da área de transferência.

Otiel
fonte
2
... isso é tão errado ...
Rook