2009-08-30 14 views
22

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

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.

He intentado solucionar este problema mediante la instalación de 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 un s-[key] mencionado anteriormente, y Google no está disponible con una respuesta.

Así, dos partes:

  1. s-[key] ¿Qué significa? 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)?

EDIT: así 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.

+0

Si eres nuevo en Mac, es posible que quieras probar Aquamacs. F7 (o m-X aquamacs-toggle-full-frame) alterna el modo de pantalla completa. – Greg

+0

No soy nuevo en Mac, soy nuevo en Emacs. Y probé Aquamacs y no me gustó. Gracias de cualquier manera. –

+0

por lo que tengo: (-set-key mundial (KBD "") 'ignorar) lo que significa que ya no aparece un error, pero todavía Emacs traga la combinación. :( –

Respuesta

21

Es la Super key, como M- es la tecla Meta (tecla alt en un teclado de PC, tecla de comando en el teclado) y C- es la clave de control.

Por supuesto, nunca he visto una súper llave en mi teclado ... son de una era pasada. Wikipedia tiene una imagen de este impresionante "Space Cadet keyboard" que tiene todos los modificadores que usted necesitará siempre:

+1

Me encantaría tener uno de estos hoy en día. +1 para la foto. – Jonathan

+1

Yo también, imagínese tener un pulgar- arriba y abajo en el teclado! Sin mencionar los cuatro números romanos ... :-) –

+0

Impresionante, gracias por eso. Sin embargo, ¿no sabrías cómo puedo decirle a Emacs que abandone esa combinación ...? –

1
(setq ns-command-modifier nil) 

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

2

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ía 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 cambiar de pantalla completa en mis equipos * 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. (añadirlo a su .emacs archivo si quiere que sea permanente.)

7

con Emacs 23.1 de civil en un MacBook Pro, puedo asignar la opción derecha para super por

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

Su otra la opción parece ser la tecla de función, que sería ns-function-modifier.Sin embargo, fn puede tener otros usos, mientras que Emacs 'predeterminado 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 obtener el carácter #!), Por lo que la opción correcta la clave es en cierta medida redundante.

Es posible que los zurdos quieran invertir esto.

Cuestiones relacionadas