View previous topic :: View next topic |
Author |
Message |
Alextp

Joined: 06 Feb 2005 Posts: 4957
|
(Separately) Posted: Fri Sep 17, 2010 11:30 Post subject: [bug?] Юникодные символы в историях |
|
|
такая строка (Текст поиска) сохраняется в истории криво- при след. вызове поиска в истории- фигня
7.55
! | Avada: | Заголовок уточнил. | _________________ UniViewer - CudaText - LogViewer
|
|
Back to top |
|
 |
Avada

Joined: 01 Aug 2008 Posts: 10415 Location: Россия, Саратов
|
(Separately) Posted: Fri Sep 17, 2010 12:11 Post subject: |
|
|
Alextp
Если эту манипуляцию проделать на "чистом" TC, то wincmd.ini будет сгенерирован в UTF-8, и арабский текст отобразится при просмотре файла нормально. Если же у меня уже существует неюникодный рабочий wincmd.ini в кириллице (Windows-1251), то там, разумеется, после сохранения можно при открытии в той же кодировке в редакторе/вьюере увидеть фигню. Однако в самом диалоге в истории у меня по-прежнему отображаются арабские символы. Проверялось на нескольких историях. _________________ Даже самая богатая фантазия
Не представит себе наши безобразия. |
|
Back to top |
|
 |
Alextp

Joined: 06 Feb 2005 Posts: 4957
|
(Separately) Posted: Fri Sep 17, 2010 13:39 Post subject: |
|
|
-меня уже существует неюникодный рабочий wincmd.ini в кириллице (Windows-1251)--в редакторе/вьюере увидеть фигню.
при чем тут редактор?! Я про историю Alt-f7. редактор --не при чем-- _________________ UniViewer - CudaText - LogViewer
|
|
Back to top |
|
 |
Avada

Joined: 01 Aug 2008 Posts: 10415 Location: Россия, Саратов
|
(Separately) Posted: Fri Sep 17, 2010 13:52 Post subject: |
|
|
Alextp
И я про историю.
Quote: | Однако в самом диалоге в истории у меня по-прежнему отображаются арабские символы. Проверялось на нескольких историях. |
_________________ Даже самая богатая фантазия
Не представит себе наши безобразия. |
|
Back to top |
|
 |
Alextp

Joined: 06 Feb 2005 Posts: 4957
|
|
Back to top |
|
 |
CaptainFlint

Joined: 14 Dec 2004 Posts: 6193 Location: Москва
|
(Separately) Posted: Fri Sep 17, 2010 14:28 Post subject: |
|
|
Мне кажется, тут по ходу обсуждения возникла небольшая путаница. Во-первых, я не помню случаев, чтобы wincmd.ini целиком сохранялся в UTF-8. Он должен быть либо ANSI-шный, либо в UTF-16. Во втором случае юникодный текст просто сохраняется как есть, в первом — юникодная строка (и только она) конвертируется Тоталом в UTF-8, к ней приписывается BOM-префикс и результат записывается в качестве значения ключа как ANSI-строка. Естественно, если после этого просмотреть wincmd.ini как ANSI, то увидим ерунду вида
Однако Тотал при чтении настройки из файла видит сигнатуру в начале строки и трактует хранящийся там текст как UTF-8, т.е. как юникодную строку. Соответственно, в диалоге текст из истории отображается и обрабатывается в точности в том виде, в каком мы его вводили в первый раз.
Добавлено:
Alextp wrote: | новый ini
ищем *, текст " ﻼﻻﺏﺑ ".
В истории **ня.
(диалог открой еще раз) |
Открыл, поискал. Закрыл диалог, открыл снова: в строке поиска ровно тот же текст " ﻼﻻﺏﺑ ", в выпадающем списке истории он тоже отображается корректно.
Какая именно **ня у тебя отображается? Как она выглядит? Скрин давай. _________________ Почему же, ё-моё, ты нигде не пишешь "ё"?
Last edited by CaptainFlint on Fri Sep 17, 2010 14:38; edited 3 times in total |
|
Back to top |
|
 |
Alextp

Joined: 06 Feb 2005 Posts: 4957
|
|
Back to top |
|
 |
CaptainFlint

Joined: 14 Dec 2004 Posts: 6193 Location: Москва
|
(Separately) Posted: Fri Sep 17, 2010 14:35 Post subject: |
|
|
Alextp
Я бы начал со скрина, но можно и uvf. И заодно сбрось сюда соответствующую строчку из wincmd.ini. _________________ Почему же, ё-моё, ты нигде не пишешь "ё"? |
|
Back to top |
|
 |
Alextp

Joined: 06 Feb 2005 Posts: 4957
|
|
Back to top |
|
 |
CaptainFlint

Joined: 14 Dec 2004 Posts: 6193 Location: Москва
|
(Separately) Posted: Fri Sep 17, 2010 18:22 Post subject: |
|
|
На чистом INI воспроизвёл. Проблема в том, что Гислер оборачивает строку с пробелами в кавычки, и сигнатура попадает внутрь кавычек, т.е. перестаёт находиться в начале строки, вот текст и не определяется как UTF-8. Баг, надо репортить. _________________ Почему же, ё-моё, ты нигде не пишешь "ё"? |
|
Back to top |
|
 |
Alextp

Joined: 06 Feb 2005 Posts: 4957
|
(Separately) Posted: Fri Sep 17, 2010 19:00 Post subject: |
|
|
текст Avada про кодировку ini - вобще не понял. :\ При чем тут есть ли уже файл ini или он "сгенерированный". Кодировка все равно 1-byte(кодировка истории- UTF) _________________ UniViewer - CudaText - LogViewer
|
|
Back to top |
|
 |
Avada

Joined: 01 Aug 2008 Posts: 10415 Location: Россия, Саратов
|
(Separately) Posted: Fri Sep 17, 2010 19:35 Post subject: |
|
|
Alextp
При том, что при запуске "чистого" Тотала (вообще без файла wincmd.ini), вводе в одном из полей поиска вот этого самого, выполнения поиска и перезапуска TC вновь созданый INI-файл в части программ (например, EmEditor) открывается как "UTF-8 без сигнатуры", и там эта строка истории отображается правильно. При выполнении того же самого в Тотале с уже имеющимся файлом wincmd.ini в Windows-1251 в соответствующей строчке в редакторе (не в диалоге!) будет фигня.
А что касается истории, отображаемой в самом диалоге, то, как было уже сказано, у меня там с арабской вязью всё в порядке в любом случае. _________________ Даже самая богатая фантазия
Не представит себе наши безобразия. |
|
Back to top |
|
 |
CaptainFlint

Joined: 14 Dec 2004 Posts: 6193 Location: Москва
|
(Separately) Posted: Fri Sep 17, 2010 19:40 Post subject: |
|
|
Avada
На самом деле это случайность. Точнее, ошибка автоопределения в EE. Поскольку файл пустой и (судя по всему) не содержит ничего, кроме латиницы и нескольких UTF-8 символов, EE предполагает, что это UTF-8. Как я описал выше, предполагает ошибочно (хотя винить его здесь сложно, файл, действительно, слишком уж похож на настоящий UTF-8).
Касательно воспроизведения бага: наличие пробелов в начале и конце поисковой строки существенно. Я тоже сначала без пробелов искал и не мог воспроизвести. _________________ Почему же, ё-моё, ты нигде не пишешь "ё"? |
|
Back to top |
|
 |
Avada

Joined: 01 Aug 2008 Posts: 10415 Location: Россия, Саратов
|
(Separately) Posted: Fri Sep 17, 2010 19:56 Post subject: |
|
|
CaptainFlint
Да, с пробелами баг подтверждаю точно по твоей схеме. _________________ Даже самая богатая фантазия
Не представит себе наши безобразия. |
|
Back to top |
|
 |
CaptainFlint

Joined: 14 Dec 2004 Posts: 6193 Location: Москва
|
(Separately) Posted: Thu Sep 23, 2010 19:22 Post subject: |
|
|
Зарепортил. _________________ Почему же, ё-моё, ты нигде не пишешь "ё"? |
|
Back to top |
|
 |
|