48 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			48 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
export const completionShTemplate = `###-begin-{{app_name}}-completions-###
 | 
						|
#
 | 
						|
# yargs command completion script
 | 
						|
#
 | 
						|
# Installation: {{app_path}} {{completion_command}} >> ~/.bashrc
 | 
						|
#    or {{app_path}} {{completion_command}} >> ~/.bash_profile on OSX.
 | 
						|
#
 | 
						|
_yargs_completions()
 | 
						|
{
 | 
						|
    local cur_word args type_list
 | 
						|
 | 
						|
    cur_word="\${COMP_WORDS[COMP_CWORD]}"
 | 
						|
    args=("\${COMP_WORDS[@]}")
 | 
						|
 | 
						|
    # ask yargs to generate completions.
 | 
						|
    type_list=$({{app_path}} --get-yargs-completions "\${args[@]}")
 | 
						|
 | 
						|
    COMPREPLY=( $(compgen -W "\${type_list}" -- \${cur_word}) )
 | 
						|
 | 
						|
    # if no match was found, fall back to filename completion
 | 
						|
    if [ \${#COMPREPLY[@]} -eq 0 ]; then
 | 
						|
      COMPREPLY=()
 | 
						|
    fi
 | 
						|
 | 
						|
    return 0
 | 
						|
}
 | 
						|
complete -o default -F _yargs_completions {{app_name}}
 | 
						|
###-end-{{app_name}}-completions-###
 | 
						|
`;
 | 
						|
export const completionZshTemplate = `###-begin-{{app_name}}-completions-###
 | 
						|
#
 | 
						|
# yargs command completion script
 | 
						|
#
 | 
						|
# Installation: {{app_path}} {{completion_command}} >> ~/.zshrc
 | 
						|
#    or {{app_path}} {{completion_command}} >> ~/.zsh_profile on OSX.
 | 
						|
#
 | 
						|
_{{app_name}}_yargs_completions()
 | 
						|
{
 | 
						|
  local reply
 | 
						|
  local si=$IFS
 | 
						|
  IFS=$'\n' reply=($(COMP_CWORD="$((CURRENT-1))" COMP_LINE="$BUFFER" COMP_POINT="$CURSOR" {{app_path}} --get-yargs-completions "\${words[@]}"))
 | 
						|
  IFS=$si
 | 
						|
  _describe 'values' reply
 | 
						|
}
 | 
						|
compdef _{{app_name}}_yargs_completions {{app_name}}
 | 
						|
###-end-{{app_name}}-completions-###
 | 
						|
`;
 |