Add code conventions to contributing guide and update code to conform

This commit is contained in:
Ilan Cosman 2020-07-19 13:35:19 -07:00
parent 14c9db7ca3
commit 8c4dd87322
37 changed files with 360 additions and 334 deletions

View File

@ -4,7 +4,7 @@
## Testing
The `tide test` command runs tests from the `$_tide_dir/tests` folder using [fishtape][]. Currently there are unit tests for most prompt items. You can quickly install fisher and fishtape using `tide test -i`
The `tide test` command runs tests from the `$_tide_dir/tests` folder using [fishtape][]. You can quickly install fisher and fishtape using `tide test -i`
Example:
@ -18,10 +18,36 @@ You can run all tests with the `-a` flag.
tide test -a
```
## Git Workflow
## Code Conventions
1. Fork this repository
2. Make some changes, committing them along the way
3. Create a pull request from your branch to `IlanCosman/tide`
### Style Guide
- `if` > `and` or `or`
- Long forms of flags > short forms
- Exception for `set`, please use short forms
- `test` > `[...]`
Prefer pipes over command substitution when convenient.
Ex:
### Naming Conventions
Local variables should be named in `camelCase`.
- `set -l numberOfNewlines`
Anything exposed to the shell or user--functions, global/universal variables, and files--should be named in `snake_case`, beginning with `tide_`. Prepend an underscore if user interaction is discouraged.
- `set -g _tide_left_prompt_height`
- `set -U tide_right_prompt_items`
- `_tide_count_left_prompt_height.fish`
- `_tide_right_prompt`
- `tide_install`
#### Specific Naming Conventions
- Items begin with `_tide_item_`
- Subcommands begin with `_tide_sub_`
[fishtape]: https://github.com/jorgebucaran/fishtape

View File

@ -1,8 +1,8 @@
function _tide_item_cmd_duration
if test $CMD_DURATION -gt $tide_cmd_duration_threshold
set -l seconds (math --scale=$tide_cmd_duration_decimals "$CMD_DURATION/1000" % 60)
set -l minutes (math -s0 "$CMD_DURATION/60000" % 60)
set -l hours (math -s0 "$CMD_DURATION/3600000" % 60)
set -l minutes (math --scale=0 "$CMD_DURATION/60000" % 60)
set -l hours (math --scale=0 "$CMD_DURATION/3600000" % 60)
if test $seconds -eq 0
set -e seconds

View File

@ -5,7 +5,7 @@ function _tide_left_prompt
for item in $tide_left_prompt_items
if test "$item" = 'newline'
_print_frame
_tide_print_frame
if not set -q lastItemWasNewline && not set -q lastItemWasPromptChar
set_color $previousColor -b normal
@ -23,7 +23,7 @@ function _tide_left_prompt
set -l output (_tide_item_$item)
if test -n "$output"
_print_frame
_tide_print_frame
set -l colorName tide_"$item"_bg_color
set -l color $$colorName
@ -70,7 +70,7 @@ function _tide_left_prompt
end
end
function _print_frame --no-scope-shadowing
function _tide_print_frame --no-scope-shadowing
if set -q lastItemWasNewline && test "$tide_left_prompt_frame_enabled" = 'true'
set_color $tide_left_prompt_frame_color -b normal

View File

@ -1,5 +1,5 @@
function _tide_right_prompt
set -l splitText (_fetch_right_prompt_items | string split '@NEWLINE@')
set -l splitText (_tide_fetch_right_prompt_items | string split '@NEWLINE@')
set -l printAtEndedRightPromptHeight (count $splitText)
if test "$tide_right_prompt_frame_enabled" = 'true'
@ -31,21 +31,21 @@ function _tide_right_prompt
end
for lineOfText in $splitText[1..-2]
_print_at_end $lineOfText
_tide_print_at_end $lineOfText
end
if test $printAtEndedRightPromptHeight -eq $_tide_left_prompt_height
set -g _tide_fish_right_prompt_display $splitText[-1]
set printAtEndedRightPromptHeight (math $printAtEndedRightPromptHeight-1)
else
_print_at_end $splitText[-1]
_tide_print_at_end $splitText[-1]
set -g _tide_fish_right_prompt_display ' '
end
_tide_cursor_up $printAtEndedRightPromptHeight
end
function _fetch_right_prompt_items
function _tide_fetch_right_prompt_items
set lastItemWasNewline # Display prefix instead of separator before first item
set color normal
@ -106,7 +106,7 @@ function fish_right_prompt
printf '%s' $_tide_fish_right_prompt_display
end
function _print_at_end -a text
function _tide_print_at_end -a text
set -l startLocation (math $COLUMNS -(_tide_decolor $text | string length))
_tide_cursor_right $startLocation

View File

@ -17,10 +17,10 @@ function _tide_sub_configure
source "$promptItem"
end
_begin
_tide_begin
end
function _begin
function _tide_begin
_next_choice 'all/style'
end
@ -30,24 +30,24 @@ function _next_choice -a nextChoice
$cmd
end
function _menu
function _tide_menu
set -l bold (set_color -o)
set -l norm (set_color normal)
set -l listWithSlashes (string join '/' $_option_list)
set -l listWithSlashes (string join '/' $_tide_option_list)
while true
read -P $bold"Choice [$listWithSlashes] "$norm input
if contains $input $_option_list
if contains $input $_tide_option_list
printf '%s\n' $input
set -e _option_list
set -e _tide_option_list
break
end
end
end
function _title -a text
function _tide_title -a text
clear
set -l midCols (math -s0 $fake_columns/2)
set -l midTitle (math -s0 (string length $text)/2)
@ -58,15 +58,15 @@ function _title -a text
set_color normal
end
function _option -a symbol text
set -ga _option_list $symbol
function _tide_option -a symbol text
set -ga _tide_option_list $symbol
set_color -o
printf '%s\n' "($symbol) $text"
set_color normal
end
function _display_prompt -a var_name var_value
function _tide_display_prompt -a var_name var_value
if test -n "$var_name"
set -g $var_name $var_value
end
@ -74,15 +74,15 @@ function _display_prompt -a var_name var_value
printf '\n\n'
end
function _display_restart_and_quit
function _tide_display_restart_and_tide_quit
printf '%s\n' '(r) Restart from the beginning'
printf '%s\n' '(q) Quit and do nothing'
printf '%s\n' ''
set -ga _option_list r q
set -ga _tide_option_list r q
end
function _quit --on-signal INT
function _tide_quit --on-signal INT
clear
source "$__fish_config_dir/functions/fish_prompt.fish"
source "$__fish_config_dir/functions/_tide_left_prompt.fish"

View File

@ -18,7 +18,7 @@ function _tide_sub_help -a subcommand
if functions -q _help_$subcommand
_help_$subcommand
else
_generic_help_sub $subcommand
_tide_generic_help_sub $subcommand
end
return 0
end
@ -31,7 +31,7 @@ function _tide_sub_help -a subcommand
printf '%s' ' '$b$sub$n
printf '%b' '\r'
_tide_cursor_right 14
_getDescription $sub
_tide_get_description $sub
end
printf '%s\n'
printf '%s\n' 'Print help for a specific subcommand:'
@ -44,13 +44,13 @@ function _tide_sub_help -a subcommand
end
end
function _getDescription -a subcommand
function _tide_get_description -a subcommand
set -l descriptionIndex (contains -i $subcommand $subcommandList)
printf '%s\n' $descriptionList[$descriptionIndex]
end
function _generic_help_sub -a subcommand
set -l description (_getDescription $subcommand)
function _tide_generic_help_sub -a subcommand
set -l description (_tide_get_description $subcommand)
set -l descriptionFirstLetter (string sub -l 1 $description)
set -l upperDescriptionFirstLetter (string upper $descriptionFirstLetter)

View File

@ -2,7 +2,7 @@ function _tide_sub_test
argparse 'h/help' 'v/verbose' 'a/all' 'i/install' -- $argv
if set -q _flag_help
_help
_tide_test_help
return
end
@ -69,7 +69,7 @@ function _tide_sub_test
return $returnStatement
end
function _help
function _tide_test_help
set -l b (set_color -o)
set -l n (set_color normal)
set -l g (set_color $_tide_color_green)

View File

@ -1,5 +1,5 @@
function _tide_sub_uninstall
if not _user_confirm_defaultNo 'Uninstall tide theme?'
if not _tide_user_confirm_defaultNo 'Uninstall tide theme?'
printf '%s\n' 'Aborted uninstall.'
return 1
end
@ -35,7 +35,7 @@ function _tide_sub_uninstall
printf '%s\n' 'Tide theme uninstalled.'
end
function _user_confirm_defaultNo -a question
function _tide_user_confirm_defaultNo -a question
while true
read -P "$question [y/N] " input

View File

@ -1,15 +1,15 @@
function finish
set_color red
_title 'Overwrite tide config and fish_prompt?'
_tide_title 'Overwrite tide config and fish_prompt?'
set_color normal
_option y 'Yes'
_tide_option y 'Yes'
printf '%b' '\n\n'
_option n 'No'
_tide_option n 'No'
printf '%b' '\n\n'
switch (_menu)
switch (_tide_menu)
case y
if not contains 'prompt_char' $fake_tide_left_prompt_items # Without a prompt_char, the user won't know if a command failed/succeeded
set fake_tide_status_always_display_icon true # Therefore, set the status to always display
@ -26,5 +26,5 @@ function finish
source "$__fish_config_dir/conf.d/_tide_Ω_init.fish" # Reload important startup variables
end
_quit
_tide_quit
end

View File

@ -17,27 +17,27 @@ function prompt_connection_andor_frame_color
return 0
end
_title $title
_tide_title $title
_option 1 'Lightest'
_tide_option 1 'Lightest'
_set_prompt_connection_and_frame_color 808080
_display_prompt
_tide_display_prompt
_option 2 'Light'
_tide_option 2 'Light'
_set_prompt_connection_and_frame_color 6C6C6C
_display_prompt
_tide_display_prompt
_option 3 'Dark'
_tide_option 3 'Dark'
_set_prompt_connection_and_frame_color 585858
_display_prompt
_tide_display_prompt
_option 4 'Darkest'
_tide_option 4 'Darkest'
_set_prompt_connection_and_frame_color 444444
_display_prompt
_tide_display_prompt
_display_restart_and_quit
_tide_display_restart_and_tide_quit
switch (_menu)
switch (_tide_menu)
case 1
_set_prompt_connection_and_frame_color 808080
_next_choice 'all/prompt_spacing'
@ -51,9 +51,9 @@ function prompt_connection_andor_frame_color
_set_prompt_connection_and_frame_color 444444
_next_choice 'all/prompt_spacing'
case r
_begin
_tide_begin
case q
_quit
_tide_quit
end
end

View File

@ -1,18 +1,18 @@
function prompt_spacing
_title 'Prompt Spacing'
_tide_title 'Prompt Spacing'
_option 1 'Compact'
_display_prompt
_tide_option 1 'Compact'
_tide_display_prompt
_tide_cursor_up 1
_display_prompt
_tide_display_prompt
_option 2 'Sparse'
_display_prompt
_display_prompt
_tide_option 2 'Sparse'
_tide_display_prompt
_tide_display_prompt
_display_restart_and_quit
_tide_display_restart_and_tide_quit
switch (_menu)
switch (_tide_menu)
case 1
set -g fake_tide_print_newline_before_prompt false
_next_choice 'all/finish'
@ -20,8 +20,8 @@ function prompt_spacing
set -g fake_tide_print_newline_before_prompt true
_next_choice 'all/finish'
case r
_begin
_tide_begin
case q
_quit
_tide_quit
end
end

View File

@ -1,25 +1,25 @@
function style
_title 'Prompt Style'
_tide_title 'Prompt Style'
_option 1 'Lean'
_tide_option 1 'Lean'
_load_config 'lean'
_display_prompt
_tide_display_prompt
_option 2 'Classic'
_tide_option 2 'Classic'
_load_config 'classic'
_display_prompt
_tide_display_prompt
_option 3 'Rainbow'
_tide_option 3 'Rainbow'
_load_config 'rainbow'
_display_prompt
_tide_display_prompt
_option 4 'Pure'
_tide_option 4 'Pure'
_load_config 'pure'
_display_prompt
_tide_display_prompt
_display_restart_and_quit
_tide_display_restart_and_tide_quit
switch (_menu)
switch (_tide_menu)
case 1
_load_config lean
_next_choice 'lean/lean_show_time'
@ -33,9 +33,9 @@ function style
_load_config pure
_next_choice 'pure/pure_nonperm_content_location'
case r
_begin
_tide_begin
case q
_quit
_tide_quit
end
end

View File

@ -1,25 +1,25 @@
function classic_prompt_color
_title 'Prompt Color'
_tide_title 'Prompt Color'
_option 1 'Lightest'
_tide_option 1 'Lightest'
_set_all_items_bg_color 585858
_display_prompt
_tide_display_prompt
_option 2 'Light'
_tide_option 2 'Light'
_set_all_items_bg_color 444444
_display_prompt
_tide_display_prompt
_option 3 'Dark'
_tide_option 3 'Dark'
_set_all_items_bg_color 303030
_display_prompt
_tide_display_prompt
_option 4 'Darkest'
_tide_option 4 'Darkest'
_set_all_items_bg_color 1C1C1C
_display_prompt
_tide_display_prompt
_display_restart_and_quit
_tide_display_restart_and_tide_quit
switch (_menu)
switch (_tide_menu)
case 1
_set_all_items_bg_color 585858
_next_choice 'classic/classic_show_time'
@ -33,9 +33,9 @@ function classic_prompt_color
_set_all_items_bg_color 1C1C1C
_next_choice 'classic/classic_show_time'
case r
_begin
_tide_begin
case q
_quit
_tide_quit
end
end

View File

@ -1,18 +1,18 @@
function classic_prompt_connection
_title 'Prompt Connection'
_tide_title 'Prompt Connection'
_option 1 'Disconnected'
_display_prompt fake_tide_prompt_connection_icon ''
_tide_option 1 'Disconnected'
_tide_display_prompt fake_tide_prompt_connection_icon ''
_option 2 'Dotted'
_display_prompt fake_tide_prompt_connection_icon '·'
_tide_option 2 'Dotted'
_tide_display_prompt fake_tide_prompt_connection_icon '·'
_option 3 'Solid'
_display_prompt fake_tide_prompt_connection_icon '─'
_tide_option 3 'Solid'
_tide_display_prompt fake_tide_prompt_connection_icon '─'
_display_restart_and_quit
_tide_display_restart_and_tide_quit
switch (_menu)
switch (_tide_menu)
case 1
set -g fake_tide_prompt_connection_icon ''
_next_choice 'classic/classic_prompt_frame'
@ -23,8 +23,8 @@ function classic_prompt_connection
set -g fake_tide_prompt_connection_icon '─'
_next_choice 'classic/classic_prompt_frame'
case r
_begin
_tide_begin
case q
_quit
_tide_quit
end
end

View File

@ -1,33 +1,33 @@
function classic_prompt_frame
_title 'Prompt Frame'
_tide_title 'Prompt Frame'
_option 1 'No frame'
_tide_option 1 'No frame'
set fake_tide_left_prompt_frame_enabled false
set fake_tide_right_prompt_frame_enabled false
set -a fake_tide_left_prompt_items prompt_char
_display_prompt
_tide_display_prompt
set -e fake_tide_left_prompt_items[-1]
_option 2 'Left'
_tide_option 2 'Left'
set fake_tide_left_prompt_frame_enabled true
set fake_tide_right_prompt_frame_enabled false
_display_prompt
_tide_display_prompt
_option 3 'Right'
_tide_option 3 'Right'
set fake_tide_left_prompt_frame_enabled false
set fake_tide_right_prompt_frame_enabled true
set -a fake_tide_left_prompt_items prompt_char
_display_prompt
_tide_display_prompt
set -e fake_tide_left_prompt_items[-1]
_option 4 'Full'
_tide_option 4 'Full'
set fake_tide_left_prompt_frame_enabled true
set fake_tide_right_prompt_frame_enabled true
_display_prompt
_tide_display_prompt
_display_restart_and_quit
_tide_display_restart_and_tide_quit
switch (_menu)
switch (_tide_menu)
case 1
set fake_tide_left_prompt_frame_enabled false
set fake_tide_right_prompt_frame_enabled false
@ -47,8 +47,8 @@ function classic_prompt_frame
set fake_tide_right_prompt_frame_enabled true
_next_choice 'all/prompt_connection_andor_frame_color'
case r
_begin
_tide_begin
case q
_quit
_tide_quit
end
end

View File

@ -1,29 +1,29 @@
function classic_prompt_heads
_title 'Prompt Heads'
_tide_title 'Prompt Heads'
_option 1 'Sharp'
_tide_option 1 'Sharp'
set -g fake_tide_left_prompt_suffix ''
set -g fake_tide_right_prompt_prefix ''
_display_prompt
_tide_display_prompt
_option 2 'Blurred'
_tide_option 2 'Blurred'
set -g fake_tide_left_prompt_suffix '▓▒░'
set -g fake_tide_right_prompt_prefix '░▒▓'
_display_prompt
_tide_display_prompt
_option 3 'Slanted'
_tide_option 3 'Slanted'
set -g fake_tide_left_prompt_suffix ''
set -g fake_tide_right_prompt_prefix ''
_display_prompt
_tide_display_prompt
_option 4 'Round'
_tide_option 4 'Round'
set -g fake_tide_left_prompt_suffix ''
set -g fake_tide_right_prompt_prefix ''
_display_prompt
_tide_display_prompt
_display_restart_and_quit
_tide_display_restart_and_tide_quit
switch (_menu)
switch (_tide_menu)
case 1
set -g fake_tide_left_prompt_suffix ''
set -g fake_tide_right_prompt_prefix ''
@ -41,8 +41,8 @@ function classic_prompt_heads
set -g fake_tide_right_prompt_prefix ''
_next_choice 'classic/classic_prompt_tails'
case r
_begin
_tide_begin
case q
_quit
_tide_quit
end
end

View File

@ -1,21 +1,21 @@
function classic_prompt_height
_title 'Prompt Height'
_tide_title 'Prompt Height'
_option 1 'One line'
_tide_option 1 'One line'
set -e fake_tide_left_prompt_items[(contains -i 'newline' $fake_tide_left_prompt_items)]
set fake_tide_left_prompt_frame_enabled false
set fake_tide_right_prompt_frame_enabled false
_display_prompt
_tide_display_prompt
_option 2 'Two lines'
_tide_option 2 'Two lines'
set -g fake_tide_left_prompt_items $fake_tide_left_prompt_items 'newline'
set fake_tide_left_prompt_frame_enabled true
set fake_tide_right_prompt_frame_enabled true
_display_prompt
_tide_display_prompt
_display_restart_and_quit
_tide_display_restart_and_tide_quit
switch (_menu)
switch (_tide_menu)
case 1
set -e fake_tide_left_prompt_items[(contains -i 'newline' $fake_tide_left_prompt_items)]
@ -30,8 +30,8 @@ function classic_prompt_height
set fake_tide_right_prompt_frame_enabled true
_next_choice 'classic/classic_prompt_connection'
case r
_begin
_tide_begin
case q
_quit
_tide_quit
end
end

View File

@ -1,29 +1,29 @@
function classic_prompt_separators
_title 'Prompt Separators'
_tide_title 'Prompt Separators'
_option 1 'Angled'
_tide_option 1 'Angled'
set -g fake_tide_left_prompt_item_separator_same_color ''
set -g fake_tide_right_prompt_item_separator_same_color ''
_display_prompt
_tide_display_prompt
_option 2 'Vertical'
_tide_option 2 'Vertical'
set -g fake_tide_left_prompt_item_separator_same_color '│'
set -g fake_tide_right_prompt_item_separator_same_color '│'
_display_prompt
_tide_display_prompt
_option 3 'Slanted'
_tide_option 3 'Slanted'
set -g fake_tide_left_prompt_item_separator_same_color ''
set -g fake_tide_right_prompt_item_separator_same_color ''
_display_prompt
_tide_display_prompt
_option 4 'Round'
_tide_option 4 'Round'
set -g fake_tide_left_prompt_item_separator_same_color ''
set -g fake_tide_right_prompt_item_separator_same_color ''
_display_prompt
_tide_display_prompt
_display_restart_and_quit
_tide_display_restart_and_tide_quit
switch (_menu)
switch (_tide_menu)
case 1
set -g fake_tide_left_prompt_item_separator_same_color ''
set -g fake_tide_right_prompt_item_separator_same_color ''
@ -41,8 +41,8 @@ function classic_prompt_separators
set -g fake_tide_right_prompt_item_separator_same_color ''
_next_choice 'classic/classic_prompt_heads'
case r
_begin
_tide_begin
case q
_quit
_tide_quit
end
end

View File

@ -1,34 +1,34 @@
function classic_prompt_tails
_title 'Prompt Tails'
_tide_title 'Prompt Tails'
_option 1 'Flat'
_tide_option 1 'Flat'
set -g fake_tide_left_prompt_prefix ''
set -g fake_tide_right_prompt_suffix ''
_display_prompt
_tide_display_prompt
_option 2 'Blurred'
_tide_option 2 'Blurred'
set -g fake_tide_left_prompt_prefix '░▒▓'
set -g fake_tide_right_prompt_suffix '▓▒░'
_display_prompt
_tide_display_prompt
_option 3 'Sharp'
_tide_option 3 'Sharp'
set -g fake_tide_left_prompt_prefix ''
set -g fake_tide_right_prompt_suffix ''
_display_prompt
_tide_display_prompt
_option 4 'Slanted'
_tide_option 4 'Slanted'
set -g fake_tide_left_prompt_prefix ''
set -g fake_tide_right_prompt_suffix ''
_display_prompt
_tide_display_prompt
_option 5 'Round'
_tide_option 5 'Round'
set -g fake_tide_left_prompt_prefix ''
set -g fake_tide_right_prompt_suffix ''
_display_prompt
_tide_display_prompt
_display_restart_and_quit
_tide_display_restart_and_tide_quit
switch (_menu)
switch (_tide_menu)
case 1
set -g fake_tide_left_prompt_prefix ''
set -g fake_tide_right_prompt_suffix ''
@ -50,8 +50,8 @@ function classic_prompt_tails
set -g fake_tide_right_prompt_suffix ''
_next_choice 'classic/classic_prompt_height'
case r
_begin
_tide_begin
case q
_quit
_tide_quit
end
end

View File

@ -1,20 +1,20 @@
function classic_show_time
_title 'Show current time?'
_tide_title 'Show current time?'
_option 1 'No'
_display_prompt
_tide_option 1 'No'
_tide_display_prompt
set -a fake_tide_right_prompt_items 'time'
_option 2 '24-hour format'
_display_prompt fake_tide_time_format '%T'
_tide_option 2 '24-hour format'
_tide_display_prompt fake_tide_time_format '%T'
_option 3 '12-hour format'
_display_prompt fake_tide_time_format '%r'
_tide_option 3 '12-hour format'
_tide_display_prompt fake_tide_time_format '%r'
_display_restart_and_quit
_tide_display_restart_and_tide_quit
switch (_menu)
switch (_tide_menu)
case 1
set -g fake_tide_time_format ''
set -e fake_tide_right_prompt_items[-1]
@ -26,8 +26,8 @@ function classic_show_time
set -g fake_tide_time_format '%r'
_next_choice 'classic/classic_prompt_separators'
case r
_begin
_tide_begin
case q
_quit
_tide_quit
end
end

View File

@ -1,18 +1,18 @@
function lean_prompt_connection
_title 'Prompt Connection'
_tide_title 'Prompt Connection'
_option 1 'Disconnected'
_display_prompt fake_tide_prompt_connection_icon ''
_tide_option 1 'Disconnected'
_tide_display_prompt fake_tide_prompt_connection_icon ''
_option 2 'Dotted'
_display_prompt fake_tide_prompt_connection_icon '·'
_tide_option 2 'Dotted'
_tide_display_prompt fake_tide_prompt_connection_icon '·'
_option 3 'Solid'
_display_prompt fake_tide_prompt_connection_icon '─'
_tide_option 3 'Solid'
_tide_display_prompt fake_tide_prompt_connection_icon '─'
_display_restart_and_quit
_tide_display_restart_and_tide_quit
switch (_menu)
switch (_tide_menu)
case 1
set -g fake_tide_prompt_connection_icon ''
_next_choice 'all/prompt_connection_andor_frame_color'
@ -23,8 +23,8 @@ function lean_prompt_connection
set -g fake_tide_prompt_connection_icon '─'
_next_choice 'all/prompt_connection_andor_frame_color'
case r
_begin
_tide_begin
case q
_quit
_tide_quit
end
end

View File

@ -1,17 +1,17 @@
function lean_prompt_height
_title 'Prompt Height'
_tide_title 'Prompt Height'
_option 1 'One line'
_tide_option 1 'One line'
set -e fake_tide_left_prompt_items[(contains -i 'newline' $fake_tide_left_prompt_items)]
_display_prompt
_tide_display_prompt
_option 2 'Two lines'
_tide_option 2 'Two lines'
set -g fake_tide_left_prompt_items $fake_tide_left_prompt_items[1..-2] 'newline' $fake_tide_left_prompt_items[-1]
_display_prompt
_tide_display_prompt
_display_restart_and_quit
_tide_display_restart_and_tide_quit
switch (_menu)
switch (_tide_menu)
case 1
set -e fake_tide_left_prompt_items[(contains -i 'newline' $fake_tide_left_prompt_items)]
_next_choice 'all/prompt_connection_andor_frame_color'
@ -20,8 +20,8 @@ function lean_prompt_height
set -g fake_tide_left_prompt_items $fake_tide_left_prompt_items[1..-2] 'newline' $fake_tide_left_prompt_items[-1]
_next_choice 'lean/lean_prompt_connection'
case r
_begin
_tide_begin
case q
_quit
_tide_quit
end
end

View File

@ -1,20 +1,20 @@
function lean_show_time
_title 'Show current time?'
_tide_title 'Show current time?'
_option 1 'No'
_display_prompt
_tide_option 1 'No'
_tide_display_prompt
set -a fake_tide_right_prompt_items 'time'
_option 2 '24-hour format'
_display_prompt fake_tide_time_format '%T'
_tide_option 2 '24-hour format'
_tide_display_prompt fake_tide_time_format '%T'
_option 3 '12-hour format'
_display_prompt fake_tide_time_format '%r'
_tide_option 3 '12-hour format'
_tide_display_prompt fake_tide_time_format '%r'
_display_restart_and_quit
_tide_display_restart_and_tide_quit
switch (_menu)
switch (_tide_menu)
case 1
set -g fake_tide_time_format ''
set -e fake_tide_right_prompt_items[-1]
@ -26,8 +26,8 @@ function lean_show_time
set -g fake_tide_time_format '%r'
_next_choice 'lean/lean_prompt_height'
case r
_begin
_tide_begin
case q
_quit
_tide_quit
end
end

View File

@ -1,18 +1,18 @@
function pure_nonperm_content_location
_title 'Non-permanent content location'
_tide_title 'Non-permanent content location'
_option 1 'Left'
_tide_option 1 'Left'
set -g fake_tide_left_prompt_items 'pwd' 'git_prompt' 'cmd_duration' 'newline' 'prompt_char'
_display_prompt
_tide_display_prompt
_option 2 'Right'
_tide_option 2 'Right'
set -g fake_tide_left_prompt_items 'pwd' 'git_prompt' 'newline' 'prompt_char'
set -g fake_tide_right_prompt_items 'cmd_duration'
_display_prompt
_tide_display_prompt
_display_restart_and_quit
_tide_display_restart_and_tide_quit
switch (_menu)
switch (_tide_menu)
case 1
set -g fake_tide_left_prompt_items 'pwd' 'git_prompt' 'cmd_duration' 'newline' 'prompt_char'
set -g fake_tide_right_prompt_items
@ -22,8 +22,8 @@ function pure_nonperm_content_location
set -g fake_tide_right_prompt_items 'cmd_duration'
_next_choice 'pure/pure_show_time'
case r
_begin
_tide_begin
case q
_quit
_tide_quit
end
end

View File

@ -1,17 +1,17 @@
function pure_prompt_height
_title 'Prompt Height'
_tide_title 'Prompt Height'
_option 1 'One line'
_tide_option 1 'One line'
set -e fake_tide_left_prompt_items[(contains -i 'newline' $fake_tide_left_prompt_items)]
_display_prompt
_tide_display_prompt
_option 2 'Two lines'
_tide_option 2 'Two lines'
set -g fake_tide_left_prompt_items $fake_tide_left_prompt_items[1..-2] 'newline' $fake_tide_left_prompt_items[-1]
_display_prompt
_tide_display_prompt
_display_restart_and_quit
_tide_display_restart_and_tide_quit
switch (_menu)
switch (_tide_menu)
case 1
set -e fake_tide_left_prompt_items[(contains -i 'newline' $fake_tide_left_prompt_items)]
_next_choice 'all/prompt_connection_andor_frame_color'
@ -20,8 +20,8 @@ function pure_prompt_height
set -g fake_tide_left_prompt_items $fake_tide_left_prompt_items[1..-2] 'newline' $fake_tide_left_prompt_items[-1]
_next_choice 'all/prompt_connection_andor_frame_color'
case r
_begin
_tide_begin
case q
_quit
_tide_quit
end
end

View File

@ -1,20 +1,20 @@
function pure_show_time
_title 'Show current time?'
_tide_title 'Show current time?'
_option 1 'No'
_display_prompt
_tide_option 1 'No'
_tide_display_prompt
set -a fake_tide_right_prompt_items 'time'
_option 2 '24-hour format'
_display_prompt fake_tide_time_format '%T'
_tide_option 2 '24-hour format'
_tide_display_prompt fake_tide_time_format '%T'
_option 3 '12-hour format'
_display_prompt fake_tide_time_format '%r'
_tide_option 3 '12-hour format'
_tide_display_prompt fake_tide_time_format '%r'
_display_restart_and_quit
_tide_display_restart_and_tide_quit
switch (_menu)
switch (_tide_menu)
case 1
set -g fake_tide_time_format ''
set -e fake_tide_right_prompt_items[-1]
@ -26,8 +26,8 @@ function pure_show_time
set -g fake_tide_time_format '%r'
_next_choice 'pure/pure_prompt_height'
case r
_begin
_tide_begin
case q
_quit
_tide_quit
end
end

View File

@ -1,18 +1,18 @@
function rainbow_prompt_connection
_title 'Prompt Connection'
_tide_title 'Prompt Connection'
_option 1 'Disconnected'
_display_prompt fake_tide_prompt_connection_icon ''
_tide_option 1 'Disconnected'
_tide_display_prompt fake_tide_prompt_connection_icon ''
_option 2 'Dotted'
_display_prompt fake_tide_prompt_connection_icon '·'
_tide_option 2 'Dotted'
_tide_display_prompt fake_tide_prompt_connection_icon '·'
_option 3 'Solid'
_display_prompt fake_tide_prompt_connection_icon '─'
_tide_option 3 'Solid'
_tide_display_prompt fake_tide_prompt_connection_icon '─'
_display_restart_and_quit
_tide_display_restart_and_tide_quit
switch (_menu)
switch (_tide_menu)
case 1
set -g fake_tide_prompt_connection_icon ''
_next_choice 'rainbow/rainbow_prompt_frame'
@ -23,8 +23,8 @@ function rainbow_prompt_connection
set -g fake_tide_prompt_connection_icon '─'
_next_choice 'rainbow/rainbow_prompt_frame'
case r
_begin
_tide_begin
case q
_quit
_tide_quit
end
end

View File

@ -1,33 +1,33 @@
function rainbow_prompt_frame
_title 'Prompt Frame'
_tide_title 'Prompt Frame'
_option 1 'No frame'
_tide_option 1 'No frame'
set fake_tide_left_prompt_frame_enabled false
set fake_tide_right_prompt_frame_enabled false
set -a fake_tide_left_prompt_items prompt_char
_display_prompt
_tide_display_prompt
set -e fake_tide_left_prompt_items[-1]
_option 2 'Left'
_tide_option 2 'Left'
set fake_tide_left_prompt_frame_enabled true
set fake_tide_right_prompt_frame_enabled false
_display_prompt
_tide_display_prompt
_option 3 'Right'
_tide_option 3 'Right'
set fake_tide_left_prompt_frame_enabled false
set fake_tide_right_prompt_frame_enabled true
set -a fake_tide_left_prompt_items prompt_char
_display_prompt
_tide_display_prompt
set -e fake_tide_left_prompt_items[-1]
_option 4 'Full'
_tide_option 4 'Full'
set fake_tide_left_prompt_frame_enabled true
set fake_tide_right_prompt_frame_enabled true
_display_prompt
_tide_display_prompt
_display_restart_and_quit
_tide_display_restart_and_tide_quit
switch (_menu)
switch (_tide_menu)
case 1
set fake_tide_left_prompt_frame_enabled false
set fake_tide_right_prompt_frame_enabled false
@ -47,8 +47,8 @@ function rainbow_prompt_frame
set fake_tide_right_prompt_frame_enabled true
_next_choice 'all/prompt_connection_andor_frame_color'
case r
_begin
_tide_begin
case q
_quit
_tide_quit
end
end

View File

@ -1,29 +1,29 @@
function rainbow_prompt_heads
_title 'Prompt Heads'
_tide_title 'Prompt Heads'
_option 1 'Sharp'
_tide_option 1 'Sharp'
set -g fake_tide_left_prompt_suffix ''
set -g fake_tide_right_prompt_prefix ''
_display_prompt
_tide_display_prompt
_option 2 'Blurred'
_tide_option 2 'Blurred'
set -g fake_tide_left_prompt_suffix '▓▒░'
set -g fake_tide_right_prompt_prefix '░▒▓'
_display_prompt
_tide_display_prompt
_option 3 'Slanted'
_tide_option 3 'Slanted'
set -g fake_tide_left_prompt_suffix ''
set -g fake_tide_right_prompt_prefix ''
_display_prompt
_tide_display_prompt
_option 4 'Round'
_tide_option 4 'Round'
set -g fake_tide_left_prompt_suffix ''
set -g fake_tide_right_prompt_prefix ''
_display_prompt
_tide_display_prompt
_display_restart_and_quit
_tide_display_restart_and_tide_quit
switch (_menu)
switch (_tide_menu)
case 1
set -g fake_tide_left_prompt_suffix ''
set -g fake_tide_right_prompt_prefix ''
@ -41,8 +41,8 @@ function rainbow_prompt_heads
set -g fake_tide_right_prompt_prefix ''
_next_choice 'rainbow/rainbow_prompt_tails'
case r
_begin
_tide_begin
case q
_quit
_tide_quit
end
end

View File

@ -1,21 +1,21 @@
function rainbow_prompt_height
_title 'Prompt Height'
_tide_title 'Prompt Height'
_option 1 'One line'
_tide_option 1 'One line'
set -e fake_tide_left_prompt_items[(contains -i 'newline' $fake_tide_left_prompt_items)]
set fake_tide_left_prompt_frame_enabled false
set fake_tide_right_prompt_frame_enabled false
_display_prompt
_tide_display_prompt
_option 2 'Two lines'
_tide_option 2 'Two lines'
set -g fake_tide_left_prompt_items $fake_tide_left_prompt_items 'newline'
set fake_tide_left_prompt_frame_enabled true
set fake_tide_right_prompt_frame_enabled true
_display_prompt
_tide_display_prompt
_display_restart_and_quit
_tide_display_restart_and_tide_quit
switch (_menu)
switch (_tide_menu)
case 1
set -e fake_tide_left_prompt_items[(contains -i 'newline' $fake_tide_left_prompt_items)]
set fake_tide_left_prompt_frame_enabled false
@ -28,8 +28,8 @@ function rainbow_prompt_height
set fake_tide_right_prompt_frame_enabled true
_next_choice 'rainbow/rainbow_prompt_connection'
case r
_begin
_tide_begin
case q
_quit
_tide_quit
end
end

View File

@ -1,29 +1,29 @@
function rainbow_prompt_separators
_title 'Prompt Separators'
_tide_title 'Prompt Separators'
_option 1 'Angled'
_tide_option 1 'Angled'
set -g fake_tide_left_prompt_item_separator_diff_color ''
set -g fake_tide_right_prompt_item_separator_diff_color ''
_display_prompt
_tide_display_prompt
_option 2 'Vertical'
_tide_option 2 'Vertical'
set -g fake_tide_left_prompt_item_separator_diff_color ''
set -g fake_tide_right_prompt_item_separator_diff_color ''
_display_prompt
_tide_display_prompt
_option 3 'Slanted'
_tide_option 3 'Slanted'
set -g fake_tide_left_prompt_item_separator_diff_color ''
set -g fake_tide_right_prompt_item_separator_diff_color ''
_display_prompt
_tide_display_prompt
_option 4 'Round'
_tide_option 4 'Round'
set -g fake_tide_left_prompt_item_separator_diff_color ''
set -g fake_tide_right_prompt_item_separator_diff_color ''
_display_prompt
_tide_display_prompt
_display_restart_and_quit
_tide_display_restart_and_tide_quit
switch (_menu)
switch (_tide_menu)
case 1
set -g fake_tide_left_prompt_item_separator_diff_color ''
set -g fake_tide_right_prompt_item_separator_diff_color ''
@ -41,8 +41,8 @@ function rainbow_prompt_separators
set -g fake_tide_right_prompt_item_separator_diff_color ''
_next_choice 'rainbow/rainbow_prompt_heads'
case r
_begin
_tide_begin
case q
_quit
_tide_quit
end
end

View File

@ -1,34 +1,34 @@
function rainbow_prompt_tails
_title 'Prompt Tails'
_tide_title 'Prompt Tails'
_option 1 'Flat'
_tide_option 1 'Flat'
set -g fake_tide_left_prompt_prefix ''
set -g fake_tide_right_prompt_suffix ''
_display_prompt
_tide_display_prompt
_option 2 'Blurred'
_tide_option 2 'Blurred'
set -g fake_tide_left_prompt_prefix '░▒▓'
set -g fake_tide_right_prompt_suffix '▓▒░'
_display_prompt
_tide_display_prompt
_option 3 'Sharp'
_tide_option 3 'Sharp'
set -g fake_tide_left_prompt_prefix ''
set -g fake_tide_right_prompt_suffix ''
_display_prompt
_tide_display_prompt
_option 4 'Slanted'
_tide_option 4 'Slanted'
set -g fake_tide_left_prompt_prefix ''
set -g fake_tide_right_prompt_suffix ''
_display_prompt
_tide_display_prompt
_option 5 'Round'
_tide_option 5 'Round'
set -g fake_tide_left_prompt_prefix ''
set -g fake_tide_right_prompt_suffix ''
_display_prompt
_tide_display_prompt
_display_restart_and_quit
_tide_display_restart_and_tide_quit
switch (_menu)
switch (_tide_menu)
case 1
set -g fake_tide_left_prompt_prefix ''
set -g fake_tide_right_prompt_suffix ''
@ -50,8 +50,8 @@ function rainbow_prompt_tails
set -g fake_tide_right_prompt_suffix ''
_next_choice 'rainbow/rainbow_prompt_height'
case r
_begin
_tide_begin
case q
_quit
_tide_quit
end
end

View File

@ -1,20 +1,20 @@
function rainbow_show_time
_title 'Show current time?'
_tide_title 'Show current time?'
_option 1 'No'
_display_prompt
_tide_option 1 'No'
_tide_display_prompt
set -a fake_tide_right_prompt_items 'time'
_option 2 '24-hour format'
_display_prompt fake_tide_time_format '%T'
_tide_option 2 '24-hour format'
_tide_display_prompt fake_tide_time_format '%T'
_option 3 '12-hour format'
_display_prompt fake_tide_time_format '%r'
_tide_option 3 '12-hour format'
_tide_display_prompt fake_tide_time_format '%r'
_display_restart_and_quit
_tide_display_restart_and_tide_quit
switch (_menu)
switch (_tide_menu)
case 1
set -g fake_tide_time_format ''
set -e fake_tide_right_prompt_items[-1]
@ -26,8 +26,8 @@ function rainbow_show_time
set -g fake_tide_time_format '%r'
_next_choice 'rainbow/rainbow_prompt_separators'
case r
_begin
_tide_begin
case q
_quit
_tide_quit
end
end

View File

@ -5,7 +5,7 @@ function _fake_tide_left_prompt
for item in $fake_tide_left_prompt_items
if test "$item" = 'newline'
_print_frame
_tide_print_frame
if not set -q lastItemWasNewline && not set -q lastItemWasPromptChar
set_color $previousColor -b normal
@ -23,7 +23,7 @@ function _fake_tide_left_prompt
set -l output (_fake_tide_item_$item)
if test -n "$output"
_print_frame
_tide_print_frame
set -l colorName fake_tide_"$item"_bg_color
set -l color $$colorName
@ -70,7 +70,7 @@ function _fake_tide_left_prompt
end
end
function _print_frame --no-scope-shadowing
function _tide_print_frame --no-scope-shadowing
if set -q lastItemWasNewline && test "$fake_tide_left_prompt_frame_enabled" = 'true'
set_color $fake_tide_left_prompt_frame_color -b normal

View File

@ -1,5 +1,5 @@
function _fake_tide_right_prompt
set -l splitText (_fetch_right_prompt_items | string split '@NEWLINE@')
set -l splitText (_tide_fetch_right_prompt_items | string split '@NEWLINE@')
set -l printAtEndedRightPromptHeight (count $splitText)
if test "$fake_tide_right_prompt_frame_enabled" = 'true'
@ -31,13 +31,13 @@ function _fake_tide_right_prompt
end
for lineOfText in $splitText
_print_at_end $lineOfText
_tide_print_at_end $lineOfText
end
_tide_cursor_up $printAtEndedRightPromptHeight
end
function _fetch_right_prompt_items
function _tide_fetch_right_prompt_items
set lastItemWasNewline # Display prefix instead of separator before first item
set color normal
@ -94,7 +94,7 @@ function _fetch_right_prompt_items
end
end
function _print_at_end -a text
function _tide_print_at_end -a text
set -l startLocation (math $fake_columns -(_tide_decolor $text | string length))
_tide_cursor_right $startLocation

View File

@ -1,4 +1,4 @@
function tide_actual_install
function _tide_actual_install
argparse 'l/local' 'u/unattended' -- $argv
set -l location $argv[1]

View File

@ -13,12 +13,12 @@ function tide_install
end
if set -q _flag_local
source "$location/tools/tide_actual_install.fish"
source "$location/tools/_tide_actual_install.fish"
set -a flags '-l'
else
curl -s "https://raw.githubusercontent.com/IlanCosman/tide/$location/tools/tide_actual_install.fish" | source
curl -s "https://raw.githubusercontent.com/IlanCosman/tide/$location/tools/_tide_actual_install.fish" | source
end
tide_actual_install $flags $argv
_tide_actual_install $flags $argv
end