问题标签 [major-mode]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
222 浏览

regex - 主要模式的 lisp emacs 正则表达式语法

我正在尝试学习如何编写 emacs 主要模式。网上有很多很棒的教程(例如http://www.emacswiki.org/emacs/GenericMode),但我正在努力学习正则表达式匹配的语法。例如,从这个答案我试图理解为什么

'(("\"\\(\\(?:.\\|\n\\)*?[^\\]\\)\""

匹配双引号之间的任何内容。该材料:http ://www.gnu.org/software/emacs/manual/html_node/elisp/Regexp-Special.html#Regexp-Special 似乎没有解释这一点。

有没有更好的资源?

0 投票
1 回答
95 浏览

emacs - 在 Emacs 中切换缓冲区时不断获取模式名称

我的 Emacs 中有奇怪的东西,我找不到它,每次我切换缓冲区时,即使我调用我得到的函数,我也会收到带有主要模式名称的消息minibuffer-inactive-mode

我的 .emacs 文件(我认为)中唯一的全局函数(适用于所有模式)是:

如何找到添加这个烦人的东西的地方?每种模式可以执行哪些不同的钩子?

0 投票
3 回答
278 浏览

emacs - emacs-lisp 的主要模式名称

我想更快地加载 emacs 初始化文件,所以我使用 'eval-after-load.
例如,当我加载 clojure 文件时,我只是把

有用。
但是当我尝试

它不起作用。我想知道 emacs-lisp 的正确主要模式名称。
谢谢。

0 投票
1 回答
255 浏览

xml - 在 Emacs 24 上设置 PSGML 模式

我正在拼命尝试为 Emacs 24 设置 PSGML/XML 模式。我按照这个解释做了一切:http ://www.lysator.liu.se/~lenst/about_psgml/psgml.html

./configure ./make ./make install在解压主模式的最新包并将整个目录移动到我的 .emacs.d 目录的子目录中之后这样做了,该目录由 emacs 找到。

我将以下内容添加到我的 .emacs 文件中:

但是,当运行时M-x xml-mode没有任何变化,当我运行时,M-x sgml-mode我得到一个 SGML 菜单条目,但所有语法突出显示/缩进/...都消失了。当我从 SGML 菜单运行任一命令时,我收到如下错误:

我在一个格式良好的 GML 文件上使用了所有这些。

有人可以帮助我或推荐另一种支持自动缩进/隐藏元素/等的 XML 主要模式吗?提前非常感谢,任何帮助表示赞赏!

0 投票
3 回答
5902 浏览

emacs - 如何关闭特定主要模式的电子缩进模式?

我有几个主要模式(例如:Yaml 和 NXML),我不想要电子缩进模式(我想要它用于类似 C 的语言),但如果关闭,我将无法关闭。要启用我有:

来自文档(用于可变电缩进模式)

如果启用了 Electric-Indent 模式,则为非 nil。参见命令electric-indent-mode' for a description of this minor mode. Setting this variable directly does not take effect; either customize it (see the info node“Easy Customization”)或调用函数“electric-indent-mode”。

和一个功能

切换即时重新缩进(电动缩进模式)。使用前缀参数 ARG,如果 ARG 为正则启用 Electric Indent 模式,否则禁用它。如果从 Lisp 调用,如果 ARG 被省略或为零,则启用该模式。

所以我尝试将其关闭:

(实际上我使用 after-change-major-mode-hook 并检查(memql major-mode '(yaml-mode python-mode nxml-mode))可以在列表中添加更多模式的位置)。

但它不起作用,我也尝试过:

没有喜悦。但是当我(electric-indent-mode -1)从 .emacs 文件进行评估时它会起作用。

0 投票
1 回答
363 浏览

emacs - Emacs:如何为非标准文件扩展名使用主模式

我想将 R 主要模式用于 emacs 中的另一个文件扩展名(用于语法类似于 R 的不受支持的语言)。

如何强制 emacs 更改我正在编辑的缓冲区的主要模式?如何更改我的 .emacs 以将主要模式与特定文件扩展名永久关联?

0 投票
1 回答
61 浏览

python - #如何定义Emacs主模式!

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

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

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

0 投票
2 回答
346 浏览

emacs - 覆盖主要模式的自动加载

我想为具有特定名称的文件设置自动模式,如下所示:

这似乎可行,但是当有另一个相同文件名的自动模式预设时,预设的似乎具有优先权,而我的设置被忽略了。如何覆盖或禁用预设?特别是,我想让所有文件命名config为具有某种主要模式,但Conf[Unix]模式似乎优先于我的设置。

0 投票
1 回答
2076 浏览

emacs - 无法在 Emacs 中打开植物模式

我在 Emacs 24.3.1 上。我安装了MELPA版本的plantuml-modevia

M-x package-install RET plantuml-mode RET.

当我尝试打开plantuml-mode缓冲区时,出现以下错误:

试图找到额外的安装说明,我查看了plantuml-mode.el源代码中的“评论”部分,但它只require对包说,我正在这样做。

我该如何解决这个问题?

0 投票
0 回答
223 浏览

list - Emacs 更改列表自动缩进

我喜欢 Emacs 的自动缩进,但是我有一个问题(在我尝试过的每种主要模式中),那就是自动缩进列表。

这是我迄今为止使用的所有主要模式的缩进列表:

伪代码:

然而,这是我真正想要的:

因此,我希望它们比变量定义远 4 个空格,而不是让值比左括号更远 1 个空格。或者它可以被视为因为它更深 1 级(在列表中)并且应该有 4 个空格的 1 个缩进。最后,右括号应该与变量定义在同一列。

我会假设缩进是在主要模式中定义的(无论是 Ruby、Haskell、Erlang、C 等)但也许有一种方法可以调整自动缩进,默认情况下它会以这种方式工作?

提前致谢

编辑:

所以我找到了 Ruby 的解决方案,只需添加:

到您的 emacs 文件。然而,这只适用于 Ruby,并不能解决 Haskell / Erlang / Elixir 的问题