Eu era um emacs
usuário e preciso mudar para vim
. Mas sinto falta de alguns comandos básicos do emacs no vim
modo de inserção:
C-A
C-E
C-K
C-Y
C-x C-s
- ... e alguma outra
Eu sei que posso pressionar Escape
e, em seguida, pressione algumas das seguintes teclas e, finalmente, pressione a tecla i
:
^
$
d$
p
:w
[Entrar]- ...
No entanto, eu gostaria de permanecer no vim
modo de inserção e evitar pressionar as teclas Escape
/ i
.
Na web, eu encontrei personalizações para emacs
( vi-mode
, vip
, viper
, vimpulse
, vim-mode
, evil
). Mas ainda não encontrei o oposto: personalize vim
para usar emacs
comandos ...
Estou interessado nos emacs
comandos apenas no vim
modo de inserção . Apenas alguns comandos básicos, como bash
comandos: C-A
, C-E
, C-K
, C-Y
, C-U
... (sim C-U
não é um padrão emacs
de comando, mas eu gosto muito).
fonte
<Esc>pa
que seria melhor para<C-Y>
<C-K>
que não funciona quando o cursor está mais à esquerda - ele deve excluir a linha inteira, masEsc>lDa
deixará o primeiro caractere não excluído .Você pode mapear qualquer comando no modo de inserção para qualquer coisa usando o
:imap
comando ou salvar a digitação usando:im
. Para seu primeiro mapeamento, você pode digitar (no modo normal)::im <C-A> <esc>^i
Que entra no modo normal (com escape), pressiona
^
por você e volta ao modo de inserção. Veja a ajuda para mais informações::help :imap
ou mais curto::h :im
Observe que você pode substituir os mapeamentos de chaves existentes. Coloque os comandos no seu
.vimrc
arquivo de configuração, se quiser que eles estejam lá para todos os documentos.fonte
:im <c-a>
. Se aparecer "Nenhum mapeamento encontrado", você não substituirá nada. Eu não acho que ele vai ficar muito mais robusto do que isso ...vim
comandos ... Por favor, você sabe onde posso encontrar uma lista dos:im
últimos argumentos? FYI, eu também estou acostumado com os seguintesbash
comandos:M-backspace
,M-F
,M-B
,M-D
... Vai ser bom se alguém já fez isso e compartilha seu trabalho, não é? (algo comoevil
) Portanto, eu poderia reutilizar o:im
mapeamento de teclas sem fazer isso sozinho (propenso a erros). Você entende o que eu quero dizer?:im
. Para fazer um comentário de nível superior: se você quiser usar o Vim em várias plataformas / computadores sem precisar carregar seus próprios plugins, modos especiais ou arquivo vimrc, acho que a melhor coisa a fazer é aprender / usar os comandos padrão do Vim, tanto quanto possível. Eu mesmo fiz vários mapeamentos importantes, mas sempre tente encontrar a alternativa padrão do Vim. E pode ser bem rápido. Uma coisa que eu fiz é o mapa<esc>
para;j
, fazendo o mapeamento nr 1 tão fácil como;jI
e nr 2;jA
.Não é uma resposta completa, mas você conhece o chamado " modo fácil " do Vim (
vim -y
)? Ele está sempre no modo de edição por padrão, e faz muito do que você deseja e não precisa instalar nem personalizar nada. Faz CTRL-A, C, V, X, Y etc. Na lista de chaves :Uma versão muito mais poderosa disso é o Cream , que remapeia muito mais teclas e torna os comandos básicos semelhantes a outros editores com os quais você pode estar familiarizado.
Há também o plug-in Vimacs , que permite todos os mapeamentos de chaves comuns do emacs. É fácil de instalar e pode fazer o que você deseja (nunca tentei).
fonte