aboutsummaryrefslogtreecommitdiffhomepage
path: root/share/functions/__fish_complete_lpr_option.fish
blob: e593aab449718037b6cc87d7cd9b81b592dba323 (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
function __fish_complete_lpr_option --description 'Complete lpr option'
	set -l optstr (commandline -t)
	switch $optstr
	case '*=*'
		set -l IFS =
		echo $optstr | read -l opt val
		set -l descr
		for l in (lpoptions -l ^/dev/null | string match -- "*$opt*" | string replace -r '.*/(.*):\s*(.*)$' '$1 $2' | string split " ")
			if not set -q descr[1]
				set descr $l
				continue
			end
			set -l default ''
			if string match -q '\**' -- $l
				set default 'Default '
				set l (string sub -s 2 -- $l)
			end
			echo $opt=$l\t$default$descr
		end
	case '*'
		lpoptions -l ^/dev/null | string replace -r '(.*)/(.*):.*$' '$1=\t$2'
	end


end