├── .editorconfig ├── .gitignore ├── README.md ├── demo ├── demo.gif └── screenshot.png ├── package.json └── purity.zsh-theme /.editorconfig: -------------------------------------------------------------------------------- 1 | root = true 2 | 3 | [*] 4 | indent_style = space 5 | indent_size = 2 6 | end_of_line = lf 7 | charset = utf-8 8 | trim_trailing_whitespace = true 9 | insert_final_newline = true 10 | 11 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # Logs 2 | logs 3 | *.log 4 | npm-debug.log* 5 | 6 | # Runtime data 7 | pids 8 | *.pid 9 | *.seed 10 | *.pid.lock 11 | 12 | # Directory for instrumented libs generated by jscoverage/JSCover 13 | lib-cov 14 | 15 | # Coverage directory used by tools like istanbul 16 | coverage 17 | 18 | # nyc test coverage 19 | .nyc_output 20 | 21 | # Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files) 22 | .grunt 23 | 24 | # node-waf configuration 25 | .lock-wscript 26 | 27 | # Compiled binary addons (http://nodejs.org/api/addons.html) 28 | build/Release 29 | 30 | # Dependency directories 31 | node_modules 32 | jspm_packages 33 | 34 | # Optional npm cache directory 35 | .npm 36 | 37 | # Optional eslint cache 38 | .eslintcache 39 | 40 | # Optional REPL history 41 | .node_repl_history 42 | 43 | # Output of 'npm pack' 44 | *.tgz 45 | 46 | # Yarn Integrity file 47 | .yarn-integrity 48 | 49 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Purity ZSH Theme 2 | 3 | ## Install 4 | - Automatic: `npm i -g purity-zsh-theme` 5 | - Manual: 6 | ```console 7 | git clone https://github.com/pmbenjamin/purity.git && cd purity 8 | mkdir -p $HOME/.oh-my-zsh/custom/themes/ 9 | cp purity.zsh-theme $HOME/.oh-my-zsh/custom/themes/ 10 | ``` 11 | 12 | ## Customize 13 | ```console 14 | # $HOME/.oh-my-zsh 15 | 16 | # ... 17 | 18 | ZSH_THEME="purity" # ENABLE THIS THEME 19 | 20 | # CUSTOMIZABLE THEME 21 | PURITY_PROMPT_SYMBOL=→ # DEFAULT IS ❯ 22 | PURITY_GIT_PROMPT_DIRTY=⚠ # DEFAULT IS ○ 23 | PURITY_GIT_PROMPT_CLEAN=✓ # DEFAULT IS ● 24 | 25 | # ... 26 | ``` 27 | ## Demo 28 | ![Demo](demo/demo.gif) 29 | ## Screenshot 30 | ![Purity](demo/screenshot.png) 31 | 32 | -------------------------------------------------------------------------------- /demo/demo.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pbnj/purity/b72af70a5495146db9003ee816797b88707065a9/demo/demo.gif -------------------------------------------------------------------------------- /demo/screenshot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pbnj/purity/b72af70a5495146db9003ee816797b88707065a9/demo/screenshot.png -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "purity-zsh-theme", 3 | "version": "1.1.1", 4 | "description": "Oh-My-ZSH theme inspired by robbyrussell + pure prompt", 5 | "main": "index.js", 6 | "scripts": { 7 | "postinstall": "mkdir -p $HOME/.oh-my-zsh/custom/themes/ && cp ./purity.zsh-theme $HOME/.oh-my-zsh/custom/themes/" 8 | }, 9 | "repository": { 10 | "type": "git", 11 | "url": "git+ssh://git@github.com/pmbenjamin/purity.git" 12 | }, 13 | "keywords": [ 14 | "purity", 15 | "prompt", 16 | "oh-my-zsh", 17 | "zsh" 18 | ], 19 | "author": "Peter Benjamin", 20 | "license": "MIT", 21 | "bugs": { 22 | "url": "https://github.com/pmbenjamin/purity/issues" 23 | }, 24 | "homepage": "https://github.com/pmbenjamin/purity#readme" 25 | } 26 | -------------------------------------------------------------------------------- /purity.zsh-theme: -------------------------------------------------------------------------------- 1 | local ret_status="%(?.%{$fg_bold[green]%}.%{$fg_bold[red]%})${PURITY_PROMPT_SYMBOL:-❯} " 2 | # PROMPT='${ret_status} %{$fg[cyan]%}%c%{$reset_color%} $(git_prompt_info)' 3 | PROMPT='%{$fg[cyan]%}%~%{$reset_color%} $(git_prompt_info) 4 | ${ret_status}%{$reset_color%}' 5 | 6 | ZSH_THEME_GIT_PROMPT_PREFIX="%{$fg_bold[blue]%}git:(%{$fg[red]%}" 7 | ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%} " 8 | ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg[blue]%}) %{$fg[yellow]%}${PURITY_GIT_PROMPT_DIRTY:-○} " 9 | ZSH_THEME_GIT_PROMPT_CLEAN="%{$fg[blue]%}) %{$fg[green]%}${PURITY_GIT_PROMPT_CLEAN:-●} " 10 | --------------------------------------------------------------------------------