问题标签 [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 投票
4 回答
2487 浏览

emacs - Emacs 中主要模式的“hello world”示例?

任何人都可以为我提供emacs中主要模式的hello world示例吗?我猜这是一个初学者的问题,我还是很喜欢写一个major模式,既可以学习emacs,也可以学习elisp,以便能够充分利用自定义。

到目前为止我所做的(并且正在工作):

  • 写了一个文件 sample-mode.el 并把它放在一个 lisp 目录中
  • 在 .emacs 中调用(require 'sample-mode)
  • 在里面写了一些defuns,并在最后提供(provide 'sample-mode)

但它似乎仍然没有被激活,我不能用 M-sample-mode 调用它。

那么该怎么做呢?任何人都可以为我提供一个非常简单的 Hello World 之类的工作示例吗?

0 投票
1 回答
204 浏览

emacs - PL/M 的 Emacs 语法高亮

我即将开始一项新的咨询工作,我最终将涉足一些 PL/M。我试图为 PL/M 找到一个主要模式,但到目前为止还没有成功。

这里有人可以指出我的 emacs PL/M 模式吗?

提前致谢!

0 投票
7 回答
17956 浏览

emacs - emacs lisp,如何获得缓冲区主要模式?

我试图搜索谷歌并查看手册,但仍然找不到如何获取缓冲区对象的主要模式。你能帮我举个例子或参考吗?谢谢

我能找到的唯一解决方案是在更改缓冲区然后改回原始缓冲区后查询主模式。有更好的方法吗?

0 投票
1 回答
142 浏览

emacs - 让 Emacs 缩进在主要模式下正常工作

我正在为我创建的 DSL 在 emacs 中编写主要模式。我继承了基本模式,它的标签很远(我认为有 6 个制表位)。

我希望能够定义:

并完成这项工作。

0 投票
1 回答
1882 浏览

emacs - 在 emacs 主要模式下正确突出显示

我正在为一种语言(又名mydsl)开发一个 emacs 主要模式。但是,由于某种原因,使用 xahlee 网站上的技术似乎不起作用(可能是较旧的 emacs 方言..)

我要解决的关键问题是(1)突出显示评论不起作用,(2)使用regexp-opt线条不起作用。

我已经查看了 GNU 手册并查看了 cc-mode 和 elisp 模式……这些比我需要的要复杂得多。

0 投票
1 回答
192 浏览

emacs - 如何使用 emacs 启动特定模式?

用户使用“Mx auto-revert-mode”启动自动恢复模式。如何设置 .emacs 文件在 emacs 启动时执行相同的操作?

当主模式启动时,如何启动特定模式?例如,当我想在 LaTeX 模式启动时启动自动恢复模式时,如何设置 .emacs 文件?

0 投票
2 回答
1247 浏览

emacs - 在 Emacs 中重新定义主模式前缀键

我一直在尝试自学emacs,并且因为我使用的是dvorak,所以我愚蠢地反弹C-c到一个移动键并习惯了它。现在我实际上开始用它做一些编程,我加载了一个 python 文件并注意到它C-c是所有特殊命令的前缀python-mode

init.el我可以重新绑定前缀键并在我的文件中一举更改所有 python 命令吗?如果没有,我应该单独重新绑定所有 python 命令吗?

0 投票
3 回答
8197 浏览

emacs - 如何重新加载 emacs 主模式?

我在一些主要模式中有一个缓冲区,在另一个缓冲区中有模式文件本身(* .el)。编辑 *.el 文件后,我想查看第一个缓冲区中反映的更改,而无需重新启动 emacs。我尝试运行 -mode 函数,但它没有更改缓冲区。谢谢

0 投票
1 回答
1645 浏览

emacs - Emacs:在更改日志模式下设置填充列

非常具体的问题,我希望不会太愚蠢。

(setq-default fill-column 120)将缓冲区填充的宽度设置为 120 列。否则我的默认值为 74。

这个命令,当放在我的.emacs文件中时,适用于我使用的所有主要模式(C++、Perl 等)。但是,它似乎不影响 Change Log 主要模式 ( change-log-mode-hook)。你知道我如何设置fill-column这个模式吗?

0 投票
2 回答
1190 浏览

emacs - Emacs:如何在主要模式挂钩中禁用特定的全局模式?

我使用global-autopair-mode,但使用 Rubyruby-electric-mode提供了更好的自动配对。

我是 Emacs 和 Lisp 的 n00b,所以我原以为你可以做类似的事情:

然而这不起作用。有没有办法在主模式挂钩中禁用全局模式?

目前我正在使用此处发布的最后一个解决方案,但它不是很整洁。