кодировка :-((
всё, тема закрыта, так что кто не успел обозвать меня ламером - поздняк метаться %)
Ну на самом деле не совсем закрыта. Моё предложение убивает напрочь возможность сортировки по русскому языку.
Ну не совсем убивает 
Остается возможность сортировки по коду символа, что для ряда кодировок (типа cp1251) дает вполне приемлемые результаты. Кроме буквы "ё"

Остается возможность сортировки по коду символа, что для ряда кодировок (типа cp1251) дает вполне приемлемые результаты. Кроме буквы "ё"

%)
вроде русские сортирует (кроме Ё)
вроде русские сортирует (кроме Ё)
dmitri=> select * from q order by i;
i
----
.
.
.q
.z
.й
.ф
q
z
а
бё
и
й
ф
ё
ёй
locate locale
"export LANG=ru_RU.UTF-8"?
---
...Я работаю антинаучным аферистом...
"export LANG=ru_RU.UTF-8"?
---
...Я работаю антинаучным аферистом...
Тогда опять будет фигня с точками.
"export LANG=ru_RU.KOI8-R" и работать по стандарту?
---
...Я работаю антинаучным аферистом...
---
...Я работаю антинаучным аферистом...
По какому стандарту?
В каком стандарте написано, что при сортировке точки должны игнорироваться?
Как мне сделать так, что б они не игнорировались, но при этом русские буквы сортировались правильно?
В каком стандарте написано, что при сортировке точки должны игнорироваться?
Как мне сделать так, что б они не игнорировались, но при этом русские буквы сортировались правильно?
Государственному.
1. Использовать то, что работает, КОИ-8.
2. Рыться в locale.
Можно, конечно, пытаться использовать полумеры,
вроде "export LC_COLLATE=ru_RU.KOI8-R".
---
...Я работаю антинаучным аферистом...
1. Использовать то, что работает, КОИ-8.
2. Рыться в locale.
Можно, конечно, пытаться использовать полумеры,
вроде "export LC_COLLATE=ru_RU.KOI8-R".
---
...Я работаю антинаучным аферистом...
~> export LANG=ru_RU.KOI8-RЧто я делаю не так?
~> locale
LANG=ru_RU.KOI8-R
LC_CTYPE="ru_RU.KOI8-R"
LC_NUMERIC="ru_RU.KOI8-R"
LC_TIME="ru_RU.KOI8-R"
LC_COLLATE="ru_RU.KOI8-R"
LC_MONETARY="ru_RU.KOI8-R"
LC_MESSAGES="ru_RU.KOI8-R"
LC_PAPER="ru_RU.KOI8-R"
LC_NAME="ru_RU.KOI8-R"
LC_ADDRESS="ru_RU.KOI8-R"
LC_TELEPHONE="ru_RU.KOI8-R"
LC_MEASUREMENT="ru_RU.KOI8-R"
LC_IDENTIFICATION="ru_RU.KOI8-R"
LC_ALL=
~> sort a.txt
.
.q
q
.z
z
а
ё
й
к
р
ф
~>
а как q влезла между двумя строками, начинающимися на .?
Если ты мысленно уберёшь точки, то ты поймёшь, что всё отсортировано правильно.
Вот только хочется, что б сначала шли точки а потом буквы.
Вот только хочется, что б сначала шли точки а потом буквы.
во-во, так что KOI8-R не катит =(
а может это фича самого sort, чтобы скрытые папки помещать где надо?
На самом деле всё ещё смешнее. Под FreeBSD сортирует так, как я этого хочу
~> export LANG=ru_RU.KOI8-R; locale; sort a.txt; uname
LANG=ru_RU.KOI8-R
LC_CTYPE="ru_RU.KOI8-R"
LC_COLLATE="ru_RU.KOI8-R"
LC_TIME="ru_RU.KOI8-R"
LC_NUMERIC="ru_RU.KOI8-R"
LC_MONETARY="ru_RU.KOI8-R"
LC_MESSAGES="ru_RU.KOI8-R"
LC_ALL=
.
.q
.z
q
z
а
ё
й
к
р
ф
FreeBSD
~>
Оставить комментарий
zya369