簡體   English   中英

如何阻止emacs縮進javascript逗號分隔列表的第二行(例如array或json)?

[英]How can I stop emacs from indenting the 2nd line of a javascript comma-separated list (e.g. array or json)?

Emacs縮進我的代碼,如下所示:

var myArray = [
    1,
        2,
        3,
        4,
        5,
    ];

而不是像這樣:

var myArray = [
    1,
    2,
    3,
    4,
    5,
];

我怎么能阻止這個?

Mx版本給我:2010-03-26的GNU Emacs 23.1.1(x86_64-pc-linux-gnu,GTK +版本2.18.3)on crested,由Debian修改

遺憾的是,我無法更新我的emacs版本。

看起來您正在使用java-mode編輯JavaScript代碼。 雖然Java和JavaScript共享足夠的語法,但這可能會正常工作,但最好使用專用的JavaScript模式¹。

Emacs 包含版本23.2的js-mode ,這是一個相當不錯的基本JavaScript編輯模式。 如果您可以升級Emacs,這可能是您最簡單的選擇。 您也可以在Emacs 23.1上安裝js-mode (或其前身espresso-mode )。 這是最新版本

或者,您可以使用第三方模式,如js2-mode ,它實際上包含一個完整的JavaScript解釋器。 還有js3-mode ,聲稱是

js2-mode和js-mode的嵌合分支

js2-mode和我的Emacs 24.4中內置的js-mode版本都完全按照你的意願縮進你的示例代碼:

var myArray = [
    1,
    2,
    3,
    4,
    5,
];

¹不幸的是,仍有足夠的混淆,值得說明Java和JavaScript是完全不同的語言。 你可能已經知道了; 我認為Emacs實際上默認為JavaScript代碼的java-mode已經有一段時間了。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM