forked from CastroFidel/winehelper
		
	
		
			
				
	
	
		
			45 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			45 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| # Auto-completion for winhelper
 | |
| _winehelper_completions() {
 | |
|     local cur prev opts
 | |
|     COMPREPLY=()
 | |
|     cur="${COMP_WORDS[COMP_CWORD]}"
 | |
|     prev="${COMP_WORDS[COMP_CWORD-1]}"
 | |
|     opts="--help --version --debug install installed run -r -i remove-all --clear-pfx remove-prefix backup-prefix restore-prefix winecfg winereg winefile wineconsole winetricks killall desktop regedit explorer cmd"
 | |
| 
 | |
|     case "${prev}" in
 | |
|         install|-i)
 | |
|             if [[ "${COMP_WORDS[COMP_CWORD-2]}" == "install" && "$cur" == "" ]]; then
 | |
|                 COMPREPLY=( $(compgen -W "list" -- "${cur}") )
 | |
|             else
 | |
|                 local scripts=$(ls /usr/share/winehelper/autoinstall /usr/share/winehelper/manualinstall 2>/dev/null | grep -v '^list$')
 | |
|                 COMPREPLY=( $(compgen -W "${scripts}" -- "${cur}") )
 | |
|             fi
 | |
|             return 0
 | |
|             ;;
 | |
|         list)
 | |
|             COMPREPLY=()
 | |
|             return 0
 | |
|             ;;
 | |
|         run)
 | |
|             local installed=$(grep -h "Exec=env" ~/.local/share/applications/WineHelper/*.desktop 2>/dev/null | awk -F'"' '{print $4}' | xargs -n1 basename)
 | |
|             COMPREPLY=( $(compgen -W "${installed}" -- "${cur}") )
 | |
|             return 0
 | |
|             ;;
 | |
|         remove-prefix|backup-prefix)
 | |
|             local prefixes=$(ls ~/.local/share/winehelper/prefixes 2>/dev/null)
 | |
|             COMPREPLY=( $(compgen -W "${prefixes}" -- "${cur}") )
 | |
|             return 0
 | |
|             ;;
 | |
|         restore-prefix)
 | |
|             COMPREPLY=( $(compgen -f -X '!*.whpack' -- "${cur}") )
 | |
|             return 0
 | |
|             ;;
 | |
|         *)
 | |
|             ;;
 | |
|     esac
 | |
| 
 | |
|     COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
 | |
| }
 | |
| 
 | |
| complete -F _winehelper_completions winehelper
 |