Сообщение Re[6]: [Resharper SDK] Распарсить html сохранённый в xml. от 19.06.2015 14:21
Изменено 21.06.2015 12:10 ifle
Здравствуйте, DragonFire, Вы писали:
DF>Класс RangeTranslator предназначен для хранения информации о взаимном расположении символов в двух строках.
DF>Метод HtmlUtil.Parse вам предстоит написать, или найти что-то похожее, я затрудняюсь сказать делали мы где-то такое или нет. Наверное делали =)
DF>За образец можете взять ClrRegexLexer и логику из CSharpLiteralWrapper.
DF>Аналогично вы сможете склеивать результирующую строку из кусочком, только нужно правильно ренжи сохранять =)
DF>Если будут какие-то специфичные вопросы, пишите мне в скайп skype.stepanov.ev
Спасибо за такой развёрнутый ответ и предложение о помощи. Если не получиться постучусь.
В моём случае RangeTranslator ключевое звено, которого мне не хватало. С ним всё становится на свои места.
Для того что-бы использовать мой лексер нужно определить новый язык и его сервис?
P.S Не слишком ли накладно для каждого xml нода где есть html создавать свой IHtmlFile?
В принципе у меня файлы не большие и не очень критично, просто интересно.
DF>Класс RangeTranslator предназначен для хранения информации о взаимном расположении символов в двух строках.
DF>Метод HtmlUtil.Parse вам предстоит написать, или найти что-то похожее, я затрудняюсь сказать делали мы где-то такое или нет. Наверное делали =)
DF>За образец можете взять ClrRegexLexer и логику из CSharpLiteralWrapper.
DF>Аналогично вы сможете склеивать результирующую строку из кусочком, только нужно правильно ренжи сохранять =)
DF>Если будут какие-то специфичные вопросы, пишите мне в скайп skype.stepanov.ev
Спасибо за такой развёрнутый ответ и предложение о помощи. Если не получиться постучусь.
В моём случае RangeTranslator ключевое звено, которого мне не хватало. С ним всё становится на свои места.
Для того что-бы использовать мой лексер нужно определить новый язык и его сервис?
P.S Не слишком ли накладно для каждого xml нода где есть html создавать свой IHtmlFile?
В принципе у меня файлы не большие и не очень критично, просто интересно.
Здравствуйте, DragonFire, Вы писали:
DF>Класс RangeTranslator предназначен для хранения информации о взаимном расположении символов в двух строках.
DF>Метод HtmlUtil.Parse вам предстоит написать, или найти что-то похожее, я затрудняюсь сказать делали мы где-то такое или нет. Наверное делали =)
DF>За образец можете взять ClrRegexLexer и логику из CSharpLiteralWrapper.
DF>Аналогично вы сможете склеивать результирующую строку из кусочком, только нужно правильно ренжи сохранять =)
DF>Если будут какие-то специфичные вопросы, пишите мне в скайп skype.stepanov.ev
Спасибо за такой развёрнутый ответ и предложение о помощи. Если не получиться постучусь.
В моём случае RangeTranslator ключевое звено, которого мне не хватало. С ним всё становится на свои места.
Создал свой лексер, фабрику лексера, переопределил CreateInjectedFileAndContext функцию в моём PsiProvider — валидация заработала.
Но есть проблема с quick fix. Они ничего не знают про RangeTranslator.
Предположим quick fix добавляет новый атрибут, он добавляет его не encoded class="centered" вместо class="centered"
P.S Не слишком ли накладно для каждого xml нода где есть html создавать свой IHtmlFile?
В принципе у меня файлы не большие и не очень критично, просто интересно.
DF>Класс RangeTranslator предназначен для хранения информации о взаимном расположении символов в двух строках.
DF>Метод HtmlUtil.Parse вам предстоит написать, или найти что-то похожее, я затрудняюсь сказать делали мы где-то такое или нет. Наверное делали =)
DF>За образец можете взять ClrRegexLexer и логику из CSharpLiteralWrapper.
DF>Аналогично вы сможете склеивать результирующую строку из кусочком, только нужно правильно ренжи сохранять =)
DF>Если будут какие-то специфичные вопросы, пишите мне в скайп skype.stepanov.ev
Спасибо за такой развёрнутый ответ и предложение о помощи. Если не получиться постучусь.
В моём случае RangeTranslator ключевое звено, которого мне не хватало. С ним всё становится на свои места.
Создал свой лексер, фабрику лексера, переопределил CreateInjectedFileAndContext функцию в моём PsiProvider — валидация заработала.
Но есть проблема с quick fix. Они ничего не знают про RangeTranslator.
Предположим quick fix добавляет новый атрибут, он добавляет его не encoded class="centered" вместо class="centered"
<TABLE class="centered" ></TABLE>
P.S Не слишком ли накладно для каждого xml нода где есть html создавать свой IHtmlFile?
В принципе у меня файлы не большие и не очень критично, просто интересно.