Répétez la commande de mappage en mode d'affichage vim
PHP中文网
PHP中文网 2017-05-16 16:42:01
0
2
702

J'ai écrit une fonction vim pour imprimer les lignes de texte sélectionnées et effectuer le mappage des touches de raccourci. Le code est le suivant :

function! EchoVisual()
        let st= getpos("'<")[1]
        let ed= getpos("'>")[1]
        execute '!sed -n '.st.','.ed.'p '.expand('%:p')
endfunction


vmap <leader>e :call EchoVisual()<CR>

Mais en exécution réelle, la fonction EchoVisual sera exécutée n fois à chaque fois que j'appuie sur <leader>e La taille de n est la même que le nombre de lignes que j'ai sélectionnées. Quel est le problème ? Comment le résoudre?

PHP中文网
PHP中文网

认证高级PHP讲师

répondre à tous(2)
漂亮男人

Maintenant je sais

command! -range=% EchoVisual :!sed -n <line1>,<line2>p %:p
vmap <leader>e :EchoVisual<CR>
阿神
command! -range=% EchoVisual :<line1>,<line2>p | echo expand('%:p')
vmap <leader>e :EchoVisual<CR>

Comment ?

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal