Изменения в числовой сортировке

Здесь можно сообщить о найденных багах в Far.
Dmitry24
Posts: 4
Joined: Sat 21 Jul, 2018 04:51

Сортировка по имени с буквами и цифрами

Post by Dmitry24 »

Latest post of the previous page:

Сортировка в панели по имени иногда непредсказуемая, причем цифра "0" дает нормальное поведение, а другие цифры - нет. Для сравнения 3 файла с "0" будут отсортированы в следующем логичном порядке:

a00
a0a
aa0

А 3 файла с "1" и теми же настройками будут отсортированы иначе:

a1a
a11
aa1

В обоих случаях используется сортировка по возрастанию имени и системная опция "Treat digits as numbers" (по умолчанию). При отключении данной опции проблемы нет, однако, по-моему, логика сортировки с данной опцией где-то хромает.

Dmitry24
Posts: 4
Joined: Sat 21 Jul, 2018 04:51

Сортировка по имени с буквами и цифрами

Post by Dmitry24 »

В принципе, логика, понятна (кроме выпадения из нее числа "0").
Но, на мой взгляд, числа должы сравниваться только в том случае, когда остальная часть имени, кроме сравниваемых чисел, совпадает, иначе имена следует считать совершенно разными и сравнивать по обычным правилам. Иначе очень сложно ориентироваться в сортировке типа "1A", "2А", "11", "21", особенно когда много файлов с шестнадцатеричной нумерацией (типа хэшей).
Обычно сравнение чисел в имени требуется для случаев типа "Имя", "Имя (1)", "Имя (2)" ... "Имя (11)"... "Имя (31)", и выше описанный алгоритм вполне сответствует естественной логике сортировки таких имен, сортировка по числу происходит, только когда есть соответсвие общему шаблону. А просто выцеплять случайные цифры, по-моему, не стоит.
Можно, конечно, спорить о том, где, например, в ряду выше должно стоять "Имя (2~1"... :)

Dmitry24
Posts: 4
Joined: Sat 21 Jul, 2018 04:51

Сортировка по имени с буквами и цифрами

Post by Dmitry24 »

Прошу прощения, нашел тему под носом: viewtopic.php?f=9&t=11108

Dmitry24
Posts: 4
Joined: Sat 21 Jul, 2018 04:51

Изменения в числовой сортировке

Post by Dmitry24 »

Еще раз прошу прощения, в предложенном мной алгоритме нарушается транзитивность, так что для сортировки он не подходит. Тогда остается только желание иметь опцию более "умного" вычленения чисел (допустим, только если есть какие-то разделители), бага тут нет, конечно.

Post Reply

Return to “Глюки и баги”