Я только начал использовать Zsh, и мне это нравится. Тем не менее, я наткнулся на раздражение, когда дело доходит до международных персонажей:
➜ ~ touch åäö.txt
➜ ~ ls
Desktop Dropbox Music Sites
Documents Library Pictures a??a??o??.txt
Downloads Movies Public
➜ ~ rm -v a<030a>a<0308>o<0308>.txt
åäö.txt
➜ ~
С bash это выглядит так (имя файла в rm -v
автоматически завершается нажатием клавиши TAB в обоих случаях).
johan@retina ~ $ touch åäö.txt
johan@retina ~ $ ls
Desktop Dropbox Music Sites
Documents Library Pictures åäö.txt
Downloads Movies Public
johan@retina ~ $ rm -v åäö.txt
åäö.txt
johan@retina ~ $
Как я могу это исправить с помощью zsh
?
РЕДАКТИРОВАТЬ:
Настройка export LANG=en_US:UTF-8
фиксирует вывод, например, ls
а также правильно отображает его в строке под текущим вводом, когда есть несколько совпадений при завершении TAB . Тем не менее, при выборе файла в TAB -completion он показывает неправильный путь в строке ввода, то же самое происходит, когда есть только одно совпадение.
Приведенный выше пример теперь выглядит так с zsh
:
➜ ~ touch åäö.txt
➜ ~ ls
åäö.txy
➜ ~ rm -v a<030a>a<0308>o<0308>.txt
åäö.txt
➜ ~
Если у меня есть два файла, совпадающие на TAB- дополнении, это выглядит так:
➜ ~ touch åäö.txt
➜ ~ touch öäå.txt
➜ ~ rm
öäå.txt åäö.txt
Выбор одного из вышеперечисленных путем повторного нажатия клавиши TAB и использования клавиш со стрелками или нажатия либо a, либо o, чтобы сделать только одно совпадение до завершения, генерирует это:
➜ ~ rm o<0308>a<0308>a<030a>.txt
➜ ~ rm a<030a>a<0308>o<0308>.txt
Любые предложения о том, что не так?