J'essaie de définir une fonction qui permettra de voir plus facilement où se trouve le curseur en plaçant un réticule pendant 100 ms.
Voici ma tentative:
function! Flash()
set cursorline cursorcolumn
sleep 100m
set nocursorline nocursorcolumn
endfunction
nnoremap <leader>fl :call Flash()
Il semble cependant que la fonction ci-dessus appelle le sommeil au début plutôt qu'entre les deux appels "set".
Y a-t-il quelque chose de fondamental dans le "sommeil" que je ne comprends pas?
Réponses:
Le problème est que Vim ne redessine l'écran qu'après la fin de la fonction. Je ne suis pas sûr de ce que la logique de Vim quand de redessiner est exactement , mais dans ce genre de cas , vous avez souvent appeler
redraw
manuellement:Vous voudrez probablement aussi ajouter
<CR>
au mappage des clés:la source