2011-07-23 40 views
0

当杀死区域杀死区域时,emacs表现得有点怪异,即杀死该区域,即使它没有真正被选中。它记得最后选择的地方,如果没有选择,它会杀死以前记住的地区。Emacs奇怪的区域杀戮

这真的令人困惑,因为意外的C-w(没有选择)会削减我绝对不想被削减的东西。

有什么方法可以改变这种行为吗?

+0

仅供参考,这部作品那般的原因是Emacs的早能够突出显示所选区域的花哨终端。您只需将光标位置(Emacs称之为“点”)和不可见的“标记”组合在一起即可形成当前区域。突出显示该区域(并在某些操作后将其停用)是Emacs中一项相当新的功能。 – cjm

回答

3

您可以重新映射C-w工作,只有当选定区域目前存在:

(define-key global-map (kbd "C-w") 
    (lambda() 
    (interactive) 
    (when mark-active 
     (call-interactively 'kill-region)))) 
+0

谢谢。这正是我需要的。 – Michal