【问题标题】:How to define Emacs major mode over #!#如何定义Emacs主模式!
【发布时间】:2014-02-26 20:38:07
【问题描述】:

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

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

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

#! /usr/bin/env python

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

【问题讨论】:

    标签: python emacs24 major-mode


    【解决方案1】:

    根据 emacs 手册,您还需要更新interpreter-mode-alist

    有入口

    ("python" . python-mode)
    

    这里也做add-to-list

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-10-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-05-01
      相关资源
      最近更新 更多