tangled
alpha
login
or
join now
selman.me
/
rc.d
0
fork
atom
this repo has no description
0
fork
atom
overview
issues
pulls
pipelines
.config/fish: update gota{,i}f
Selman Kayrancioglu
7 months ago
dfc3ecc5
4c95d9db
+28
-12
2 changed files
expand all
collapse all
unified
split
private_dot_config
private_fish
functions
gotaf.fish
gotaif.fish
+26
-10
private_dot_config/private_fish/functions/gotaf.fish
···
1
1
-
function _gotaf_cmd -a pkgs -a tags
1
1
+
function _gotaf_cmd
2
2
+
argparse 'tags=' -- $argv
3
3
+
or return
4
4
+
5
5
+
set -l pkgs $argv
2
6
if test -z "$pkgs"
3
7
set pkgs ./...
4
8
end
5
9
6
6
-
set -l format "{{.Package}}:{{.FullName}}:{{.RelativeFileName}}:{{.Range.Start.Line}}:{{.Range.End.Line}}"
7
7
-
set -l lines ( listests --format="$format" -tags=$tags $pkgs | fzf --delimiter : \
10
10
+
set -l tags_opt
11
11
+
if set -q _flag_tags
12
12
+
set tags_opt "-tags=$_flag_tags"
13
13
+
end
14
14
+
15
15
+
set -l format "{{.FullDisplayName}}:{{.RelativeFileName}}:{{.Range.Start.Line}}:{{.Range.End.Line}}"
16
16
+
set -l lines ( listests --format="$format" $tags_opt $pkgs | fzf --delimiter : \
8
17
--multi \
9
9
-
--preview 'echo $FZF_COLUMNS; bat --style=full --color=always --terminal-width $FZF_COLUMNS --highlight-line {4}:{5} {3}' \
18
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
20
-
set -l testname ( echo $line | cut -d : -f 2 )
21
21
-
set -l pkg ( echo $line | cut -d : -f 1 )
29
29
+
set -l testname ( echo $line | cut -d : -f 1 )
30
30
+
set -l filename ( echo $line | cut -d : -f 2 )
31
31
+
set -l dir "./$(path dirname $filename)"
32
32
+
22
33
set tests $tests $testname
23
23
-
set packages $packages "./$pkg"
34
34
+
set packages $packages "$dir"
24
35
end
25
36
26
37
set packages ( printf '%s\n' $packages | sort -u )
27
38
28
28
-
set -l cmd "gotest -v -tags=\"$tags\" $(string join ' ' $packages) -count=1 -run=\"$(string join '|' $tests)\""
39
39
+
set -l gotest_tags
40
40
+
if set -q _flag_tags
41
41
+
set gotest_tags "-tags=\"$_flag_tags\""
42
42
+
end
43
43
+
44
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
32
-
function gotaf -a pkgs -a tags
33
33
-
set -l cmd ( _gotaf_cmd $pkgs $tags )
48
48
+
function gotaf
49
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
1
-
function gotaif -a pkgs -a tags
2
2
-
gotaf "$pkgs" integration
1
1
+
function gotaif
2
2
+
gotaf --tags=integration $argv
3
3
end