close #115: Allow to specify custom prompt order

This commit is contained in:
Dawid Kurek
2016-03-21 21:55:04 +01:00
parent e661bf158d
commit 50f1836ba1
3 changed files with 58 additions and 13 deletions

View File

@@ -97,6 +97,23 @@ zgen load caiogondim/bullet-train-oh-my-zsh-theme bullet-train
Bullet Train is configurable. You can change colors and which segments you want Bullet Train is configurable. You can change colors and which segments you want
or don't want to see. All options must be overridden in your **.zshrc** file. or don't want to see. All options must be overridden in your **.zshrc** file.
### Order
`BULLETTRAIN_PROMPT_ORDER` defines order of prompt segments. Use zsh array
syntax to specify your own order, e.g:
```bash
BULLETTRAIN_PROMPT_ORDER=(
git
context
dir
time
)
```
NOTE: You do not need to specify *end* segment - it will be added automatically.
With this you can also specify custom segments, please see [Tips](#tips) for
more details.
### Prompt ### Prompt
|Variable|Default|Meaning |Variable|Default|Meaning
@@ -242,6 +259,24 @@ or don't want to see. All options must be overridden in your **.zshrc** file.
## Tips ## Tips
### BULLETTRAIN_PROMPT_ORDER
This gives ability to customize order and put user-defined segment on prompt.
```bash
prompt_say_hello() {
prompt_segment yellow blue "hello"
}
BULLETTRAIN_PROMPT_ORDER=(
git
dir
say_hello
)
```
![Prompt_Order](./img/tips/prompt_order.png)
### BULLETTRAIN_GIT_PROMPT_CMD ### BULLETTRAIN_GIT_PROMPT_CMD
Allows you to specify custom git prompt command. This makes it possible to Allows you to specify custom git prompt command. This makes it possible to

View File

@@ -15,6 +15,25 @@
VIRTUAL_ENV_DISABLE_PROMPT=true VIRTUAL_ENV_DISABLE_PROMPT=true
# Define order and content of prompt
if [ ! -n "${BULLETTRAIN_PROMPT_ORDER+1}" ]; then
BULLETTRAIN_PROMPT_ORDER=(
time
status
custom
context
dir
perl
ruby
virtualenv
nvm
go
git
hg
cmd_exec_time
)
fi
# PROMPT # PROMPT
if [ ! -n "${BULLETTRAIN_PROMPT_CHAR+1}" ]; then if [ ! -n "${BULLETTRAIN_PROMPT_CHAR+1}" ]; then
BULLETTRAIN_PROMPT_CHAR="\$" BULLETTRAIN_PROMPT_CHAR="\$"
@@ -592,19 +611,10 @@ prompt_line_sep() {
build_prompt() { build_prompt() {
RETVAL=$? RETVAL=$?
prompt_time for segment in $BULLETTRAIN_PROMPT_ORDER
prompt_status do
prompt_custom prompt_$segment
prompt_context done
prompt_dir
prompt_perl
prompt_ruby
prompt_virtualenv
prompt_nvm
prompt_go
prompt_git
prompt_hg
prompt_cmd_exec_time
prompt_end prompt_end
} }

BIN
img/tips/prompt_order.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.4 KiB