[go: up one dir, main page]

Skip to content

kahlil/pure

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

78 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Pure

Pretty, minimal and fast ZSH prompt

screenshot

Overview

Most prompts are cluttered, ugly and slow. I wanted something visually pleasing that stayed out of my way.

Why?

  • Comes with the perfect prompt character. Author went through the whole Unicode range to find it.
  • Shows git branch and whether it's dirty using the fastest method available.
  • Indicates when you have unpushed/unpulled git commits with up/down arrows.
  • Prompt character turns red if the last command didn't exit with 0.
  • Command execution time will be displayed if it exceeds the set threshold.
  • Username and host only displayed when in an SSH session.
  • Shows the current path in the title and the current directory and command when a process is running.
  • Makes an excellent starting point for your own custom prompt.

Install

Can be installed with npm or manually.

npm

$ npm install --global pure-prompt

That's it. Skip to Getting started.

Manually

  1. Either…
  • Clone this repo
  • add it as a submodule, or
  • just download pure.zsh
  1. Symlink pure.zsh to somewhere in $fpath with the name prompt_pure_setup.

Example

$ ln -s "$PWD/pure.zsh" /usr/local/share/zsh/site-functions/prompt_pure_setup

Run echo $fpath to see possible locations.

For a user-specific installation (which would not require escalated privileges), simply add a directory to $fpath for that user:

# .zshenv or .zshrc
fpath=( "$HOME/.zfunctions" $fpath )

Then install the theme there:

$ ln -s "$PWD/pure.zsh" "$HOME/.zfunctions/prompt_pure_setup"

Getting started

Initialize the prompt system (if not so already) and choose pure:

# .zshrc
autoload -U promptinit && promptinit
prompt pure

Options

PURE_CMD_MAX_EXEC_TIME

The max execution time of a process before its run time is shown when it exits. Defaults to 5 seconds.

PURE_GIT_PULL

Set PURE_GIT_PULL=0 to prevent Pure from checking whether the current Git remote has been updated.

Example

# .zshrc

autoload -U promptinit && promptinit

# optionally define some options
PURE_CMD_MAX_EXEC_TIME=10

prompt pure

Tips

Tomorrow Night Eighties theme with the Droid Sans Mono font (15pt) is a beautiful combination, as seen in the screenshot above. Just make sure you have anti-aliasing enabled in your Terminal.

To have commands colorized as seen in the screenshot install zsh-syntax-highlighting.

Integration

Symlink (or copy) pure.zsh to ~/.oh-my-zsh/custom/pure.zsh-theme and add ZSH_THEME="pure" to your .zshrc file.

Symlink (or copy) pure.zsh to ~/.zprezto/modules/prompt/functions/prompt_pure_setup alongside Prezto's other prompts. Then set zstyle ':prezto:module:prompt' theme 'pure' in ~/.zpreztorc.

Add antigen bundle sindresorhus/pure to your .zshrc file (do not use the antigen theme function).

License

MIT © Sindre Sorhus

About

Pretty, minimal and fast ZSH prompt

Resources

Stars

Watchers

Forks

Packages

No packages published