23

Я люблю Emacs,

и я хочу заняться веб-программированием,
но я не могу найти способ заставить его правильно редактировать HTML.

Я имею в виду, что это серьезно ужасно.

Это будет хорошо работать с HTML, но не PHP, JavaScript и т.д.

Я попытался получить режим html-helper ... Я скачал его, поместил в /usr /local /share /emacs /site-lisp и добавил в мой файл .emacs:

(autoload 'html-helper-mode "html-helper-mode" "Yay HTML" t)
  (setq auto-mode-alist (cons '("\\.html$" . html-helper-mode) auto-mode-alist))

скопировано и вставлено с какого-то сайта (я не знаю, elisp).
это просто, ничего не выдвигает на первый план.

Я попытался загрузить целую кучу режимов и использовать какой-то другой режим, чтобы связать их вместе, но безрезультатно.

Emacs настолько хорош во всех отношениях - почему он не может выполнить простую задачу редактирования веб-страниц? Я имею в виду, что это довольно стандартная вещь для редакторов в наши дни.

Итак, кто-нибудь знает, как это сделать?

5 ответов5

35

У меня была такая же проблема, как и у вас, поэтому я решил написать веб-режим.

Web-mode.el - это основной режим для Emacs, предназначенный для редактирования смешанных веб-шаблонов (HTML с Java/JSP, PHP, CSS, JavaScript).

Это не зависит от любого другого режима. Это делает подсветку синтаксиса и отступ в соответствии с типом блока кода. Я написал небольшую страницу HOWTO на

Около

  • web-mode.el - это основной режим для редактирования веб-шаблонов (HTML с PHP, Java/JSP, JavaScripts, CSS-стили).
  • web-mode.el никогда не будет полнофункциональным режимом PHP или JS. (Мы не поддерживаем многострочные блоки кода в шаблонах!).

Родные Особенности

  • интеллектуальные отступы (в зависимости от контекста: HTML, PHP, Java/JSP, JavaScript или CSS)
  • навигация по коду: C-c C-n между открывающим и закрывающим тегом HTML или между элементами управления PHP> - if ... else ... endif, for ... endfor
  • Автозаполнение HTML-тега (после
  • подсветка синтаксиса (в зависимости от типа блока)
  • вставка фрагмента C-c C-i (с автоматическим отступом, в курсе выбора текста)
  • авто-вставки (напр. ?> после <?php)
4

Вы проверили Emacs Wiki HTML- страницу? NXHTML, в частности, выглядит полезным.

3

Я был недоволен доступными режимами, но недавно обрел счастье, используя обычный старый html-mode дополненный yasnippet и tidy.el Как уже упоминалось в других ответах, режим nxhtml полезен, если вы пишете xhtml.

Если вы хотите получить выделенный php и javascript, вы можете взглянуть на mmm-mode, который позволит вам запускать несколько основных режимов одновременно. Я никогда не использовал его, так что я не знаю, кто обрабатывает конфликтующие сочетания клавиш и т.д., Поэтому вы должны будете чувствовать себя там.

3

Попробуйте мульти-веб-режим , это второстепенный режим, разработанный с учетом веб-редактирования, он выбирает подходящий мажор, когда точка перемещается.

0

Я также использую режим nXhtml для редактирования в смешанном режиме, так как несколько режимов не работают правильно. Это было немного нелегко, но последние сборки оказались полезными. Я бегу с Emacs 23 FWIW.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .