首先,抱歉我的英语不好......
我在linux mint上安装了emacs,我已经设置了自己的配置。 一切都没事,除了键向后删除右边的字符(但是它应该删除左边的字符)。 我怎样才能改变这个关键的竞争? 我试着用它编码,但它很难改变我编码的方式。 我在互联网上看,但没有发现这个具体问题。
我的后退键就像删除键一样(我正在使用mac air,因此我没有可能导致问题的del键?)
感谢。
答案 0 :(得分:3)
以下是您的答案: C-h r
(打开Emacs手册),然后是g DEL Does Not Delete
。手册的那个节点正好说明了这个众所周知的问题。解决方案?把它放在你的init文件中:
(normal-erase-is-backspace-mode 0)
我是如何找到Emacs手动节点的?
我使用了 i
,它搜索当前手册的索引。我使用Icicles,它允许我使用子字符串匹配来完成(你也可以使用vanilla Emacs,但你需要配置它)。
所以我刚刚i backspace S-TAB
({strong> Icicles 中的S-TAB
执行apropos风格的完成; TAB
执行了香草Emacs完成。)
C-h r i backspace S-TAB
- 这就是您所需要的一切。
这将打开Emacs手册,并在backspace
的索引中查找索引条目的一部分。所以我看到了这些完成候选者(节点名称):
<BACKSPACE> vs <DEL>
<DEL> vs <BACKSPACE>
c-electric-backspace
C-S-backspace
normal-erase-is-backspace
normal-erase-is-backspace-mode
除了c-electric-backspace
和C-S-backspace
之外,其中每个条目实际上指向同一节点 DEL Does Not Delete
。 (您可以反复使用C-down
依次访问每个候选节点,看看它们是什么。)
即使在香草Emacs中,您也可以使用apropos搜索手册:Info中的 a
(即在手册中)是命令info-apropos
。试一试:a backspace RET
。
但是,对于子字符串匹配,它会搜索您已安装的手册的所有。 花了很长时间来搜索所有已安装的手册。
它(在我的机器上)生成一个列出这些搜索命中的信息缓冲区:
Apropos Index
*************
Index entries that match `backspace':
*Menu:
* BACKSPACE (Info mode) [info]: (info)Help-^L.
* C-S-backspace [emacs]: (emacs)Killing by Lines.
* c-electric-backspace [emacs]: (emacs)Program Modes.
* normal-erase-is-backspace-mode [emacs]: (emacs)DEL Does Not Delete.
* normal-erase-is-backspace [emacs]: (emacs)DEL Does Not Delete.
* <BACKSPACE> vs <DEL> [emacs]: (emacs)DEL Does Not Delete.
* <DEL> vs <BACKSPACE> [emacs]: (emacs)DEL Does Not Delete.
* Backspace key invokes help [efaq]: (efaq)Backspace invokes help.
* Help invoked by Backspace [efaq]: (efaq)Backspace invokes help.
* backspace [elisp]: (elisp)Basic Char Syntax.
* c-electric-backspace [ccmode]: (ccmode)Hungry WS Deletion.
* electric-backspace (c-) [ccmode]: (ccmode)Hungry WS Deletion.
* normal-erase-is-backspace-mode [ccmode]: (ccmode)Hungry WS Deletion.
* backspace-function (c-) [ccmode]: (ccmode)Hungry WS Deletion.
* c-backspace-function [ccmode]: (ccmode)Hungry WS Deletion.
* <backspace> [ccmode]: (ccmode)Hungry WS Deletion.
* C-c <backspace> [ccmode]: (ccmode)Hungry WS Deletion.
* C-c C-<backspace> [ccmode]: (ccmode)Hungry WS Deletion.
只有(emacs)
的内容出现在Emacs手册中。你会注意到,顺便说一句,Emacs FAQ和CC Mode手册都记录了你所看到的同一个问题 - 这是一个长期存在的问题。
答案 1 :(得分:0)
作为紧急补救措施,可以使用命令M-x normal-erase-is-backspace-mode
。该信息取自此处:link;上一个答案中提到了该文档。