Podobne sortowanie jest na Androidzie np. w przypadku listy kontaktów, ciekawe.
Dodane.
Może chodzić o ilość bajtów potrzebnych by określić znak narodowy.
A coś takiego proponuje AI:
Aby ustalić własną kolejność alfabetu w systemie Linux, należy zmodyfikować ustawienia regionalne (locale). Można to zrobić poprzez zmianę zmiennej środowiskowej LC_COLLATE. Opcjonalnie, można też utworzyć plik z definicją nowej reguły sortowania i wskazać go w zmiennej.
Kroki:
Zdefiniuj własną kolejność sortowania:
Możesz użyć narzędzia localedef do utworzenia nowej definicji ustawień regionalnych. Wymaga to znajomości specyficznych reguł sortowania.
Możesz też utworzyć plik tekstowy (np. my_collation.txt) z własną kolejnością znaków. Format pliku jest specyficzny i wymaga odpowiedniego zdefiniowania każdego znaku (zobacz dokumentację localedef).
Przykład: Plik my_collation.txt może zawierać linie:
co posortuje litery A, B, C niezależnie od wielkości liter.
Zmień zmienną środowiskową LC_COLLATE:
Aby zastosować nową kolejność sortowania dla bieżącej sesji terminala, ustaw zmienną:
Kod: Zaznacz cały
export LC_COLLATE="pl_PL.UTF-8:my_collation.txt"
(lub odpowiednią nazwę pliku z definicją). pl_PL.UTF-8 to przykład lokalizacji, możesz użyć innej, a my_collation.txt to nazwa pliku z regułami.
Aby zmiany były trwałe, dodaj tę linię do pliku konfiguracyjnego profilu (np. .bashrc, .zshrc).
Użyj sortowania z nową kolejnością:
Polecenie sort będzie teraz używać zdefiniowanej przez Ciebie kolejności sortowania.
Możesz też użyć polecenia ls -l z opcją --sort=extension (lub podobną) i odpowiednim ustawieniem LC_COLLATE, aby sortować pliki wg rozszerzeń w oparciu o własny alfabet.
Przykłady:
Sortowanie tekstu z użyciem własnej reguły.
Kod: Zaznacz cały
echo -e "b\na\nc" | LC_COLLATE="pl_PL.UTF-8:my_collation.txt" sort
Sortowanie plików wg rozszerzeń z własną regułą:
Stwórz plik my_collation.txt (jak wyżej).
Ustaw zmienną:
Kod: Zaznacz cały
export LC_COLLATE="pl_PL.UTF-8:my_collation.txt"
Wykonaj:
Ważne uwagi:
Skorzystaj z dokumentacji localedef w celu zapoznania się z formatem pliku konfiguracyjnego definicji sortowania.
Ustawianie zmiennych środowiskowych w plikach konfiguracyjnych profilu jest zalecane, aby zmiany były trwałe.
Sprawdź, czy używasz odpowiedniej lokalizacji (np. pl_PL.UTF-8) dla Twojego języka.
Polecenia takie jak sort i ls respektują ustawienia LC_COLLATE, więc inne programy mogą nie być tym dotknięte.