如何通过#定义Emacs主要模式!

问题描述:

我已经定义了一个我想用于所有.py文件的python模式。包括:如何通过#定义Emacs主要模式!

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

正确使用我在的.py结尾的文件模式,除非该文件始于

#! /usr/bin/env python 

这几个文件,我有做工作。我如何使python模式优先使用python模式emacs默认为?

从Emacs手册,您还需要更新的解释模式,ALIST

它进入

("python" . python-mode) 

执行附加到这里-list以及

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