pista

a simple {bash, zsh} prompt for programmers

pista.png

features

installation

check if you have the latest version.

pista works with rustc >= 1.34

$ rustc --version rustc 1.36.0 (a53f9df32 2019-07-03)

update rust if required

$ rustup update ```

$ cargo install pista

$ ~/.cargo/bin/pista -V Pista 0.1.2

yay!

- Step 1b (install from source): if you *do not* want install from crates.io, you can install from source: shell

install from source

$ git clone https://github.com/nerdypepper/pista --recurse-submodules $ cargo install --path ./pista --force

$ ~/.cargo/bin/pista -V Pista 0.1.2

yay!

```

pista handles prompt modifications when you enter virtual environments. make sure to disable virtualenv's changes. shell export VIRTUAL_ENV_DISABLE_PROMPT=1

thats it! read on if you aren't happy with the defaults.

configuration

this is the default configuration. drop this in your .bashrc (or .zshrc) to get started. remember to source ~/.bashrc (or source ~/.zshrc) to observe the changes!

```

prompt string to display, for regular users

export PROMPTCHAR="$" export PROMPTCHAR_COLOR="green"

prompt string to display, for the root user

export PROMPTCHARROOT="#" export PROMPTCHARROOT_COLOR="red"

if SHORTEN_CWD is set to 1, /home/nerdypepper/code is shortened to

/h/n/code

export SHORTENCWD=1 export CWDCOLOR="white"

if EXPAND_TILDE is set to 0, /home/nerdypepper is shortened to ~

export EXPAND_TILDE=0

there are three possible states for a git repo

- unstaged (working tree has been modified)

- staged (staging area has been modified)

- clean (all staged changes have committed)

symbol to represent clean repo state

export GITCLEAN="·" export GITCLEAN_COLOR="green"

symbol to represent unstaged repo state

export GITWTMODIFIED="×" export GITWTMODIFIED_COLOR="red"

symbol to represent staged repo state

export GITINDEXMODIFIED="±" export GITINDEXMODIFIED_COLOR="yellow"

if HEAD ref peels to branch

export BRANCH_COLOR="green"

if HEAD ref peels to a commit (detached state)

export COMMIT_COLOR="green" ```

all 16 colors are available: ``` black red green yellow blue magenta (or purple) cyan white

bright black bright red bright green bright yellow bright blue bright magenta (or purple) bright cyan bright white ```