2016-04-07 4 views
0

Wie deaktiviere ich den Rechteckmarkierungsmodus von cua, wenn ich den Organisationsmodus in Emacs verwende? Strg + Enter wird von beiden Modi verwendet, und ich würde es vorziehen, wenn ich im Organisationsmodus bin, die cua-Funktionalität zu verlieren, da ich normalerweise kein Rechteck beim Bearbeiten eines Organisationsdokuments auswählen muss.Schalten Sie den Rechteckmarkierungsmodus im Organisationsmodus in Emacs aus

Ich bin mir ziemlich sicher, dass ich einmal Code in meinen .emacs hatte, der diese Funktion erfüllte, aber ich kann sie nirgendwo online mehr finden. Leider bin ich nicht genug von einem elisp Guru, um es selbst herauszufinden.

Antwort

2

Ich benutze CUA nicht bis auf die Rechtecke, so dass ich

(global-set-key (kbd "C-<return>") 'cua-rectangle-mark-mode) 

Org-Modus des Bindings automatisch globale Bindungen außer Kraft setzen, so C-<enter> läuft org-insert-heading-respect-content ohne zusätzliche Konfiguration.


Ich nehme an, Sie verwenden cua-selection-mode oder cua-mode, though. Da es global ist, können Sie es nicht nur in Organisationspuffern deaktivieren. Wahrscheinlich ist es das Beste, eine eigene Funktion zu definieren und sie an die Karte cua-mode zu binden.

(defun jpk/C-<return> (&optional arg) 
    (interactive "P") 
    (if (eq major-mode 'org-mode) 
     (org-insert-heading-respect-content arg) 
    (cua-rectangle-mark-mode arg))) 

(define-key cua-global-keymap (kbd "C-<return>") #'jpk/C-<return>) 

CUA tut Dinge Art von weirdly Vergleich zu den meisten kleineren Modi, also, während die oben genannten Arbeiten für mich wackelig sein könnte, wenn das Setup von meinem unterscheidet.

+0

Danke, Ihre Funktion macht, was ich brauchte. Ich habe eine vage Erinnerung daran, dass ich eine Ignorierliste für den Rechteckmarkierungsmodus habe, aber ich denke, dass ich es mit Drag-stuff verwechsle, da ich sehe "(Add-to-List 'Drag-stuff-except-modes' org-mode) "In meinen .emacs. – Bentles

Verwandte Themen