* Re: [Comm] Неправильная сортировка в консоли?
@ 2006-10-13 12:26 ` Sergey Stepanov
2006-10-13 12:36 ` Denis G. Samsonenko
0 siblings, 1 reply; 2+ messages in thread
From: Sergey Stepanov @ 2006-10-13 12:26 UTC (permalink / raw)
To: Denis G.Samsonenko; +Cc: ALT Linux Community
> Вам же выше уже написали в сообщении, на которое вы отвечаете, что
> чтобы изменения вами переменной LC_COLLATE (как и любой другой) дошли
> до дочернего процесса, необходимо выполнять не просто "LC_COLLATE=C",
> а "export LC_COLLATE=C". Или пускать вашу ls так:
>
> ...]$ LC_COLLATE=C ls -1
>
> Так что таки читать надо что-нибудь по shell (bash), а не про
> локализацию, чтобы понимать, как устанавливать переменные окружения
> среды.
Хорошо. Предположим, мы уже умеем выставлять любую переменную
в любое нужное значение в среде.
Напоминаю исходный вопрос, который мы забыли в ходе обсуждения.
Если LC_COLLATE не выставлено как C, то алгоритм сортировки
при обработке строк пропускает небуквенные символы.
Поэтому сортировка "неправильная". Зато по русскому алфавиту.
Если LC_COLLATE=C то строки сортируются в чистом виде,
не сбрасывая со счетов небуквенные символы. Сортировка
в этом случае "правильная". Но зато не по русскому алфавиту.
Вопрос. Как же сделать так, чтобы и сортировка шла по алфавиту,
и "небуквенные" символы учитывались при сортировке?
Со всяческими пожеланиями, Сергей.
http://xi.net.ru
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: [Comm] Неправильная сортировка в консоли?
2006-10-13 12:26 ` [Comm] Неправильная сортировка в консоли? Sergey Stepanov
@ 2006-10-13 12:36 ` Denis G. Samsonenko
0 siblings, 0 replies; 2+ messages in thread
From: Denis G. Samsonenko @ 2006-10-13 12:36 UTC (permalink / raw)
To: community
Вечер добрый!
13.10.06, Sergey Stepanov написал:
> Если LC_COLLATE не выставлено как C, то алгоритм сортировки
> при обработке строк пропускает небуквенные символы.
> Поэтому сортировка "неправильная". Зато по русскому алфавиту.
>
> Если LC_COLLATE=C то строки сортируются в чистом виде,
> не сбрасывая со счетов небуквенные символы. Сортировка
> в этом случае "правильная". Но зато не по русскому алфавиту.
>
> Вопрос. Как же сделать так, чтобы и сортировка шла по алфавиту,
> и "небуквенные" символы учитывались при сортировке?
Интересный вопрос. А каков критерий правильности? На сколько я
понимаю, при локали C, сортирующий механизм ничего не знает о буквах,
и сотрирует согласно кодам символов в ASCII. Когда же вы
устанавливаете локаль в отличное от C значение, то сортировка идёт в
том порядке, в котором это указано в данной локали. И тут уже
сортируются с буквы, а не коды символов. Вероятно, как сортировать
небуквенные символы просто не задано. Да и не понятно, как их
сортировать, каков должен быть порядок, должны они идти до букв или
после, а может часть до, а часть после? Каков критерий этой вашей
"правильности"?
--
Всего доброго,
Денис.
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2006-10-13 12:36 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2006-10-13 12:26 ` [Comm] Неправильная сортировка в консоли? Sergey Stepanov
2006-10-13 12:36 ` Denis G. Samsonenko
ALT Linux Community general discussions
This inbox may be cloned and mirrored by anyone:
git clone --mirror http://lore.altlinux.org/community/0 community/git/0.git
# If you have public-inbox 1.1+ installed, you may
# initialize and index your mirror using the following commands:
public-inbox-init -V2 community community/ http://lore.altlinux.org/community \
mandrake-russian@linuxteam.iplabs.ru community@lists.altlinux.org community@lists.altlinux.ru community@lists.altlinux.com
public-inbox-index community
Example config snippet for mirrors.
Newsgroup available over NNTP:
nntp://lore.altlinux.org/org.altlinux.lists.community
AGPL code for this site: git clone https://public-inbox.org/public-inbox.git