我在ubuntu14.04上使用emacs24编写一些python代码。我最近从Ubuntu12.04和emacs23升级,看起来emacs中新的python模式被称为“py outl”。我试过研究这种模式,但找不到我的特殊问题。
我想用“py outl ovwrt”模式覆盖代码中的一些值(我只需按insert键)。但是,在这种模式下键入替换值时,emacs的行为会很奇怪。
假设我有:
y = 'abcdefghij'
使用覆盖,我想把它改成:
^{pr2}$实际上,我得到的是:
y = '1b2d3f4h5j'
我只是按顺序输入数字,而不是自己移动光标。Emacs每次都会将光标移动到一个额外的字符上。也许这种行为在这种新的python模式下是预期的,但这不是我习惯的,也不是我想要它做的。emacs这么做有什么特别的原因吗?它只在*.py文件中发生。在普通的文本文件中,我得到了我所期望的覆盖模式。
有人能解决这个问题吗?
更新:我遵循了Andreas Röhler和Thomas的建议,在下面我运行了emacs -Q python-mode
,我的问题没有重现。然后,我将~/.emacs
文件平分,没有任何东西引起我的问题。
我确实解决了我的问题:卸载并重新安装emacs24,尝试新的python模式,最后从~/.emacs.d/elpa/
中删除新的python模式目录。我承认这可能不是解决这个问题的最佳方法,但是现在在我的emacs窗口中显示的模式是Python
,就像以前一样。
不幸的是,这意味着我仍然不确定到底是什么导致了我的问题,尽管我怀疑这可能与我从ubuntu12.04升级到14.04有关。
我无法重现你所观察到的行为。
您看到的模式行信息(“py outl”)暗示您使用的是Andreas Röhler's python-mode,据我所知,它不是标准gnuemacs附带的。(至少当我在ubuntu14.04上启动emacs24.3.1时,我得到了一个不同的模式行。但是,当我下载Röhler的python模式时,我确实也得到了“py outl”)。类似地,“ovwrt”部分表示^{} 是活动的。
我建议您使用} file 是找到犯罪者的一种方法。
-Q
选项启动emacs,以检查行为是否持续。如果没有,那么配置中的某些内容可能会导致您看到的效果。Bisecting your ^{无法复制,覆盖模式可以很好地与当前python配合使用-模式.el. 假设某个“智能”模式是cutable。
正如Thomas建议的:进入python所在的目录-模式.el驻留:emacs-qpython-模式.el. M-x计算缓冲区RET加载它。然后再试一次。
请将错误报告提交到
https://gitlab.com/groups/python-mode-devs/issues
或者
https://bugs.launchpad.net/python-mode
相关问题 更多 >
编程相关推荐