Приветствую!
Может кто-нибудь объяснить простым языком, чем отличаются три доступных варианта настройки Setup > System settings > Sorting collation?
Ordinal, я так понимаю, просто сортировка по порядковому номеру символов в таблице ASCII / Unicode.
Не очень понятно, что такое invariant и linguistic.
У меня файлы-директории в большинстве своём латиницей, но бывает кириллица, корейский.
Игрался этими настройками, обратил внимание, что при использовании lingustic collation настройка case sensitive не работает (для латиницы, по крайней мере).
Т.е. linguistic collation + case sensitive: порядок директорий B b C. Если поменять collation на invariant, то порядок B C b.
И ещё, можно ли как-то сделать, чтобы lowercase был первее uppercase - b B C?
Благодарю
Настройки сортировки - invariant/linguistic sorting collation
-
gene.pavlovsky
- Posts: 173
- Joined: Tue 16 Feb, 2010 17:55
- Location: Luxembourg
- Has thanked: 13 times
- Been thanked: 9 times
- Contact:
- HaRT
- Moderator
- Posts: 11458
- Joined: Tue 30 Aug, 2005 17:21
- Has thanked: 270 times
- Been thanked: 417 times
Настройки сортировки - invariant/linguistic sorting collation
Можно написать свою функцию сравнения и переключаться на неё, когда нужно. (Но это может оказаться медленно в больших директориях.) Посмотрите тему «Пользовательский режим сортировки для панелей» — там и примеры, и обсуждение особенностей использования.gene.pavlovsky wrote: Sun 24 Mar, 2024 00:05 можно ли как-то сделать, чтобы lowercase был первее uppercase - b B C?
Фар есть инструмент, а не нянька. © 2009 DrKnS
-
Shmuel
- Posts: 7244
- Joined: Thu 23 Mar, 2006 21:36
- Location: Israel
- Has thanked: 48 times
- Been thanked: 636 times
Настройки сортировки - invariant/linguistic sorting collation
В своё время (много лет назад), когда собственно добавлялась в Фар возможность "кастомной" сортировки, её скорость была сопоставима с "нативной", в том числе на больших директориях.HaRT wrote: Sun 24 Mar, 2024 00:51 Можно написать свою функцию сравнения и переключаться на неё, когда нужно. (Но это может оказаться медленно в больших директориях.)
Естественно, скорость кастомной сортировки напрямую зависит от пользовательской функции сравнения - если она сложная и/или неэффективно написана, скорость сортировки соответственно понизится.
Last edited by Shmuel on Sun 24 Mar, 2024 01:18, edited 1 time in total.
-
gene.pavlovsky
- Posts: 173
- Joined: Tue 16 Feb, 2010 17:55
- Location: Luxembourg
- Has thanked: 13 times
- Been thanked: 9 times
- Contact:
Настройки сортировки - invariant/linguistic sorting collation
Мне пока не так сильно этого хочется, чтобы заморачиваться с кастомным сравнением, но здорово знать, что такая возможность существует.
Всё же таки хочется знать, что именно делают варианты invariant / linguistic для sorting collation? Т.е. какие различия на практике, какой вариант кто использует? И какой, кстати, стоит по умолчанию?
Ну или как минимум какие флаги устанавливают эти варианты, а там я могу почитать доки от Microsoft на эту тему. Хотя когда я последний раз это пробовал, было понятно, что ничего непонятно. Какая-то у них терминология для этих тем, непонятная простым смертным. Хотелось бы скорее наглядных примеров...
Всё же таки хочется знать, что именно делают варианты invariant / linguistic для sorting collation? Т.е. какие различия на практике, какой вариант кто использует? И какой, кстати, стоит по умолчанию?
Ну или как минимум какие флаги устанавливают эти варианты, а там я могу почитать доки от Microsoft на эту тему. Хотя когда я последний раз это пробовал, было понятно, что ничего непонятно. Какая-то у них терминология для этих тем, непонятная простым смертным. Хотелось бы скорее наглядных примеров...
-
gene.pavlovsky
- Posts: 173
- Joined: Tue 16 Feb, 2010 17:55
- Location: Luxembourg
- Has thanked: 13 times
- Been thanked: 9 times
- Contact:
Настройки сортировки - invariant/linguistic sorting collation
Спасибо, я это всё уже читал, но мало чего понял из терминологии )))
Culture, invariant - тёмный лес какой-то. Они бы лучше привели побольше примеров из реальной жизни.
Почитал ещё раз.
Culture, invariant - тёмный лес какой-то. Они бы лучше привели побольше примеров из реальной жизни.
Почитал ещё раз.
Если всё вышеперечисленное верно, то разница между "invariant" и "linguistic" на моей система такая же, как между en и en-IE? В обоих случаях не очень понятно, как система решает, как сортировать русский, корейский и т.д.The invariant culture is culture-insensitive; it's associated with the English language but not with any country/region.
Если я правильно понимаю, то invariant не зависит от того, какой язык/локаль используется в системе, т.е. результат будет всегда одно и тот же. Правда непонятно, какой именно? Особенно если сортируем имена файлов с не-латинским алфавитом.
Слова "linguistic" я в этих статьях не нашёл. Равносилен ли он использованию CurrentCulture? CurrentCulture, как я понял, зависит от настройки Windows: Time & Language > Region > Regional format.
К примеру у меня в системе стоит Windows display language "English (United States)", но Regional format "English (Ireland)" (24-часовое время, неделя начинается с понедельника, и т.д.).
В PowerShell запускаю
Get-Culture | Format-List -Property *
И вижу en-IE.