aboutsummaryrefslogtreecommitdiffhomepage
path: root/share/functions/__fish_complete_pids.fish
blob: 65ba479467097c1550d20cee259de28fa4eaad09 (plain)
1
2
3
4
5
6
7
8
9
10
11
function __fish_complete_pids -d "Print a list of process identifiers along with brief descriptions"
	# This may be a bit slower, but it's nice - having the tty displayed is really handy
	# 'tail -n +2' deletes the first line, which contains the headers
	# 'grep -v...' removes self from the output
	set -l SELF %self
	
	# Display the tty if available
	# But not if it's just question marks, meaning no tty
	ps axc -o pid,ucomm,tty | grep -v '^\s*'$SELF'\s' | tail -n +2 | string replace -r ' *([0-9]+) +([^ ].*[^ ]|[^ ]) +([^ ]+) *$' '$1\t$2 [$3]' | string replace -r ' *\[\?*\] *$' ''
end