0

emacs で org モードを使用しているときに、cua の長方形マーク モードを無効にするにはどうすればよいですか? Ctrl + Enter は両方のモードで使用されます。通常、組織ドキュメントを編集するときに四角形を選択する必要がないため、組織モードのときは cua の機能を失いたいと思います。

.emacs にこの機能を実行するコードがあったことは確かですが、オンラインのどこにも見つかりません。悲しいことに、私は自分でそれを理解するのに十分な elisp の第一人者ではありません。

4

1 に答える 1

2

長方形以外はCUAを使用しないので、使用します

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

Org モードのバインドは自動的にグローバル バインドをオーバーライドするため、追加の構成なしでC-<enter>実行されます。org-insert-heading-respect-content


cua-selection-modeただし、 orを使用していると思いますcua-mode。これはグローバルであるため、org バッファーだけでオフにすることはできません。cua-modeおそらく最善の方法は、独自の関数を定義してのマップにバインドすることです。

(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 は、ほとんどのマイナー モードと比較して奇妙なことを行うため、上記は私にとっては機能しますが、セットアップが私のものと異なると不安定になる可能性があります。

于 2016-04-07T18:26:42.190 に答える