Existe alguma maneira de pular para um buffer digitando o número do buffer diretamente :ls
?
Quero dizer, por que esse comando espera que Press ENTER or type command to continue
, se pressionar por exemplo 2
, não faça nada?
Obviamente, não vou instalar nenhum plugin, pelo menos um pequeno script .vimrc
.
Obrigado.
:ls
para:ls<cr>:b<space>
(do seu exemplo). Quero dizer sobre substituir, em vez de acrescentar nova função. Graçascmap
, pois eles podem se expandir em outros "modos" da linha de comando, como pesquisa/
,.:find utils
, porque ele contém ls: DCtrl-V
antes de você digitar qualquer um dos caracteres c-mapeados:find uti^Vls
. Ainda é uma dor, mas ainda não vejo uma abordagem melhor. Talvez você possa mapear:lsx
ou:lsq
se acostumar a usá-lo em vez de:ls
. ("lsx" e "lsq" dificilmente aparecerão em comandos ou pesquisas da vida real.)Você pode obter um fluxo de trabalho próximo ao desejado, sem configurar o vim.
Você pode pular para o enésimo enésimo buffer usando
<C-^>
(ctrl
+6
).Se você digitar um dígito enquanto visualiza a saída de
ls
, esse dígito é armazenado e pode ser passado para o próximo comando.Para produzir as capturas de tela falsas do vim, aumentei o tamanho da fonte para poder ver apenas algumas linhas e definir os seguintes listchars.
Então, se você faz
Então sua tela ficará assim:
Você pode ver os arquivos pressionando
:ls<cr>
.A partir daí, se você digitar
2
e<C-^>
será direcionado para o próximo buffer.fonte