starship/docs/README.md
Jeremy Schlatter b1dcd5aecd
feat: add support for xonsh (#2807)
* feat: add support for xonsh

* xonsh: add STARSHIP_SESSION_KEY

* xonsh: implement STARSHIP_SESSION_KEY in xonsh

* docs: mention tcsh, elvish, and nu in more places

* xonsh: change STARSHIP_SESSION_KEY implementation

See https://github.com/starship/starship/pull/2807#discussion_r667064149

* xonsh: fix jobs implementation

* xonsh: do not silently discard stderr from starship
2021-07-16 15:25:01 -04:00

3.7 KiB

home heroImage heroText tagline actionText actionLink features footer metaTitle description
true /logo.svg null The minimal, blazing-fast, and infinitely customizable prompt for any shell! Get Started → ./guide/
title details
Compatibility First Works on the most common shells on the most common operating systems. Use it everywhere!
title details
Rust-Powered Brings the best-in-class speed and safety of Rust, to make your prompt as quick and reliable as possible.
title details
Customizable Every little detail is customizable to your liking, to make this prompt as minimal or feature-rich as you'd like it to be.
ISC Licensed | Copyright © 2019-present Starship Contributors Starship: Cross-Shell Prompt Starship is the minimal, blazing fast, and extremely customizable prompt for any shell! Shows the information you need, while staying sleek and minimal. Quick installation available for Bash, Fish, ZSH, Ion, Tcsh, Elvish, Nu, Xonsh, and PowerShell.

Prerequisites

  • A Nerd Font installed and enabled in your terminal.

Quick Install

  1. Install the starship binary:

    Install Latest Version

    With Shell:

    sh -c "$(curl -fsSL https://starship.rs/install.sh)"
    

    To update the Starship itself, rerun the above script. It will replace the current version without touching Starship's configuration.

    Install via Package Manager

    With Homebrew:

    brew install starship
    

    With Scoop:

    scoop install starship
    
  2. Add the init script to your shell's config file:

    Bash

    Add the following to the end of ~/.bashrc:

    # ~/.bashrc
    
    eval "$(starship init bash)"
    

    Fish

    Add the following to the end of ~/.config/fish/config.fish:

    # ~/.config/fish/config.fish
    
    starship init fish | source
    

    Zsh

    Add the following to the end of ~/.zshrc:

    # ~/.zshrc
    
    eval "$(starship init zsh)"
    

    Powershell

    Add the following to the end of Microsoft.PowerShell_profile.ps1. You can check the location of this file by querying the $PROFILE variable in PowerShell. Typically the path is ~\Documents\PowerShell\Microsoft.PowerShell_profile.ps1 or ~/.config/powershell/Microsoft.PowerShell_profile.ps1 on -Nix.

    Invoke-Expression (&starship init powershell)
    

    Ion

    Add the following to the end of ~/.config/ion/initrc:

    # ~/.config/ion/initrc
    
    eval $(starship init ion)
    

    Elvish

    ::: warning Only elvish v0.15 or higher is supported. :::

    Add the following to the end of ~/.elvish/rc.elv:

    # ~/.elvish/rc.elv
    
    eval (starship init elvish)
    

    Tcsh

    Add the following to the end of ~/.tcshrc:

    # ~/.tcshrc
    
    eval `starship init tcsh`
    

    Nushell

    ::: warning This will change in the future. Only nu version v0.33 or higher is supported. ::: Add the following to your nu config file. You can check the location of this file by running config path in nu.

    startup = [
     "mkdir ~/.cache/starship",
     "starship init nu | save ~/.cache/starship/init.nu",
     "source ~/.cache/starship/init.nu"
    ]
    prompt = "starship_prompt"
    

    Xonsh

    Add the following to the end of ~/.xonshrc:

    # ~/.xonshrc
    
    execx($(starship init xonsh))