Emacs 24中的Shift选择不高亮显示文本

Emacs 24中的Shift选择不高亮显示文本,emacs,Emacs,我一定很愚蠢,但我刚刚切换到Emacs 24,在移动点的同时按住Shift键不再突出显示文本。鼠标选择与以前一样有效。我错过了什么?我是不是碰巧把它关掉了?或者轮班选择被认为是不符合逻辑的,所以我们手头有其他更好的基于键盘的选择吗?在Emacs 24中,默认情况下会启用轮班选择 您可以始终运行emacs-Q来禁用init文件和任何其他默认库,以确定emacs的默认行为 您还可以运行emacs-q,这将仅禁用您的init文件(可以加载其他系统范围的init文件) 如果该功能在没有init文件的情况

我一定很愚蠢,但我刚刚切换到Emacs 24,在移动点的同时按住Shift键不再突出显示文本。鼠标选择与以前一样有效。我错过了什么?我是不是碰巧把它关掉了?或者轮班选择被认为是不符合逻辑的,所以我们手头有其他更好的基于键盘的选择吗?

在Emacs 24中,默认情况下会启用轮班选择

您可以始终运行
emacs-Q
来禁用init文件和任何其他默认库,以确定emacs的默认行为

您还可以运行
emacs-q
,这将仅禁用您的init文件(可以加载其他系统范围的init文件)

如果该功能在没有init文件的情况下工作,并且不能使用它,那么您可以开始缩小init文件的哪一部分出错的范围(通常是通过注释掉功能,直到该功能开始按预期工作——请注意Drew的注释)


在这种情况下,我建议您首先(使用C-hv)验证
换档选择模式
变量是否为非
(在正常配置下运行时),因为
值意味着换档选择被禁用。

我还发现查看
加载路径
变量很有用,
C-h v加载路径
,它将我指向罪犯,旧elpa软件包。

您使用的是组织模式吗?如果是,则:
(setq组织支持轮班选择“始终”)
;或
nil
表示从不;或
t
用于在特殊上下文之外的情况。运行
emacs-Q
以验证默认情况下班次选择突出显示是否有效。在正常配置下运行时,还要检查变量
shift-select mode
是否为非
nil
。@phils,我赞扬你的谦虚,但你能给出一个完整的答案吗?是的,使用
emacs-Q
,它确实可以工作。很抱歉,虽然我正在广泛使用emacs,但我几乎没有时间真正研究它。因此,无论我的问题有多无意义,请定期回答,并解释-Q的含义,也许还有放入
.emacs
中的代码片段。因为它显然在没有init文件(
emacs-Q
)的情况下工作,所以通过递归地对init文件(
~/.emacs
)进行二等分来缩小问题的范围。也就是说,注释掉其中的1/2,然后是3/4、7/8、15/16。。。您可以使用带或不带前缀arg的命令
comment region
对文本区域进行注释。@Drew在
.emacs
完全注释掉的情况下,不希望出现的行为仍然存在,而
emacs-Q
仍会恢复它。初始化文件在哪里?实际上,
C-hv
报告
shift-select mode
变量的值为
nil
,而原始值为
t
。我将尝试init file bisecting方法,看看是谁为我做了这个不需要的更改。在这样做之前,请确保检查它是否直接设置在init文件中(如果是单独的,则设置在自定义文件中)。e、 g.通过
M-x自定义变量RET shift select mode RET
更新和保存值可能就足够了。否则,您可能会发现
M-x rgrep-RET shift-select mode RET*.el-RET~/.emacs.d/RET
有助于跟踪潜在的罪犯。罪犯是
.emacs.d/elpa
中的旧软件包。我清除了它们,只重新安装了我需要的。这是因为我重新安装了整个系统,并简单地将备份的配置文件复制到我的主目录。