【问题标题】:Emacs indentation for html (web-mode) doesn't work properlyhtml(网络模式)的 Emacs 缩进无法正常工作
【发布时间】:2014-03-06 02:20:16
【问题描述】:

我在 Emacs 中使用 web-mode 来获得 PHP 和 HTML 的语法高亮和缩进。

如果我在 .php 文件中有此代码

<p>
Lorem ipsum dolor sit amet, consectetur adipiscing elit.
</p>

然后把光标放在中间一行按Tab键就什么都没有了。

我希望它看起来像这样:

<p>
     Lorem ipsum dolor sit amet, consectetur adipiscing elit.
</p>

如果我将文本放在单行的标记中并尝试缩进,它会起作用。

这个:

<p>
<a>Lorem ipsum dolor sit amet, consectetur adipiscing elit.</a>
</p>

变成这个,应该的

<p>
    <a>Lorem ipsum dolor sit amet, consectetur adipiscing elit.</a>
</p>

我的 .emacs 文件

(require 'web-mode)
(add-to-list 'auto-mode-alist '("\\.phtml\\'" . web-mode))
(add-to-list 'auto-mode-alist '("\\.tpl\\.php\\'" . web-mode))
(add-to-list 'auto-mode-alist '("\\.jsp\\'" . web-mode))
(add-to-list 'auto-mode-alist '("\\.as[cp]x\\'" . web-mode))
(add-to-list 'auto-mode-alist '("\\.erb\\'" . web-mode))
(add-to-list 'auto-mode-alist '("\\.mustache\\'" . web-mode))
(add-to-list 'auto-mode-alist '("\\.djhtml\\'" . web-mode))

(setq web-mode-markup-indent-offset 4)
(setq web-mode-css-indent-offset 4)
(setq web-mode-code-indent-offset 4)
(setq web-mode-indent-style 4)

【问题讨论】:

  • 您好,缩进对我有用,您使用的是什么版本的网络模式?
  • 我在 Emacs 24.3.1 中使用 web-mode 8.0.9
  • 我使用的是相同的版本,缩进适用于代码&lt;p&gt; Lorem ipsum dolor sit amet, consectetur adipiscing elit. &lt;/p&gt;。即使您在 php 文件中只有上述代码,缩进也会失败吗?
  • 应该是单行还是多行?它适用于单行但不适用于多行。尽管它似乎可以在 .html 文件中工作而无需启用网络模式。虽然不在 .php 文件中。
  • 多行,就像你的问题一样,我不知道如何在 cmets 中发布多行代码:)

标签: html emacs indentation emacs24


【解决方案1】:

尝试将这些设置放入挂钩函数中:

(defun my-web-mode-hook ()
  "Hooks for Web mode."
    (setq web-mode-markup-indent-offset 4)
    (setq web-mode-css-indent-offset 4)
    (setq web-mode-code-indent-offset 4)
    (setq web-mode-indent-style 4)
)
(add-hook 'web-mode-hook  'my-web-mode-hook)

【讨论】:

    【解决方案2】:

    你可以添加这个

    (add-to-list 'auto-mode-alist '("\\.php\\'" . web-mode))
    

    【讨论】:

    • 好像没什么区别
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-06-18
    • 1970-01-01
    • 1970-01-01
    • 2014-10-04
    • 2013-02-21
    • 2013-05-13
    • 1970-01-01
    相关资源
    最近更新 更多