Bug 8644 - неправильная обработка экранирования символов
: неправильная обработка экранирования символов
Status: CLOSED FIXED
: Sisyphus
(All bugs in Sisyphus/ALDConvert)
: unstable
: all Linux
: P2 normal
Assigned To:
:
:
:
:
:
  Show dependency tree
 
Reported: 2005-12-14 13:53 by
Modified: 2008-06-13 12:16 (History)


Attachments


Note

You need to log in before you can comment on or make changes to this bug.


Description From 2005-12-14 13:53:14
Исходная разметка:
({Настройка}-\>{ALT Linux}-\>{Пользователи})

HTML-вывод:
(Настройка->{ALT Linux}->{Пользователи}).

Первое слово -- "Настройка" -- выведено курсивом, как и должно быть, остальное прямым.
------- Comment #1 From 2005-12-15 16:59:09 -------
Экранирование и в самом деле работает хреновато, но здесь проблема глубже.
"->" -- это самостоятельная текстовая единица. Пока мы не придумали, как её
обозначит, она останется verbatim, то есть ^->^. А вопрос в том, каким
синтаскическим элементом считать квотированный символ. Буквой? Тогда он может
применяться только там, где уместно слово. Знаком препинания? Тогда как вокруг
него расставлять пробелы?
------- Comment #2 From 2005-12-16 03:43:01 -------
Исправлено в -alt8: экранируется всё, экранированный символ считается буквой
------- Comment #3 From 2005-12-16 12:05:34 -------
> Экранирование и в самом деле работает хреновато, но здесь проблема глубже.
> "->" -- это самостоятельная текстовая единица. Пока мы не придумали, как её
> обозначит, она останется verbatim, то есть ^->^. А вопрос в том, каким
> синтаскическим элементом считать квотированный символ. Буквой? Тогда он может
> применяться только там, где уместно слово. Знаком препинания? Тогда как вокруг
> него расставлять пробелы?

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