mac instalar macos emacs elisp

macos - instalar - ¿A qué se refiere "s-[keyname]" en Emacs, y cómo le digo a Emacs que lo ignore?



instalar emacs en mac (4)

Información de fondo:

Estoy en una Mac, y acabo de actualizar a Emacs 23.1 a través de http://emacsformacosx.com/ . Hay algunos problemas, especialmente la falta de capacidad de pantalla completa.

Intenté solucionar este último problema instalando Megazoomer , que agrega un administrador de entrada global vinculado a Cmd-return . Esto hace que la aplicación actualmente en camino se maximice. Sin embargo, Emacs informa que <s-return> is undefined . Nunca he visto una s-[key] mencionada anteriormente, y Google no está disponible con una respuesta.

Entonces, dos partes:

  1. ¿Qué significa s-[key] ? Esto es puramente para mi satisfacción; y
  2. ¿Puedo decirle a Emacs que ignore esta combinación de teclas y permita que la combinación de teclas se transfiera al sistema (para que pueda volver a tener Emacs de pantalla completa)?

EDITAR: entonces 1) está resuelto, y en cuanto a 2) tengo: (global-set-key (kbd "<s-return>") ''ignore) , que al menos detiene el error. Sin embargo, Emacs aún se traga la combinación de teclas, que no es ideal.


(setq ns-command-modifier nil)

Se supone que debe hacer lo que quieras. Sin embargo, está teniendo un comportamiento algo impredecible en la máquina cuando lo pruebo, así que ten cuidado.


Para la pregunta sobre lo que significa s- [key], en ubuntu box significa la clave en forma de Windows®. Lo que significa en los sistemas OSX, no lo sé.

En cuanto a la maximización de ventanas, ¿podrías probar esto? (Debería funcionar, iif OSX ejecuta un servidor X en algún lugar debajo de todo)

(if (equal (window-system) ''x) (progn (defun toggle-fullscreen () "Toggles fullscreen" (interactive) (x-send-client-message nil 0 nil "_NET_WM_STATE" 32 ''(2 "_NET_WM_STATE_MAXIMIZED_VERT" 0)) (x-send-client-message nil 0 nil "_NET_WM_STATE" 32 ''(2 "_NET_WM_STATE_MAXIMIZED_HORZ" 0))) (global-set-key (kbd "C-c C-y") ''x-clipboard-yank) (global-set-key (kbd "M-RET") ''toggle-fullscreen)))

Este pequeño fragmento es lo que utilizo para alternar a pantalla completa en mis computadoras * nix. Y tirar del portapapeles de X es una buena habilidad para tener.

En cuanto a cómo establecer combinaciones de teclas, use global-set-key para combinaciones de teclas independientes del modo. (Agréguelo a su archivo .emacs si desea que sea permanente).


Con el sencillo Emacs 23.1 en Macbook Pro, puedo asignar la clave de opción correcta a super

(setq ns-right-option-modifier ''super)

Su otra opción parece ser la tecla de función, que sería el ns-function-modifier . Sin embargo, fn podría tener otros usos, mientras que el predeterminado de Emacs es mapear ns-right-option-modifier a ''left (es decir, el mismo efecto que la tecla de opción izquierda, ¡que en cualquier caso necesito para obtener el carácter # !) , por lo que la tecla de opción correcta es en cierta medida redundante.

Los zurdos pueden querer invertir esto.


Es la tecla Super , como M- es la tecla Meta (tecla Alt en el teclado de una PC, tecla Comando en su teclado) y C- es la tecla Control.

Por supuesto, nunca vi una súper tecla en mi teclado ... son de una era pasada. Wikipedia tiene una imagen de este impresionante "teclado de Space Cadet" que tiene todos los modificadores que necesitarás: