this repo has no description

.config/fish: update gota{,i}f

+28 -12
+26 -10
private_dot_config/private_fish/functions/gotaf.fish
··· 1 - function _gotaf_cmd -a pkgs -a tags 1 + function _gotaf_cmd 2 + argparse 'tags=' -- $argv 3 + or return 4 + 5 + set -l pkgs $argv 2 6 if test -z "$pkgs" 3 7 set pkgs ./... 4 8 end 5 9 6 - set -l format "{{.Package}}:{{.FullName}}:{{.RelativeFileName}}:{{.Range.Start.Line}}:{{.Range.End.Line}}" 7 - set -l lines ( listests --format="$format" -tags=$tags $pkgs | fzf --delimiter : \ 10 + set -l tags_opt 11 + if set -q _flag_tags 12 + set tags_opt "-tags=$_flag_tags" 13 + end 14 + 15 + set -l format "{{.FullDisplayName}}:{{.RelativeFileName}}:{{.Range.Start.Line}}:{{.Range.End.Line}}" 16 + set -l lines ( listests --format="$format" $tags_opt $pkgs | fzf --delimiter : \ 8 17 --multi \ 9 - --preview 'echo $FZF_COLUMNS; bat --style=full --color=always --terminal-width $FZF_COLUMNS --highlight-line {4}:{5} {3}' \ 18 + --preview 'echo $FZF_COLUMNS; bat --style=full --color=always --terminal-width $FZF_COLUMNS --highlight-line {3}:{4} {2}' \ 10 19 --preview-window '70%,~4,+{4}+4/4' \ 11 20 --height 60% 12 21 ) ··· 17 26 set -l tests 18 27 set -l packages 19 28 for line in $lines 20 - set -l testname ( echo $line | cut -d : -f 2 ) 21 - set -l pkg ( echo $line | cut -d : -f 1 ) 29 + set -l testname ( echo $line | cut -d : -f 1 ) 30 + set -l filename ( echo $line | cut -d : -f 2 ) 31 + set -l dir "./$(path dirname $filename)" 32 + 22 33 set tests $tests $testname 23 - set packages $packages "./$pkg" 34 + set packages $packages "$dir" 24 35 end 25 36 26 37 set packages ( printf '%s\n' $packages | sort -u ) 27 38 28 - set -l cmd "gotest -v -tags=\"$tags\" $(string join ' ' $packages) -count=1 -run=\"$(string join '|' $tests)\"" 39 + set -l gotest_tags 40 + if set -q _flag_tags 41 + set gotest_tags "-tags=\"$_flag_tags\"" 42 + end 43 + 44 + set -l cmd "gotest -v $gotest_tags $(string join ' ' $packages) -count=1 -run=\"$(string join '|' $tests)\"" 29 45 echo $cmd 30 46 end 31 47 32 - function gotaf -a pkgs -a tags 33 - set -l cmd ( _gotaf_cmd $pkgs $tags ) 48 + function gotaf 49 + set -l cmd ( _gotaf_cmd $argv ) 34 50 if test -n "$cmd" 35 51 echo $cmd 36 52 history append -- $cmd
+2 -2
private_dot_config/private_fish/functions/gotaif.fish
··· 1 - function gotaif -a pkgs -a tags 2 - gotaf "$pkgs" integration 1 + function gotaif 2 + gotaf --tags=integration $argv 3 3 end