如何在#上定义Emacs主模式!

时间:2014-02-26 20:38:07

标签: python emacs24 major-mode

我已经定义了一个我想用于所有.py文件的python模式。包括:

(add-to-list 'auto-mode-alist '("\\.py\\'" . my-python-mode))

在所有以.py结尾的文件中正确使用我的模式,除非该文件以

开头
#! /usr/bin/env python

我正在使用的几个文件。如何使my-python-mode优先于python模式emacs默认为?

1 个答案:

答案 0 :(得分:2)

从emacs手册中,您还需要更新interpreter-mode-alist

它有条目

("python" . python-mode)

此处也可以添加 - 列表

  

其次,如果没有指定主模式的文件变量,则为Emacs   检查文件的内容是否以“#!”开头。如果是这样,那   表示该文件可以作为可执行shell命令,   它通过运行在文件的第一行上命名的解释器来工作   (文件的其余部分用作解释器的输入)。因此,   Emacs尝试使用解释器名称来选择模式。对于   例如,在Perl中打开以'#!/ usr / bin / perl'开头的文件   模式。变量interpreter-mode-alist指定对应关系   解释程序名称和主要模式之间。