Чи є * хороший * HTML-режим для emacs?


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

скопійовано та вставлено з якогось сайту (я не знаю елісп).
це просто, нічого не підкреслює.

Я спробував завантажити цілу купу режимів і використати інший режим, щоб зв'язати їх разом, безрезультатно.

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

Отже, хтось знає, як це зробити?

Відповіді:


4

Ви перевірили html- сторінку Emacs Wiki ? Зокрема, nxhtml виглядає корисним.


4
Це здається корисним, але користуватися дуже боляче ... він завантажується повільно, не відступає належним чином, некрасивий, працює повільно, виділяє все червоне, а потім робить все курсивом і просто, боляче ...
Карсон Майєрс

1
Я з успіхом використовував nxhtml. Кольори шрифту та курсив можна керувати, налаштовуючи обличчя
Doug Harris,

35

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

введіть тут опис зображення

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> - якщо ... інакше ... endif, для ... endfor
  • Автоматичне закриття тегів HTML (після
  • підсвічування синтаксису (відповідно до типу блоку)
  • фрагмент вставки C-c C-i(автоматичне відступ, відомий вибір тексту)
  • автоматичні вставки (наприклад, ?>після <?php)

Скажіть, це врятує мені день ... Дякую @fxbois! Я це люблю. Нарешті, я можу отримати відступ суміші між html, css, java тощо. Чи можна це зробити з Python?
swdev

@swdev Чи можете ви відкрити проблему на github про цей запит сумісності python. Не вдалося надіслати посилання da на документацію синтаксису шаблону та приклад такого шаблону.
fxbois

Виглядає акуратно, але, схоже, використовує regexp для розбору HTML, а не має справжнього аналізатора, як psgml ...
Девід Н. Уелтон,

3
Що ви маєте на увазі під реальним аналізатором? Я переходжу документ, щоб знайти теги, які починаються з <і закінчуються на> і т. Д. Тощо. Чи знайшли ви якесь обмеження? Якщо ви знайдете такі, не соромтеся повідомляти про проблеми на github repo
fxbois

3

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

Якщо ви хочете виділити php та javascript, ви можете подивитися mmm-mode, що дозволить вам запускати відразу кілька основних режимів. Я ніколи його не використовував, тому не знаю, з ким він обробляє суперечливі прив'язки ключів тощо ... тож вам доведеться відчувати себе там.


3

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


0

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

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.