Dlaczego znak procentu pojawia się przed każdym monitem w Zsh w Windows?
13
Dostaję konfigurację zsh w Windows i otrzymuję symbol odwrotnej (czarno na białym (czarne tło terminala)) symbolu procentowego w pierwszej pozycji znaku w linii tuż nad każdym monitem.
Zwykle oznacza to, że na końcu pliku nie ma nowego wiersza, na przykład podczas catotwierania pliku.
Nie dzieje się to na moim komputerze Mac ani nawet w Mintty w systemie Windows. Ale zdarza się to w ConEmu i standardowej aplikacji terminalowej, w której zwykle działa CMD.EXE.
Mam już unsetwszystkie moje ciągi znaków zachęty, precmd()których zwykle używam do dodania pustej linii powyżej pytania.
Odpowiednią opcją jest prawdopodobnie PROMPT_SPwyjaśnienie z instrukcji
Próba zachowania częściowej linii (tj. Linii, która nie kończy się nową linią), która w innym przypadku byłaby objęta wierszem poleceń z powodu opcji PROMPT_CR. Działa to poprzez wyprowadzenie niektórych znaków sterujących kursorem, w tym szeregu spacji, które powinny sprawić, że terminal zawinie się do następnego wiersza, gdy obecna jest linia częściowa (zauważ, że jest to skuteczne tylko wtedy, gdy twój terminal ma automatyczne marginesy, co jest typowe) .
Gdy zachowana jest linia częściowa, domyślnie na końcu linii częściowej widoczny jest znak odwrotny + pogrubiony: a %dla zwykłego użytkownika lub #dla użytkownika root. Jeśli jest ustawiony, parametr powłoki PROMPT_EOL_MARK można wykorzystać do dostosowania sposobu wyświetlania końca linii częściowych.
Więc albo zrobisz
unsetopt PROMPT_SP
jeśli nie przejmujesz się zakrytą linią (jednak w twoim przypadku wydaje się, że jest to pusta linia, ponieważ dostajesz %znak na początku).
Dzięki @mpy, znalazłem się we właściwym miejscu, aby dowiedzieć się więcej. Oto, co wymyśliłem: 1) trzy rzeczy działają, więcej, jeśli połączysz opcje: unsetopt PROMPT_CR; unsetopt PROMPT_SP; i PROMPT_EOL_MARK = "". 2) ustawienie PROMPT_EOL_MARK = "" pozbywa się irytującego odwrotnego + pogrubionego znaku "%", ale nadal dodaje dodatkowe przejście do wiersza, więc monit wygląda inaczej niż na miętowym lub Macu. 3) Skończyło się na tym, że wybrałem opcję unsetopt PROMPT_SP jako najlepszy kompromis. 4) użycie set i unset nie działa, chyba że użyjesz opcji -o. praca setopt i unsetopt. Jeśli to naprawisz, zaakceptuję twoją odpowiedź :)
scanny 15.09.13
@scanny: Muszę przeprosić za set. Oczywiście tak powinno być setopt- oczywiście napisałem swoją odpowiedź zbyt szybko. Zaktualizowałem swoją odpowiedź i starałem się uwzględnić także kwestię pustych linii.
mpy
2
Miałem więc dokładnie ten sam problem z moim zsh + oh-my-zsh.
Naprawiłem to przy pomocy mpy i tych linii:
setopt PROMPT_CR
setopt PROMPT_SP
eksport PROMPT_EOL_MARK = ""
Musisz tylko przejść do -> ~ / .oh-my-zsh / themes / XXXXXX Musisz otworzyć motyw, którego używasz na oh-my-zsh, więc dla mnie na przykład jego agnoster.
Wystarczy otworzyć ten plik i skopiować / ominąć te 3 wiersze na końcu pliku.
I to naprawione !!
Mam nadzieję, że masz miły dzień i że to pomoże niektórym ludziom wyjść.
Nie dodawaj „dziękuję” jako odpowiedzi. Zainwestuj trochę czasu na stronie, a zyskasz wystarczające uprawnienia do głosowania na odpowiedzi, które Ci się podobają, co jest sposobem Super Użytkownik na podziękowanie.
DavidPostill
0
Możesz uruchomić mięty w ConEmu. To dla mnie pozbawiło procenty.
Oto, co mam dla parametrów zadania:
/icon "%ConEmuDrive%\msys64\msys2.ico"
i polecenia:
set CHERE_INVOKING=1&%ConEmuDrive%\\msys64\usr\bin\mintty.exe -i "%ConEmuDrive%\msys64\msys2.ico"-
set
. Oczywiście tak powinno byćsetopt
- oczywiście napisałem swoją odpowiedź zbyt szybko. Zaktualizowałem swoją odpowiedź i starałem się uwzględnić także kwestię pustych linii.Miałem więc dokładnie ten sam problem z moim zsh + oh-my-zsh.
Naprawiłem to przy pomocy mpy i tych linii:
setopt PROMPT_CR
setopt PROMPT_SP
eksport PROMPT_EOL_MARK = ""
Musisz tylko przejść do -> ~ / .oh-my-zsh / themes / XXXXXX Musisz otworzyć motyw, którego używasz na oh-my-zsh, więc dla mnie na przykład jego agnoster.
Wystarczy otworzyć ten plik i skopiować / ominąć te 3 wiersze na końcu pliku.
I to naprawione !!
Mam nadzieję, że masz miły dzień i że to pomoże niektórym ludziom wyjść.
POKÓJ
źródło
Możesz uruchomić mięty w ConEmu. To dla mnie pozbawiło procenty.
Oto, co mam dla parametrów zadania:
i polecenia:
źródło