2014-02-08 1 views
6

Я использую web-mode в Emacs, чтобы получить подсветку синтаксиса и отступы для PHP и HTML.Отступ Emacs для html (веб-режим) не работает должным образом

Если у меня есть этот код в файл .php

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

А затем поместить курсор на средней линии и нажмите вкладку, то ничего не происходит.

Я хочу, чтобы выглядеть следующим образом:

<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) 

enter image description here

+0

Привет, отступы работает для меня, какая версия веб-режиме вы используете? –

+0

Я использую web-режим 8.0.9 в Emacs 24.3.1 –

+0

Я использую ту же версию, отступы работают для кода '

Lorem ipsum dolor sit amet, consectetur adipiscing elit.

'. Выдает ли отступы для вас, даже если у вас есть только указанный выше код в php-файле? –

ответ

0

Не могли бы вы добавить этот

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

Кажется, что нет никакой разницы –

5

попытаться поместить эти настройки в функции крюка:

(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)