key-bindings – ¿Es posible crear asignaciones con parámetros?

Pregunta:

He creado algunas asignaciones como esta:

:nnoremap <buffer> <leader>xyzABC   :call SomeFunc('ABC')<CR>
:nnoremap <buffer> <leader>xyzDE    :call SomeFunc('DE')<CR>
:nnoremap <buffer> <leader>xyzFoo18 :call SomeFunc('Foo18')<CR>
:nnoremap <buffer> <leader>xyzBar22 :call SomeFunc('Bar22')<CR>

que funciona como se desee.

Ahora estoy buscando la posibilidad de crear una plantilla de mapa que me permita eliminar las partes obvias redundantes de mis asignaciones, algo como

:nnoremap <buffer> <leader> xyz? :call SomeFunc(?)<CR>

para poder pasar cualquier valor como parámetro a SomeFunc .

¿Existe tal posibilidad?

Respuesta:

Como dijo @ peter-rinckler, probablemente sea más fácil hacerlo con un comando:

command! -nargs=* Xyz :call SomeFunc(<q-args>)

Permite hacer (en modo normal)

:Xyz ABC

Realmente no me gusta la input() porque no puedes repetir ese tipo de cosas fácilmente.

Leave a Comment

Your email address will not be published.

Scroll to Top

istanbul avukat

-

web tasarım