Модераторы: Vitalik

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Обсуждение нового формата файла в версии 2.0, Остаётся мало времени... 
:(
    Опции темы
Vitalik
Дата 3.8.2005, 19:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Координатор проекта
Сообщений: 653
Регистрация: 8.11.2004
Где: Ukraine, Kharkov

Репутация: 9
Всего: 12



В версии компонента SynUniHighlighter 2.0 (которая должна скоро увидеть свет) формат файла претерпел довольно серьзные изменения.

Причины этому:
• добавление мультитеговости (подробнее читайте здесь);
• поддержка фолдинга кода (который скоро будет доступен в SynEdit);
• возвращение встроенных цветовых схем (но немного в другом виде);
• добавление некоторых дополнительных возможностей;
• улучшения для скорости считывания и удобства редактирования вручную.

Вот предварительная версия этого формата файла:
Цитата(SynUniHighlighter)
<?xml version="1.0" encoding="utf-8"?>
<SynUniHighlighter Version="2.0">
  <SyntaxColoring>
    <Info>
      <General Name="Name" Extensions="Ext" Version="0" Revision="0" Sample="" History=""/>
      <Author Name="Author" Mail="mail" Web="web" Copyright="Copy" Company="Comp" Remark=""/>
    </Info>
    <Schemes Current="0">
      <Scheme Name="Default">
        <Editor ActiveLineColor="clSilver" SelectedForeground="clWhite" SelectedBackground="clBlack"/>
        <Styles>
          <Style Name="Remarks" Foreground="clGray" Background="clWindow"/>
          <Style Name="Keywords" Foreground="clBlue" Background="clWindow"/>
          <Style Name="New" Foreground="clWindowText" Background="clWindow"/>
        </Styles>
      </Scheme>
    </Schemes>
    <Editor ActiveLineColor="clSilver" SelectedForeground="clWhite" SelectedBackground="clBlack"/>
    <MainRules Name="" Style="">
      <Attributes Foreground="clWindowText" Background="clWindow"/>
      <Delimiters Value="!&quot;#$%&amp;'()*+,-./:;&lt;=&gt;?@[\]^`{|}~"/>
      <SubRules>
        <Range Name="Remark" Style="Remarks">
          <Attributes Foreground="clRed" Background="clWindow" Style="B"/>
          <Delimiters Value="!&quot;#$%&amp;'()*+,-./:;&lt;=&gt;?@[\]^`{|}~"/>
          <OpenTag PartOfTerm="True" StartLine="False" FinishOnEol="False"/>
          <CloseTag PartOfTerm="True" StartLine="False" FinishOnEol="False"/>
          <Properties CloseOnTerm="False" CloseOnEol="True" AllowPredClose="True"/>
          <MultiTags>
            <Tags Open="&lt;" Close="&gt;"/>
            <Tags Open="{" Close="}"/>
          </MultiTags>
          <SubRules/>
        </Range>
        <KeyList Name="Keywords" Enabled="True" Style="Keywords" Words="for
to
do
">
          <Attributes Foreground="clBlue" Background="clWindow"/>
        </KeyList>
      </SubRules>
    </MainRules>
  </SyntaxColoring>
  <CodeFolding>
    <FoldRegion Name="Figure" Type="0">
      <OpenTag Symbol="{" RegExpr="" UseRegExpr="False"/>
      <CloseTag Symbol="}" RegExpr="" UseRegExpr="False"/>
      <Properties AddEnding="False" NoSubFolds="False" WholeWords="False"/>
      <SubRegions/>
    </FoldRegion>
  </CodeFolding>
</SynUniHighlighter>

Спорные теги помечены красным тегом. Нужно придумать для них более подходящее название и состыковать их со словарём терминов (который нужно составить в этой теме).

Очень расчитываю на вашу помощь! smile
PM MAIL WWW ICQ YIM   Вверх
Quadr0
Дата 4.8.2005, 00:27 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











...

Это сообщение отредактировал(а) Quadr0 - 15.7.2011, 00:57
  Вверх
Vitalik
Дата 4.8.2005, 10:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Координатор проекта
Сообщений: 653
Регистрация: 8.11.2004
Где: Ukraine, Kharkov

Репутация: 9
Всего: 12



Сказано - сделано smile Темка уже вверху smile

Кстати, обсуждению подлежит не только сомнительные теги, но и остальные тоже.
Также обсуждению подлежит сама структура тегов файла.
Например, есть вариант в секции CodeFolding'а свойства из тега Properties перенести в собственно тег FoldRegion... Но, имхо, текущий вариант лучше.

Нужно сейчас закрепить формат файла как можно сильнее!.. --Resize_Images_Alt_Text--

PM MAIL WWW ICQ YIM   Вверх
Sagara
Дата 4.8.2005, 11:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 6
Регистрация: 25.7.2005

Репутация: нет
Всего: нет



думаю, название тегов не слишком важно... в отличие от интерфейса самого редактора.
Насчет взять названия тегов из словаря - так лучше всего, не надо будет учить новые слова.
PM   Вверх
Vitalik
Дата 4.8.2005, 14:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Координатор проекта
Сообщений: 653
Регистрация: 8.11.2004
Где: Ukraine, Kharkov

Репутация: 9
Всего: 12



Цитата(Sagara @ 4.8.2005, 11:41)
думаю, название тегов не слишком важно... в отличие от интерфейса самого редактора.

В принципе это как посмотреть... Интерфейс редактора всегда можно безболезненно изменить. А вот изменение формата файла - это действие чрезвычайное. Поэтому раз сейчас всё равно формат файла меняется, хотелось бы его поменять как можно лучше и крепче, чтобы как можно дольше его можно было бы не менять...
PM MAIL WWW ICQ YIM   Вверх
Vitalik
Дата 4.8.2005, 17:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Координатор проекта
Сообщений: 653
Регистрация: 8.11.2004
Где: Ukraine, Kharkov

Репутация: 9
Всего: 12



Итак, на основе предложения StayAtHome в теме "Нужно срочно определиться со словарём терминов" предлагаю утвердить такой формат файла (точнее её часть):
Цитата
        <Range Name="Remark" Style="Remarks">
          <Attributes Foreground="clRed" Background="clWindow" Style="B"/>
          <Delimiters Value="!&quot;#$%&amp;'()*+,-./:;&lt;=&gt;?@[\]^`{|}~"/>
          <OpenToken PartOfTerm="True" StartLine="False" FinishOnEol="False"/>
          <CloseToken PartOfTerm="True" StartLine="False" FinishOnEol="False"/>
          <Properties CloseOnTerm="False" CloseOnEol="True" AllowPredClose="True"/>
          <MultiTokens>
            <Tokens Open="&lt;" Close="&gt;"/>
            <Tokens Open="{" Close="}"/>
          </MultiTokens>
          <SubRules/>
        </Range>
(если есть замечания, пишите)

А вот в секции CodeFolding проблема... В принципе слова Open и Close можно заменить на OpenToken и CloseToken для однообразности файла (но надо ли?).
Цитата
    <FoldRegion Name="Figure" Type="0">
      <OpenToken Symbol="begin" RegExpr="" UseRegExpr="False"/>
      <CloseToken Symbol="end" RegExpr="" UseRegExpr="False"/>
      <Properties AddEnding="False" NoSubFolds="False" WholeWords="False"/>
      <SubRegions/>
    </FoldRegion>

А вот как быть со свойством Symbol? Как его обозвать по-лучше?.. Есть еще варианты: Value, Keyword, Word... Ваши варианты?..
--Resize_Images_Alt_Text--
PM MAIL WWW ICQ YIM   Вверх
markowww
Дата 6.8.2005, 00:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 66
Регистрация: 27.2.2003
Где: В Вологде-где

Репутация: нет
Всего: нет



Цитата(Vitalik @ 4.8.2005, 17:07)
А вот как быть со свойством Symbol? Как его обозвать по-лучше?.. Есть еще варианты: Value, Keyword, Word... Ваши варианты?..

Я думаю, что лучше выбрать Value. Потому что смысл уже содержится в OpenToken и CloseToken. Зачем дублировать содержание чем-то, что это содержание передает не полностью smile

P.S. Какой каламбурчик получился... smile

Это сообщение отредактировал(а) markowww - 6.8.2005, 00:29
PM MAIL   Вверх
Fantasist
Дата 6.8.2005, 19:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Лентяй
***


Профиль
Группа: Участник Клуба
Сообщений: 1517
Регистрация: 24.3.2002

Репутация: нет
Всего: 41



Цитата(Vitalik @ 3.8.2005, 16:41)
        <KeyList Name="Keywords" Enabled="True" Style="Keywords" Words="for
to
do
">


Ой-ой, какой кошмар. smile Не знаю как вам, а мне идея перечислять слова как параметр тега очень не нравится.



--------------------
Волны гасят ветер...
PM MAIL   Вверх
Vitalik
Дата 6.8.2005, 21:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Координатор проекта
Сообщений: 653
Регистрация: 8.11.2004
Где: Ukraine, Kharkov

Репутация: 9
Всего: 12



Цитата(markowww @ 6.8.2005, 00:29)
Я думаю, что лучше выбрать Value. Потому что смысл уже содержится в OpenToken и CloseToken. Зачем дублировать содержание чем-то, что это содержание передает не полностью

Спасибо! Согласен! smile

Цитата(Fantasist @ 6.8.2005, 19:32)
Ой-ой, какой кошмар.  Не знаю как вам, а мне идея перечислять слова как параметр тега очень не нравится.

О! Нашёл единомышленника! smile
Мне эта идея тоже ужасно не нравится!

Но TXmlDocument по ходу так быстрее работает... smile


PM MAIL WWW ICQ YIM   Вверх
Fantasist
Дата 6.8.2005, 22:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Лентяй
***


Профиль
Группа: Участник Клуба
Сообщений: 1517
Регистрация: 24.3.2002

Репутация: нет
Всего: 41



Цитата(Vitalik @ 6.8.2005, 18:28)
Но TXmlDocument по ходу так быстрее работает...


Ох, опять эта скорость загрузки! Сюда.


--------------------
Волны гасят ветер...
PM MAIL   Вверх
Fantasist
Дата 8.8.2005, 18:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Лентяй
***


Профиль
Группа: Участник Клуба
Сообщений: 1517
Регистрация: 24.3.2002

Репутация: нет
Всего: 41



Так, ну давайте с keyword'ами определимся. Хотелось бы, чтобы это все-таки были бы отдельный тег на каждый keyword.


--------------------
Волны гасят ветер...
PM MAIL   Вверх
Vitalik
Дата 8.8.2005, 22:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Координатор проекта
Сообщений: 653
Регистрация: 8.11.2004
Где: Ukraine, Kharkov

Репутация: 9
Всего: 12



Цитата(Fantasist @ 8.8.2005, 18:41)
Так, ну давайте с keyword'ами определимся. Хотелось бы, чтобы это все-таки были бы отдельный тег на каждый keyword.

Тэксь... Давайте определимся!..
Я поддерживаю идею об отдельности каждого тега keyword!.. Нужно только определиться как их по-удобнее оформить?..

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

Но тут еще другой вопрос... Стоит ли тогда выкладывать сейчас beta-версию компонента, если его внутренности всё равно сильно изменятся... Хотя... В принципе пользователь этого же даже не заметит... Хм...
О целесообразности выкладывания беты прошу поговорить здесь

P.S. Извините, если сумбурно написал... Уже спать пора... :-)
PM MAIL WWW ICQ YIM   Вверх
Quadr0
Дата 8.8.2005, 23:41 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











...

Это сообщение отредактировал(а) Quadr0 - 15.7.2011, 01:05
  Вверх
Vitalik
Дата 9.8.2005, 10:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Координатор проекта
Сообщений: 653
Регистрация: 8.11.2004
Где: Ukraine, Kharkov

Репутация: 9
Всего: 12



Цитата(Quadr0 @ 8.8.2005, 23:41)
DOM, мне кажется, должен циклы быстро обрабатывать. Так что востребовано это будет, скорее всего, даже сейчас.

Хе-хе smile
Так зачем менять тогда было? smile

Ладно... Проехали smile

Цитата(Quadr0 @ 8.8.2005, 23:41)
Я за.

Значит сделаем.
Вот только вопрос: в каком виде это лучше сделать?..
Вот с ходу несколько вариантов:
Цитата
<W>for</W>
<W>to</W>
<W>do</W>
Цитата
<word value="for"/>
<word value="to"/>
<word value="do"/>
Цитата
<token value="for"/>
<token value="to"/>
<token value="do"/>
Цитата
<word>for<word/>
<word>to<word/>
<word>do<word/>
Цитата
<w v="for"/>
<w v="to"/>
<w v="do"/>
Цитата
<token set="for"/>
<token set="to"/>
<token set="do"/>
Цитата
<token let="for"/>
<token let="to"/>
<token let="do"/>
Цитата
<symb name="#"/>
<symb name="$"/>
<symb name="%"/>
Цитата
<word name="for"/>
<word name="to"/>
<word name="do"/>


Предлагайте любые другие варианты!
PM MAIL WWW ICQ YIM   Вверх
Quadr0
Дата 9.8.2005, 12:04 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











...

Это сообщение отредактировал(а) Quadr0 - 15.7.2011, 01:06
  Вверх
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | SynUniHighlighter и SynEdit | Следующая тема »


 




[ Время генерации скрипта: 0.0930 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.