611a754ec7
Fixes git repo path contractions in two situations: 1. When path obtained from `PWD` is a logical path but git libraries return physical paths. 2. When a git repository's subdirectory is symlinked to ouside of the repository tree. (1) is fixed by implementing a realpath()-like function, then reparsing the (possibly logical) `PWD` using realpath() to convert logical components into physical ones. The physical paths are then matched against each other. In the case of (2), the default behavior has been changed by simply contracting to the home directory, exactly the same as if we are not in a repo at all. Because determining the correct contraction is not obvious, we bail out and just pretend we are not in a repo at all. |
||
---|---|---|
.github | ||
docs | ||
install | ||
media | ||
src | ||
starship_module_config_derive | ||
tests | ||
.gitignore | ||
CODE_OF_CONDUCT.md | ||
CONTRIBUTING.md | ||
Cargo.lock | ||
Cargo.toml | ||
LICENSE | ||
README.md | ||
crowdin.yml | ||
snapcraft.yaml |
README.md
Website · Installation · Configuration
The minimal, blazing-fast, and infinitely customizable prompt for any shell!
- Fast: it's fast – really really fast! 🚀
- Customizable: configure every aspect of your prompt.
- Universal: works on any shell, on any operating system.
- Intelligent: shows relevant information at a glance.
- Feature rich: support for all your favorite tools.
- Easy: quick to install – start using it in minutes.
🚀 Installation
Prerequisites
- A Powerline font installed and enabled in your terminal (for example, try Fira Code).
Getting Started
-
Install the starship binary:
Install Latest Version
From prebuilt binary, with Shell:
curl -fsSL https://starship.rs/install.sh | bash
From source on crates.io:
cargo install starship
Install via Package Manager
With Homebrew:
brew install starship
With Scoop:
scoop install starship
-
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
~\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)
🤝 Contributing
We are always looking for contributors of all skill levels! If you're looking to ease your way into the project, try out a good first issue.
If you are interested in helping contribute to starship, please take a look at our Contributing Guide. Also, feel free to drop into our Discord server and say hi. 👋
Code Contributors
This project exists thanks to all the people who contribute. [Contribute].
Financial Contributors
Become a financial contributor and help us sustain our community. [Contribute]
Individuals
Organizations
Support this project with your organization. Your logo will show up here with a link to your website. [Contribute]
💭 Inspired By
Please check out these previous works that helped inspire the creation of starship. 🙏
-
denysdovhan/spaceship-prompt - A ZSH prompt for astronauts.
-
denysdovhan/robbyrussell-node - Cross-shell robbyrussell theme written in JavaScript.
-
reujab/silver - A cross-shell customizable powerline-like prompt with icons.
📝 License
Copyright © 2019-present, Starship Contributors.
This project is ISC licensed.