* 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