Диакритические символы юникода и моноширинный шрифт

Russian main discussion
  • Author
  • Message
Offline
Posts: 47
Joined: Sat Jul 25, 2009 10:47 pm

Диакритические символы юникода и моноширинный шрифт

Post by vvch »

При использовании шрифта Courier New юникодовские диакритические символы, такие как знак ударения (U+0301), отображаются не над предыдущим знаком, а после него.
Думаю, это неправильно: по сути, это не самостоятельный символы, а довески к предыдущему.
Любопытно, что до 4й версии диакритические знаки съезжали только над русскими буквами (над латаницей отображались корректно).

Возможно ли это исправить?

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

Post by Instructor »

Составные, а также суррогатные символы юникода, не поддерживаются. Они могут корректно рисоваться, но программа работает с ними как с отдельными символами.

Offline
Posts: 47
Joined: Sat Jul 25, 2009 10:47 pm

Post by vvch »

Об этом и речь: хотелось бы, чтобы они просто отображались корректно. В настоящее время при использовании шрифта "Courier New" они отображаются некорректно (в следующей символьной позиции, а не над предыдущим символом).

Offline
Posts: 47
Joined: Sat Jul 25, 2009 10:47 pm

Post by vvch »

Как-то эта тема заглохла, а проблема досадная. Она возникает при использовании любого моноширинного шрифта, не только Courier. А между тем, в AkelPad3 и WordPad её не было.
Напомню, речь не о том, чтобы составные символы как-то "поддерживались", а о том, что они перестали корректно отрисовываться в новых версиях AP.

Offline
Posts: 874
Joined: Sat Jan 16, 2010 2:03 pm

Post by opk44 »

1. Тема не заглохла, а исчерпалась. AkelPad4 - это плайнтекстовый редактор! Его задача не "корректно отрисовать", а коректно редактировать.
2. Вы не правы. За AkelPad3 не поручусь, а в WordPad (а равно и стандартном для WinXP Notepad 5.1 и в Word2003sp3 и в LibreOffice4) отображается указанный символ (U+0301) для шрифта "Courier New" в точности также, как и в AkelPad4. Перепроверьте и убедитесь.
Может не такая уж это и досадная проблема? А если нет, «так почему вы решили начать с нашей парикмахерской?» :)

Offline
Posts: 47
Joined: Sat Jul 25, 2009 10:47 pm

Post by vvch »

Тема не заглохла, а исчерпалась.
Мне кажется, это может быть из-за недопонимания, возможно, вызванного иллюзией, что в других редакторах всё точно так же.
это плайнтекстовый редактор! Его задача не "корректно отрисовать", а коректно редактировать.
Одно другому не только не мешает, но корректное редактирование плайнтекста предполагает и его корректное отображение. Диакритические юникодовские знаки это фича именно плайнтекста (и при использовании пропорциональных шрифтов они отображаются корректно и в AkelPad).
Вы не правы. ... в точности также, как и в AkelPad4. Перепроверьте и убедитесь.
Это не совсем так, я об этом писал в первом посте темы. Так же, как AP4, отображает только Notepad. Остальные упомянутые редакторы отображают диакритические символы корректно, но — почему-то только над латиницей. Подозреваю, это свидетельствует о том, что разработчики этих редакторов признавали проблему багом и пытались её исправить, но не знали, что диакритические знаки используются и в кириллице (которая для них как китайская грамота, где диакритика неуместна).
Может не такая уж это и досадная проблема?
Ну не вселенского масштаба. Тем не менее, периодически мозолит глаза.
«так почему вы решили начать с нашей парикмахерской?»
Очень просто: потому что я не пользуюсь ни notepad'ом, ни wordpad'ом, а вот AP — постоянно. Я считаю, что он очень удачно занимает свою нишу, благодарен его разработчикам, и хотел бы помочь им улучшить его.
Что касается WinWord и LibreOffice, там никто не использует моноширинные шрифты, поэтому проблема там незаметна (да и касается только кириллицы). А вот в плайнтекстовом редакторе эти шрифты как раз основная рабочая лошадка.
И ещё потому, что AP позиционируется как замена блокноту, лишенная многих его недостатков.

Offline
Posts: 294
Joined: Tue Jul 27, 2010 11:18 pm

Post by Serge Yolkin »

[Off]
Нет, ну почему столько желающих испортить удобный и добротный инструмент под сурдинку "помочь им улучшить его"?
[/Off]
Для меня как раз очень важно, чтобы каждый символ был на своей позиции, не налезая на предыдущий или ещё какой. Поэтому и шрифт - моноширинный. А для комфортного чтения, и даже редактирования художественных/деловых/прочих текстов есть более эргономичные пропорциональные шрифты и/или другие инструменты.

Offline
Posts: 47
Joined: Sat Jul 25, 2009 10:47 pm

Post by vvch »

Своя позиция для комбинируемой диакритики — над предыдущим символом. Моноширинность шрифта никак этого не отменяет. Вы же не возражаете против того, например, что BOM и другие подобные символы должны иметь нулевую ширину в том числе и в моноширинных шрифтах?

Offline
Posts: 294
Joined: Tue Jul 27, 2010 11:18 pm

Post by Serge Yolkin »

vvch
Ни в коем случае! Место каждого символа - в строго своей, абсолютно отдельной позиции. Хотя бы для того, чтобы в статусбаре можно было видеть номер этой самой позиции и код символа. Если я пишу нечто, для поиска этой самой диакритики в тексте - где должен быть комбинируемый символ, если он указывается без буквы, как искомый символ? А если нужен набор (последовательность) только диакритических символов? (Зимой была такая задачка)

Вы не поверите, но и с бомом иногда работать приходится. Писал как-то скрипт для добавления BOM в UTF-8 файлы без BOM.

Offline
Posts: 47
Joined: Sat Jul 25, 2009 10:47 pm

Post by vvch »

Serge Yolkin wrote:чтобы в статусбаре можно было видеть номер этой самой позиции и код символа
Вот это я, кстати, полностью поддерживаю. Даже писал тут feature request несколько лет назад. Но судя по тому, что код символа так и не виден, никому кроме нас с Вами это не нужно.
Serge Yolkin wrote:Место каждого символа - в строго своей, абсолютно отдельной позиции
С чего Вы взяли? Вам известно о существовании, например, управляющих символов? AP не шестнадцатиричный редактор, где, действительно, даже символ перевода строки должен занимать свою позицию равной ширины с алфавитно-цифровыми.
Serge Yolkin wrote:Вы не поверите, но и с бомом иногда работать приходится. Писал как-то скрипт для добавления BOM в UTF-8 файлы без BOM.
Поверю, почему же. Самому доводилось :) Как это отменяет тот факт, что BOM должен в текстовом редакторе отображаться с нулевой шириной, а не «в строго своей, абсолютно отдельной позиции»?

Offline
Posts: 294
Joined: Tue Jul 27, 2010 11:18 pm

Post by Serge Yolkin »

Но судя по тому, что код символа так и не виден...
Мне - виден. Почему Вам не виден - не знаю.
Собственно, полемика перешла в неконструктивную фазу, поэтому продолжать её нет смысла. Я уже писал в другом топике и по поводу другого запроса: я против изменения дефолтного поведения AP. Даже если Вы абсолютно правы и это баг, то я к этому багу привык и активно им пользуюсь. Поэтому мне было бы некомфортно от него отказываться. Запросите требуемый Вам функционал как опцию - и меня это никак не будет касаться, но по дефолту пусть всё остаётся как было.

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

Post by FeyFre »

Ни в коем случае! Место каждого символа - в строго своей, абсолютно отдельной позиции.
Первое же предложение о комбинированных символах абсолютного опровергает ваше утверждение :roll:
Unicode. §2.11 wrote:Combining Characters. Characters intended to be positioned relative to an associated base character are depicted in the character code charts above, below, or through a dotted circle.

Offline
Posts: 47
Joined: Sat Jul 25, 2009 10:47 pm

Post by vvch »

Serge Yolkin wrote:Мне - виден. Почему Вам не виден - не знаю.
Вахх! Погуглил — действительно, ещё в 2010 появился параметр StatusUserFormat, а я и прозевал! Слава Instructor'у! Но вот этим и неудобна организация форума: невозможно отследить состояние конкретного бага или реквеста.
Serge Yolkin wrote:полемика перешла в неконструктивную фазу
Звиняйте, если чем обидел. Ума не приложу, что в моих репликах было неконструктивного, но Вам виднее...

Offline
Posts: 876
Joined: Tue Jul 24, 2007 8:54 am

Post by Fr0sT »

Тоже считаю, что отображение должно быть таким, как задумано, но после поста #2 какие-то дальнейшие дискуссии излишни, кмк.

Offline
Posts: 294
Joined: Tue Jul 27, 2010 11:18 pm

Post by Serge Yolkin »

vvch
Да нет никаких обид. Просто мы с Вами не изменим свои позиции в результате дискуссии, а значит конструктива не предвидится. Компромисс я предлагал (опция).

Поймите, мне глубоко параллельно, что (и кому) должен сферический плэйнтекст редактор в вакууме. Я не хочу обсуждать какие-либо мировые стандарты и рекомендации. Не имеет значения, как и почему должны отображаться те или иные символы. Меня просто более чем устраивает существующее поведение AP, и мне не хотелось бы, чтобы оно изменилось.

Чисто для примера. Когда-то я просил опцию (всё-таки опцию) "фолдинг при открытии файла". Уже не помню, был ли я инициатором, или присоединился к чьему-то запросу. Опция была реализована, но реализация меня не устроила (сворачивается только верхний уровень). Но, поскольку поведение уже задано, я не прошу изменять эту фичу: вполне вероятно, что всем остальным пользователям так удобнее.
Post Reply