Acme Zsh

· 1 мин. чтения

Про странные символы при использовании zshell внутри терминала Win.

Написано здесь. Да, unset zle_bracketed_paste помогает. Но не каждый же раз это вводить.

Хочется сделать как-то красиво. Чтобы, устанавливалось лишь когда zsh внутри Acme. Ещё, лишний перевод строки бы убрать.

Я в дополнение к ~/.zprofile создал файл в домашнем каталоге .zshrc - он исполняется в каждом экземпляре оболочки. Там я сделал проверку - что есть WINID - переменная окружения, которую выставляет Acme процессам в окнах.

# чтобы zsh не гадил в Win терминал acme штуками типа ^[[?2004h

if [[ -n $winid ]]; then
    # Отключение ZLE для предотвращения проблем с отображением символов
    setopt no_zle
    # Включаем обработку возвратов каретки
    # setopt promptcr
    setopt nopromptsp
fi

Ну и при запуске acme - acmeshell=zsh не забыть.

Вуаля!