Eclipse - как расширить редактор HTML для добавления пользовательских тегов? - PullRequest
10 голосов
/ 14 мая 2011

Я пишу приложение, и внутри HTML-кода у меня есть пользовательские теги (конечно, эти теги анализируются на стороне сервера, и конечный пользователь получает их как действительный HTML-код).Пример использования пользовательского тега:

<html>
<body>
...
    <Gallery type="grid" title="My Gallery" />
...
</body>
</html>

1.) Как сделать так, чтобы eclipse распознал мои пользовательские теги внутри HTML-кода и добавил к ним подсветку синтаксиса?
2.) Как добавить автопредложения для моих пользовательских тегов?Например, если я наберу "

Ответы [ 5 ]

5 голосов
/ 30 декабря 2011

Не совсем то, что вы хотите, но, возможно, это поможет вам:

  1. Вы можете попробовать Aptana Plug-in для Eclipse.Он позволяет написать собственное регулярное выражение для проверки HTML, поэтому проверяющий может игнорировать пользовательский тег.Например:

    . галерея.

  2. Eclipse позволяет добавлять простые автоматические предложения через Шаблоны .В Eclipse 3.7.1 (Indigo) + PHP Dev Tools (PDT) 3.0.0: Окно> Настройки> Интернет> HTML-файлы> Редактор> Шаблоны

4 голосов
/ 20 мая 2011

К сожалению, не существует легкого пути: вы должны свернуть свой собственный анализатор для этого, а затем добавить к нему как дополнительные элементы, так и базовую грамматику (HTML).

Если у вас есть анализатор,Вы можете использовать его для подсветки синтаксиса (строго говоря, для этого достаточно простого лексинга);и хороший парсер может поддерживать контентную помощь (автоматические предложения в вашей терминологии).

Предостережения:

  • Создание парсера для HTML - непростая задача.Возможно, нацеливание на более часто используемое подмножество возможно.
  • Если парсер существует, части редактора все еще трудно выздороветь.

С другой стороны, вам нужна помощь: выможно использовать некоторые генераторы текстовых редакторов для облегчения вашей работы:

  • Eclipse IMP http://www.eclipse.org/imp/ теоретически может обрабатывать любой тип парсера, но в настоящее время он наиболее оптимизирован для LPG.Документация скудна, но разработчики полезны на форумах.
  • Xtext http://www.eclipse.org/Xtext/ получил довольно много шумихи для создания текстовых редакторов для DSL.Сгенерированные редакторы довольно хороши из коробки, но не являются лучшим решением для больших файлов.Имеет действительно полезное сообщество разработчиков.
  • EMFText http://www.emftext.org/index.php/EMFText - менее известная сущность - я не знаю его в деталях, но, думаю, он похож на Xtext.
1 голос
/ 01 марта 2017

Вам необходимо добавить новый шаблон HTML . Чтобы добавить новый шаблон, выполните следующие действия:

1) В меню «Окно» выберите «Настройки».

2) На странице настроек выберите «Интернет и XML»> «Файлы HTML»> «Шаблоны HTML».

3) Нажмите New.

4) Введите имя нового шаблона и краткое описание шаблона.

5) Используя раскрывающийся список Контекст, укажите контекст, в котором доступен шаблон.

6) В поле «Узор» введите соответствующие теги, атрибуты или значения атрибутов (содержимое шаблона), которые будут вставлены с помощью помощника по содержимому.

7) Если вы хотите вставить переменную, нажмите кнопку «Переменная» и выберите переменную для вставки. Например, переменная word_selection указывает слово, выбранное в начале вставки шаблона, а переменная курсора определяет, где будет находиться курсор после вставки шаблона в документ HTML.

8) Нажмите OK, чтобы сохранить новый шаблон.

Вы можете редактировать, удалять, импортировать или экспортировать шаблон, используя ту же страницу настроек.

Ссылка: http://help.eclipse.org/kepler/index.jsp?topic=%2Forg.eclipse.wst.sse.doc.user%2Ftopics%2Ftsrcedt024.html

1 голос
/ 27 марта 2016

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

Итак, при использовании Eclipse (Mars.1 Release (4.5.1) - а возможно и раньше - я не проверял).

Перейти к Window - Prefrences
Затем в открывшемся диалоговом окне перейдите на Web - HTML Files - Editor - Validation.
С правой стороны:

  1. под Ignore specified element names in validation и введите список пользовательских элементов, которые вы используете. (например, Gallery,tab,tabset,my-element-directives-*)
  2. Вы также можете перейти под Ignore specified attribute names in validation и сделать то же самое для своих пользовательских атрибутов. (Например, ng-*,my-attr-directives-*)

Обратите внимание на две вещи:

  1. После того, как Eclipse выполнит полную проверку, вы также должны закрыть файл и открыть его снова, чтобы удалить предупреждения из исходного кода.
  2. Использование этого метода будет игнорировать эти атрибуты для любого элемента. Я не думаю, что есть простой способ заставить его игнорировать some-attribute, только если он является потомком some-element.
0 голосов
/ 26 ноября 2013

Я считаю шаблоны приемлемой альтернативой, но давайте посмотрим, сможем ли мы предложить более надежное решение;пожалуйста, найдите время и проголосуйте за это: https://bugs.eclipse.org/bugs/show_bug.cgi?id=422584

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...