manpagez: man pages & more
man complete(1)
Home | html | info | man
complete(1)                          fish                          complete(1)




NAME

       complete - edit command specific tab-completions.


   Synopsis
       complete (-c|--command|-p|--path) COMMAND [(-s|--short-option)
       SHORT_OPTION] [(-l|--long-option|-o|--old-option) LONG_OPTION
       [(-a||--arguments) OPTION_ARGUMENTS] [(-d|--description) DESCRIPTION]

   Description
       For an introduction to how to specify completions, see the section
       Writing your own completions of the fish manual.


       o COMMAND is the name of the command for which to add a completion

       o SHORT_OPTION is a one character option for the command

       o LONG_OPTION is a multi character option for the command

       o OPTION_ARGUMENTS is parameter containing a space-separated list of
         possible option-arguments, which may contain subshells

       o DESCRIPTION is a description of what the option and/or option
         arguments do

       o -C STRING or --do-complete=STRING makes complete try to find all
         possible completions for the specified string

       o -e or --erase implies that the specified completion should be deleted

       o -f or --no-files specifies that the option specified by this
         completion may not be followed by a filename

       o -n or --condition specifies a shell command that must return 0 if the
         completion is to be used. This makes it possible to specify
         completions that should only be used in some cases.

       o -o or --old-option implies that the command uses old long style
         options with only one dash

       o -p or --path implies that the string COMMAND is the full path of the
         command

       o -r or --require-parameter specifies that the option specified by this
         completion always must have an option argument, i.e. may not be
         followed by another option

       o -u or --unauthoritative implies that there may be more options than
         the ones specified, and that fish should not assume that options not
         listed are spelling errors

       o -A or --authoritative implies that there may be no more options than
         the ones specified, and that fish should assume that options not
         listed are spelling errors

       o -x or --exclusive implies both -r and -f


       Command specific tab-completions in fish are based on the notion of
       options and arguments. An option is a parameter which begins with a
       hyphen, such as '-h', '-help' or '--help'. Arguments are parameters
       that do not begin with a hyphen. Fish recognizes three styles of
       options, the same styles as the GNU version of the getopt library.
       These styles are:


       o Short options, like '-a'. Short options are a single character long,
         are preceded by a single hyphen and may be grouped together (like
         '-la', which is equivalent to '-l -a'). Option arguments may be
         specified in the following parameter ('-w 32') or by appending the
         option with the value ('-w32').

       o Old style long options, like '-Wall'. Old style long options can be
         more than one character long, are preceded by a single hyphen and may
         not be grouped together. Option arguments are specified in the
         following parameter ('-ao null').

       o GNU style long options, like '--colors'. GNU style long options can
         be more than one character long, are preceded by two hyphens, and may
         not be grouped together. Option arguments may be specified in the
         following parameter ('--quoting-style shell') or by appending the
         option with a '=' and the value ('--quoting-style=shell'). GNU style
         long options may be abbreviated so long as the abbreviation is unique
         ('--h' is equivalent to '--help' if help is the only long option
         beginning with an 'h').


       The options for specifying command name, command path, or command
       switches may all be used multiple times to specify multiple commands
       which have the same completion or multiple switches accepted by a
       command.

       When erasing completions, it is possible to either erase all
       completions for a specific command by specifying complete -e -c
       COMMAND, or by specifying a specific completion option to delete by
       specifying either a long, short or old style option.

   Example
       The short style option -o for the gcc command requires that a file
       follows it. This can be done using writing complete -c gcc -s o -r.

       The short style option -d for the grep command requires that one of the
       strings 'read', 'skip' or 'recurse' is used. This can be specified
       writing complete -c grep -s d -x -a 'read skip recurse'.

       The su command takes any username as an argument. Usernames are given
       as the first colon-separated field in the file /etc/passwd. This can be
       specified as: complete -x -c su -d 'Username' -a '(cat /etc/passwd|cut
       -d : -f 1)' .

       The rpm command has several different modes. If the -e or --erase flag
       has been specified, rpm should delete one or more packages, in which
       case several switches related to deleting packages are valid, like the
       nodeps switch.

       This can be written as:

       complete -c rpm -n '__fish_contains_opt -s e erase' -l nodeps -d 'Don't
       check dependencies'

       where __fish_contains_opt is a function that checks the commandline
       buffer for the presence of a specified set of options.



Version 1.23.1                    8 Mar 2009                       complete(1)

fish 1.23.1 - Generated Sun Mar 8 13:56:17 CDT 2009
© manpagez.com 2000-2021
Individual documents may contain additional copyright information.