101 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			101 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| function __riverctl_completion ()
 | |
| {
 | |
| 	if [ "${COMP_CWORD}" -eq 1 ]
 | |
| 	then
 | |
| 		OPTS=" \
 | |
| 			csd-filter-add \
 | |
| 			exit \
 | |
| 			float-filter-add \
 | |
| 			focus-output \
 | |
| 			focus-view \
 | |
| 			input \
 | |
| 			list-inputs \
 | |
| 			list-input-configs \
 | |
| 			move \
 | |
| 			resize \
 | |
| 			snap \
 | |
| 			send-to-output \
 | |
| 			spawn \
 | |
| 			swap \
 | |
| 			toggle-float \
 | |
| 			toggle-fullscreen \
 | |
| 			zoom \
 | |
| 			default-layout \
 | |
| 			output-layout \
 | |
| 			send-layout-cmd \
 | |
| 			set-focused-tags \
 | |
| 			focus-previous-tags \
 | |
| 			set-view-tags \
 | |
| 			toggle-focused-tags \
 | |
| 			toggle-view-tags \
 | |
| 			spawn-tagmask \
 | |
| 			declare-mode \
 | |
| 			enter-mode \
 | |
| 			map \
 | |
| 			map-pointer \
 | |
| 			unmap \
 | |
| 			unmap-pointer \
 | |
| 			attach-mode \
 | |
| 			background-color \
 | |
| 			border-color-focused \
 | |
| 			border-color-unfocused \
 | |
| 			border-width \
 | |
| 			focus-follows-cursor \
 | |
| 			set-repeat \
 | |
| 			set-cursor-warp \
 | |
| 			xcursor-theme"
 | |
| 		COMPREPLY=($(compgen -W "${OPTS}" -- "${COMP_WORDS[1]}"))
 | |
| 	elif [ "${COMP_CWORD}" -eq 2 ]
 | |
| 	then
 | |
| 		case "${COMP_WORDS[1]}" in
 | |
| 			"focus-output"|"focus-view"|"send-to-output"|"swap") OPTS="next previous" ;;
 | |
| 			"move"|"snap") OPTS="up down left right" ;;
 | |
| 			"resize") OPTS="horizontal vertical" ;;
 | |
| 			"map"|"unmap") OPTS="-release" ;;
 | |
| 			"attach-mode") OPTS="top bottom" ;;
 | |
| 			"focus-follows-cursor") OPTS="disabled normal strict" ;;
 | |
| 			"set-cursor-warp") OPTS="disabled on-output-change" ;;
 | |
| 			*) return ;;
 | |
| 		esac
 | |
| 		COMPREPLY=($(compgen -W "${OPTS}" -- "${COMP_WORDS[2]}"))
 | |
| 	elif [ "${COMP_CWORD}" -eq 3 ]
 | |
| 	then
 | |
| 		if [ "${COMP_WORDS[1]}" == "input" ]
 | |
| 		then
 | |
| 			OPTS="events \
 | |
| 				accel-profile \
 | |
| 				pointer-accel \
 | |
| 				click-method \
 | |
| 				drag \
 | |
| 				drag-lock \
 | |
| 				disable-while-typing \
 | |
| 				middle-emulation \
 | |
| 				natural-scroll \
 | |
| 				left-handed \
 | |
| 				tap \
 | |
| 				tap-button-map \
 | |
| 				scroll-method \
 | |
| 				scroll-button"
 | |
| 			COMPREPLY=($(compgen -W "${OPTS}" -- "${COMP_WORDS[2]}"))
 | |
| 		fi
 | |
| 	elif [ "${COMP_CWORD}" -eq 4 ]
 | |
| 	then
 | |
| 		if [ "${COMP_WORDS[1]}" == "input" ]
 | |
| 		then
 | |
| 			case "${COMP_WORDS[3]}" in
 | |
| 				"events") OPTS="enabled disabled disabled-on-external-mouse" ;;
 | |
| 				"accel-profile") OPTS="none flat adaptive" ;;
 | |
| 				"click-method") OPTS="none button-areas clickfinger" ;;
 | |
| 				"drag"|"drag-lock"|"disable-while-typing"|"middle-emulation"|"left-handed"|"tap") OPTS="enabled disabled" ;;
 | |
| 				"tap-button-map") OPTS="left-right-middle left-middle-right" ;;
 | |
| 				"scroll-method") OPTS="none two-finger edge button" ;;
 | |
| 				*) return ;;
 | |
| 			esac
 | |
| 		fi
 | |
| 	else
 | |
| 		return
 | |
| 	fi
 | |
| }
 | |
| 
 | |
| complete -F __riverctl_completion riverctl
 |