2012-05-17 12 views
8

Después de migrar a win7paredit 's slurp forward "C-) ya no funciona y" C-right arrow "sigue funcionando, vuelve a enlazar sexp para una combinación diferente (como C-0) también funciona.
¿Alguien tiene el mismo problema?Paredit forward slurp "C-" no funciona para emacs en Windows 7

+0

no tengo caja de ventanas., Pero no creo que paredit es específica del sistema operativo .. – kindahero

+1

Pruebe 'C-h K'' C) 'para ver cómo las respuestas. es decir, ¿emacs recibe el comando, cuáles son los enlaces asociados a él ... – Daimrod

+1

@Daimrod, acabo de probar C-h k C-), y emacs no recibió el comando, por lo que no está respondiendo a él. – siyu

Respuesta

2

Sucede en Windows 7, si tiene más de un idioma de entrada. Ctrl-Shift-0, Ctrl-Shift-1, ... son para cambiar rápidamente el idioma de entrada. Parece que no se puede corregir, ya que Windows intercepta ciertas combinaciones de teclas (por ejemplo, Win-E, Win-D, etc.) y no las transfiere a la aplicación. Podría ser peor, el controlador Intel GMA no le permite usar Ctrl-Alt-Up/Down en Win XP.

Simplemente use otro atajo en Emacs (o puede intentar reasignar claves usando herramientas como, Sharpkeys).

+0

Gracias por las sugerencias, no tengo otro idioma de entrada aparte del inglés aquí, deben ser otras aplicaciones o los controladores están tomando la combinación de teclas. Probablemente solo me quede con la "C-flecha derecha" – siyu

2

Paredit versión He vinculado el comando slurp hacia adelante a <C-right> y C-). Puedo verificar que la última clave sea consumida por el sistema operativo, MS Windows 8 en mi caso, por lo que Emacs no puede recibir esa clave. Por lo tanto, es posible que desee utilizar <C-right> en su lugar, pero dado que esa clave (y también <C-left> que está vinculada a otro comando de crédito) es normalmente para movimiento (fuera de paredit), tal vez desee usar su propia clave personalizada. Yo uso C-*. La siguiente es la configuración que uso, y puede tomar las partes que desee.

(require 'paredit) 

(define-key paredit-mode-map (kbd "C-*") 'paredit-forward-slurp-sexp) 

;; Make the key no longer bound to paredit-forward-barf-sexp 
(define-key paredit-mode-map (kbd "<C-left>") nil) 

;; Make the key no longer bound to paredit-forward-slurp-sexp 
(define-key paredit-mode-map (kbd "<C-right>") nil) 

(define-key paredit-mode-map (kbd "<C-backspace>") 'paredit-backward-kill-word) 
3

Windows 7 usa Ctrl + Shift para cambiar de idioma, por lo que Emacs nunca recibe las pulsaciones de tecla. Puede cambiar la unión con lo siguiente:

  • Panel de control
  • regional y de idioma
  • Teclados e idiomas
  • Cambiar teclados Ajustes
  • clave avanzada
  • Entre los idiomas de entrada
  • Cambio Secuencia de teclas
  • Diseño del teclado del interruptor
  • No asignado.

http://www.eightforums.com/general-support/22552-cant-use-ctrl-shift-0-windows-has.html

+0

En Windows 10, eso se convierte en 'Panel de control -> Cambiar métodos de entrada -> Configuración avanzada -> Cambiar teclas rápidas en la barra de idioma. Deshabilité los atajos allí. – Apteryx

Cuestiones relacionadas