emacs、リージョンをコピーして、強調表示したままにする方法は?
(kill-ring-save)コマンドを実行するとリージョンの強調表示が失われるデフォルトのMwで十分満足です。その動作を変更したくありませんが、再バインド<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) 使用:Ubuntu 10.04.3のGNU Emacs 23.1.1