O Zsh não suporta nada além de registradores internos, e o bash não suporta o registro, tanto quanto eu sei. Em geral, os shells suportam comandos vi, não comandos vim.
No zsh, aqui está uma prova de conceito para acessar a seleção X no modo de comando. Para uso real, você gostaria de elaborar sobre essas técnicas. Eu uso o programa xsel
, você pode usar xclip
; consulte Como copiar de uma instância vim para outra usando registradores . Você encontrará os recursos que usei no manual do zle .
vi-append-x-selection () { RBUFFER=$(xsel -o -p </dev/null)$RBUFFER; }
zle -N vi-append-x-selection
bindkey -a '^X' vi-append-x-selection
vi-yank-x-selection () { print -rn -- $CUTBUFFER | xsel -i -p; }
zle -N vi-yank-x-selection
bindkey -a '^Y' vi-yank-x-selection
A função vi-append-x-selection
insere a seleção X atual após o cursor (semelhante a p
ou P
). A função vi-yank-x-selection
copia o último texto morto ou arrancado para a seleção X. zle -N
declara as funções como widgets zle (ou seja, comandos de edição). bindkey -a
define ligações para o modo de comando do VI.