From 48804c048d265b9bd7a4a2fe8119754f31126699 Mon Sep 17 00:00:00 2001 From: Matan Kushner Date: Sun, 1 Dec 2019 18:47:19 -0500 Subject: [PATCH] docs: Add an FAQ page to website (#583) --- docs/.vuepress/config.js | 3 ++- docs/faq/README.md | 45 ++++++++++++++++++++++++++++++++++++++++ 2 files changed, 47 insertions(+), 1 deletion(-) create mode 100644 docs/faq/README.md diff --git a/docs/.vuepress/config.js b/docs/.vuepress/config.js index f182acc8b..bb15d1afb 100644 --- a/docs/.vuepress/config.js +++ b/docs/.vuepress/config.js @@ -55,7 +55,8 @@ module.exports = { "/", ["/guide/", "Guide"], ["/config/", "Configuration"], - ["/advanced-config/", "Advanced Configuration"] + ["/advanced-config/", "Advanced Configuration"], + ["/faq/", "Frequently Asked Questions"] ] }, "/ja-JP/": { diff --git a/docs/faq/README.md b/docs/faq/README.md new file mode 100644 index 000000000..6518842f5 --- /dev/null +++ b/docs/faq/README.md @@ -0,0 +1,45 @@ +## FAQ + +### What is the configuration used in the demo GIF? + +- **Terminal Emulator**: [iTerm2](https://iterm2.com/) + - **Theme**: Minimal + - **Color Scheme**: [Snazzy](https://github.com/sindresorhus/iterm2-snazzy) + - **Font**: [Fira Code](https://github.com/tonsky/FiraCode) +- **Shell**: [Fish Shell](https://fishshell.com/) + - **Configuration**: [matchai's Dotfiles](https://github.com/matchai/dotfiles/blob/master/.config/fish/config.fish) + - **Prompt**: [Starship](https://starship.rs/) + +### Do `prompt_order` `.disabled` do the same thing? + +Yes, they can both be used to disable modules in the prompt. If all you plan to do is disable modules, `.disabled` is the preferred way to do so for these reasons: + +- Disabling modules is more explicit than omitting them from the prompt_order +- Newly created modules will be added to the prompt as Starship is updated + +### The docs say Starship is cross-shell, but it doesn't support X shell. Why? + +The way Starship is built, it should be possible to add support for virtually any shell. The starship binary is stateless and shell agnostic, so as long as your shell supports prompt customization and shell expansion, Starship can be used. + +Here's a small example getting Starship working with bash: + +```sh +# Get the status code from the last command executed +STATUS=$? + +# Get the number of jobs running. +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](https://github.com/starship/starship/blob/master/src/init/starship.bash) built into Starship is slightly more complex to allow for advanced features like the [Command Duration module](https://starship.rs/config/#Command-Duration) and to ensure that Starship is compatible with pre-installed Bash configurations. + +For a list of all flags accepted by `starship prompt`, use the following command: + +```sh +starship prompt --version +``` + +The prompt will use as much context as is provided, but no flags are "required".