Como posso copiar na área de transferência do Mac a partir do vim?

6

Eu posso colar do vim em uma janela de terminal para vim em outro, mas não para qualquer coisa fora do vim. Eu li inúmeros posts sobre o assunto, e nada que eu encontrei ajudou. Copiar / colar de MacVim funciona, mas eu prefiro usar o VIM.

Estou usando o OSX 10.7.5 e o Vim 7.4, instalados por meio do MacPorts.

vim --version 

mostra + área de transferência, + x11, + xterm_clipboard.

Eu tentei "+ y" e * y combinados com seleção visual e seleção de intervalo.

No meu ~/.vimrc , tenho

set clipboard=unnamedplus,unnamed,autoselect

EDITAR:

Solução encontrada! Agora, y, yy e assim por diante funcionam perfeitamente! Seja o que for que eu arranco no Vim, posso colar lá fora e, seja lá o que for que eu mandar lá fora, posso p no Vim.

A solução: De acordo com a sugestão do FDinof, eu reinstalei via MacPorts SEM x11, em vez disso apenas fazendo

sudo -v port install vim +huge

Para o registro, ainda tenho

set clipboard=unnamedplus,unnamed,autoselect

no meu ~ / .vimrc

Obrigado pela sua ajuda!

    
por Reefersleep 19.12.2013 / 04:36

4 respostas

1

x11 não é necessário para copiar para a área de transferência, pois o mac não usa o x11. Recompilar o vim sem x11. Meu palpite é que você está copiando para a área de transferência x11 que você não sabe como acessar do lado do mac.

No macports, o uso da variante enorme é suficiente para que o suporte da área de trabalho funcione.

port install vim +huge
    
por 11.01.2014 / 23:36
4

Da memória no Vim você pode usar o pbcopy e o pbpaste da mesma maneira que qualquer outro comando externo. Para copiar a linha atual para o tipo de área de transferência:

:.!pbcopy

para copiar as linhas de 1 a 50

:1,50!pbcopy

Para copiar o conteúdo da área de transferência para o uso atual do gerenciador de vim:

:r !pbpaste
    
por 19.12.2013 / 09:26
0

Por que vale a pena eu tive muitos problemas para configurar o vim para usar a área de transferência e não consegui fazer isso funcionar até que eu a reinstalei via homebrew sem a opção cliente-servidor.

    
por 31.03.2015 / 20:39
0

link

coloque abaixo as configurações no vimrc:

vnoremap \y y:call system("pbcopy", getreg("\""))<CR>
nnoremap \p :call setreg("\"", system("pbpaste"))<CR>p

noremap YY "+y<CR>
noremap P "+gP<CR>
noremap XX "+x<CR>

copie os dados no modo visual, cole os dados no modo normal.

    
por 22.04.2015 / 16:35