aboutsummaryrefslogtreecommitdiffhomepage
path: root/share/functions/__fish_complete_wvdial_peers.fish
blob: 5eab088bcd8052cb5af796f2b830c56befb45ca1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
function __fish_complete_wvdial_peers --description 'Complete wvdial peers' --argument cfgfiles
	set -q cfgfiles[0]
	or set -l cfgfiles /etc/wvdial.conf ~/.wvdialrc

	# test if there is an alternative config file specified
	set -l store_next
	for opt in (commandline -cpo)
		if set -q store_next[1]
			set store_next
			set cfgfiles $opt
			continue
		end

		switch $opt
		case -C --config
			set store_next true
		case '--config=*'
			set cfgfiles (echo $opt | string replace '--config=' '')
		end
	end

	for file in $cfgfiles
        if test -f $file
            string match -r '\[Dialer' < $file | string replace -r '\[Dialer (.+)\]' '$1'
        end
	end | sort -u | string match -v Defaults


end