37
Estoy intentando crear un comando definido por el usuario en VIM que toma un argumento y llama a una función con el argumento proporcionado por el usuario. Parece simple, pero no puedo hacer que funcione. Aquí está el código de mi plug-in foo.vim:VIM: ¿Cómo pasar argumentos a las funciones de los comandos del usuario?
function! s:MyFunc(myParam)
do something
endfunction
command! -nargs=1 MyCommand call s:MyFunc(myParam)
Cuando intento esto en un tampón VIM como esto:
:MyCommand exampleParam
que obtienen los siguientes errores:
E121: Undefined variable: myParam
E116: Invalid arguments for function <SNR>7_MyFunc
¿Qué pasa aquí? ¿Cómo puedo solucionar esto? Cualquier ayuda es muy apreciada.
Funciona! ¡Gracias! ¡Gracias! y nuevamente: ¡¡¡Gracias !!! – venk
No estaba seguro de lo que significaba el '!', Significa sobrescribir el comando existente. Encontré esto útil: http://www.adp-gmbh.ch/vim/user_commands.html \t > ': com!' 'Existing-cmd-name cmd-replacement' – alockwood05