AFAIK emacs ne prend pas keyup/keydown
uniquement en charge les événements keypressed
. Un exemple de conséquence est que lorsque nous voulons marquer une région, nous devons d'abord définir une marque set-mark-command
et pouvons ensuite marquer la région en se déplaçant autour du point. Bien que ce soit vraiment une fonctionnalité intéressante car vous n'avez pas besoin de maintenir une touche Maj enfoncée pendant le marquage du texte, il serait parfois souhaitable d'avoir le même comportement que dans d'autres éditeurs. Cette question est de comprendre pourquoi emacs ne prend pas en charge cette fonctionnalité et pourquoi cela est considéré comme meilleur . Existe-t-il également une approche idéomatique pour résoudre ce problème dans emacs?
la source
Réponses:
Comme indiqué dans les commentaires pour des raisons historiques, Emacs s'exécute dans les terminaux et ces périphériques sont orientés caractères - vous obtenez une séquence d'octets sans aucune garantie lorsque cela se produit au clavier.
La discussion souligne également qu'il est possible de l'implémenter pour un environnement graphique. Mais personne ne s'y intéresse.
Notez que certains programmes comme les jeux ou les logiciels de musique peuvent utiliser des informations détaillées sur le moment où la touche est enfoncée, la durée et la date de publication, mais l'édition de texte n'a rien de commun avec ces derniers.
Du manuel
(info "(elisp)Mouse Events")
:L'événement de survol peut être émulé par un temporisateur inactif - analysant la chose au point après le retard.
la source