Я досить задоволений типовим Mw, (kill-ring-save)який втрачає виділення регіону після запуску команди. Я не хочу змінювати його поведінку, але хочу повторно зв’язатись, <C-insert>щоб виконати подібну дію та зберегти виділення регіону.
Я спробував (не) налаштувати transient-mark-modeбезпосередньо і за допомогою функції, але регіон все ще втрачає свою підсвічування.
Запуск лише (kill-ring-save (region-beginning) (region-end))в інтерактивній функції працює так, як очікувалося, тобто. вона втрачає виділення.
Запуск лише (exchange-point-and-mark) (exchange-point-and-mark)в інтерактивній функції працює так, як очікувалося, тобто. він знову виділяє регіон і ставить / залишає крапку в оригінальному / правильному місці.
Однак, коли я ставлю їх разом у функції, це не відзначає регіон. Ось нефункціонуюча функція та обов'язковість:
(defun kill-ring-save-keep-highlight ()
(interactive)
(kill-ring-save (region-beginning) (region-end))
(exchange-point-and-mark) (exchange-point-and-mark)
)
(global-unset-key (kbd "<C-insert>"))
(global-set-key (kbd "<C-insert>") 'kill-ring-save-keep-highlight)
Використання: GNU Emacs 23.1.1 в Ubuntu 10.04.3
activate-mark, але це все ще не працює. Я навіть встановив VM Ubuntu 11.04 з чистим шифером з єдиним кодом,.emacsякий виконує цю функцію, але він все ще не активує позначку, але вручну застосовуєтьсяC-x C-xодразу після того, якC-insertбуде відновлено підсвічування ...