# spaceship-prompt
**Repository Path**: dustinksi/spaceship-prompt
## Basic Information
- **Project Name**: spaceship-prompt
- **Description**: No description available
- **Primary Language**: Unknown
- **License**: MIT
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 1
- **Created**: 2021-01-20
- **Last Updated**: 2021-11-02
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
๐โญ Spaceship ZSH
Zsh
prompt for Astronauts.
Spaceship is a minimalistic, powerful and extremely customizable [Zsh][zsh-url] prompt. It combines everything you may need for convenient work, without unnecessary complications, like a real spaceship.
Vist Troubleshooting for similar setup and find more examples with different color schemes in Screenshots wiki-page.
## Features
- Clever hostname and username displaying.
- Prompt character turns red if the last command exits with non-zero code.
- Current Git branch and rich repo status:
- `?` โ untracked changes;
- `+` โ uncommitted changes in the index;
- `!` โ unstaged changes;
- `ยป` โ renamed files;
- `โ` โ deleted files;
- `$` โ stashed changes;
- `=` โ unmerged changes;
- `โก` โ ahead of remote branch;
- `โฃ` โ behind of remote branch;
- `โ` โ diverged changes.
- Current Mercurial bookmark/branch and rich repo status:
- `?` โ untracked changes;
- `+` โ uncommitted changes in the index;
- `!` โ unstaged changes;
- `โ` โ deleted files;
- Indicator for jobs in the background (`โฆ`).
- Current Node.js version, through nvm/nodenv/n (`โฌข`).
- Current Ruby version, through rvm/rbenv/chruby/asdf (`๐`).
- Current Elm version (`๐ณ`)
- Current Elixir version, through kiex/exenv/elixir (`๐ง`).
- Current Swift version, through swiftenv (`๐ฆ`).
- Current Xcode version, through xenv (`๐ `).
- Current Go version (`๐น`).
- Current PHP version (`๐`).
- Current Rust version (`๐ฅ`).
- Current version of Haskell GHC Compiler, defined in stack.yaml file (`ฮป`).
- Current Julia version (`เฎ`).
- Current Docker version and connected machine (`๐ณ`).
- Current Amazon Web Services (AWS) profile (`โ๏ธ`) ([Using named profiles](http://docs.aws.amazon.com/cli/latest/userguide/cli-multiple-profiles.html)).
- Current Python virtualenv.
- Current Conda virtualenv (`๐
`).
- Current Python pyenv (`๐`).
- Current .NET SDK version, through dotnet-cli (`.NET`).
- Current Ember.js version, through ember-cli (`๐น`).
- Current Kubectl context (`โธ๏ธ`).
- Current Terraform workspace (`๐ `).
- Package version, if there's is a package in current directory (`๐ฆ`).
- Current battery level and status:
- `โก` - charging;
- `โฃ` - discharging;
- `โข` - fully charged.
- Current Vi-mode mode ([with handy aliases for temporarily enabling](./docs/Options.md#vi-mode-vi_mode)).
- Optional exit-code of last command ([how to enable](./docs/Options.md#exit-code-exit_code)).
- Optional time stamps 12/24hr in format ([how to enable](./docs/Options.md#time-time)).
- Execution time of the last command if it exceeds the set threshold.
Want more features? Please, [open an issue](https://github.com/denysdovhan/spaceship-prompt/issues/new/choose) or send pull request.
**๐ก Tip:** Follow our Twitter to keep yourself updated about new features, improvements, and bugfixes.
## Requirements
To work correctly, you will first need:
- [`zsh`](http://www.zsh.org/) (v5.2 or recent) must be installed.
- [Powerline Font](https://github.com/powerline/fonts) must be installed and used in your terminal (for example, switch font to [Fira Code](https://github.com/tonsky/FiraCode)).
## Installing
Now that the requirements are satisfied, you can install Spaceship ZSH via any of the following tools.
**๐ก Tip:** If you like this project ~~and want to get some stickers and postcards~~, consider becoming a patron:
### [npm]
```
npm install -g spaceship-prompt
```
Done. This command should link `spaceship.zsh` as `prompt_spaceship_setup` to your `$fpath` and set `prompt spaceship` in `.zshrc`. Just reload your terminal.
**๐ก Tip:** Update Spaceship to new versions as you would any other package.
### [oh-my-zsh]
Clone this repo:
```zsh
git clone https://github.com/denysdovhan/spaceship-prompt.git "$ZSH_CUSTOM/themes/spaceship-prompt"
```
Symlink `spaceship.zsh-theme` to your oh-my-zsh custom themes directory:
```zsh
ln -s "$ZSH_CUSTOM/themes/spaceship-prompt/spaceship.zsh-theme" "$ZSH_CUSTOM/themes/spaceship.zsh-theme"
```
Set `ZSH_THEME="spaceship"` in your `.zshrc`.
### [prezto]
- Follow [prezto-contrib#usage](https://github.com/belak/prezto-contrib#usage) to clone `prezto-contrib` to the proper location.
- Enable the `contrib-prompt` module (before the `prompt` module).
- Set `zstyle ':prezto:module:prompt' theme 'spaceship'` in your `.zpreztorc`.
### [zim]
Add `zmodule denysdovhan/spaceship-prompt --name spaceship` to your `.zimrc` and run `zimfw install`.
### [antigen]
Add the following snippet in your `~/.zshrc`:
```
antigen theme denysdovhan/spaceship-prompt
```
### [antibody]
Update your `.zshrc` file with the following line:
```
antibody bundle denysdovhan/spaceship-prompt
```
### [zgen]
Add the following line to your `~/.zshrc` where you're adding your other Zsh plugins:
```
zgen load denysdovhan/spaceship-prompt spaceship
```
### [zplug]
Use this command in your `.zshrc` to load Spaceship as prompt theme:
```
zplug "denysdovhan/spaceship-prompt", use:spaceship.zsh, from:github, as:theme
```
### Linux package manager
#### Arch Linux
Install the latest master from the AUR package [`spaceship-prompt-git`](https://aur.archlinux.org/packages/spaceship-prompt-git/):
```
git clone https://aur.archlinux.org/spaceship-prompt-git.git
cd spaceship-prompt-git
makepkg -si
```
### Manual
If you have problems with approaches above, follow these instructions:
- Clone this repo `git clone https://github.com/denysdovhan/spaceship-prompt.git`
- Symlink `spaceship.zsh` to somewhere in [`$fpath`](http://www.refining-linux.org/archives/46/ZSH-Gem-12-Autoloading-functions/) as `prompt_spaceship_setup`.
- Initialize prompt system and choose `spaceship`.
#### Example
Run `echo $fpath` to see possible location and link `spaceship.zsh` there, like:
```zsh
$ ln -sf "$PWD/spaceship.zsh" "/usr/local/share/zsh/site-functions/prompt_spaceship_setup"
```
For a user-specific installation, simply add a directory to `$fpath` for that user in `.zshrc`:
```zsh
fpath=( "$HOME/.zfunctions" $fpath )
```
Then install the theme like this:
```zsh
$ ln -sf "$PWD/spaceship.zsh" "$HOME/.zfunctions/prompt_spaceship_setup"
```
For initializing prompt system add this to your `.zshrc`:
```zsh
# .zshrc
autoload -U promptinit; promptinit
prompt spaceship
```
## Customization
Spaceship works well out of the box, but you can customize almost everything if you want.
- [**Options**](./docs/Options.md) โ Tweak section's behavior with tons of options.
- [**API**](./docs/API.md) โ Define a custom section that will do exactly what you want.
You have ability to customize or disable specific elements of Spaceship. All options must be overridden in your `.zshrc` file **after** the theme.
**๐ก Tip:** Take a look at popular option presets or share your own configuration on [Presets](https://github.com/denysdovhan/spaceship-prompt/wiki/Presets) wiki page.
## Troubleshooting
Having trouble? Take a look at out [Troubleshooting](./docs/Troubleshooting.md) page.
Still struggling? Please, [file an issue](https://github.com/denysdovhan/spaceship-prompt/issues/new/choose), describe your problem and we will gladly help you.
## Related Projects
Here's a list of related projects that have been inspired by Spaceship ZSH.
- [**matchai/spacefish**](https://github.com/matchai/spacefish) - A port of Spaceship ZSH for fish shell intending to achieve complete feature parity.
- [**starship/starship**](https://github.com/starship/starship) - A blazing-fast, cross-shell prompt written in Rust, heavily inspired by Spaceship ZSH.
## Team
| [](http://denysdovhan.com) | [](https://github.com/salmanulfarzy) | [](https://github.com/maximbaz) | [](https://github.com/Runrioter) |
| :------------------------------------------------------------------------------------: | :--------------------------------------------------------------------------------------------------: | :-----------------------------------------------------------------------------------: | :-----------------------------------------------------------------------------------: |
| [Denys Dovhan](https://github.com/denysdovhan) | [Salmanul Farzy](https://github.com/salmanulfarzy) | [Maxim Baz](https://github.com/maximbaz) | [Runrioter Wung](https://github.com/Runrioter) |
## Donate
Hi! I work on this project in my spare time, in addition to my primary job. I hope you enjoy using Spaceship ZSH. If you do, please, [become my patron ๐ค][patreon-url].
| Patreon | Bitcoin | Ethereum |
| :--------------------------------------------------------------------------------------------------------------------------------------------: | :----------------------------------------------------------------------------------------------------------------------------: | :----------------------------------------------------------------------------------------------------------------------------: |
| [Become a patron][patreon-url] | `1FrPrQb6ACTkbSBAz9PduJWrDFfq41Ggb4` | `0x6aF39C917359897ae6969Ad682C14110afe1a0a1` |
|
|
|
|
This is your way make a clear statement: **My work is valued.**
I would appreciate your support! _Thank you!_
## License
MIT ยฉ [Denys Dovhan](http://denysdovhan.com)
[npm-url]: https://npmjs.org/package/spaceship-prompt
[npm-image]: https://img.shields.io/npm/v/spaceship-prompt.svg?style=flat-square
[ci-url]: https://travis-ci.org/denysdovhan/spaceship-prompt
[ci-image]: https://img.shields.io/travis/denysdovhan/spaceship-prompt.svg?style=flat-square
[zsh-url]: http://zsh.org/
[zsh-image]: https://img.shields.io/badge/zsh-%3E%3Dv5.2-777777.svg?style=flat-square
[patreon-url]: https://www.patreon.com/denysdovhan
[patreon-image]: https://img.shields.io/badge/zsh-%3E%3Dv5.2-777777.svg?style=flat-square
[oh-my-zsh]: http://ohmyz.sh/
[prezto]: https://github.com/sorin-ionescu/prezto
[zim]: https://github.com/zimfw/zimfw
[antigen]: http://antigen.sharats.me/
[zgen]: https://github.com/tarjoilija/zgen
[npm]: https://www.npmjs.com/
[antibody]: https://github.com/getantibody/antibody
[zplug]: https://github.com/zplug/zplug
[n]: https://github.com/tj/n
[xcenv]: http://xcenv.org/
[swiftenv]: https://github.com/kylef/swiftenv
[powerline]: https://github.com/powerline/fonts