![]() |
|
Модераторы: Vitalik |
![]()
|
|
| Vitalik |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Координатор проекта Сообщений: 653 Регистрация: 8.11.2004 Где: Ukraine, Kharkov Репутация: 9 Всего: 12 |
Тоже вариант! Вот только вопрос. В виде чего ты хочешь это сделать? 1. В ввиде отдельного юнита более и менее универсального парсера. То есть загрузка произвольного, а не кокретного формата xml-файла, поддержка комментариев и т.п.... Это было бы действительно круто! 2. Втроенная в компонент загрузка конкретного формата xml-файла. Это уже очень не хорошо, так как, к примеру, сейчас уже есть три формата наших файлов (v1.5 (~v1.0), v1.8, v2.0)... И с каждым новым релизом при добавлении новых возможностей формат будет наращиваться. Поэтому было бы очень удобно всё же использовать парсер из пункта 1.
Для всех трёх/четырёх форматов выкладывать?.. |
||||
|
|||||
| Quadr0 |
|
|||
|
Unregistered |
...
Это сообщение отредактировал(а) Quadr0 - 15.7.2011, 01:04 |
|||
|
||||
| Fantasist |
|
||||||
|
Лентяй ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1517 Регистрация: 24.3.2002 Репутация: нет Всего: 41 |
Именно так.
Ну, то что я писал два года назад я уже и сам не захочу использовать. Вот только я и говорю, что нужно посмотреть что нужно поддерживать. Сейчас например не поддерживается тег CDATA. Я думаю, он нам и не понадобиться, но если есть что-то еще, то легко добавить. Главное знать, что нужно.
Да чем больше тем лучше. Мне надо убедиться, что все необходимые возможности поддерживаются. -------------------- Волны гасят ветер... |
||||||
|
|||||||
| Quadr0 |
|
|||
|
Unregistered |
...
Это сообщение отредактировал(а) Quadr0 - 15.7.2011, 01:04 |
|||
|
||||
| Vitalik |
|
||||||||||||||
![]() Опытный ![]() ![]() Профиль Группа: Координатор проекта Сообщений: 653 Регистрация: 8.11.2004 Где: Ukraine, Kharkov Репутация: 9 Всего: 12 |
Переход на xml-парсер был выполнен по причине не удобной работы с самописным парсером и отсутствия поддержки в нём некоторых возможностей стандартна xml. Quadr0, а ты разве не по тем же причинам захотел перейти с TXmlParser на TXmlDocument, а?
Ну какой же он всегда строгий? Ведь уже есть три разных формата файла И с добавлением новых возможностей всё равно будут добавляться новые теги. Это что получается три/четыре отдельных парсера писать нужно было бы?
Как видишь - нет.
Хорошо, обсуждение собственного парсера я выделяю в отдельную тему, а вот закрывать темы я думаю не стоит
Да! Это будет просто замечательно! ИМХО, "то что доктор прописал" Таким образом можно будет этот парсер легко подстраивать под свои нужды.
Подробнее, пожалуйста, о каких возможностях ты говоришь?.. Пока что я вижу так. Нужно просто уметь: 1). считывать теги, атрибуты и содержимое тега; 2). теги и атрибуты могут располагаться как угодно и где угодно (то есть между ними произвольное количество пробелов/табов/энтеров); 3). игнорирование (пока что) комментариев. А потом может и считывание комментариев... 4). чтение директив <?xml version="1.0" encoding="win-1251"?> и считывание файла в нужной кодировке (думаю utf-8 был бы полезен, но это не так уж и обязательно...) 5). возможность сохранения xml-я в файл
Оки, тогда сейчас просто соберу по нескольку готовых файликов разных форматов... |
||||||||||||||
|
|||||||||||||||
| Quadr0 |
|
|||
|
Unregistered |
...
Это сообщение отредактировал(а) Quadr0 - 15.7.2011, 01:05 |
|||
|
||||
| Vitalik |
|
||||||||||||
![]() Опытный ![]() ![]() Профиль Группа: Координатор проекта Сообщений: 653 Регистрация: 8.11.2004 Где: Ukraine, Kharkov Репутация: 9 Всего: 12 |
Чтобы у нас был полноценный xml файлик, который можно было бы прочитать в любой программе, которая умеет работать с xml!
Поясняй свою мысль
Читай выше.
А же написал: может
Затем, что прошлые форматы файлов тоже должны считываться нашим парсером, разве нет? А если рассуждать как ты, то чем вообще наш новый файл отличается от обыкновенного xml-файла? |
||||||||||||
|
|||||||||||||
| Vitalik |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Координатор проекта Сообщений: 653 Регистрация: 8.11.2004 Где: Ukraine, Kharkov Репутация: 9 Всего: 12 |
Вот, подготовил несколько файликов для примера...
Правильность не проверял, но вроде ошибок при создании не допустил. Вот содержимое архива:
Присоединённый файл ( Кол-во скачиваний: 5 )
Highlighters.samples.zip 5,97 Kb |
|||
|
||||
| Quadr0 |
|
|||
|
Unregistered |
...
Это сообщение отредактировал(а) Quadr0 - 15.7.2011, 01:05 |
|||
|
||||
| Vitalik |
|
||||||||||||
![]() Опытный ![]() ![]() Профиль Группа: Координатор проекта Сообщений: 653 Регистрация: 8.11.2004 Где: Ukraine, Kharkov Репутация: 9 Всего: 12 |
Может я как-то непонятно изъясняюсь... Сейчас попробую пояснить свою мысль... Но сначала, ты должен уяснить одну идею. Компонентом пользуемся не только мы и не только те, кто появляется на этом и другом форуме, но и еще большое количество людей со своими личными предпочтениями. Теперь ближе к делу. Совместимость с xml-ем нужна, так как: 1). есть люди, которые не пользуются дизайнером, а предпочитают предоставлять пользователям своей программы менять файлы подсветки вручную. Благодаря этому файл подсветки может произвольно разбиваться пробелами и табами, а также может содержать поясняющие комментарии, описывающие назначение правил или элементов файла... И вот поэтому мы должны уметь считывать такие файлы. С этим согласен? 2). допустим, кто-нибудь захочет использовать другой парсер для считывания файлов подсветки. Если формат подсветки будет несовместим со стандартами xml, то у него ничего не получится. Также нужно, чтобы xml-ка просматривалась во всех просмотрщиках и редакторах xml-я. Например, хотя бы в том же Internet Explorer.
А я уже говорил, что этот формат не такой уж и строгий! Уже есть ТРИ формата! И что для каждого формата свой парсер писать? Нерентабельно! Плюс учитывай, что в будущем формат файла также может поменяться (никто не застрахован).
- Скорость... А почему ты думаешь, что будет большое увеличение скорости? За счёт чего она может значительно увеличиться? Ведь принципы считывания будут те же самые. - Отсутствие ненужного кода... Вот как раз если выделить самостоятельный парсер в виде отдельного файла - тогда и не будет нагромождения ненужного кода в файлах самого компонента! Плюс Monty высказал интересную мысль: "например, я использую TMyXML ... а в вашем компоненте есть другой TVashXML ... так что делать? Смирится с +120кб или использовать ваш? Или же переписать компонент под свой TMyXML ...". Выделение парсера в отдельный независимый файл позволит более гладко переходить на другой xml-парсер (в случае необходимости).
Кодировка Windows-1252 (или подобная) должна поддерживаться в любом случае. Так как именно эту кодировку используют старые файлы подсветки. А на счёт юникода. Пока что в нём нет абсолютно никакой необходимости, так как наш парсер ("токенов") об юникоде ничего не знает. И официальный SynEdit тоже. Вот когда будет доделан UniSynEdit и когда (если) мы возьмёмся за добавление юникода в наш парсер, то можно будет и подсветки в юникоде хранить Но, в принципе, реализовать поддержку юникода можно уже и сейчас (единственно, что она будет востребована не на всю катушку). При чём UTF-8 тоже тогда был бы полезен. |
||||||||||||
|
|||||||||||||
![]()
|
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | SynUniHighlighter и SynEdit | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |