О юникоде, шрифтах и иероглифах в разных версиях

Russian main discussion
  • Author
  • Message
Offline
Posts: 2
Joined: Fri Sep 01, 2006 5:25 am

О юникоде, шрифтах и иероглифах в разных версиях

Post by X-Ander »

Привет обитателям этого форума!

Какое-то время назад я начал пользоваться AkelPad'ом, поскольку мне понадобился легкий редактор типа "Блокнота", но с возможностью сохранения файлов в UNIX-формате. Пользуюсь еще встроенным редактором FAR Manager'а, но он не поддерживает Unicode.

Пользовался версией 2.1.6 и до поры, до времени всё устраивало - спасибо разработчикам! Проблемы начались, когда мне пришлось работать с текстом в кодировке UTF-8, содержащим, помимо прочего, китайские иероглифы. Собственно работа нареканий не вызывала, но при сохранении текста некоторые иероглифы упорно сохранялись неправильно. В результате файл оказывался испорченным - на месте этих иероглифов оказывались недопустымые в UTF-8 последовательности байт. Например, вместо E9 AB 98 получалось F9 AB 98.

Надеясь решить эту проблему, я пошел на этот сайт в поисках новой версии AkelPad'а, и взял сразу две - 2.1.7 и 3.0.7.

Обе версии отображают иероглифы только при выборе определенных шрифтов, например, Arial Unicode MS или SimSun. Однако для меня более комфортные шрифты - Lucida, Verdana. Но при их выборе в 2.1.7 и 3.0.7 иероглифы пропадают, а в 2.1.6 нормально отображаются. Хотелось бы такого же поведения и от новых версий.

В 3.0.7 глюка с битыми последовательностями UTF-8 при сохранении нет (УРА!!!). В 2.1.7 он остался.

Так что, пока что пользуюсь версией 3.0.7 и Arial Unicode MS. Но этот шрифт меня, если честно, малость раздражает :) В идеале хотелось бы, чтобы можно было выбирать несколько шрифтов с таким алгоритмом:

если символ есть в первом шрифте - отображать первым,
иначе если символ есть во втором шрифте - отображать вторым,
и т. д.
иначе отображать квадратик.

Но это так, мечты :) Надеюсь, что мои наблюдения помогут авторам развивать программу, за которую им большое спасибо! Готов к сотрудничеству по мере сил.

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

Post by Instructor »

Можете отправить пример файла на e-mail?

Offline
Posts: 2
Joined: Fri Sep 01, 2006 5:25 am

Post by X-Ander »

Instructor wrote:Можете отправить пример файла на e-mail?
Отправил

Offline
Site Admin
Posts: 5
Joined: Fri Aug 18, 2006 8:16 pm

Касательно версий 2.1.6 и 2.1.7

Post by ring0 »

Касательно версий 2.1.6 и 2.1.7

Там действительно был глюк с сохранением в кодировке UTF-8, который был долгое время незамечен, так как проявлялся только с иероглифами. Сейчас (в версии 2.1.7a) он исправлен.

Что же касается отображения иероглифов в версиях 2.1.6 и 2.1.7(a), то "мешает" правильному отображению иероглифов в последней как раз то нововведение, которое отвечает за значительное ускорение загрузки больших файлов (установка EM_SETLANGOPTIONS). Т.е. вместе они не уживаются - или быстрое открытие больших файлов, или иероглифы. Как решить эту дилемму, пока непонятно.

Кстати, в третьей версии неправильное отображение иероглифов, я думаю, связано с этой же опцией.[/b]

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

Post by Instructor »

ring0
Как решить эту дилемму, пока непонятно.
Мы с X-Ander'ом решили эту проблему написанием плагина PlainText (после релиза 3.0.8 будет выложен), который устанавливает флаги окну редактирования: TM_PLAINTEXT, IMF_AUTOFONT.

Offline
Site Admin
Posts: 5
Joined: Fri Aug 18, 2006 8:16 pm

Post by ring0 »

Instructor wrote:Мы с X-Ander'ом решили эту проблему написанием плагина PlainText (после релиза 3.0.8 будет выложен), который устанавливает флаги окну редактирования: TM_PLAINTEXT, IMF_AUTOFONT.
Может, лучше такую простую функциональность сделать не посредством плагина, а жестко, путем введения галочки в настройках? Например: "Поддержка отображения азиатских символов (медленно)" - и по умолчанию отключить.

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

Post by Instructor »

ring0
Думаю не стоит. Для печати иероглифов нужно реализовывать печать через EM_FORMATRANGE, который с версии 3.0.6 не используется.

Offline
Site Admin
Posts: 5
Joined: Fri Aug 18, 2006 8:16 pm

Post by ring0 »

Выпустил версию 2.1.8. В ней проблема решена (галочка в настройках).

Offline
Posts: 4
Joined: Thu Oct 05, 2006 9:51 pm

Post by VanGo »

ring0 wrote:Выпустил версию 2.1.8. В ней проблема решена (галочка в настройках).
А как насчет табличек, примерно таких
_____________
| |
____| имя.LST |
| | (листинг) |
| |___________|
____________________ _____________ | _____________
| | | | | | |
| имя.ASM |___| макроас- |____|____| имя.CRF |
| (исходный текст) | | семблер | | | (перекр. |
|__________________| |___________| | | ссылки) |
| |___________|
| _____________
| | |
|____| имя.OBJ |
| (объектн. |
| модуль) |
|___________|

В Listere и AkelPad 2.1.4b они нормально отображаются а в 3.1.0. примерно так же как и здесь напечаталось?
P.s. опера 9.01 наглухо виснет на вашем сайте при создании сообщения или темы :shock: Приходится IE пользоваться :? Брррр....

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

Post by Instructor »

VanGo
В Listere и AkelPad 2.1.4b они нормально отображаются а в 3.1.0. примерно так же как и здесь напечаталось?
Так тяжело сказать, не зная какие настройки у листера и акельпадов. Скорее всего дело в шрифте :)
P.s. опера 9.01 наглухо виснет на вашем сайте при создании сообщения или темы Приходится IE пользоваться Брррр....
Пользуюсь оперой 8.53.

Offline
Posts: 49
Joined: Fri Sep 22, 2006 9:28 pm
Location: Питер
Contact:

Post by okruzhor »

Опера 8.54 тоже показывает правильно . 9-я имхо сыровата .

Offline
Posts: 4
Joined: Thu Oct 05, 2006 9:51 pm

Post by VanGo »

Instructor wrote:Так тяжело сказать, не зная какие настройки у листера и акельпадов. Скорее всего дело в шрифте :)
Что то мне подсказывает что ответ дан наугад, но правильный! :P
Со шрифтом Lucida Сonsole все в порядке.

P.s. И уж заодно: Куда делась удобнейшее меню "Кодировки", а то вечно путаница с меню "Перекодировать из..."

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

Post by Instructor »

VanGo
P.s. И уж заодно: Куда делась удобнейшее меню "Кодировки", а то вечно путаница с меню "Перекодировать из..."
Ответ в FAQ'e.

Offline
Posts: 4
Joined: Thu Oct 05, 2006 9:51 pm

Post by VanGo »

Instructor wrote:3. Языковой модуль с меню "Кодировки".
Если я правильно понял - этот модуль подключать как плагин. Я поместил его куда надо, но при вызове меню Настройки->плагин выскакивает ошибка "Инcтpyкция пo aдpecy "0x7c809e9c" oбpaтилacь к пaмяти пo aдpecy "0x01325a4d". Пaмять нe мoжeт быт "read"." с закрытием AkelPada :? Вот....

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

Post by Instructor »

VanGo
Ответ там же :)
Post Reply