Cette fonctionnalité n'est pas intégrée à Emacs, mais vous pouvez la modifier en ajoutant les lignes suivantes à votre fichier .emacs :
(defvar blink-cursor-interval-visible 1)
(defvar blink-cursor-interval-invisible 0.2)
(defadvice internal-show-cursor (before unsymmetric-blink-cursor-interval)
(when blink-cursor-timer
(setf (timer--repeat-delay blink-cursor-timer)
(if (internal-show-cursor-p)
blink-cursor-interval-visible
blink-cursor-interval-invisible))))
(ad-activate 'internal-show-cursor)
Emacs implémente le clignotement du curseur avec une fonction de basculement appelée par un timer. Chaque fois que la fonction est appelée, elle cache le curseur s'il est actuellement visible, ou l'affiche s'il est invisible. Malheureusement, le timer appelle cette fonction à un intervalle fixe.
Afin de réaliser des délais différents selon l'état du curseur, le code ci-dessus conseille la fonction interne qui permet d'afficher ou de masquer le curseur. Chaque fois que cette fonction est appelée, le conseil modifie le délai de la minuterie à 1 ou 0,2, selon que le curseur est visible ou non. En d'autres termes, chaque fois que le curseur est caché ou affiché, le délai de la minuterie est modifié.
C'est un peu bidon, mais ça fait l'affaire.