Python 如何让emacs在确定打开文件的模式时忽略shebang(#!/some/interpreter)

Python 如何让emacs在确定打开文件的模式时忽略shebang(#!/some/interpreter),python,emacs,jython,Python,Emacs,Jython,我正在编辑拟由Jython执行的python文件,以便它们在文件顶部显示适当的shebang: #!/usr/bin/jython 这将导致文件以jython模式打开。但是,我想使用python模式。除了删除shebang并恢复缓冲区之外,我似乎无法将缓冲区置于python模式和jython模式。即使运行python模式也无法实现这一点(缓冲区仍处于jython模式)。我可以放置某种类型的钩子来忽略.py文件的shebang吗 如果重要的话,我正在使用emacs-22。将以下内容添加到您的.e

我正在编辑拟由Jython执行的python文件,以便它们在文件顶部显示适当的shebang:

#!/usr/bin/jython
这将导致文件以jython模式打开。但是,我想使用python模式。除了删除shebang并恢复缓冲区之外,我似乎无法将缓冲区置于python模式和jython模式。即使运行python模式也无法实现这一点(缓冲区仍处于jython模式)。我可以放置某种类型的钩子来忽略.py文件的shebang吗


如果重要的话,我正在使用emacs-22。

将以下内容添加到您的
.emacs

(delq (assoc "jython" interpreter-mode-alist) interpreter-mode-alist)
有关详细信息,请参阅文档。或者,你可以使用重锤,完全摆脱shebang处理:

(setq interpreter-mode-alist nil)

这会使所有模式都无法被设定吗?@MarkRoddy是的,我已经更新了,只为jython提供了答案。就是这样。谢谢你的帮助!我在
.emacs
文件中添加了您建议的第一行。但是,我仍然有着与OP完全相同的体验。在我的例子中,emacs23似乎迫使我进入Jython模式,因为存在
import java.lang.Double as Double
。如果我注释掉这个导入,我就可以进入Python模式。