às vezes eu uso sed -n5,10ppara imprimir as linhas 5-10, para que eu possa copiar e colar com mais facilidade, sem o vim reagir ao mouse.
Grant16
na verdade, de dentro do vim, o comando parece:!sed -n 5,10p %
grantbow 29/11
Obrigado por todos os comentários e respostas. xclip às vezes é útil, obrigado @ sergiy-kolodyazhnyy. Quando trabalho em máquinas diferentes, às vezes não tenho controle sobre o que o vim está instalado, mas é útil ter as instruções para verificar a resposta do @muru, obrigado @ ashutosh-tripathy. Preciso usar os comandos vim register com mais frequência para lembrá-los quando precisar deles. Como mencionei na pergunta acima, se eu quiser fazê-lo rapidamente e o arquivo for pequeno, o comando dentro do vim será semelhante a:!cat %
grantbow 15/10/18
Respostas:
12
Você precisa ter Vim com o clipboarde xtermclipboardrecursos compilado. No Ubuntu, estes estão disponíveis apenas com os pacotes vim GUI ( vim-gnome, vim-gtk, vim-athena, etc.).
Depois de instalar um desses, você pode copiar (e colar) os registros da área de transferência ( *e +). Deste post muito informativo sobre Vi e Vim :
Para sistemas baseados no X11 (por exemplo, Linux e a maioria dos outros sistemas semelhantes ao UNIX ), existem 2 áreas de transferência independentes entre si:
PRIMÁRIO - É copiar na seleção e pode ser colado com o botão do meio do mouse.
CLIPBOARD - Isso é copiado (geralmente) ^Ce colado com ^V(É como o MS Windows).
O Vim possui 2 registros especiais correspondentes a estas pranchetas:
*usa PRIMARY; mnemônico: s tar é s eleger (para a cópia-on- s eleitos)
+usa CLIPBOARD; mnemônico: CTRL + C (para o teclado comum)
Para copiar para um registro, você precede o comando copy ( y) com "e o nome do registro ( *, por exemplo). "*y, Em seguida, o botão do meio para colar, ou "+ye ShiftInsertpara colar.
Uma solução bastante interessante vem dessa questão. Instale o xclip, depois canalize a saída de um comando para o xclip ( cat file | xclip -selection clipboardpor exemplo) e cole-o em qualquer lugar (se estiver no terminal - use CtrlShiftV
). Agora, você pode encurtar esse comando para xclip -sel clip, o que não é exatamente aparente na leitura da página de manual ou nos exemplos.
sed -n5,10p
para imprimir as linhas 5-10, para que eu possa copiar e colar com mais facilidade, sem o vim reagir ao mouse.:!sed -n 5,10p %
:!cat %
Respostas:
Você precisa ter Vim com o
clipboard
extermclipboard
recursos compilado. No Ubuntu, estes estão disponíveis apenas com os pacotes vim GUI (vim-gnome
,vim-gtk
,vim-athena
, etc.).Depois de instalar um desses, você pode copiar (e colar) os registros da área de transferência (
*
e+
). Deste post muito informativo sobre Vi e Vim :Para copiar para um registro, você precede o comando copy (
y
) com"
e o nome do registro (*
, por exemplo)."*y
, Em seguida, o botão do meio para colar, ou"+y
e ShiftInsertpara colar.fonte
Uma solução bastante interessante vem dessa questão. Instale o xclip, depois canalize a saída de um comando para o xclip (
cat file | xclip -selection clipboard
por exemplo) e cole-o em qualquer lugar (se estiver no terminal - use Ctrl ShiftV ). Agora, você pode encurtar esse comando paraxclip -sel clip
, o que não é exatamente aparente na leitura da página de manual ou nos exemplos.fonte
/dev
, mas o texto ainda está em algum lugar, certo?Eu tive um problema porque meu vim não suportava a área de transferência :
Instalei o vim-gnome (que suporta a área de transferência) e verifiquei novamente:
Agora eu posso copiar e colar usando "+ ye" + p, respectivamente.
fonte