【发布时间】:2016-02-02 19:48:35
【问题描述】:
我使用“--no-init-file”同时运行 emacs 23 和 24,以避免加载我的自定义设置。但随后我显式加载了我的旧版本 python-mode.el(版本 3.105,最后一次版权声明 1998 年),并看到了我将要描述的相同行为,所以我相信它是核心 emacs,而不是 python。
考虑这段代码(* 标记光标位置):
*def emacs_is_fun():
for x in range(3):
print(x)
将光标放在“def”开头的第 4 列。
使用 emacs 23,运行 mark-sexp 会选择“def”。
使用 emacs 24,mark-sexp 选择整个代码块,直到结束
打印语句。
这还不错。主要问题是这种常见用法:
*very_long_var_name[very_long_expn] += long_function_call(long_arg_list, blah)
同样,光标位于行的可打印部分的开头,第 4 列。
在 emacs 23 中,mark-sexp 选择 very_long_var_name。
在 emacs 24 中,mark-sexp 选择从第 4 列到末尾的整行。
我一直在使用Ctrl-alt-space alt-w 来快速保存变量名。
(或 alt-2 ctrl-alt-space alt-w 保存一个 ref 表达式。)现在是
走了。是emacs,所以这个一定是可定制的,但是我没找到
实现新行为的位置(记住我使用的是 python 模式
大约 15 岁)。我需要在我的 .emacs 文件中添加什么?
【问题讨论】: