2009-05-02 16 views
16

En emacs, después de una operación como comment-region, la región seleccionada se deselecciona automáticamente.Emacs: mantener la región seleccionada después de la operación

¿Hay alguna forma de deshabilitar este comportamiento?

+5

¿Estás seguro de que la región está deseleccionada o simplemente has perdido el resaltado visual? (Puede intentar ejecutar 'uncomment-region' justo después de' comment-region'.) –

+0

Wow, tienes razón, gracias! Aceptaré la respuesta de Brians. – EoghanM

+0

4 años después y me olvidé por completo de que la región aún está invisible. Debo encontrar un editor de texto con una mejor IU. – EoghanM

Respuesta

10

Si la región está deseleccionada, parece que debe estar usando transient-mark-mode. En transient-mark-mode, cuando ejecuta un comando que opera en la región, la región se deselecciona (en particular, la marca permanece, pero está inactiva). Puede volver a seleccionar la región (reactivar la marca) usando C-x C-x (exchange-point-and-mark).

Si desea deshabilitar completamente la anulación de selección, puede desactivar transient-mark-mode. Esto significa que no obtendrá ningún resaltado de la región actual, aunque si desea establecer la marca y resaltar la región, puede turn on transient mark mode briefly usando C-<SPC> C-<SPC> o C-u C-x C-x.

+0

hmm, me parece que no puede apagarlo - Ahora tengo (variables personalizadas-set- '(nil-marca de modo transitorio)) en .emacs y a precios de modo transitorio Mx da: transitoria -Marco modo deshabilitado pero el comportamiento (resaltado y deselección inmediata) no ha cambiado – EoghanM

+0

Eso es bastante extraño. ¿Tiene algo más en sus archivos .emacs que habilite el modo de marca transitoria? ¿O hay algo en un modo principal particular que está utilizando que fuerce el modo de marca transitoria? –

+0

grep -r "transient" ~/.emacs.d/no aparece nada, y nada en ~/.emacs – EoghanM

Cuestiones relacionadas