2009-05-02 12 views
16

In emacs, dopo un'operazione come comment-region, la regione selezionata viene automaticamente deselezionata.Emacs: mantenere la regione selezionata dopo l'operazione

C'è un modo per disabilitare questo comportamento?

+5

Sei sicuro che la regione sia deselezionata, o hai appena perso l'evidenziazione visiva? (Si può provare a eseguire uncomment-region' subito dopo 'comment-region'.) –

+0

Wow, hai ragione, grazie! Accetterò la risposta di Brians. – EoghanM

+0

4 anni dopo e ho completamente dimenticato che la regione è ancora invisibilmente selezionata. Devo trovare un editor di testo con un'interfaccia utente migliore. – EoghanM

risposta

10

Se la regione è deselezionata, sembra che sia necessario utilizzare transient-mark-mode. In transient-mark-mode, quando si esegue un comando che opera nella regione, la regione viene deselezionata (in particolare, il segno rimane, ma non è attivo). È possibile riselezionare la regione (riattivare il segno) utilizzando C-x C-x (exchange-point-and-mark).

Se si desidera disattivare completamente la deselezione, è possibile disattivare transient-mark-mode. Ciò significa che non verrà evidenziata la regione corrente, anche se si desidera impostare il segno e evidenziare la regione, è possibile turn on transient mark mode briefly utilizzando C-<SPC> C-<SPC> o C-u C-x C-x.

+0

hmm, io non riesco a spegnerlo - Ora ho (variabili custom-set- '(-mark-mode transitorie nil)) in .emacs e Mx transient-mark-mode dà: transitoria -Mark mode disabled ma il comportamento (evidenziazione e deselezione immediata) non è cambiato – EoghanM

+0

È piuttosto strano. Hai qualcos'altro nel tuo .emacs che abilita la modalità contrassegno transitoria? O c'è qualcosa in una particolare modalità principale che stai usando che forza la modalità contrassegno transitoria? –

+0

grep -r "transient" ~/.emacs.d/non restituisce nulla, e niente in ~/.emacs – EoghanM

Problemi correlati