Kiedy wpisuję spację, po której następuje symbol potoku '|'
w wierszu polecenia zsh, zsh zjada spację, umieszczając symbol potoku bezpośrednio przed poprzednim słowem. Jak temu zapobiec? Nie jestem pewien co do możliwych konwencji stylistycznych, ale lubię spację po obu stronach symbolu potoku dla czytelności. Używam och-my-zsh praktycznie od razu po wyjęciu z pudełka.
Rozwiązanie
Na podstawie poniższej odpowiedzi mpy zastosowałem następujące rozwiązanie:
Domyślnie ZLE_REMOVE_SUFFIX_CHARS jest niezdefiniowany w zsh / ohmyzsh. Gdy jest niezdefiniowany, działa tak, jakby był:
ZLE_REMOVE_SUFFIX_CHARS=$' \t\n;&|'
Dodałem następującą definicję do mojego ~ / .zshrc:
ZLE_REMOVE_SUFFIX_CHARS=$' \t\n;&'
(wszystkie oprócz fajki) i presto, idealnie! problem zniknął.
zsh -f
(aby pominąć ładowanie konfiguracji). Zauważysz, że zsh już tego nie zrobi. Następnie będziesz musiał wykopać (najprawdopodobniej) do oh-my-zsh, aby dowiedzieć się, jak to powoduje ;-)