PoissonBallon / spaceship-zsh-theme

:star: :rocket: An “Oh My ZSH!” theme for Astronauts.

Home Page:https://git.io/spaceship

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Spaceship

⭐🚀 Spaceship ZSH

An “Oh My ZSH!” theme for Astronauts.

Spaceship is an “Oh My ZSH!” minimalistic and powerful theme. It combines everything you may need for convenient work, without unnecessary complications, like a real spaceship.

Currently it shows:

  • Current git branch.
  • Git repo status:
    • + — uncommitted changes in the index;
    • ! — unstaged changes;
    • ? — untracked changes;
    • $ — stashed changes;
    • — unpulled commits;
    • — unpushed commits.
  • Prompt character turns red if the last command exits with non-zero code.
  • Hostname only displayed when in an SSH session.
  • Username displayed only when it isn't $LOGNAME.
  • Username turns red when root.
  • Current Node.js version, through NVM ().
  • Current Ruby version, through RVM/RBENV/CHRUBY (💎).
  • Current Swift version, through swiftenv (🐦).
  • Current Xcode version, through xcode-select (🛠).
  • Current Python virtualenv.
  • Current Vi-mode mode.

Want more features? Please, open an issue or send pull request.

Requirements

For correct work you will first need:

Installing

For oh-my-zsh users

Installing using curl:

curl -o - https://raw.githubusercontent.com/denysdovhan/spaceship-zsh-theme/master/install.sh | zsh

Installing using wget:

wget -O - https://raw.githubusercontent.com/denysdovhan/spaceship-zsh-theme/master/install.sh | zsh

If you have problems, follow these instructions:

  1. Download the theme here
  2. Rename spaceship.zsh to spaceship.zsh-theme
  3. Put the file spaceship.zsh-theme in $ZSH_CUSTOM/themes/
  4. Add the line to your ~/.zshrc: ZSH_THEME="spaceship"

For antigen users

Add the following snippet ~/.zshrc after the line antigen use oh-my-zsh:

antigen theme https://github.com/denysdovhan/spaceship-zsh-theme spaceship

For Zgen users

Add the following line to your ~/.zshrc where you're adding your other zsh plugins:

zgen load denysdovhan/spaceship-zsh-theme spaceship

Screenshots

The spaceship theme looks awesome with some popular color schemes. Take a look to make sure:

Monokai

Monokai

Solarized Dark

Solarized

Night Eighties

Night Eighties

One Dark

One Dark

Options

Now you have ability to disable elements of Spaceship. All options must be overridden in your .zshrc file.

Prompt

Variable Default Meaning
SPACESHIP_PROMPT_SYMBOL Character to be shown before any command
SPACESHIP_PROMPT_SEPARATE_LINE true Make the prompt span across two lines
SPACESHIP_PROMPT_ADD_NEWLINE true Adds a newline character before each prompt line
SPACESHIP_PROMPT_TRUNC 3 Number of folders of cwd to show in prompt, 0 to show all

Prefixes

Variable Default Meaning
SPACESHIP_PREFIX_SHOW true Show Prefix Characters
SPACESHIP_PREFIX_HOST at Characters to be shown before the connected SSH machine name
SPACESHIP_PREFIX_DIR in Characters to be shown before the current SSH Directory
SPACESHIP_PREFIX_GIT on Character to be shown before git status
SPACESHIP_PREFIX_ENV_DEFAULT via Default environment prefix
SPACESHIP_PREFIX_NVM SPACESHIP_PREFIX_ENV_DEFAULT Prefix before the NVM environment
SPACESHIP_PREFIX_RUBY SPACESHIP_PREFIX_ENV_DEFAULT Prefix before the Ruby environment
SPACESHIP_PREFIX_XCODE SPACESHIP_PREFIX_ENV_DEFAULT Prefix before the XCode environment
SPACESHIP_PREFIX_SWIFT SPACESHIP_PREFIX_ENV_DEFAULT Prefix before the Swift environment
SPACESHIP_PREFIX_VENV SPACESHIP_PREFIX_ENV_DEFAULT Prefix before the Python virtualenv Environment

Git

Variable Default Meaning
SPACESHIP_GIT_SHOW true Show/hide git status
SPACESHIP_GIT_UNCOMMITTED + Character to be shown on uncommitted changes
SPACESHIP_GIT_UNSTAGED ! Character to be shown on unstaged changes
SPACESHIP_GIT_UNTRACKED ? Character to be shown on untracked changes
SPACESHIP_GIT_STASHED $ Character to be shown on stashed changes
SPACESHIP_GIT_UNPULLED Character to be shown on unpulled changes
SPACESHIP_GIT_UNPUSHED Character to be shown on unpushed changes

Nvm

Variable Default Meaning
SPACESHIP_NVM_SHOW true Current Node.js version
SPACESHIP_NVM_SYMBOL Character to be shown before Node.js version

Ruby

Variable Default Meaning
SPACESHIP_RUBY_SHOW true Current Ruby version
SPACESHIP_RUBY_SYMBOL 💎 Character to be shown before Ruby version

Swift

Variable Default Meaning
SPACESHIP_SWIFT_SHOW_LOCAL true Current local Swift version based on swiftenv
SPACESHIP_SWIFT_SHOW_GLOBAL false Global Swift version based on swiftenv
SPACESHIP_XCODE_SYMBOL 🐦 Character to be shown before Swift version

Xcode

Variable Default Meaning
SPACESHIP_XCODE_SHOW_LOCAL true Current local Xcode version based on xcenv
SPACESHIP_XCODE_SHOW_GLOBAL true Global Xcode version based on xcenv
SPACESHIP_SWIFT_SYMBOL 🛠 Character to be shown before Xcode version

Venv

Variable Default Meaning
SPACESHIP_VENV_SHOW true Current Python virtualenv

Vi-mode

Variable Default Meaning
SPACESHIP_VI_MODE_SHOW true Current Vi-mode
SPACESHIP_VI_MODE_INSERT [I] Text to be shown when in insert mode
SPACESHIP_VI_MODE_NORMAL [N] Text to be shown when in normal mode

Note: For oh-my-zsh users with vi-mode plugin enabled: Add export RPS1="%{$reset_color%}" before source $ZSH/oh-my-zsh.sh in ~/.zshrc to disable default <<< NORMAL mode indicator in right prompt.

Example

Here is all options which may be changed. Copy this to your ~/.zshrc to make it easy to change.

Warning!: These overridden variables should be placed after the theme in your .zshrc file.

# PROMPT
SPACESHIP_PROMPT_SYMBOL=''
SPACESHIP_PROMPT_ADD_NEWLINE=true
SPACESHIP_PROMPT_SEPARATE_LINE=true
SPACESHIP_PROMPT_TRUNC=3

# PREFIXES
SPACESHIP_PREFIX_SHOW=true
SPACESHIP_PREFIX_HOST=' at '
SPACESHIP_PREFIX_DIR=' in '
SPACESHIP_PREFIX_GIT=' on '
SPACESHIP_PREFIX_ENV_DEFAULT=' via '
SPACESHIP_PREFIX_NVM=$SPACESHIP_PREFIX_ENV_DEFAULT
SPACESHIP_PREFIX_RUBY=$SPACESHIP_PREFIX_ENV_DEFAULT
SPACESHIP_PREFIX_XCODE=$SPACESHIP_PREFIX_ENV_DEFAULT
SPACESHIP_PREFIX_SWIFT=$SPACESHIP_PREFIX_ENV_DEFAULT
SPACESHIP_PREFIX_VENV=$SPACESHIP_PREFIX_ENV_DEFAULT

# GIT
SPACESHIP_GIT_SHOW=true
SPACESHIP_GIT_UNCOMMITTED='+'
SPACESHIP_GIT_UNSTAGED='!'
SPACESHIP_GIT_UNTRACKED='?'
SPACESHIP_GIT_STASHED='$'
SPACESHIP_GIT_UNPULLED=''
SPACESHIP_GIT_UNPUSHED=''

# NVM
SPACESHIP_NVM_SHOW=true
SPACESHIP_NVM_SYMBOL=''

# RUBY
SPACESHIP_RUBY_SHOW=true
SPACESHIP_RUBY_SYMBOL='💎'

# VENV
SPACESHIP_VENV_SHOW=true

# VI_MODE
SPACESHIP_VI_MODE_SHOW=true
SPACESHIP_VI_MODE_INSERT="[I]"
SPACESHIP_VI_MODE_NORMAL="[N]"

License

MIT © Denys Dovhan

About

:star: :rocket: An “Oh My ZSH!” theme for Astronauts.

https://git.io/spaceship


Languages

Language:Shell 100.0%