Made progress bars more customizable

This commit is contained in:
Dylan 2016-04-24 18:30:57 +10:00
parent db1f3851a7
commit 550185fa7e
3 changed files with 61 additions and 7 deletions

33
1.7.md
View file

@ -72,6 +72,7 @@ underline_enabled="on"
- Added KDE neon ascii art.
### Colors
- Fixed bug with `--colors` not working with all 256 terminal colors.
@ -82,3 +83,35 @@ underline_enabled="on"
would be white or black. This caused issues for those setting the foreground<br \>
color to red or etc. This change adds a new value for `--colors` and `colors=()`<br \>
called `fg` which will set the color to your foreground color.
### Progress Bars
- You can now enable/disable a border around the progress bars.
```sh
# $progress_border on
[=====-----]
# $progress_border off
=====-----
```
- You can now individually set the progress bar characters. This means that you can<br \>
have a seperate character for the elapsed and total portions of the bar.
```sh
# Examples with $progress_border on
# Elapsed: =
# Total: -
[=====-----]
# Elapsed: .
# Total: " "
[..... ]
# Elapsed: /
# Total: " "
[///// ]
```

View file

@ -250,8 +250,13 @@ prompt_height=1
# Progress bar character
# --progress_char char
progress_char="━"
# --progress_char elapsed_char total_char
progress_char_elapsed="-"
progress_char_total="="
# Progress vorder
# --progress_border on/off
progress_border="on"
# Progress bar length in spaces
# Number of chars long to make the progress bars.

View file

@ -275,8 +275,13 @@ prompt_height=1
# Progress bar character
# --progress_char char
progress_char="━"
# --progress_char elapsed_char total_char
progress_char_elapsed="="
progress_char_total="-"
# Progress vorder
# --progress_border on/off
progress_border="on"
# Progress bar length in spaces
# Number of chars long to make the progress bars.
@ -2547,8 +2552,15 @@ bar() {
total=$(printf %"$((progress_length - elapsed))"s)
# Set the colors and swap the spaces for $progress_char
bar="${progress_color_elapsed}${prog// /$progress_char}"
bar+="${progress_color_total}${total// /$progress_char}"
bar+="${progress_color_elapsed}${prog// /$progress_char_elapsed}"
bar+="${progress_color_total}${total// /$progress_char_total}"
# Borders
if [ "$progress_border" == "on" ]; then
bar+="$(color fg)]"
bar="$(color fg)[$bar"
fi
printf "%b%s\n" "${bar}${clear}"
}
@ -2779,7 +2791,11 @@ while [ "$1" ]; do
--block_width) block_width="$2" ;;
# Progress Bars
--progress_char) progress_char="$2" ;;
--progress_char)
progress_char_elapsed="$2"
progress_char_total="$3"
;;
--progress_border) progress_border="$2" ;;
--progress_length) progress_length="$2" ;;
--progress_colors)
progress_color_elapsed="$2"