Gostaria de poder colar da área de transferência do sistema (ou seleção de texto) no meu prompt de shell "vi-like" usando o teclado. Eu normalmente uso zsh e às vezes bash. Nos dois casos, eu tenho o shell configurado com um comportamento semelhante ao vi ( bindkey -v
/ set -o vi
).
No vim, o comportamento que estou procurando está disponível com a sequência de teclas "+p
. Porém, essa sequência de teclas específica não funciona como esperado em um prompt de shell habilitado para vi. Existe alguma maneira de habilitar esse comportamento ou um comportamento semelhante, usando apenas o teclado, mantendo as combinações de teclas do tipo vi em um prompt do zsh ou do bash shell?
- editar -
Caso de uso: eu geralmente navego entre o Firefox com o complemento Pentadactyl , um emulador de terminal e o próprio vim - usando o gerenciador de janelas do Xmonad com chaves personalizadas para navegar. Todos os três programas têm combinações de teclas semelhantes a vi, o que é muito eficiente (para "memória digital"), portanto, seria ideal comunicar o texto entre eles usando a sintaxe vim (ou uma sintaxe muito semelhante).
xsel
e copiar o código sugerido com uma pequena modificação no meu .zshrc (eu escolhi '^ P' em vez de '^ X', substituindo o comportamento original de '^ P')Aqui está uma solução para o zsh (modo vi) que agrupa os widgets originais para que a área de transferência esteja sempre sincronizada
Substitua
xclip
por sua ferramenta preferida da área de transferência.fonte
xterm-termite
.Seleção e área de transferência são coisas diferentes no X Window, e os "ambientes de desktop" do IMHO tendem a tornar o problema ainda mais obscuro do que era.
Shift-insert funciona para você? Em aplicativos X bare, é possível colar a seleção quando essa ligação é feita.
fonte
Esta solução funciona se você instalou
oh-my-zsh
e ativou ovi-mode
plug - in.Gilles'
xsel
ezle
solução baseada não funcionou para mim. No entanto, desde que eu tenha configurado vim a usar a minha prancheta sistema por padrão (set clipboard=unnamedplus
em~/.vimrc
), eu simplesmente digitar vno modo normal terminal para abrir o comando atual emvim
e então eu posso copiá-lo para o X-prancheta com qualquer um dosvim
comandos arranco.fonte
:term
disponível nas novas versões do Neovim e Vim?v
no modo normal para editar o comando atualmente digitado no vim, em vez de no prompt do terminal.:term
recurso na sua resposta, caso contrário, não é de todo claro.:term
. No entanto, descobri que a funcionalidade a que estou me referindo é realmente fornecida poroh-my-zsh
. Eu atualizei a resposta de acordo.