vcs_info, richtige config in zsh?
Ich habe vor kurzem zsh installiert und mir die Zeit genommen, es richtig zu konfigurieren.
setopt prompt_subst Verwenden Sie prompt_subst, um die Variablen vcs_info zu verwenden, die während der Laufzeit aktualisiert werden.
Es funktioniert mit Farben und sollte nichts kaputt machen, wenn versucht wird, die PS1 zu modifizieren. aber ich scheine nicht herauszufinden, was die Nachteile für die Aktivierung sind?
psvar Verwenden Sie eine psvar-Funktion, um die Befehlszeile zu ersetzen, funktioniert aber die Farben.
Aktualisieren Sie PS1 alle Precmd-Dateien . Könnte mit Hacks behoben werden, aber es ist zu hässlich / fragil IMO, also überspringen Sie diese.
-
Um es zusammenzufassen:
- Welche Nachteile gibt es, wenn prompt_subst aktiviert ist?
- Gibt es eine Möglichkeit, die Farben mit psvar arbeiten zu lassen
Wenn prompt_subst erhebliche Nachteile hat, wäre 2 die beste Alternative, wenn 3 alles möglich ist, 3 ist ein bisschen zerbrechlich, also lieber nicht verwenden.
Der relevante Teil meiner .zshrc
... autoload -Uz vcs_info # Needs to be enabled for the prompt to change setopt prompt_subst # Formats VCS_FORMAT="%{$fg_bold[magenta]%}(%{$reset_color%}%{$fg_bold[yellow]%}%b%{$reset_color%}" VCS_APPEND="%{$fg_bold[magenta]%})%{$reset_color%}" VCS_NORMAL_FORMAT="$%{$fg_bold[magenta]%}:%{$reset_color%}%{$fg_bold[green]%}%8.8i%{$reset_color%}$" VCS_ACTION_FORMAT="$%{$fg_bold[magenta]%}:%{$reset_color%}%{$fg_bold[red]%}%a%{$reset_color%}$" zstyle ':vcs_info:*' enable git hg svn zstyle ':vcs_info:*' get-revision true zstyle ':vcs_info:*' formats $VCS_NORMAL_FORMAT zstyle ':vcs_info:*' actionformats $VCS_ACTION_FORMAT precmd () { vcs_info PS1_STR="" PS1_STR="$%{$fg_bold[magenta]%}[%{$reset_color%}%{$fg_bold[green]%}%m%{$reset_color%}%{$fg_bold[magenta]%}]%{$reset_color%}" #hostname PS1_STR="$%{$fg_bold[magenta]%}[%{$reset_color%}%{$fg_bold[blue]%}%n%{$reset_color%}%{$fg_bold[magenta]%}]%{$reset_color%}" #user PS1_STR="$%{$fg_bold[magenta]%}[%{$reset_color%}%{$fg_bold[cyan]%}%1~%{$reset_color%}%{$fg_bold[magenta]%}]%{$reset_color%}" #folder PS1_STR="$$\$ " #branch/end } export PS1='$' ...
0 Antworten auf die Frage
Verwandte Probleme
-
6
Welche zsh-Funktionen verwenden Sie?
-
2
CVS - ignoriert Thumbs.db unter Windows
-
3
Benutzerdefinierte Farben für Shell
-
1
Brechen Sie gewaltsam eine for-Schleife in sh
-
3
warum zsh git autocompletion nicht so gut wie bash ist?
-
1
Systemweite Umgebungsvariablen für zsh unter Ubuntu
-
1
Wie kann ich auf ein Verzeichnis mit dem neuesten Zeitstempel im Namen zugreifen?
-
2
Zsh git automatische Vervollständigung anpassen
-
4
Wie formatiere ich den Pfad in einer zsh-Eingabeaufforderung?
-
2
Wie kann ich die Eingabe eines Befehlsnamens in zsh zweimal korrigieren?