spaceship-prompt

🚀⭐ A Zsh prompt for Astronauts
授权协议 MIT License
开发语言 SHELL
所属分类 应用工具、 终端/远程登录
软件类型 开源软件
地区 不详
投 递 者 高博涉
操作系统 跨平台
开源组织
适用人群 未知
 软件概览

spaceship →~ prompt
�� Spaceship ZSH

Zsh prompt for Astronauts.

Built with ❤︎ by Denys Dovhan and contributors

Spaceship is a minimalistic, powerful and extremely customizable Zsh prompt. It combines everything you may need for convenient work, without unnecessary complications, like a real spaceship.

Spaceship with Hyper and One Dark

Visit 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 fnm/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).
  • Current Google Cloud Platform gcloud active configuration (☁️).
  • 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 (��).
  • Current IBM Cloud account (��).
  • 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).
  • Optional exit-code of last command (how to enable).
  • Optional time stamps 12/24hr in format (how to enable).
  • Execution time of the last command if it exceeds the set threshold.

Want more features? Please, open an issue 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 (v5.2 or recent) must be installed.
  • Powerline Font must be installed and used in your terminal (for example, switch font to Fira Code).

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:

Become a patron

Homebrew

brew install spaceship

You can also add the following to your Brewfile:

brew "spaceship"

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.Ensure that you have enabled post-scripts in npm by npm config set ignore-scripts false before starting installation.

�� Tip: Update Spaceship to new versions as you would any other package.

oh-my-zsh

Clone this repo:

git clone https://github.com/spaceship-prompt/spaceship-prompt.git "$ZSH_CUSTOM/themes/spaceship-prompt" --depth=1

Symlink spaceship.zsh-theme to your oh-my-zsh custom themes directory:

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 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 spaceship-prompt/spaceship-prompt --name spaceship to your .zimrc and run zimfw install.

antigen

Add the following snippet in your .zshrc:

antigen theme spaceship-prompt/spaceship-prompt

antibody

Update your .zshrc file with the following line:

antibody bundle spaceship-prompt/spaceship-prompt

zinit

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

zinit light spaceship-prompt/spaceship-prompt

zgen

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

zgen load spaceship-prompt/spaceship-prompt spaceship

zplug

Use this command in your .zshrc to load Spaceship as prompt theme:

zplug "spaceship-prompt/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:

git clone https://aur.archlinux.org/spaceship-prompt-git.git --depth=1
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/spaceship-prompt/spaceship-prompt.git --depth=1
  • Symlink spaceship.zsh to somewhere in $fpath as prompt_spaceship_setup.
  • Initialize prompt system and choose spaceship.

Example

Run echo $fpath to see possible location and link spaceship.zsh there, like:

$ 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:

fpath=( "${ZDOTDIR:-$HOME}/.zfunctions" $fpath )

Then install the theme like this:

$ ln -sf "$PWD/spaceship.zsh" "${ZDOTDIR:-$HOME}/.zfunctions/prompt_spaceship_setup"

For initializing prompt system add this to your .zshrc:

# .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 — Tweak section's behavior with tons of options.
  • API — Define a custom section that will do exactly what you want.

You have the ability to customize or disable specific elements of Spaceship. Set options and define new sections in your .zshrc file, after the theme. To include a custom section you have defined in your prompt, add it to the SPACESHIP_PROMPT_ORDER.

For example:

# .zshrc

# add Spaceship (differs by setup, see Installating above)

section_mysection() {
  # ...
}

SPACESHIP_PROMPT_ORDER=(<any preceding sections> mysection <any following sections>)

To append custom sections to the default Spaceship prompt, follow the form:

SPACESHIP_PROMPT_ORDER=($SPACESHIP_PROMPT_ORDER mysection)

To prepend custom sections to the default Spaceship prompt, follow the form:

SPACESHIP_PROMPT_ORDER=(mysection $SPACESHIP_PROMPT_ORDER)

�� Tip: Take a look at popular option presets or share your own configuration on Presets wiki page.

Troubleshooting

Having trouble? Take a look at out Troubleshooting page.

Still struggling? Please, file an issue, 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 - A port of Spaceship ZSH for fish shell intending to achieve complete feature parity.
  • starship/starship - A blazing-fast, cross-shell prompt written in Rust, heavily inspired by Spaceship ZSH.

Team

Denys Dovhan Salmanul Farzy Maxim Baz Runrioter Wung
Denys Dovhan Salmanul Farzy Maxim Baz Runrioter Wung

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 Bitcoin Ethereum
Become a patron 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

 相关资料
  • 描述 (Description) 提示模式允许用户对显示的内容采取某些操作。 它使用以下方法 - myApp.prompt(text, [title, callbackOk, callbackCancel]) OR myApp.prompt(text, [callbackOk, callbackCancel]) 以上方法接受下面列出的参数 - text - 显示带文本的提示模式。 title

  • �� Jekyll Spaceship �� Jekyll plugin for Astronauts. Install | Config | Usage | Credits | License Built with ❤︎ by jeffreytse and contributors Spaceship is a minimalistic, powerful and extremely custo

  • Spaceship Generator 一个 Blender 脚本,可根据程序从随机种子生成3D飞船。 使用说明 安装Blender 2.80或更高版本:http://blender.org/download/ 从 “release” 下载最新的 add_mesh_SpaceshipGenerator.zip 在“编辑”>“首选项...”>“附加组件”>“安装...”下,打开下载的 ZIP 文件

  • 此消息框提示用户输入。 它是单行用户输入。 语法 (Syntax) 以下是一个简单的语法。 Ext.Msg.prompt('Name', 'Please enter your name:', function(){}); 例子 (Example) 以下是一个显示用法的简单示例。 <!DOCTYPE html> <html> <head> <link href = "https:

  • HTTP Prompt 是一个交互式的命令行 HTTP 客户端,支持自动完成、语法高亮,基于 HTTPie 和 prompt_toolkit 构建.

  • TTY::Prompt A beautiful and powerful interactive command line prompt. TTY::Prompt provides independent prompt component for TTY toolkit. Features Number of prompt types for gathering user input A robu