osx – el mapa de teclas local en la línea de modo no funciona en la terminal

Pregunta:

Tengo problemas para hacer que los mapas de teclas locales: s funcionen en la línea de modo, pero solo en terminales (con el modo xterm-mouse-mode habilitado).

Esto se aplica tanto a las entradas de línea de modo estándar (como mode-line-toggle-read-only ) como a las entradas que agrego manualmente.

Por ejemplo, lo siguiente funciona en una GUI Emacs (probado en el puerto NS en macOS), pero no en un Emacs que se ejecuta en una terminal. (Al hacer clic en el texto PRESSME en la línea de modo, debería aparecer el mensaje I was pressed ):

(defun my-press-me ()
  (interactive)
  (message "I was pressed"))

(push '(:propertize "PRESSME"
                    local-map
                    (keymap
                     (mode-line .
                                (keymap
                                 (down-mouse-1 . my-press-me)))))
      mode-line-format)

Curiosamente, cuando PRESSME Ch k y PRESSME clic en el texto PRESSME , informa my-press-me tanto en una GUI Emacs como cuando se ejecuta en la terminal.

¿Alguna idea?

Respuesta:

IIUC este es un error en el código C de Emacs que fue arreglado recientemente en la rama master de Emacs (es decir, será arreglado en Emacs-27, pero no en Emacs-26).

Podría haber una manera de solucionar el error con algún truco elegante en el modo xterm-mouse en Emacs <27, pero no estoy seguro de que valga la pena intentarlo.

Consulte https://debbugs.gnu.org/29104 para obtener más detalles.

Leave a Comment

Your email address will not be published. Required fields are marked *

Scroll to Top

web tasarım