Linux-Bulgaria.ORG
навигация

 

начало

пощенски списък

архив на групата

семинари ...

документи

как да ...

 

 

Предишно писмо Следващо писмо Предишно по тема Следващо по тема По Дата По тема (thread)

[Lug-bg] речниково сортиране: кирилица и български езикови настройки


  • Subject: [Lug-bg] речниково сортиране: кирилица и български езикови настройки
  • From: Roumen Petrov <help@xxxxxxxxxxxxxxxxx>
  • Date: Sun, 22 Jun 2008 18:03:18 +0300

Здравейте,
Бих искал и в този списък да попитам, дали имате нещо против да се 
премахнат допълнителните правила за сортиране, зададени в българските 
езикови настройки ?

Освен това мисля, че в общите правила за сортиране на кирилица, трябва
да се сменят местата на  <U0404> и <U0401> , на <U040C> и <U040B>, и на
съответните им малки букви.

В крайна сметка очаквам да се получи следната подредба на UNICODE
знаците за кирилица от 0x400 до 0x45f:

1) 
аАбБвВгГдДѓЃђЂеЕѐЀёЁєЄжЖзЗѕЅиИѝЍіІїЇйЙјЈкКлЛљЉмМнНњЊоОпПрРсСтТћЋќЌуУўЎфФхХцЦчЧџЏшШщЩъЪыЫьЬэЭюЮяЯ




Технически детайли:
Файлът с описанието, обикновенно, е /usr/share/i18n/locales/bg_BG.
Интересува ни секцията LC_COLLATE, която изглежда, примерно:
======================
LC_COLLATE
copy "iso14651_t1"
reorder-after <9>
.....
reorder-after <U0433>
.....
reorder-end
END LC_COLLATE
======================

Тест с PERL(кода следва):
==================
use locale;
print +(sort grep /\w/, map { chr } 0x400..0x45f), "\n";
==================
и при настойка LANG=bg_BG.UTF-8 се получава следното:
2) 
ЀЍѐѝаАбБвВгГѓЃдДђЂџЏѕЅеЕєЄёЁэЭжЖзЗиИІіїЇыЫйЙЈјкКќЌлЛљЉмМнНњЊоОпПрРсСтТуУўЎфФхХцЦчЧћЋшШщЩъЪьЬюЮяЯ.


Сега ако в файла .../locales/bg_BG се премахнат редовете от
reorder-after <U0433> до reorder-end, без последния би трябвало да се
получи:

3) 
аАбБвВгГдДѓЃђЂеЕѐЀєЄёЁжЖзЗѕЅиИѝЍіІїЇйЙјЈкКлЛљЉмМнНњЊоОпПрРсСтТќЌћЋуУўЎфФхХцЦчЧџЏшШщЩъЪыЫьЬэЭюЮяЯ.

Бележки:
- след редактиране на файла, трябва да се се пресъздадат езиковите
настройки с командата :

localedef -i bg_BG -f UTF-8 bg_BG.UTF-8;
- забележете разликата, след E и T, между 3) и 1);
- моята Си библиотека е остаряла версия и не мога да преценя дали трябва 
да се махне и правилото reorder-after <9>;
- общия файл е iso14651_t1, като в текущата версия правилата от 
iso14651_t1 са преместени в iso14651_t1_common;
- версията на Си библиотеката (libc) може да е по-стара и да липсват 
общи правила за сортиране на ударени "И" и "Е", главни и малки;
- в моята версия няма общи правила за ударените "И" и "Е" и затова, само 
за тестване, съм добавил в .../bg_BG:
----------------
reorder-after <U0438>
<U045D> <CYR-I>;<U045D>;<MIN>;IGNORE
reorder-after <U0418>
<U040D> <CYR-I>;<U040D>;<CAP>;IGNORE
reorder-after <U0435>
<U0450> <CYR-IE>;<U0450>;<MIN>;IGNORE
reorder-after <U0415>
<U0400> <CYR-IE>;<U0400>;<CAP>;IGNORE
----------------


Румен

П.П.

Източници:
http://www.unicode.org/charts/collation/chart_Cyrillic.html

http://www.collation-charts.org/winxp/winxp.0402.CP1251.Bulgarian_Bulgaria.html 
(заб.: мястото на "К" с ударение не е правилно)

и от wikipedia:
http://en.wikipedia.org/wiki/Early_Cyrillic_alphabet
http://en.wikipedia.org/wiki/Cyrillic_alphabet
http://en.wikipedia.org/wiki/Russian_alphabet
http://en.wikipedia.org/wiki/Macedonian_alphabet
http://en.wikipedia.org/wiki/Serbian_Cyrillic_alphabet
http://en.wikipedia.org/wiki/Romanian_Cyrillic_alphabet (заб.: преди
1860–1862!)



_______________________________________________
Lug-bg mailing list
Lug-bg@xxxxxxxxxxxxxxxxxx
http://linux-bulgaria.org/mailman/listinfo/lug-bg


 

наши приятели

 

линукс за българи
http://linux-bg.org

FSA-BG
http://fsa-bg.org

OpenFest
http://openfest.org

FreeBSD BG
http://bg-freebsd.org

KDE-BG
http://kde.fsa-bg.org/

Gnome-BG
http://gnome.cult.bg/

проект OpenFMI
http://openfmi.net

NetField Forum
http://netField.ludost.net/forum/

 

 

Linux-Bulgaria.ORG

Mailing list messages are © Copyright their authors.