Emacs: отключить выбор смещения в режиме CUA - PullRequest
3 голосов
/ 15 декабря 2010

Мне удалось отключить встроенный выбор смещения с помощью (set-variable 'shift-select-mode nil). И мне нравится C-Ret -column-selection CUA-mode. Но CUA автоматически разрешает выбор смещения (но, похоже, не через переменную shift-select-mode).

  • Итак, есть ли возможность отключить смену в режиме CUA?
  • Или: есть ли способ использовать функцию выбора столбцов исключительно в режиме CUA, т.е. без каких-либо других вещей CUA?

Ответы [ 3 ]

0 голосов
/ 10 мая 2013

В частности, чтобы отключить выбор смещения для cua-mode, добавьте следующее в файл инициализации ( например .emacs ) перед включением cua-mode:

(setq cua-enable-cua-keys nil)
(setq cua-highlight-region-shift-only t) ;; no transient mark mode
(setq cua-toggle-set-mark nil) ;; original set-mark behavior, i.e. no transient-mark-mode

...
(cua-mode)

Первоначально ответил https://superuser.com/a/77453/223457

0 голосов
/ 10 мая 2013

Чтобы включить редактирование прямоугольника (столбца) только из Cua, вы можете использовать следующее (из emacs-fu )

(setq cua-enable-cua-keys nil) ;; только для прямоугольников (cua-mode t)

0 голосов
/ 16 декабря 2010

Это не решение, но к вашему сведению ...

Я заметил, что эта переменная, упомянутая в справке для cua-mode

cua-highlight-region-shift-only is a variable defined in `cua-base.el'.

*If non-nil, only highlight region if marked with S-<move>.
When this is non-nil, CUA toggles `transient-mark-mode' on when the region
is marked using shifted movement keys, and off when the mark is cleared.
But when the mark was set using M-x cua-set-mark, Transient Mark mode
is not turned on.

cua-mode, делает это:

(setq shift-select-mode nil)
(setq transient-mark-mode (and cua-mode
               (if cua-highlight-region-shift-only
                   (not cua--explicit-region-start)
                 t))))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...