如何在js2-mode中将缩进设置为2个空格?

Lor*_*ren 30 emacs js2-mode

我的.emacs结尾处有这个:

(setq-default indent-tabs-mode nil)

(setq tab-stop-list (number-sequence 2 120 2))
Run Code Online (Sandbox Code Playgroud)

它在其他模式下工作正常 - 每当我选项卡时,它会添加两个空格.但在js2模式下,它增加了4.

nta*_*lbs 35

您可以设置js2-basic-offset为2.

  1. M-x customize-variable
  2. 输入 js2-basic-offset
  3. 将值设置为2

然后Apply and Save在自定义选项缓冲区中按钮.这将添加一个项目以将变量设置为文件.emacsinit.el文件.


Rig*_*tti 13

在这里稍晚,但如果你像我一样并在单独的文件中保留主要模式的配置,你可以添加以下行,它也可以.

(add-hook 'js2-mode-hook (lambda () (setq js2-basic-offset 2)))
Run Code Online (Sandbox Code Playgroud)


Tho*_*ser 6

对我来说,js2-basic-offset是的别名js-indent-level,因此我不得不更改后者以使其起作用。

  • 我没有尝试像接受的答案建议的那样将 `js2-basic-offset` 更改为用户自定义变量,但是要将其更改为 `.emacs` 中的简单 `setq`,你应该是答案,因为设置 ` js2-basic-offset` 对我也不起作用。对 `js2-basic-offset` 使用 `setq-default` 也可以。 (2认同)