5.0 KiB
FAQ
Wie ist die Konfiguration im Demo GIF?
- Terminal Emulator: iTerm2
- Theme: Minimal
- Farbschema: Snazzy
- Font: FiraCode Nerd Font
- Shell: Fish Shell
- Konfiguration: Matchai's Dotfiles
- Prompt: Starship
How do I get command completion as shown in the demo GIF?
Completion support, or autocomplete, is provided by your shell of choice. In the case of the demo, the demo was done with Fish Shell, which provides completions by default. If you use Z Shell (zsh), I'd suggest taking a look at zsh-autosuggestions.
Do top level format
and <module>.disabled
do the same thing?
Ja, beide können benutzt werden, um Module in der Prompt zu deaktivieren. Wenn nur Module deaktiviert werden wollen, sollte <module>.disabled
benutzt werden, aus den folgenden Gründen:
- Disabling modules is more explicit than omitting them from the top level
format
- Mit der Aktualisierung von Starship werden neu erstellte Module an die Eingabezeile angefügt
The docs say Starship is cross-shell. Why isn't my preferred shell supported?
Starship ist auf so eine Weise gebaut, das die Unterstützung so gut wie jeder Shell möglch sein sollte. Die Starship Binärdatei läuft völlig unabhängig von der Shell, und sollte auf jeder benutzt werden können, die eine Anpassung des Stils erlaubt.
Hier ist ein kleines Beispiel, wie man Starship auf bash zum Laufen bringt:
# Den Statuscode des zuletzt ausgeführten Befehls abrufen
STATUS=$?
# Gibt die Anzahl der laufenden Jobs an.
NUM_JOBS=$(jobs -p | wc -l)
# Set the prompt to the output of `starship prompt`
PS1="$(starship prompt --status=$STATUS --jobs=$NUM_JOBS)"
The Bash implementation built into Starship is slightly more complex to allow for advanced features like the Command Duration module and to ensure that Starship is compatible with pre-installed Bash configurations.
Für eine Liste aller Flaggen, die von Starship-Eingabeaufforderung
akzeptiert wird, verwenden Sie den folgenden Befehl:
starship prompt --help
Die Eingabeaufforderung verwendet so viel Kontext wie möglich, aber keine Flagge ist "notwendig".
How do I run Starship on Linux distributions with older versions of glibc?
If you get an error like "version 'GLIBC_2.18' not found (required by starship)" when using the prebuilt binary (for example, on CentOS 6 or 7), you can use a binary compiled with musl
instead of glibc
:
curl -fsSL https://starship.rs/install.sh | bash -s -- --platform unknown-linux-musl
I see symbols I don't understand or expect, what do they mean?
If you see symbols that you don't recognise you can use starship explain
to explain the currently showing modules.
Why don't I see a glyph symbol in my prompt?
The most common cause of this is system misconfiguration. Some Linux distros in particular do not come with font support out-of-the-box. You need to ensure that:
- Your locale is set to a UTF-8 value, like
de_DE.UTF-8
orja_JP.UTF-8
. IfLC_ALL
is not a UTF-8 value, you will need to change it. - You have an emoji font installed. Most systems come with an emoji font by default, but some (notably Arch Linux) do not. You can usually install one through your system's package manager--noto emoji is a popular choice.
- You are using a Nerd Font.
To test your system, run the following commands in a terminal:
echo -e "\xf0\x9f\x90\x8d"
echo -e "\xee\x82\xa0"
The first line should produce a snake emoji, while the second should produce a powerline branch symbol (e0a0).
If either symbol fails to display correctly, your system is still misconfigured. Unfortunately, getting font configuration correct is sometimes difficult. Users on the Discord may be able to help. If both symbols display correctly, but you still don't see them in starship, file a bug report!
How do I uninstall Starship?
Starship is just as easy to uninstall as it is to install in the first place.
- Remove any lines in your shell config (e.g.
~/.bashrc
) used to initialize Starship. - Delete the Starship binary.
If Starship was installed using a package manager, please refer to their docs for uninstallation instructions.
If Starship was installed using the curl | bash
script, the following command will delete the binary:
# Locate and delete the starship binary
rm "$(which starship)"