Re: Возможна ли поддержка тиклем юникода?

2009-01-21 Пенетрантность Serhiy Storchaka
Victor Wagner wrote:
 Надо было не говорить, а писать. Прислал бы патчик, я б его, глядишь,
 интегрировал.

Патчик-то я прислал, только что-то ответа долго нет.


-- 
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Возможна ли поддержка тиклем юникода?

2009-01-20 Пенетрантность Alexey Pechnikov
Hello!

Никак не могу решить проблему с буквой ё - при сравнении wcsncasecmp 
выкидывает ё после всех 
букв алфавита. Или я что-то не понимаю, или в линуксе буква ё не 
обрабатывается корректно.

int sqlite3StrNICmp16(const void *zLeft, const void *zRight, int N){
  const unsigned short *a = zLeft;
  const unsigned short *b = zRight;
  signed int ua = *a, ub = *b;

  return wcsncasecmp(ua, ub, N);
}


Возвращает

а
А
бук
Баг
г
ель
жук
Ёж
ёлка

Вообще-то это локаленезависимая сортировка получается.

Best regards, Alexey.


--
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Возможна ли поддержка тиклем юникода?

2009-01-20 Пенетрантность Serhiy Storchaka
Alexey Pechnikov wrote:
 После ваших подсказок 
 появилась мысль, что для utf8 можно сделать локале-независимую, а для
 utf16 - локале-зависимую реализации и выбирать формат хранения данных в
 зависимости от потребностей. Может быть, вы можете дать оценку такому
 варианту?

Почему бы не сделать две реализации и не сравнить простоту и эффективность?
Sqlite3, как я вижу, предоставляет одинаковый интерфейс независимо от
внутреннего представления, прозрачно перекодируя на лету. Выбор зависит от
того, какое представление чаще используется.

Главные потери будут не на саму перекодировку, а на динамическое выделение
буфферов при каждом преобразовании (unac_string делает это, в отличие от
unac_string_utf16).

Мне представляется более удобным зарегистрировать collation для
SQLITE_UTF16BE, использовать towlower (вручную посимвольно преобразовывая в
UTF-32) и unac_string_utf16 (или посимвольно unac_char_utf16). А внутреннее
представление базы выбрать по результатам тестов готового продукта.

 Я не тестировал скорость обработки utf8/utf16, но по таблицам 
 символов должно быть все равно, какое представление выбрано, если таблицы
 составлены в нем же, а системные функции быстрее должны работать с utf16,
 но размер данных увеличится...

Для русского текста размер практически одинаков — два символа на букву.

 Уверен, поскольку могу указать явно, в каком формате мне нужны данные -
 sqlite3_value_text16, sqlite3_value_text16be, sqlite3_value_text16le,
 sqlite3_value_text (последняя функция вернет utf-8). Вызов unac_string
 работает корректно, а unac_string_utf16 ломает данные.

Для unac_string_utf16 данные должны быть получены sqlite3_value_text16be, а
не sqlite3_value_text16.

 Да, так оно и сделано по умолчанию, но мне нужно сортировать по алфавиту
 (игнорируя акценты у ё и й), делать регистронезависимый поиск и
 приведение регистра. Впрочем, без учета системной локали это делается в
 лоб с помощью таблиц символов.

Всё не так просто. См. http://www.unicode.org/reports/tr10/


-- 
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Возможна ли поддержка тиклем юникода?

2009-01-20 Пенетрантность Alexey Pechnikov
Hello!

 Почему бы не сделать две реализации и не сравнить простоту и эффективность?
 Sqlite3, как я вижу, предоставляет одинаковый интерфейс независимо от
 внутреннего представления, прозрачно перекодируя на лету. Выбор зависит от
 того, какое представление чаще используется.

Видимо, так и придется. Раньше и в голову не приходило, что в работе с юникодом 
столько проблем и 
неувязок и в линуксе нет набора нужных функций, а каждая библиотека есть 
отдельный велосипед. Как я 
посмотрел, libicu тоже через одно место работает - поиск и сравнение делаются 
для utf8, а 
преобразование регистра в utf16, понятно теперь, почему использование этой либы 
вчетверо снижает 
скорость работы SQLite.

 Главные потери будут не на саму перекодировку, а на динамическое выделение
 буфферов при каждом преобразовании (unac_string делает это, в отличие от
 unac_string_utf16).

Логично хранить в удобном для преобразований формате, только все либы разные 
форматы используют. Как 
я сейчас сделал, через iconv преобразование при каждом обращении, это вообще не 
вариант для 
продакшена.

  Уверен, поскольку могу указать явно, в каком формате мне нужны данные -
  sqlite3_value_text16, sqlite3_value_text16be, sqlite3_value_text16le,
  sqlite3_value_text (последняя функция вернет utf-8). Вызов unac_string
  работает корректно, а unac_string_utf16 ломает данные.

 Для unac_string_utf16 данные должны быть получены sqlite3_value_text16be, а
 не sqlite3_value_text16.

А в определяемом платформой формате be/le никак нельзя?! Ой не нравится мне 
такой подход.

  Да, так оно и сделано по умолчанию, но мне нужно сортировать по алфавиту
  (игнорируя акценты у ё и й), делать регистронезависимый поиск и
  приведение регистра. Впрочем, без учета системной локали это делается в
  лоб с помощью таблиц символов.

 Всё не так просто. См. http://www.unicode.org/reports/tr10/

Полную реализацию самому не сделать, а готовых инструментов приемлемого 
качества не видно. 
Интересует именно приемлемая реализация, но зато быстрая. В сложных случаях 
можно на уровне 
приложения назначать функции сортировки/преобразования, но это медленно.

Best regards, Alexey.


--
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Возможна ли поддержка тиклем юникода?

2009-01-20 Пенетрантность Serhiy Storchaka
Alexey Pechnikov wrote:
 Никак не могу решить проблему с буквой ё - при сравнении wcsncasecmp
 выкидывает ё после всех букв алфавита. Или я что-то не понимаю, или в
 линуксе буква ё не обрабатывается корректно.
 
 int sqlite3StrNICmp16(const void *zLeft, const void *zRight, int N){
   const unsigned short *a = zLeft;
   const unsigned short *b = zRight;
   signed int ua = *a, ub = *b;
 
   return wcsncasecmp(ua, ub, N);
 }
[…]
 Вообще-то это локаленезависимая сортировка получается.

Во-первых, wcsncasecmp работает с массивами wchar_t, а здесь — чёрт знает
что. Во-вторых, да, wcsncasecmp не гарантирует алфавитного порядка.


-- 
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Возможна ли поддержка тиклем юникода?

2009-01-20 Пенетрантность Serhiy Storchaka
Alexey Pechnikov wrote:
 Для unac_string_utf16 данные должны быть получены sqlite3_value_text16be,
 а не sqlite3_value_text16.
 
 А в определяемом платформой формате be/le никак нельзя?! Ой не нравится
 мне такой подход.

Можно, но либо придётся вручную перекодировать данные перед и после вызова
unac_string_utf16, либо, что лучше, вместо unac_string_utf16 использовать
unac_char_utf16.

 Всё не так просто. См. http://www.unicode.org/reports/tr10/
 
 Полную реализацию самому не сделать, а готовых инструментов приемлемого
 качества не видно. Интересует именно приемлемая реализация, но зато
 быстрая. В сложных случаях можно на уровне приложения назначать функции
 сортировки/преобразования, но это медленно.

См. Unicode::Collate.



-- 
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Возможна ли поддержка тиклем юникода?

2009-01-20 Пенетрантность Alexey Pechnikov
Hello!

 Можно, но либо придётся вручную перекодировать данные перед и после вызова
 unac_string_utf16, либо, что лучше, вместо unac_string_utf16 использовать
 unac_char_utf16.

Ради таких перспектив явно не имеет смысла отказываться от привычной utf8. 
Собственно, если хранить 
данные в utf-16, то тиклевские функции для сортировки должны работать быстрее 
(правда, буква ё 
вылетает из алфавита).


  Всё не так просто. См. http://www.unicode.org/reports/tr10/
 
  Полную реализацию самому не сделать, а готовых инструментов приемлемого
  качества не видно. Интересует именно приемлемая реализация, но зато
  быстрая. В сложных случаях можно на уровне приложения назначать функции
  сортировки/преобразования, но это медленно.

 См. Unicode::Collate.

Оно на перле реализовано :-) Вариант на тикле в несколько раз медленнее libicu, 
который примерно 
вчетверо медленнее бинарного сравнения, а в этом перловом модуле много всего 
понаписано, так что 
будет еще намного медленнее, чем на тикле. Можно то же самое делать на тикле, 
но вот  буква ё не 
сортируется правильно :-) и нет удаления акцентов.

Резюме - продолжаю пользоваться таблицами символов utf8 для преобразования 
регистра и удаления 
акцентов, скорость этого решения позволяет заменять стандартную collate NOCASE. 
Все остальные пути 
приводят к замедлению движка SQLite существенно более, чем на 50%, что я 
полагаю неприемлемым для 
production. Начинаю понимать, почему для первых 127 символов в эскулайте 
определены матрицы 
преобразований...

Best regards, Alexey.


--
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Возможна ли поддержка тиклем юникода?

2009-01-19 Пенетрантность Serhiy Storchaka
Alexey Pechnikov wrote:
 В libunicode-0.7v/include/unicode.h есть
 typedef u_int16_t Uchar;
 
 Разве это не utf-16? Плюс предлагаются функции преобразования utf8 -
 utf16. Про utf32 в коде не вижу даже упоминания.

Странно, в 0.4 использовались по крайней мере 32-битные символы для
внутреннего представления, да и код рассчитан на 16 бит. Мы точно об одной
и той же библиотеке говорим?

  В этой библиотеке нет функции сравнения строк. Для правильного
  сравнения похоже и нужны мегабайты libicu.
 Возможно, но использование libicu в 4 раза замедляет запросы, это просто
 немыслимо. Ну и  размер либы нереально большой.

Энтерпрайз. Ну вот такой он непростой, уникод.

 С iconv понятно, перекодировку внешних данных делаю именно через него, а
 храню все уже в utf8. А как правильно работать с utf8, чтобы избежать
 лишних перекодировок? Поскольку расширение нужно для embedded СУБД, вопрос
 производительности приоритетный. Есть строки в utf8, какие функции
 использовать для достижения максимальной производительности?

А какие функции нужны?

man -k multibyte wide-character 'wide character'

 wchar_t - это два байта, то есть UTF-16, откуда возьмется utf-32?

 В линуксе, кстати, представление wchar_t будет 
 совпадать с UTF-32.



-- 
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Возможна ли поддержка тиклем юникода?

2009-01-19 Пенетрантность Alexey Pechnikov
Hello!

В сообщении от Monday 19 January 2009 14:56:02 Serhiy Storchaka написал(а):
 Alexey Pechnikov wrote:
  В libunicode-0.7v/include/unicode.h есть
  typedef u_int16_t Uchar;
 
  Разве это не utf-16? Плюс предлагаются функции преобразования utf8 -
  utf16. Про utf32 в коде не вижу даже упоминания.

 Странно, в 0.4 использовались по крайней мере 32-битные символы для
 внутреннего представления, да и код рассчитан на 16 бит. Мы точно об одной
 и той же библиотеке говорим?

Наверное, о разных - вроде их две, одна из которых гномовская, а другая сама 
по себе. Впрочем, 
хватает и towupper/towlower, эта либа пожалуй и не нужна.

  Возможно, но использование libicu в 4 раза замедляет запросы, это просто
  немыслимо. Ну и  размер либы нереально большой.

 Энтерпрайз. Ну вот такой он непростой, уникод.

Зато понятно, почему разработчики избегают этой либы. Но, к сожалению, 
некоторые используют, а в 
паре с эскулайт использование icu и вовсе выглядит чудовищно.


  С iconv понятно, перекодировку внешних данных делаю именно через него, а
  храню все уже в utf8. А как правильно работать с utf8, чтобы избежать
  лишних перекодировок? Поскольку расширение нужно для embedded СУБД,
  вопрос производительности приоритетный. Есть строки в utf8, какие функции
  использовать для достижения максимальной производительности?

 А какие функции нужны?

Удаление акцента для символов utf8. Библиотека unaccent работает, но как-то 
странно - обязательно 
делает перекодировку даже для utf-16be (при вызове unac_string_utf16 почему-то 
заглавная буква Ё 
превращается в непонятный значок, а unac_string с указанием кодировки 
возвращает корректный 
результат), хотя по документации не должна, и я никак не могу понять, можно ли 
ее использовать для 
работы с utf8 представлением.

strncasecmp с utf8 почему-то не работает.

wcsncasecmp для utf16 не проверял, может быть и работает...

Best regards, Alexey.


--
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Возможна ли поддержка тиклем юникода?

2009-01-19 Пенетрантность Serhiy Storchaka
Alexey Pechnikov wrote:
 В сообщении от Monday 19 January 2009 14:56:02 Serhiy Storchaka
 А какие функции нужны?
 
 Удаление акцента для символов utf8.

Удаление акцента, как и преобразование регистра, и т.п. производится над
строкой символов уникода. А UTF-8 — всего лишь представление этой строки в
виде последовательности байт.

 Библиотека unaccent работает, но 
 как-то странно - обязательно делает перекодировку даже для utf-16be (при
 вызове unac_string_utf16 почему-то заглавная буква Ё превращается в
 непонятный значок, а unac_string с указанием кодировки возвращает
 корректный результат), хотя по документации не должна, и я никак не могу
 понять, можно ли ее использовать для работы с utf8 представлением.

В документации ошибка, UTF-16 следует читать как UTF-16BE, и
unac_string_utf16 работает именно с UTF-16BE. Вообще же код достаточно
грязный, библиотека может не работать на экзотических платформах, а утилита
unaccent не работает с некоторыми данными и на обычных. С UTF-8 особых
проблем не будет.

 strncasecmp с utf8 почему-то не работает.

Что значит «не работает»? Как оно должно «работать»? Подсказка — что
означает n?

 wcsncasecmp для utf16 не проверял, может быть и работает...

wcsncasecmp работает не с utf16, а со строкой широких символов wchar_t.


-- 
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Возможна ли поддержка тиклем юникода?

2009-01-19 Пенетрантность Alexey Pechnikov
Hello!

 Удаление акцента, как и преобразование регистра, и т.п. производится над
 строкой символов уникода. А UTF-8 — всего лишь представление этой строки в
 виде последовательности байт.

Извиняюсь за некорректное использование терминов, сейчас вроде понятнее 
становится, попробую 
переформулировать вопрос.

Если входные данные в представлении UTF-8, логично использовать функции  именно 
для этого 
представления. Но почему-то функции вижу только для UTF-16 (библиотека 
ubaccent) и UTF32 (система). 
Зачем этот зоопарк и как с ним жить?

  Библиотека unaccent работает, но
  как-то странно - обязательно делает перекодировку даже для utf-16be (при
  вызове unac_string_utf16 почему-то заглавная буква Ё превращается в
  непонятный значок, а unac_string с указанием кодировки возвращает
  корректный результат), хотя по документации не должна, и я никак не могу
  понять, можно ли ее использовать для работы с utf8 представлением.

 В документации ошибка, UTF-16 следует читать как UTF-16BE, и
 unac_string_utf16 работает именно с UTF-16BE. Вообще же код достаточно
 грязный, библиотека может не работать на экзотических платформах, а утилита
 unaccent не работает с некоторыми данными и на обычных. С UTF-8 особых
 проблем не будет.

Про UTF-16BE я уже понял, но вот буква Ё пропадает. А если через iconv 
передавать, все ок. А 
какая-то библиотека лучше этой есть в системе? Если у буквы ё не убирать 
акцент, она не желает 
сортироваться и попадает после буквы я (для локале-зависимых функций такое 
поведение непонятно, а 
все системные функции должны быть локале-зависимыми).

  wcsncasecmp для utf16 не проверял, может быть и работает...

 wcsncasecmp работает не с utf16, а со строкой широких символов wchar_t.

Можно на примере пояснить? Есть две строки utf8 в формате multibyte string, как 
я понимаю. Пока что 
я вижу только вариант с преобразованием этих строк в wide-character strings с 
помощью mbstowcs() и 
далее сравнением функцией wcsncasecmp/wcsncmp. Как сделать в один ход 
сравнение multibyte строк 
(символов)? В примерах, что я видел, разработчики таскают с собой таблицы для 
сравнения юникодных 
символов, зато могут работать с многобайтовыми строками, не занимаясь 
бесконечными 
преобразованиями.

Best regards, Alexey.


--
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Возможна ли поддержка тиклем юникода?

2009-01-19 Пенетрантность Serhiy Storchaka
Alexey Pechnikov wrote:

 Hello!
 
 Удаление акцента, как и преобразование регистра, и т.п. производится над
 строкой символов уникода. А UTF-8 — всего лишь представление этой строки
 в виде последовательности байт.
 
 Извиняюсь за некорректное использование терминов, сейчас вроде понятнее
 становится, попробую переформулировать вопрос.
 
 Если входные данные в представлении UTF-8, логично использовать функции 
 именно для этого представления. Но почему-то функции вижу только для
 UTF-16 (библиотека ubaccent) и UTF32 (система). Зачем этот зоопарк и как с
 ним жить?

Если нужна посимвольная обработка, определение типа (буква, знак препинания
и т.п.), преобразование (регистра, убирание акцента,…), то удобнее работать
с представлением, в котором размер каждого символа одинаков. Иначе всё
равно каждый символ пришлось бы преобразовывать при извлечении из строки.
Да и индексация, замена возможны.

Но для этого совершенно не подходят старые функции работы со строками,
программу нужно писать по-другому.

Если же достаточно ввода/вывода, запросить у пользователя имя, вывести его
же, или сохранить в файле, чтобы вывести после, то удобнее использовать
UTF-8. При этом не нужно переписывать полностью старые программы,
большинству вообще не нужна переделка. Большинство функций для работы с
8-битовыми строками будут с таким же успехом работать и с UTF-8 (а вот
UTF-16 и UTF-32 не подойдут), по крайней мере в старой области значений.

Поэтому UTF-8 используют как стандартное внешнее представление (чтобы с
данными работали другие программы) и как внутреннее, если не нужна сложная
работа со строками, учитывающая уникодность.

 Про UTF-16BE я уже понял, но вот буква Ё пропадает. А если через iconv
 передавать, все ок.

А откуда ты берёшь Ё в UTF-16BE? Ты уверен, что это именно Ё? Подозреваю,
что ты ошибся с преобразованием. Ни Ё, ни LЁ не даст тебе Ё в UTF-16BE
на большинстве систем (к которым ты имеешь доступ).

 А какая-то библиотека лучше этой есть в системе?

Я не знаю.

 Можно на примере пояснить? Есть две строки utf8 в формате multibyte
 string, как я понимаю. Пока что я вижу только вариант с преобразованием
 этих строк в wide-character strings с помощью mbstowcs() и далее
 сравнением функцией wcsncasecmp/wcsncmp.

Да.

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

Чтобы посимвольно сравнивать многобайтовые строки, необходимо посимвольно
извлекать из них символы для сравнения (с/без учётом акцентов, регистров и
т.п.). Т.е. декодировать последовательно каждую из строк. Для каждого
сравнения. Все строки.

Но если нам не нужен алфавитный порядок, если нужно просто упорядочить
строки (для деревьев, для бинарного поиска), то можем просто использовать
strcmp для многобайтовых строк в UTF-8. UTF-8 имеет такое свойство, что
результат этого сравнения будет совпадать с результатом посимвольного
сравнения кодов уникодных символов.



-- 
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Возможна ли поддержка тиклем юникода?

2009-01-19 Пенетрантность Alexey Pechnikov
Hello!

 Если нужна посимвольная обработка, определение типа (буква, знак препинания
 и т.п.), преобразование (регистра, убирание акцента,…), то удобнее работать
 с представлением, в котором размер каждого символа одинаков. Иначе всё
 равно каждый символ пришлось бы преобразовывать при извлечении из строки.
 Да и индексация, замена возможны.

 Но для этого совершенно не подходят старые функции работы со строками,
 программу нужно писать по-другому.

 Если же достаточно ввода/вывода, запросить у пользователя имя, вывести его
 же, или сохранить в файле, чтобы вывести после, то удобнее использовать
 UTF-8. При этом не нужно переписывать полностью старые программы,
 большинству вообще не нужна переделка. Большинство функций для работы с
 8-битовыми строками будут с таким же успехом работать и с UTF-8 (а вот
 UTF-16 и UTF-32 не подойдут), по крайней мере в старой области значений.

 Поэтому UTF-8 используют как стандартное внешнее представление (чтобы с
 данными работали другие программы) и как внутреннее, если не нужна сложная
 работа со строками, учитывающая уникодность.

Спасибо за подробное объяснение. Вопрос в том, что движок СУБД SQLite, с 
которой я работаю, имеет 
два внутренних представления - utf8 и utf16. Во втором случае я могу 
пользоваться системными 
функциями для преобразования и сравнения символов (строк), а вот в случае utf8 
не получается. 
Делать лишние преобразования чревато определенными потерями в 
производительности на всех 
сортировках/сравнениях текстовых данных. Сам движок умеет разделять строку utf8 
на символы, 
остается добавить функции сравнения/преобразования регистров. Данных в utf16 у 
меня сейчас нет, 
поскольку база заполняется при локали системы UTF-8. После ваших подсказок 
появилась мысль, что для 
utf8 можно сделать локале-независимую, а для utf16 - локале-зависимую 
реализации и выбирать формат 
хранения данных в зависимости от потребностей. Может быть, вы можете дать 
оценку такому варианту? Я 
не тестировал скорость обработки utf8/utf16, но по таблицам символов должно 
быть все равно, какое 
представление выбрано, если таблицы составлены в нем же, а системные функции 
быстрее должны 
работать с utf16, но размер данных увеличится...

  Про UTF-16BE я уже понял, но вот буква Ё пропадает. А если через iconv
  передавать, все ок.

 А откуда ты берёшь Ё в UTF-16BE? Ты уверен, что это именно Ё? Подозреваю,
 что ты ошибся с преобразованием. Ни Ё, ни LЁ не даст тебе Ё в UTF-16BE
 на большинстве систем (к которым ты имеешь доступ).

Уверен, поскольку могу указать явно, в каком формате мне нужны данные - 
sqlite3_value_text16, 
sqlite3_value_text16be, sqlite3_value_text16le, sqlite3_value_text (последняя 
функция вернет 
utf-8). Вызов unac_string работает корректно, а unac_string_utf16 ломает 
данные.

void unaccFunc(sqlite3_context *context, int argc, sqlite3_value **argv){
  char *z1 = 0;
  const char *z2;
  int n, l = 0;
  if( argc1 || SQLITE_NULL==sqlite3_value_type(argv[0]) ) return;

  z2 = (const char*)sqlite3_value_text16(argv[0]);
  n = sqlite3_value_bytes16(argv[0]);

  /* Verify that the call to _bytes16() does not invalidate the _text16() 
pointer */
  assert( z2==(char*)sqlite3_value_text16(argv[0]) );
  if( z2 ){
//unac_string(UTF-8, z2, n, z1, l);
if(unac_string(UTF-16, z2, n, z1, l) == -1) {
sqlite3_result_null;
return;
}
//unac_string_utf16(z2, n, z1, l);
sqlite3_result_text16(context, z1, l, SQLITE_TRANSIENT);
  }
}

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

 Чтобы посимвольно сравнивать многобайтовые строки, необходимо посимвольно
 извлекать из них символы для сравнения (с/без учётом акцентов, регистров и
 т.п.). Т.е. декодировать последовательно каждую из строк. Для каждого
 сравнения. Все строки.

 Но если нам не нужен алфавитный порядок, если нужно просто упорядочить
 строки (для деревьев, для бинарного поиска), то можем просто использовать
 strcmp для многобайтовых строк в UTF-8. UTF-8 имеет такое свойство, что
 результат этого сравнения будет совпадать с результатом посимвольного
 сравнения кодов уникодных символов.

Да, так оно и сделано по умолчанию, но мне нужно сортировать по алфавиту 
(игнорируя акценты у ё 
и й), делать регистронезависимый поиск и приведение регистра. Впрочем, без 
учета системной локали 
это делается в лоб с помощью таблиц символов.

P.S. Кстати, напоминаю, что продолжаю писать и собирать дополнительные модули 
для SQLite. Для работы 
с юникодом сейчас есть две реализации - таблицы преобразований и через libicu, 
думаю насчет 
локале-зависимой, но от последней пока только функции upper/lower сделаны :-) 
Недавно добавил 
сибэйзовскую функцию current_user() для облегчения миграции на эскулайт и 
обращение к переменным 
окружения. Если кому надо или 

Re: Возможна ли поддержка тиклем юникода?

2009-01-18 Пенетрантность Alexey Pechnikov
Hello!

В сообщении от Friday 16 January 2009 16:33:15 вы написали:
  На самом деле, самым правильным было бы таскать эти таблицы в
  исходниках, но при сборке на системах, которые имеют соответствующие
  функции в  libc использовать именно их, а не собственные таблицы.

 Я ещё давно то же говорил о catdoc.

 Вообще же стыд и срам, что в системах, где есть динамическое связывание и
 система пакетирования столько базовых вещей носится с собой.

А где в системе библиотека для работы с юникодом? Рекомендованной вами 
libunicode в дебиане нет. Еще 
вопрос по последней - в ней используется utf-16, хотя хотелось бы работать со 
стандартным для 
линукса utf-8, и кроме того, при сортировке просто вычитаются коды символов! 
Получается, что 
сортировка работает неправильно, раз нет привязки к локали?

Вот описание функции:

Compare up to |n| characters of two UTF-16 encoded strings.
If at any point |s1[x] != s2[x]| then we return |s1[x] - s2[x]|.
Else, we return 0.

Best regards, Alexey.


--
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Возможна ли поддержка тиклем юникода?

2009-01-18 Пенетрантность Serhiy Storchaka
Alexey Pechnikov wrote:
 А где в системе библиотека для работы с юникодом? Рекомендованной вами
 libunicode в дебиане нет.

Как это нет? Пакеты libunicode0 и libunicode-dev.

 Еще вопрос по последней - в ней используется 
 utf-16, хотя хотелось бы работать со стандартным для линукса utf-8,

Есть и UTF-8, и UTF-16, и UTF-32, разных эндингов, и конвертация в другие
кодировки (неплохая компактная переносимая альтернатива iconv получается,
как я погляжу).

 и 
 кроме того, при сортировке просто вычитаются коды символов! Получается,
 что сортировка работает неправильно, раз нет привязки к локали?
 
 Вот описание функции:
 
 Compare up to |n| characters of two UTF-16 encoded strings.
 If at any point |s1[x] != s2[x]| then we return |s1[x] - s2[x]|.
 Else, we return 0.

В этой библиотеке нет функции сравнения строк. Для правильного сравнения
похоже и нужны мегабайты libicu.


-- 
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Возможна ли поддержка тиклем юникода?

2009-01-18 Пенетрантность Alexey Pechnikov
Hello!

В сообщении от Sunday 18 January 2009 19:35:08 Serhiy Storchaka написал(а):
 Alexey Pechnikov wrote:
  А где в системе библиотека для работы с юникодом? Рекомендованной вами
  libunicode в дебиане нет.

 Как это нет? Пакеты libunicode0 и libunicode-dev.

Таких пакетов нет. На хосте с ленни:

$ aptitude search libunicode
p   libunicode-japanese-perl
i   libunicode-map-perl
i   libunicode-map8-perl
i   libunicode-maputf8-perl
i A libunicode-string-perl

  Еще вопрос по последней - в ней используется
  utf-16, хотя хотелось бы работать со стандартным для линукса utf-8,

 Есть и UTF-8, и UTF-16, и UTF-32, разных эндингов, и конвертация в другие
 кодировки (неплохая компактная переносимая альтернатива iconv получается,
 как я погляжу).

Все операции выполняются с utf-16. Это что же, конвертить в utf16 и обратно при 
каждом 
преобразовании? Стандарт в линуксе это utf-8.

 В этой библиотеке нет функции сравнения строк. Для правильного сравнения
 похоже и нужны мегабайты libicu.

Зачем она тогда нужна? unaccent делать не умеет, сравнивать не умеет... 
Скопировать строку можно и 
просто как набор байт, для этого можно вообще не знать, что там юникодная 
строка находится.

Возвращаясь к вопросу - какую стандартную либу дебиана брать для работы с 
юникодом? Нужно 
преобразование регистра, удаление акцента, сравнение (согласен на базовый 
юникодное, хотя 
возможность указания кодовой страницы будет полезна).

Best regards, Alexey.


--
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Возможна ли поддержка тиклем юникода?

2009-01-18 Пенетрантность Serhiy Storchaka
Alexey Pechnikov wrote:
 В сообщении от Sunday 18 January 2009 19:35:08 Serhiy Storchaka
 написал(а):
 Alexey Pechnikov wrote:
  А где в системе библиотека для работы с юникодом? Рекомендованной вами
  libunicode в дебиане нет.

 Как это нет? Пакеты libunicode0 и libunicode-dev.
 
 Таких пакетов нет. На хосте с ленни:

В этче есть.

  Еще вопрос по последней - в ней используется
  utf-16, хотя хотелось бы работать со стандартным для линукса utf-8,

 Есть и UTF-8, и UTF-16, и UTF-32, разных эндингов, и конвертация в другие
 кодировки (неплохая компактная переносимая альтернатива iconv получается,
 как я погляжу).
 
 Все операции выполняются с utf-16. Это что же, конвертить в utf16 и
 обратно при каждом преобразовании? Стандарт в линуксе это utf-8.

Нет, функции работают преимущественно с UTF-32 или UTF-8. Откуда UTF-16?

 В этой библиотеке нет функции сравнения строк. Для правильного сравнения
 похоже и нужны мегабайты libicu.
 
 Зачем она тогда нужна? unaccent делать не умеет, сравнивать не умеет...

Уникодные аналоги ctype.h, плюс кое-какие функции для работы с UTF-8, плюс
конвертация.

Если не смущает зависимость от локали и переносимость за пределы линукса, то
всё это делается стандартными функциями C99 для работы с широкими и
многобайтовыми символами (man -k multibyte wide-character 'wide character')
и iconv. В линуксе, кстати, представление wchar_t будет совпадать с UTF-32.

 Возвращаясь к вопросу - какую стандартную либу дебиана брать для работы с
 юникодом? Нужно преобразование регистра,

towlower, towupper, wctrans+towctrans.

 удаление акцента,

libunac, возможно wctrans+towctrans.

 сравнение  
 (согласен на базовый юникодное, хотя возможность указания кодовой страницы
 будет полезна).

wcscmp, strcmp строк в UTF-8.



-- 
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Возможна ли поддержка тиклем юникода?

2009-01-18 Пенетрантность Alexey Pechnikov
Hello!

 В этче есть.

Есть, но версия 0.4 и это притом, что версия 0.7 датируется, если не ошибаюсь, 
2000-м годом (на 
sf.net).

   Еще вопрос по последней - в ней используется
   utf-16, хотя хотелось бы работать со стандартным для линукса utf-8,
 
  Есть и UTF-8, и UTF-16, и UTF-32, разных эндингов, и конвертация в
  другие кодировки (неплохая компактная переносимая альтернатива iconv
  получается, как я погляжу).
 
  Все операции выполняются с utf-16. Это что же, конвертить в utf16 и
  обратно при каждом преобразовании? Стандарт в линуксе это utf-8.

 Нет, функции работают преимущественно с UTF-32 или UTF-8. Откуда UTF-16?

В libunicode-0.7v/include/unicode.h есть
typedef u_int16_t Uchar;

Разве это не utf-16? Плюс предлагаются функции преобразования utf8 - utf16. 
Про utf32 в коде не 
вижу даже упоминания.

  В этой библиотеке нет функции сравнения строк. Для правильного сравнения
  похоже и нужны мегабайты libicu.

Возможно, но использование libicu в 4 раза замедляет запросы, это просто 
немыслимо. Ну и  размер 
либы нереально большой.

 Если не смущает зависимость от локали и переносимость за пределы линукса,
 то всё это делается стандартными функциями C99 для работы с широкими и
 многобайтовыми символами (man -k multibyte wide-character 'wide character')
 и iconv. В линуксе, кстати, представление wchar_t будет совпадать с UTF-32.

С iconv понятно, перекодировку внешних данных делаю именно через него, а храню 
все уже в utf8. А как 
правильно работать с utf8, чтобы избежать лишних перекодировок? Поскольку 
расширение нужно для 
embedded СУБД, вопрос производительности приоритетный. Есть строки в utf8, 
какие функции 
использовать для достижения максимальной производительности?

Кроссплатформенное решение без внешних зависимостей я уже отладил, без 
поддержки локали (приведение 
к одному регистру - удаление умляутов - сравнение по коду).

Из описания:
wchar_t
Integer type whose range of values can represent distinct wide-character codes 
for all members of 
the largest character set specified among the locales supported by the 
compilation environment: the 
null character has the code value 0

wchar_t - это два байта, то есть UTF-16, откуда возьмется utf-32?


Best regards, Alexey.


--
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Возможна ли поддержка тиклем юникода?

2009-01-18 Пенетрантность Alexey Pechnikov
Hello!

В сообщении от Sunday 18 January 2009 22:23:27 Victor Wagner написал(а):
 Еще следует учесть что wide char в Linux - это UCS-4.
 Так что если нужно работать с юникодом с фиксированным размером символа,
 можно использовать стандартные wide char функции. Правда, это
 непереносимо. Во freebsd и solaris widechar - далеко не всегда unicode.

Не понимаю - в линуксе стандарт utf8, но работать с ним нельзя, все нужно 
конвертировать в utf32 и 
потом назад? Как сделать без лишних преобразований? Есть данные в utf8, но все 
функции 
преобразования регистра, удаления акцентов и проч. хотят utf16 или utf32...

Best regards, Alexey.


--
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Возможна ли поддержка тиклем юникода?

2009-01-18 Пенетрантность Alexey Pechnikov
Hello!

В сообщении от Sunday 18 January 2009 23:43:16 Victor Wagner написал(а):
  Не понимаю - в линуксе стандарт utf8, но работать с ним нельзя, все нужно
  конвертировать в utf32 и

 Читать внимательнее надо. Выше я писал про наличие стандарных функций
 работы с multibyte charsets.

Да, спасибо, начинаю понимать. Преобразование регистра есть в системе, 
библиотека unaccent поможет 
удалить умляуты, а вот как делать case folding (не знаю русского аналога этого 
термина) и 
capitalization (title case)?

Best regards, Alexey.


--
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Возможна ли поддержка тиклем юникода?

2009-01-17 Пенетрантность Alexey Pechnikov
Hello!

В сообщении от Saturday 17 January 2009 08:08:54 Murat D. Kadirov написал(а):
 Всё познаётся в сравнении, профиту от ссылок выше в действительности
 мало, но вам хотелось посмотреть на расцвет, я попытался показать, что
 он был. Сравнивать и оценивать самому на _серьёзном_ уровне у меня
 нету ни времени, ни желания. Да и собственно, формат рассылки как бы не
 тот.

Спасибо, интересно. Действительно, расцвет ИТ в США очень заметен (достаточно 
сравнить капитализацию 
коммерческой американской компании микрософт и российского сырьевого гиганта 
газпрома - фантастика, 
американцы из воздуха создали огромные ценности), а в остальных сферах я не 
знал, что творится. А 
если они еще и образование сумели реформировать... На российское вузовское 
образование нынче без 
слез не взглянешь (насчет остального не сталкиваюсь, хотя, говорят, все еще 
хуже), увы.

Best regards, Alexey.


--
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Возможна ли поддержка тиклем юникода?

2009-01-16 Пенетрантность Alexey Pechnikov
Hello!

В сообщении от Friday 16 January 2009 11:09:57 Konstantin Matyukhin написал(а):
 Если человек не в состоянии выучить родной язык, о чем он вообще
 может рассуждать?

Вы считаете безграмотным Карамзина, писавшего Историю государства Российского 
без буквы ё? 
Позвольте с вами не согласиться.

Best regards, Alexey.


--
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Возможна ли поддержка тиклем юникода?

2009-01-16 Пенетрантность Serhiy Storchaka
Alexey Pechnikov wrote:
 Поддержка юникода оказывается все большей проблемой...

Уникод тут ни при чём. Сортировка букв в определённом языке, а тем более
строк — совершенно отдельная задача.

Прежде всего решение зависит от языка. В разных языках общие буквы могут
иметь разный порядок в алфавите.

Потом, обычно стоит задача сортировки слов или строк, а не только отдельных
букв. Буква «ё» при словарной сортировке занимает ту же позицию, что и «е».
Т.е. слова на «е» и «ё» идут вперемешку.

Если же сортируются многословные строки, то тут правила ещё сложнее.
Игнорируются артикли, всякие «фон» и «де» в именах, игнорируются пробелы и
знаки пунктуации («триединый» идёт перед «три коровы», но после «три
банана»). Отдельно стоит задача сортировки словосочетаний на разных языках.
Если в строке встречаются числа, то порядок зависит от величины этих чисел
(«файл-100» идёт после «файл-22»).

В общем решение полностью зависит от задачи. Где-то может и порядок записи
чисел в римской системе следует учитывать.


-- 
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Возможна ли поддержка тиклем юникода?

2009-01-16 Пенетрантность George Shuklin

  Тикль тут не при чем, это проблема кривых кодовый таблиц юникода, об этом 
  я в своё время писал в русскоязычном списке рассылке по tcl.
  $ clisp
  [1] (sort '(й ц у е ё) 'string)
  (Ё Е Й У Ц)
 Нигде не написано, что символы национального языка должны быть упорядочены по
 алфавиту. Так дело обстоит лишь для языков с уникальной графикой. А ё это
 латинская е с умляутом — расположена в блоке латинских букв с диакритикой.  
 Вообще-же, о порядке следования букв национального языка знает локаль
  $ touch ж а б ё 
  $ls  ?
  а  б  ё  ж
 да еще специальные библиотеки для работы с юникодом.
 P.S. Да и есть-ли в русском языке эта полумифическая буква ё?  ;-}
Если вы для печати используете латинскую е с умляутом - это ваши проблемы. В 
русском языке есть буква ё, она находится после е, перед ж. Код символа - 
U+0451 (CYRILLIC SMALL LETTER IO) и U+0401 (заглавная, CYRILIC CAPITAL LETTER 
IO). 

-- 
wBR,George.


-- 
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Возможна ли поддержка тиклем юникода?

2009-01-16 Пенетрантность George Shuklin
16.01.09, 11:29, Konstantin Matyukhin kmatyuk...@gmail.com:

  Языковое наследие - груз, особенно для технического
  человека.
 Чего уж там, давайте на пиктограммы переходить.
Уже в процессе. На иконки.

-- 
wBR,George.


-- 
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Возможна ли поддержка тиклем юникода?

2009-01-16 Пенетрантность Serhiy Storchaka
Alexey Pechnikov wrote:
 Посмотрел в википедии, оказывается, буква ё - наследие культа личности и
 официально присутствует в руссом языке лишь с 1942 года.

Ага, а григорианский календарь — наследие кровавого режима большевиков?

Может и от электрификации всей страны откажемся? Раз уж от «ликвидации
безграмотности» (тоже наследие!) отказываться.

 А до этого не 
 часто использовалась, просто как альтернативное написание буквы е (и
 существовала всего-то пару веков на неофициальных основаниях).

Язык меняется. 400 лет назад был другой язык, в котором буква «ё» была не
нужна.

 Так что не 
 все однозначно с буквой ё - скорее, грамотность состоит не в том, чтобы ее
 писать, а в том, чтобы ее читать (так же как произносится што, о как а
 звучит и т.п.).

В той же википедии приведено много ярких примеров, как пренебрежение
буквой «ё» приводило к неправильному прочтению и изменению звучания слов.
Особенно имён и фамилий.


-- 
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Возможна ли поддержка тиклем юникода?

2009-01-16 Пенетрантность Alexey Pechnikov
Hello!

В сообщении от Friday 16 January 2009 11:25:37 Konstantin Matyukhin написал(а):
  Вы считаете безграмотным Карамзина, писавшего Историю государства
  Российского без буквы ё?

 Не считаю, с чего вы взяли?
 Я считаю безграмотными людей, которые недоумивают зачем им в школе
 впаривают правила
 орфографии и пунктуации. И это не спесь, как некоторым кажется. Просто
 защитная реакция на невежество.

А, это вы тролля кормите :-) Интереснее разобраться, грамотно ли использовать 
букву ё в русском 
языке или это принадлежность советского языка. Собственно, ё = ударная е и 
грамотный человек 
должен правильно произнести слово ежик, без необходимости указывать, что 
первая буква под 
ударением. Иначе отсутствие ударной о кажется странным, если есть ударная е.

Best regards, Alexey.


--
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Возможна ли поддержка тиклем юникода?

2009-01-16 Пенетрантность George Shuklin
16.01.09, 12:18, Alexey Pechnikov pechni...@sandy.ru:

   Вы считаете безграмотным Карамзина, писавшего Историю государства
   Российского без буквы ё?
 
  Не считаю, с чего вы взяли?
  Я считаю безграмотными людей, которые недоумивают зачем им в школе
  впаривают правила
  орфографии и пунктуации. И это не спесь, как некоторым кажется. Просто
  защитная реакция на невежество.
 А, это вы тролля кормите :-) Интереснее разобраться, грамотно ли использовать 
 букву ё в русском 
 языке или это принадлежность советского языка. Собственно, ё = ударная е и 
 грамотный человек 
 должен правильно произнести слово ежик, без необходимости указывать, что 
 первая буква под 
 ударением. Иначе отсутствие ударной о кажется странным, если есть ударная е.

Чебышев негодует. 

-- 
wBR,George.


-- 
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Возможна ли поддержка тиклем юникода?

2009-01-16 Пенетрантность Serhiy Storchaka
Victor Wagner wrote:
 Не таскать же за собой собственные таблицы collation sequence.

Таскает же тикль за собой собственные таблицы перекодировки.


-- 
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Возможна ли поддержка тиклем юникода?

2009-01-16 Пенетрантность Serhiy Storchaka
Alexey Pechnikov wrote:
 Так что делать-то? Я отказался от компактного модуля для эскулайт, который
 обеспечивает поддержку юникода, за исключением порядка следования буквы ё,
 а теперь обнаружил, что в тикле та же самая проблема.

Использовать зависящие от локали функции, надеясь на существование такой
локали и на их правильность, или писать собственную функцию сравнения,
учитывающую специфику задачи.


-- 
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Возможна ли поддержка тиклем юникода?

2009-01-16 Пенетрантность Alexey Pechnikov
Hello!

В сообщении от Friday 16 January 2009 12:27:15 Serhiy Storchaka написал(а):
 Alexey Pechnikov wrote:
  Посмотрел в википедии, оказывается, буква ё - наследие культа личности и
  официально присутствует в руссом языке лишь с 1942 года.

 Ага, а григорианский календарь — наследие кровавого режима большевиков?

Из названия уже ясно, что к большевикам этот календарь не имеет никакого 
отношения. 

 Язык меняется. 400 лет назад был другой язык, в котором буква «ё» была не
 нужна.

Изменение алфавита указом главного партийного бонзы не считаю историческим 
аргументом. Как вам 
нравится идея ввести в связи с кризисом новую букву (известно какую) указом 
президента?


Best regards, Alexey.


--
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Возможна ли поддержка тиклем юникода?

2009-01-16 Пенетрантность Serhiy Storchaka
Mikhail Gusarov wrote:
 Twas brillig at 11:12:53 16.01.2009 UTC+02 when storch...@gmail.com did
 gyre and gimble:
  SS Уникод тут ни при чём. Сортировка букв в определённом языке, а тем
  SS более строк — совершенно отдельная задача.
 
 Описанная в Unicode Technical Stardard #10. Правда, этот TS не является
 частью Unicode Standard.

Там перечислены алфавиты всех языков, включая мёртвые? А как с реформами, с
изменением алфавита на протяжении времени?

Вот например только что узнал, что в украинском алфавите с 90-го года
изменилась позиция мягкого знака. Я учил — он был последней буквой
алфавита.


-- 
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Возможна ли поддержка тиклем юникода?

2009-01-16 Пенетрантность Покотиленко Костик
В Птн, 16/01/2009 в 11:12 +0200, Serhiy Storchaka пишет:
 Alexey Pechnikov wrote:
  Поддержка юникода оказывается все большей проблемой...
 
 Уникод тут ни при чём. Сортировка букв в определённом языке, а тем более
 строк — совершенно отдельная задача.
 
 Прежде всего решение зависит от языка. В разных языках общие буквы могут
 иметь разный порядок в алфавите.
 
 Потом, обычно стоит задача сортировки слов или строк, а не только отдельных
 букв. Буква «ё» при словарной сортировке занимает ту же позицию, что и «е».
 Т.е. слова на «е» и «ё» идут вперемешку.
 
 Если же сортируются многословные строки, то тут правила ещё сложнее.
 Игнорируются артикли, всякие «фон» и «де» в именах, игнорируются пробелы и
 знаки пунктуации


  («триединый» идёт перед «три коровы», но после «три
 банана»).

Это как так?

  Отдельно стоит задача сортировки словосочетаний на разных языках.
 Если в строке встречаются числа, то порядок зависит от величины этих чисел
 («файл-100» идёт после «файл-22»).
 
 В общем решение полностью зависит от задачи. Где-то может и порядок записи
 чисел в римской системе следует учитывать.

Это что за метод сортировки такой?

-- 
Покотиленко Костик cas...@meteor.dp.ua


-- 
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Возможна ли поддержка тиклем юникода?

2009-01-16 Пенетрантность Serhiy Storchaka
Mikhail Gusarov wrote:
 Twas brillig at 11:43:44 16.01.2009 UTC+02 when storch...@gmail.com did
 gyre and gimble:
   Описанная в Unicode Technical Stardard #10. Правда, этот TS не
   является частью Unicode Standard.
  SS Там перечислены алфавиты всех языков, включая мёртвые?
 А что вам помешало прочитать его?

Проще спросить.

Но хорошо, просмотрел ? выглядит интересным, с удовольствием почитаю.


-- 
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Возможна ли поддержка тиклем юникода?

2009-01-16 Пенетрантность Покотиленко Костик
В Птн, 16/01/2009 в 10:14 +0300, Konstantin Matyukhin пишет:
 2009/1/16 Иван Лох l...@1917.com:
  P.S. Да и есть-ли в русском языке эта полумифическая буква ё?  ;-}
 Ага, есть. Назло некоторым дизайнёрам.
 Мало вам, что i профукали? Хотите еще и ё в угоду малограмотным лентяям
 под нож пустить? Что ж такое творится-то, ё моё?
 
 Передохнем от вражды! или как?

Что тут отрицать, на сегодняшний день русская буква ё существует и
используется, если она где-то не поддерживается каким-то ПО - это его
личный баг.

У нас на Украине другие проблемы, нам впарили вторую букву Г (с
хвостиком вверх), там какие-то особенности в произношении мне лично на
слух не понятные. В школе столько лет изучали Украинский язык, а
оказывается нам тогда целую букву не додали!

-- 
Покотиленко Костик cas...@meteor.dp.ua


-- 
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Возможна ли поддержка тиклем юникода?

2009-01-16 Пенетрантность Serhiy Storchaka
Alexander GQ Gerasiov wrote:
 Ну так есть же правила русского языка - там написано ясно: в детских
 книгах - везде, в нормальных - по месту, чтобы исключить неправильное
 прочтение.

Закавыка в том, что если можно употреблять «ё» для исключения неоднозначного
прочтения «ё», то при таких правилах нету специальной буквы для
неоднозначного прочтения «е». Проблема не только в неправильном
прочтении «е» вместо «ё», но уже и в неправильном прочтении «ё» вместо «е».


-- 
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Возможна ли поддержка тиклем юникода?

2009-01-16 Пенетрантность Serhiy Storchaka
Alexey Pechnikov wrote:
 В сообщении от Friday 16 January 2009 12:27:15 Serhiy Storchaka
 написал(а):
 Alexey Pechnikov wrote:
  Посмотрел в википедии, оказывается, буква ё - наследие культа личности
  и официально присутствует в руссом языке лишь с 1942 года.
 Ага, а григорианский календарь — наследие кровавого режима большевиков?
 Из названия уже ясно, что к большевикам этот календарь не имеет никакого
 отношения.

Ну пусть будет «новый стиль» и «старый стиль», как они и назывались при
Союзе.

 Из названия уже ясно, что к большевикам этот календарь не имеет никакого
 отношения.
 Язык меняется. 400 лет назад был другой язык, в котором буква «ё» была не
 нужна.
 Изменение алфавита указом главного партийного бонзы не считаю историческим
 аргументом.

Историческим аргументом является возникновение и распространение в языке
звуков и звукосочетаний, обозначаемых буквой «ё». И исчезновение или
изменение других звуков. Или вы за возвращение «юсов» и «ятей»? Буква «я»
тоже новодел, кстати. Введённый указом другого «бонзы».


-- 
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Возможна ли поддержка тиклем юникода?

2009-01-16 Пенетрантность Serhiy Storchaka
Покотиленко Костик wrote:
 В Птн, 16/01/2009 в 11:12 +0200, Serhiy Storchaka пишет:
  (?триединый? идёт перед ?три коровы?, но после ?три
 банана?).
 
 Это как так?

?б?  ?е?  ?к?

 В общем решение полностью зависит от задачи. Где-то может и порядок
 записи чисел в римской системе следует учитывать.
 
 Это что за метод сортировки такой?

Логично, чтобы в программе для работы с историческими данными ?Генрих VI?
шёл перед ?Генрих IX?.


-- 
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Возможна ли поддержка тиклем юникода?

2009-01-16 Пенетрантность Покотиленко Костик
В Птн, 16/01/2009 в 12:49 +0200, Serhiy Storchaka пишет:
 Alexander GQ Gerasiov wrote:
  Ну так есть же правила русского языка - там написано ясно: в детских
  книгах - везде, в нормальных - по месту, чтобы исключить неправильное
  прочтение.
 
 Закавыка в том, что если можно употреблять «ё» для исключения неоднозначного
 прочтения «ё», то при таких правилах нету специальной буквы для
 неоднозначного прочтения «е». Проблема не только в неправильном
 прочтении «е» вместо «ё», но уже и в неправильном прочтении «ё» вместо «е».

Правило простое, сам пользуюсь: если в тексте есть хоть одна ё - читаешь
как написано, если нет - ... перебором более подходящего :)

-- 
Покотиленко Костик cas...@meteor.dp.ua


-- 
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Возможна ли поддержка тиклем юникода?

2009-01-16 Пенетрантность Alexey Pechnikov
Hello!

В сообщении от Friday 16 January 2009 13:57:37 Serhiy Storchaka написал(а):
  В общем решение полностью зависит от задачи. Где-то может и порядок
  записи чисел в римской системе следует учитывать.
 
  Это что за метод сортировки такой?

 Логично, чтобы в программе для работы с историческими данными ?Генрих VI?
 шёл перед ?Генрих IX?.

Тогда в списке авторов Петров предшествует Иванов, если Петров доктор наук, 
а Иванов - 
студент? :-) Так можно накуролесить до абсурда.

Best regards, Alexey.


--
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Возможна ли поддержка тиклем юникода?

2009-01-16 Пенетрантность Serhiy Storchaka
Покотиленко Костик wrote:
 У нас на Украине другие проблемы, нам впарили вторую букву Г (с
 хвостиком вверх), там какие-то особенности в произношении мне лично на
 слух не понятные.

Украинское «ґ» произносится так же, как русское «г». Отличается от
украинской «г» как «д» от «т» или «к» от «х». Но встречается действительно
редко, в каком-то десятке украинских слов.


-- 
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Возможна ли поддержка тиклем юникода?

2009-01-16 Пенетрантность Serhiy Storchaka
Alexey Pechnikov wrote:
 Тогда в списке авторов Петров предшествует Иванов, если Петров доктор
 наук, а Иванов - студент? :-) Так можно накуролесить до абсурда.

Ну если так хотите ? можете и такую сортировку сделать.

Не до абсурда, а от задачи.


-- 
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Возможна ли поддержка тиклем юникода?

2009-01-16 Пенетрантность Dmitry Fedorov
16 января 2009 г. 15:28 пользователь Alexey Pechnikov написал:

 Изменение алфавита указом главного партийного бонзы не считаю историческим 
 аргументом. Как вам

Бонзам нельзя, а царям можно?
Пётр I алфавит реформировал лично.


Re: Возможна ли поддержка тиклем юникода?

2009-01-16 Пенетрантность Alexey Pechnikov
Hello!

В сообщении от Friday 16 January 2009 14:16:59 Alexander GQ Gerasiov написал(а):
   Логично, чтобы в программе для работы с историческими
   данными ?Генрих VI? шёл перед ?Генрих IX?.
 
  Тогда в списке авторов Петров предшествует Иванов, если Петров
  доктор наук, а Иванов - студент? :-) Так можно накуролесить до
  абсурда.

 Не надо бредить. Речь идет о том, что 6  9. Если тебя так Генрихи
 смущают, представь Глава VI и Глава IX в оглавлении.

Я к тому, что VI  IX всегда, независимо от контекста. Вопрос лишь в том, когда 
это числа, а не 
строка.

Best regards, Alexey.


--
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Возможна ли поддержка тиклем юникода?

2009-01-16 Пенетрантность Alexey Pechnikov
Hello!

В сообщении от Friday 16 January 2009 14:07:11 Dmitry Fedorov написал(а):
  Изменение алфавита указом главного партийного бонзы не считаю
  историческим аргументом. Как вам

 Бонзам нельзя, а царям можно?
 Пётр I алфавит реформировал лично.

Цари это история, а СССР - недавнее прошлое. Вот как сформируется более-менее 
единая версия событий 
в России 20-го века, тогда и это станет историей.

Best regards, Alexey.


--
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Возможна ли поддержка тиклем юникода?

2009-01-16 Пенетрантность Alexey Pechnikov
Hello!

В сообщении от Friday 16 January 2009 14:21:51 Murat D. Kadirov написал(а):
 При чём тут Пушкин? Там автор утверждал о том, что _вся_ русская
 литература написана без буквы ё. Куда дели Солженицина, Высоцкого,
 Ахматову, Ахмадуллину, Айтматова.. мне продолжить?

Это вообще-то советская литература, притом времен тогго самого культа. И при 
этом, насколько мне 
известно, Ахматова не использовала ё. Насчет остальных не знаю.

Best regards, Alexey.


--
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Возможна ли поддержка тиклем юникода?

2009-01-16 Пенетрантность Alexey Pechnikov
Hello!

В сообщении от Friday 16 January 2009 14:45:30 Alexander GQ Gerasiov написал(а):
 А я этого не утверждал, это был намек, что подавляющая часть русской
 литературы и уж точно вся классика написана, именно написана именно без
 ё. Зато с ерами и ятями. Так что приводить это в качестве аргумента -
 как-то странно. Вот то, что оно так печатается сейчас на академическом
 русском языке, это, вообще говоря, несколько серьезней.

И сейчас можно купить репринтные издания Пушкина с использованием ять. Именно 
в таком варианте 
приятно читать.

Best regards, Alexey.


--
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Возможна ли поддержка тиклем юникода?

2009-01-16 Пенетрантность Alexey Pechnikov
Hello!

В сообщении от Friday 16 January 2009 14:57:30 Alexander GQ Gerasiov написал(а):
  Цари это история, а СССР - недавнее прошлое. Вот как сформируется
  более-менее единая версия событий в России 20-го века, тогда и это
  станет историей.

 OMG!
 Что за детская наивность? Чем дальше в лес тем гуще партизаны. История
 - очень забавная наука. Там чем дальше в глубь веков, тем больше
 выдумок и загадок. Стоит только очевидцам помереть и всё, переписывай -
 нехочу.

Как говорил Можейко (Булычев), исторические произведения - та же фантастика, 
только в прошлое, и 
достоверность уменьшается с каждым веком на порядок. Это понятно. Но, кроме 
того, полагаю, только 
когда пропадают личные интересы, начинается исследование, а пока что - сплошные 
эмоции, кто хорошо 
жил, кто плохо, а у кого родственники и вовсе...

Best regards, Alexey.


--
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Возможна ли поддержка тиклем юникода?

2009-01-16 Пенетрантность Serhiy Storchaka
Иван Лох wrote:
 On Fri, Jan 16, 2009 at 12:52:16PM +0200, Serhiy Storchaka wrote:
  Язык меняется. 400 лет назад был другой язык, в котором буква «ё» была
  не нужна.
 Даже если было это бы так, то на подобном же основании позднего появления
 акающих говоров, ставших теперь доминирующими, скоро педагоги предложат
 нам писать -- малако.

Было бы неплохо.

 В древнерусском языке не было звука ф, 
 вовсе, но зато в азбуке их было две буквы, выражающие этот звук.

Долой букву «ф»?

 Редукция 
 алфавита оправдана -- расширение -- нет. И так еле в клавиатуру
 помещаемся...

Ну вот спокойно можно избавиться от «щ», йотированных гласный, а заодно и от
твёрдого знака.


-- 
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Возможна ли поддержка тиклем юникода?

2009-01-16 Пенетрантность Serhiy Storchaka
Alexey Pechnikov wrote:
 Но, кроме того, полагаю, только когда пропадают 
 личные интересы, начинается исследование, а пока что - сплошные эмоции,
 кто хорошо жил, кто плохо, а у кого родственники и вовсе...

Вот «официальная история», которую учат в школе, по которой пишут романы,
снимают фильмы — в немалой степени те же эмоции, зафиксированные в
определённый момент времени. Вот например пресловутый Александр Невский…
Или тот же Пётр… Или Николай II — что о нём через сто лет в учебниках и
головах останется?


-- 
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Возможна ли поддержка тиклем юникода ?

2009-01-16 Пенетрантность Aleksey Cheusov
 Собственно, ё = ударная е
Да вы тут с ума посходили!
Ё - это другая буква!

 и грамотный человек должен правильно
 произнести слово ежик, без необходимости указывать, что первая буква
 под ударением.
Грамотный человек не должен провоцировать не очень грамотных и
иностранцев, и не вносить путаницу и неразбериху в очень простые вещи.
Я за обязательность буквы Ё в письме! :-P
Ссылки на Карамзина считаю некорректными.

http://www.nkj.ru/archive/articles/12671/
http://www.nkj.ru/archive/articles/14333/

 Иначе отсутствие ударной о кажется странным, если есть
 ударная е.
Бр-р-р-р...

метЕль, вЕтка, плЕсень, хребЕт,...
Ёлка, пчЁлка, плЁтка, метЁет...

-- 
Best regards, Aleksey Cheusov.


-- 
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Возможна ли поддержка тиклем юникода ?

2009-01-16 Пенетрантность Aleksey Cheusov
 У нас на Украине другие проблемы, нам впарили вторую букву Г (с
 хвостиком вверх), там какие-то особенности в произношении мне лично на
 слух не понятные.

 Украинское «ґ» произносится так же, как русское «г». Отличается от
 украинской «г» как «д» от «т» или «к» от «х». Но встречается действительно
 редко, в каком-то десятке украинских слов.

А звательный падеж тоже преподают?

Debian-russian rocks! :-)

-- 
Best regards, Aleksey Cheusov.


Re: Возможна ли поддержка тиклем юникода?

2009-01-16 Пенетрантность Serhiy Storchaka
Aleksey Cheusov wrote:
 А звательный падеж тоже преподают?

Его ещё в 80-х преподавали. Ну что поделаешь, если есть такой падеж в языке.


-- 
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Возможна ли поддержка тиклем юникода?

2009-01-16 Пенетрантность Serhiy Storchaka
Alexander GQ Gerasiov wrote:
 Вы таки считаете, что Пушкин использовал букву ё при письме?

А что он использовал вместо неё?

Вот вижу в современном написании ?сёл?, ?запущённый?, ?маркёр?, ?тёмно?
в ?Евгении Онегине?.


-- 
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Возможна ли поддержка тиклем юникода?

2009-01-16 Пенетрантность Serhiy Storchaka
Victor Wagner wrote:
 On 2009.01.16 at 11:34:07 +0200, Serhiy Storchaka wrote:
 Victor Wagner wrote:
  Не таскать же за собой собственные таблицы collation sequence.
 Таскает же тикль за собой собственные таблицы перекодировки.
 
 Одно время он и собственные таблицы таймзон таскал. Слава богу,  выходу
 релиза 8.5 от этого отказались.
 
 На самом деле, самым правильным было бы таскать эти таблицы в
 исходниках, но при сборке на системах, которые имеют соответствующие
 функции в  libc использовать именно их, а не собственные таблицы.

Я ещё давно то же говорил о catdoc.

Вообще же стыд и срам, что в системах, где есть динамическое связывание и
система пакетирования столько базовых вещей носится с собой.


-- 
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Возможна ли поддержка тиклем юникода ?

2009-01-16 Пенетрантность Aleksey Cheusov
 Редукция алфавита оправдана -- расширение -- нет.
Бред. Просто не знаю, что тут можно еще сказать...
И это, ничего личного.

-- 
Best regards, Aleksey Cheusov.


-- 
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Возможна ли поддержка тиклем юникода?

2009-01-16 Пенетрантность Alexey Pechnikov
Hello!

В сообщении от Friday 16 January 2009 16:23:15 Serhiy Storchaka написал(а):
  Вы таки считаете, что Пушкин использовал букву ё при письме?

 А что он использовал вместо неё?

 Вот вижу в современном написании ?сёл?, ?запущённый?, ?маркёр?, ?тёмно?
 в ?Евгении Онегине?.

Пушкин справлялся, не переживайте. А вот то, что потом с его стихами сделали, 
избавляясь от 
буквы ять, это варварство. Найдите репринт Онегина, посмотрите сами - намного 
приятнее читать, 
хотя временами задумаешься, как правильно произносить.

P.S. Булгаков, кстати, использовал слово галстух - и что, неграмотным его 
считать? :-) Передает 
дух времени.

Best regards, Alexey.


--
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Возможна ли поддержка тиклем юникода?

2009-01-16 Пенетрантность Alexey Pechnikov
Hello!

В сообщении от Friday 16 January 2009 15:55:54 Victor Wagner написал(а):
  Ссылки на Карамзина считаю некорректными.

 Карамзин, заметим, использовал букву Ять и твердый знак в конце слов,
 оканчивающихся на согласную. Поэтому пусть те, кто ссылается на
 Карамзина и пишут в орфографии, принятой во времена Карамзина.

Не в Афинах ростох, не у философ научихся - можно и Киевской Руси 
письменность современным языком 
переписать, только хреновенько как-то (уж не знаю, как историки это пишут, если 
что, см. Даниила 
Заточника рукописи). Карамзина тоже доверим Академии Наук переталдычить на свой 
лад? Я уж лучше 
репринт почитаю.

Best regards, Alexey.


--
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Возможна ли поддержка тиклем юникода?

2009-01-16 Пенетрантность Alexey Pechnikov
Hello!

В сообщении от Friday 16 January 2009 15:32:46 Murat D. Kadirov написал(а):
 В редких
 случаях единая версия может быть _только_ для самого историка. И то, если
 у него найдётся мужество быть честным перед самим собой.

Пугачевщина, к примеру, таких эмоций не вызывает, можно изучать источники, как 
блоху под 
микроскопом - упрыгает, так поймаем другую и продолжим. Не верю я историкам, 
которые расписывают 
ужасы красного террора режима, а потом вдруг упоминают, как у них 
бабушек/дедушек раскулачили. 
Какая тут объективность.

Best regards, Alexey.


--
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Возможна ли поддержка тиклем юникода ?

2009-01-16 Пенетрантность Aleksey Cheusov
  Ссылки на Карамзина считаю некорректными.

 Карамзин, заметим, использовал букву Ять и твердый знак в конце слов,
 оканчивающихся на согласную. Поэтому пусть те, кто ссылается на
 Карамзина и пишут в орфографии, принятой во времена Карамзина.

 Не в Афинах ростох, не у философ научихся - можно и Киевской Руси
 письменность современным языком переписать, только хреновенько как-то
 (уж не знаю, как историки это пишут, если что, см. Даниила Заточника
 рукописи). Карамзина тоже доверим Академии Наук переталдычить на свой
 лад? Я уж лучше репринт почитаю.

Ты французских, итальянских, испанских, английских, польских, армянских
и т.д. авторов тоже в оригинале читаешь? Здорово! Теперь я понимаю,
почему Российская Академия Наук может только переталдычивать на свой
лад, в то время как реальные пацаны репринты читают :-)

На аргумент отлито из бронзы, руками не трож! в стаье, ссылку на
которую я дал, есть вполне взвешенный ответ. Ты же опять передергиваешь
на счет письменности Киевской Руси.

-- 
Best regards, Aleksey Cheusov.


-- 
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Возможна ли поддержка тиклем юникода ?

2009-01-16 Пенетрантность Aleksey Cheusov
 P.S. Булгаков, кстати, использовал слово галстух - и что,
 неграмотным его считать? :-) Передает дух времени.

Замечательное чтиво от Корнея Чуковского.

http://vivovoco.rsl.ru/VV/BOOKS/LANG/LANG_1.HTM

-- 
Best regards, Aleksey Cheusov.


-- 
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Возможна ли поддержка тиклем юникода?

2009-01-16 Пенетрантность Serhiy Storchaka
Alexey Pechnikov wrote:
 В сообщении от Friday 16 January 2009 16:23:15 Serhiy Storchaka
 написал(а):
 Вот вижу в современном написании ?сёл?, ?запущённый?, ?маркёр?, ?тёмно?
 в ?Евгении Онегине?.
 
 Пушкин справлялся, не переживайте.

И как же? Какая буква (или буквы) стояла в этих словах?

 А вот то, что потом с его стихами 
 сделали, избавляясь от буквы ять, это варварство. Найдите репринт
 Онегина, посмотрите сами - намного приятнее читать, хотя временами
 задумаешься, как правильно произносить.

Нет, мне не приятно читать с «ятями». А твёрдые знаки в конце слов вообще в
ступор ставят.

 P.S. Булгаков, кстати, использовал слово галстух - и что, неграмотным
 его считать? :-) Передает дух времени.

А Ломоносов Ньютона называл «Невтоном». Ну и что?


-- 
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Возможна ли поддержка тиклем юникода?

2009-01-16 Пенетрантность Alexey Pechnikov
Hello!

В сообщении от Friday 16 January 2009 18:23:16 Aleksey Cheusov написал(а):
  Не в Афинах ростох, не у философ научихся - можно и Киевской Руси
  письменность современным языком переписать, только хреновенько как-то
  (уж не знаю, как историки это пишут, если что, см. Даниила Заточника
  рукописи). Карамзина тоже доверим Академии Наук переталдычить на свой
  лад? Я уж лучше репринт почитаю.

 Ты французских, итальянских, испанских, английских, польских, армянских
 и т.д. авторов тоже в оригинале читаешь? Здорово! Теперь я понимаю,
 почему Российская Академия Наук может только переталдычивать на свой
 лад, в то время как реальные пацаны репринты читают :-)

 На аргумент отлито из бронзы, руками не трож! в стаье, ссылку на
 которую я дал, есть вполне взвешенный ответ. Ты же опять передергиваешь
 на счет письменности Киевской Руси.

Вспомнился мне хороший польский фильм - Ва-банк называется. Так вот, когда я 
скачал и посмотрел 
его в оригинале, обнаружил, что 3/4 разговоров понятно (фильм все же, 
визуальный канал восприятия 
есть), а в советском прокате вариант урезан на 15 минут сюжета и потому 
происходящее малость 
несуразно, так что от просмотра оригинала получил большее удовольствие. После 
этого доверия к 
переводам и прочим редакциям поубавилось. Помните Педагогическая поэма 
Макаренко - там была 
замечательная фраза - Пушкин под редакцией Чернявина. Так вот, я не хочу 
читать Пушкина под 
чьей-то редакцией. 

P.S. А баллады и пр. замечательно читать в переводе Маршака. Но не под 
редакцией Академии Наук.

P.P.S. По математике есть Курс дифференциального и интегрального исчисления: В 
3 томах., написан 
Фихтенгольцем. Так вот, благодарные ученики и последователи выпустили 
обновленное издание в 2-х 
томах, которое, как доходчиво объяснил мне в свое время зав. кафедрой 
математики нашего факультета, 
не стоит даже открывать. А уж гуманитариям я верю намного меньше - их 
проконтролировать сложнее :-)

Best regards, Alexey.


--
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Возможна ли поддержка тиклем юникода?

2009-01-16 Пенетрантность Alexey Pechnikov
Hello!

В сообщении от Friday 16 January 2009 18:31:27 Aleksey Cheusov написал(а):
  P.S. Булгаков, кстати, использовал слово галстух - и что,
  неграмотным его считать? :-) Передает дух времени.

 Замечательное чтиво от Корнея Чуковского.

 http://vivovoco.rsl.ru/VV/BOOKS/LANG/LANG_1.HTM

Большое спасибо!

Best regards, Alexey.


--
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Возможна ли поддержка тиклем юникода?

2009-01-16 Пенетрантность Alexey Pechnikov
Hello!

В сообщении от Friday 16 January 2009 19:35:35 Serhiy Storchaka написал(а):
 Alexey Pechnikov wrote:
  В сообщении от Friday 16 January 2009 16:23:15 Serhiy Storchaka
 
  написал(а):
  Вот вижу в современном написании ?сёл?, ?запущённый?, ?маркёр?, ?тёмно?
  в ?Евгении Онегине?.
 
  Пушкин справлялся, не переживайте.

 И как же? Какая буква (или буквы) стояла в этих словах?

Жжете :-) Это как пример :-)

  А вот то, что потом с его стихами
  сделали, избавляясь от буквы ять, это варварство. Найдите репринт
  Онегина, посмотрите сами - намного приятнее читать, хотя временами
  задумаешься, как правильно произносить.

 Нет, мне не приятно читать с «ятями». А твёрдые знаки в конце слов вообще в
 ступор ставят.

Интересно, а как вы, к примеру, сербский текст читаете? Это церковнославянский, 
причем допустимы и 
кириллица и латиница :-) Сейчас с развитием интернета все чаще приходится 
просматривать тексты на 
самых разных языках (на испанском есть очень интересные доки по картографии и 
аолсерверу, на 
французском было замечательное руководство по колинуксу, на венгерском описание 
управления из 
консоли опеноффисом,...), пора бы уже и привыкнуть... хотя бы к вариантам 
родного языка ;-)


Best regards, Alexey.


--
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Возможна ли поддержка тиклем юникода?

2009-01-16 Пенетрантность Alexey Pechnikov
Hello!

В сообщении от Friday 16 January 2009 19:31:35 Murat D. Kadirov написал(а):
 17:35 Fri 16 Jan, Alexey Pechnikov wrote:
  Hello!
 
  В сообщении от Friday 16 January 2009 15:32:46 Murat D. Kadirov написал(а):
   В редких
   случаях единая версия может быть _только_ для самого историка. И то,
   если у него найдётся мужество быть честным перед самим собой.
 
  Пугачевщина, к примеру, таких эмоций не вызывает, можно изучать
  источники, как блоху под микроскопом - упрыгает, так поймаем другую и
  продолжим. Не верю я историкам, которые расписывают ужасы красного
  террора режима, а потом вдруг упоминают, как у них бабушек/дедушек
  раскулачили. Какая тут объективность.

 По поводу Пугачёвщины, эмоций и блохи мысль не понил. Метафору я понил,
 не понил к чему это.

Блоха на людях не живет, потому и не страшна - исследование объективное и без 
предубежденности к 
блохе. Пес бы наверняка не смог объективно подойти к кусающей его блохе. Люди, 
конечно, посложнее 
пса мыслят (и запутаннее, пожалуй), потому и причин для необъективности больше.

 p.s. информация к размышлению: 2/3 советников Б.Клинтона были
 профессиональные историки (историки! не экономисты...). Правление
 Б.Клинтона объективно признаётся, как наивысший расцвет США за всю их
 недолгую историю. Под словом объективность я подразумеваю цифры, коих в
 массе своей я уже не помню поэтому не привожу, дабы не завраться, но их
 не долго выковырять в интернете, особливо при знании англ. В правление
 Б.Клинтона были урезаны расходы в военную область (при правлении Дж.Буша
 они были увеличены более чем на 20%).
 Одним словом всё зависит от того, в чьих руках находится этот
 инструмент. Разумеется, если он находится в руках воинствующих
 медведевых и путиных хорошего получиться мало (хех, таки не удержался,
 чтобы не попинать :)

Критерии расцвета озвучьте. Для олигархов, политиков и приближенных к ним 
современная Россия тоже 
цветет, ну а для нас с вами только пахнет, и отнюдь не розами.

Best regards, Alexey.


--
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Возможна ли поддержка тиклем юникода?

2009-01-16 Пенетрантность Alexey Pechnikov
Hello!

В сообщении от Friday 16 January 2009 17:41:23 Jurgen V. Uzbekoff написал(а):
  P.S. Булгаков, кстати, использовал слово галстух - и что, неграмотным
  его считать? :-) Передает дух времени.

 В прошлом году в журнале Наука и жизнь была статья
 (http://www.nkj.ru/archive/articles/12671/) - так, раз уж тема про tcl
 переродилась в тему про букву ё :)

Имхо, дурацкая статья. 
Во-первых, е и ё в ней перепутаны во многих словах - для такой статьи это 
недопустимо. 
Далее, про букву й как-то позабыли, хотя написание йод и ёжик явно 
противоречивы, хотите ё - так 
уж будьте последовательны и пишите ёд, а меня от этого, признаться, коробит. 
Ну и как выше 
говорилось, тогда уж пишите малако - как слышится. 
Читать Пушкина через ё может только человек, который не вдумывается и не 
вслушивается в то, что 
читает - оригинал через е действительно звучит, а в современной записи стихи 
становятся ущербными.
На холмах пушки, присмирев, 
Прервали свой голодный рев.
Скажите еще, что ударение ставится в слове хо'лмах на последний слог :-)

Best regards, Alexey.


--
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Возможна ли поддержка тиклем юникода?

2009-01-15 Пенетрантность Alexey Pechnikov
Hello!

В продолжение темы Как правильно сделать поддержку юникода в программе - 
обнаружил, что не я один 
не умею это делать, в тикле также пресловутая буква Ё не желает сортироваться:

$ cat collate.tcl
#!/usr/bin/tclsh8.5
proc russian_compare {a b} {
 return [string compare $a $b]
}
proc nocase_compare {a b} {
 return [string compare [string tolower $a] [string tolower $b]]
}
set strings {П Й Ё п а у ы б ь ё ю я е ю я}
puts [lsort -command russian_compare $strings]
puts [lsort -command nocase_compare $strings]
puts [lsort $strings]

$ ./collate.tcl
Ё Й П а б е п у ы ь ю ю я я ё
а б е Й П п у ы ь ю ю я я Ё ё
Ё Й П а б е п у ы ь ю ю я я ё

В tclsh8.4 аналогично.
Поддержка юникода оказывается все большей проблемой...

Best regards, Alexey.


--
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Возможна ли поддержка тиклем юникода?

2009-01-15 Пенетрантность Александр Владимирович Екимов
On Friday 16 January 2009 05:16:33 Иван Лох wrote:

 P.S. Да и есть-ли в русском языке эта полумифическая буква ё?  ;-}

В русском языке 33 буквы. В языке гастарбайтеров, героев Дом и Дом2, 
школьников, пустивших букварь на самокрутки, возможно, меньше; наверное 
20-25. Это их проблемы.

-- 
Александр Владимирович Екимов,
н.с. ООО НПО СПЕКТРОН


Re: Возможна ли поддержка тиклем юникода?

2009-01-15 Пенетрантность Alexey Pechnikov
Hello!

В сообщении от Friday 16 January 2009 09:22:51 Victor Wagner написал(а):
 С переходом на unicode от этого патча отказались. Потому что никто не
 гарантировал наличия в системе юникодной локали для соответствующего
 языка от этого патча отказались. Потому что никто не гарантировал
 наличия в системе юникодной локали для соответствующего языка.

 Не таскать же за собой собственные таблицы collation sequence.

Так что делать-то? Я отказался от компактного модуля для эскулайт, который 
обеспечивает поддержку 
юникода, за исключением порядка следования буквы ё, а теперь обнаружил, что в 
тикле та же самая 
проблема. 

Best regards, Alexey.


--
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Re: Возможна ли поддержка тиклем юникода?

2009-01-15 Пенетрантность Alexey Pechnikov
Hello!

В сообщении от Friday 16 January 2009 10:14:41 Konstantin Matyukhin написал(а):
  P.S. Да и есть-ли в русском языке эта полумифическая буква ё?  ;-}

 Ага, есть. Назло некоторым дизайнёрам.
 Мало вам, что i профукали? Хотите еще и ё в угоду малограмотным лентяям
 под нож пустить? Что ж такое творится-то, ё моё?

 Передохнем от вражды! или как?

Посмотрел в википедии, оказывается, буква ё - наследие культа личности и 
официально присутствует в 
руссом языке лишь с 1942 года. А до этого не часто использовалась, просто как 
альтернативное 
написание буквы е (и существовала всего-то пару веков на неофициальных 
основаниях). Так что не все 
однозначно с буквой ё - скорее, грамотность состоит не в том, чтобы ее писать, 
а в том, чтобы ее 
читать (так же как произносится што, о как а звучит и т.п.).

Best regards, Alexey.


--
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org