Coder plugin (1)

Discuss and announce AkelPad plugins
Locked
  • Author
  • Message
Offline
Posts: 366
Joined: Mon Jan 10, 2011 5:28 pm
Contact:

Post by Lenchik »

Хорошо бы в хтмл подсветку добавить теги из HTML 5 (http://html5doctor.com/glossary/, http://whatwg.org/html)

Offline
Posts: 767
Joined: Mon Sep 28, 2009 10:03 am
Location: Minsk, Belarus

Post by se7h »

Lenchik
таки да!

Offline
Site Admin
Posts: 6311
Joined: Thu Jul 06, 2006 7:20 am

Post by Instructor »

Infocatcher
Ломается подсветка тэгов...
Все верно. См. html.coder.

Offline
Posts: 3217
Joined: Wed Nov 29, 2006 1:19 pm
Location: Киев, Русь
Contact:

Post by VladSh »

Просьба из стандартного шаблона автодополнения для WScript.Echo(""); убрать кавычки, т.к. чаще всего выводим значение какой-либо переменной (просто текст - редко), напрягает постоянно стирать кавычки.

Offline
Posts: 1862
Joined: Mon Aug 06, 2007 1:07 pm
Contact:

Post by Infocatcher »

Instructor wrote:
Ломается подсветка тэгов...
Все верно. См. html.coder.
Интересное представление о верности. :D Я уже смотрел.
Вот почему не срабатывает

Code: Select all

4096   0   0   0   "<p"        "</p>"       "" 
?

[Upd]
Как оказалось, в таком случае «default» тоже подсвечивается (js.coder):

Code: Select all

switch(x) {
	case 0:
		y = defaultValue;
}

Offline
Site Admin
Posts: 6311
Joined: Thu Jul 06, 2006 7:20 am

Post by Instructor »

Infocatcher wrote:Вот почему не срабатывает...
Попробую развернуть значение этих трех строк в html.coder. Закрывающийся тэг к P необязателен. Но, чтобы совсем его не игнорировать, добавлены следующие правила:
- Если следующим тэгом за <p идет </p>, то тэг им закрывается.
- Если следующим тэгом за <p идет <p, то тэг им закрывается, не захватывая.
- Если следующим тэгом за <p не идет </p>, либо <p, то тэг закрывается ближайшим "<", не захватывая.
Как оказалось, в таком случае «default» тоже подсвечивается (js.coder):
Подкорректировал - надо флаг 8 добавить к правилам.

Offline
Posts: 366
Joined: Mon Jan 10, 2011 5:28 pm
Contact:

Post by Lenchik »

Instructor wrote: - Если следующим тэгом за <p идет </p>, то тэг им закрывается.
- Если следующим тэгом за <p идет <p, то тэг им закрывается, не захватывая.
- Если следующим тэгом за <p не идет </p>, либо <p, то тэг закрывается ближайшим "<", не захватывая.
Можете здесь выложить правила, которые отвечают за такое поведение? Желательно с пометками какие группы флагов или еще какие комбинации настроек дают каждую из процитированных установок.

[UPD]
Получается что такие настройки не будут работать в конструкциях нижеприведённого вида, так?

Code: Select all

<p>Первая часть текста, <span>какие-то пометки,</span>ещё текст. <br /> Ещё текст <span>с пометками</span></p>

Offline
Posts: 1862
Joined: Mon Aug 06, 2007 1:07 pm
Contact:

Post by Infocatcher »

Instructor wrote:Закрывающийся тэг к P необязателен. [...]
Очень неудобно получается.
Все же приоритет надо отдавать <p и </p>.
Instructor wrote:Подкорректировал - надо флаг 8 добавить к правилам.

Code: Select all

switch(x) {
   case 0: case 1:
      defaultValue = y;
}
Пожалуй, сюда бы аналог «2048 quote start is surrounded with delimiters ("Quotes:" section only).»

Offline
Posts: 767
Joined: Mon Sep 28, 2009 10:03 am
Location: Minsk, Belarus

Post by se7h »

Instructor wrote:Закрывающийся тэг к P необязателен.
это устаревшие данные на фоне XHTML и набирающего обороты HTML 5

Offline
Posts: 1862
Joined: Mon Aug 06, 2007 1:07 pm
Contact:

Post by Infocatcher »

se7h
Тем не менее, все браузеры успешно их сами закрывают.
Другое дело, что если выбирать, то я за нормальное подсвечивание «правильного» HTML.

Offline
Site Admin
Posts: 6311
Joined: Thu Jul 06, 2006 7:20 am

Post by Instructor »

Infocatcher wrote:Все же приоритет надо отдавать <p и </p>.
Закомментировываем. Какое слово :)

Code: Select all

;128	0	0	0	"<p"        "<p"         ""
;128	0	0	0	"<p"        "<"          ""
Пожалуй, сюда бы аналог «2048 quote start is surrounded with delimiters ("Quotes:" section only).»
Реализованы 4 флага наподобие 2048.

Offline
Posts: 767
Joined: Mon Sep 28, 2009 10:03 am
Location: Minsk, Belarus

Post by se7h »

Infocatcher
браузеры вынуждены поддерживать этот архаизм

Offline
Posts: 1862
Joined: Mon Aug 06, 2007 1:07 pm
Contact:

Post by Infocatcher »

Instructor wrote:Закомментировываем. Какое слово :)

Code: Select all

;128	0	0	0	"<p"        "<p"         ""
;128	0	0	0	"<p"        "<"          ""
Закомментируем/закомментированием. :P
Ну нет, я еще тестовую HTML'ку не удалил: viewtopic.php?p=9312#p9312.

Если уж и убирать, то нужен флаг обязательности закрывающего тэга.
И вот если не нашлось закрывающего тэга, искать ближайший открывающийся тэг «того же типа». Или игнорировать вообще, а то тормозит и список уходит лесенкой вправо.

Да, а еще при использовании на CodeFold_testcase.htm подсветки для XML после открытия/закрытия списка можно упасть.

Offline
Posts: 2247
Joined: Tue Aug 07, 2007 2:03 pm
Location: Vinnitsa, Ukraine

Post by FeyFre »

Infocatcher, se7h.
Во-первых, есть DOCTYPE
Во-вторых, не закрывают а делают по спецификации.
В-третьих, это не архаизм, это сегодняшний день. Его доля не так уж и мала. И функциональности хватает с головой для 99% задач.
Не находите это странными говорить об архаизме на страницах форума приложения архаического способа обработки документов? :wink:

Offline
Posts: 767
Joined: Mon Sep 28, 2009 10:03 am
Location: Minsk, Belarus

Post by se7h »

FeyFre wrote:Не находите это странными говорить об архаизме на страницах форума приложения архаического способа обработки документов? :wink:
а это уже парадокс :D

если серъёзно, то AP - вовсе не архаизм, а прогрессивно развивающаяся программа, да и серъёзные кодеры по-прежнему всё пишут ручками, да и в целом, за последние лет 20 (если не больше) принципиально ничего не изменилось, а всякие WYSIWYG-редакторы скорее на любителя

насчёт <p> и прочих, IMO если тег можно закрыть, то лучше его закрыть, потом код выглядит читабельнее и стройнее, нужно приучать себя к строгому синтаксису
Locked