Предположим, я хочу выделить какой-либо текст (отметить область) с помощью мыши, но без перетаскивания. Что я обычно делаю (в большинстве приложений, кроме emacs):
- щелкните левой кнопкой мыши (
down-mouse-1); - отпустите мою мышь, чтобы оставить курсор там, где я хочу, чтобы выбор начинался;
- нажмите и удерживайте клавишу Shift ;
- и, наконец, нажмите (
down-mouse-1) снова в том месте текста, где я хочу, чтобы выделение закончилось.
Однако я не могу сделать это с emacs , потому что на шаге 4 всплывает контекстное меню (Change default buffer face), и мой выбор теряется.
Я попытался переназначить <S-down-mouse-1> на несколько других команд, но безуспешно.
Кто-нибудь знает, как совершить этот подвиг в emacs?
(Я использую emacs 24.2 на Xubuntu 12.04, а также на Mac Os X 10.8 (Cocoa Emacs); я использую transient-mode и режим cua-mode .)
Обновить:
Я только что попробовал этот код, как предложено здесь, но также безуспешно.
;; shift + click select region
(define-key global-map (kbd "<S-down-mouse-1>") 'ignore) ; turn off font dialog
(define-key global-map (kbd "<S-mouse-1>") 'mouse-set-point)
(put 'mouse-set-point 'CUA 'move)
