diff --git a/share/completions/reg.fish b/share/completions/reg.fish index fea605f85..1b58e612a 100644 --- a/share/completions/reg.fish +++ b/share/completions/reg.fish @@ -1,3 +1,103 @@ +function __reg_add_generate_args --argument-names previous_token + if test "$previous_token" = '/t' + echo 'REG_SZ +REG_MULTI_SZ +REG_DWORD_BIG_ENDIAN +REG_DWORD +REG_BINARY +REG_DWORD_LITTLE_ENDIAN +REG_LINK +REG_FULL_RESOURCE_DESCRIPTOR +REG_EXPAND_SZ' + return + end + + if not __fish_seen_argument --windows 'v' --windows 've' + echo -e '/v\tSpecify the name of the add registry entry +/ve\tSpecify that the added registry entry has a null value' + end + + echo -e '/t\tSpecify the type for the registry entry +/s\tSpecify the character to be used to separate multiple instances of data +/d\tSpecify the data for the new registry entry +/f\tAdd the registry entry without prompting for confirmation +/?\tShow help' +end + +function __reg_compare_generate_args --argument-names previous_token + if not __fish_seen_argument --windows 'v' --windows 've' + echo -e '/v\tSpecify the value name to compare under the subkey +/ve\tSpecify that only entries that have a value name of null should be compared' + end + + if not __fish_seen_argument --windows 'oa' --windows 'od' --windows 'os' --windows 'on' + echo -e '/oa\tSpecify that all differences and matches are displayed +/od\tSpecify that only differences are displayed +/os\tSpecify that only matches are displayed +/on\tSpecify that nothing is displayed' + end + + echo -e '/s\tSpecify the type for the registry entry +/?\tShow help' +end + +function __reg_copy_generate_args --argument-names previous_token + echo -e '/s\tCopy all subkeys and entries under the specified subkey +/f\tCopy the subkey without prompting for confirmation +/?\tShow help' +end + +function __reg_delete_generate_args --argument-names previous_token + if not __fish_seen_argument --windows 'v' --windows 've' --windows 'va' + echo -e '/v\tDelete a specific entry under the subkey +/ve\tSpecify that only entries that have no value will be deleted +/va\tDelete all entries under the specified subkey' + end + + echo -e '/f\tDelete the existing registry subkey or entry without asking for confirmation +/?\tShow help' +end + +function __reg_export_generate_args --argument-names previous_token + echo -e '/y\tOverwrite any existing file with the name filename without prompting for confirmation +/?\tShow help' +end + +function __reg_query_generate_args --argument-names previous_token + if test "$previous_token" = '/t' + echo 'REG_SZ +REG_MULTI_SZ +REG_EXPAND_SZ +REG_DWORD +REG_BINARY +REG_NONE' + return + end + + if not __fish_seen_argument --windows 'v' --windows 've' + echo -e '/v\tSpecify the registry value name that is to be queried +/ve\tRun a query for value names that are empty' + end + + if not __fish_seen_argument --windows 'k' --windows 'd' + echo -e '/k\tSpecify to search in key names only +/d\tSpecify to search in data only' + end + + echo -e '/se\tSpecify the single value separator to search for in the value name type REG_MULTI_SZ +/f\tSpecify the data or pattern to search for +/c\tSpecify that the query is case sensitive +/e\tSpecify to return only exact matches +/t\tSpecify registry types to search +/z\tSpecify to include the numeric equivalent for the registry type in search results +/?\tShow help' +end + +function __reg_save_generate_args --argument-names previous_token + echo -e '/y\tOverwrite an existing file with the name filename without prompting for confirmation +/?\tShow help' +end + function __reg_generate_args --description 'Function to generate args' if not __fish_seen_subcommand_from add compare copy delete export import load query restore save unload echo -e 'add\tAdd a new subkey or entry to the registry @@ -17,91 +117,19 @@ unload\tRemove a section of the registry that was loaded using the reg load oper set --local previous_token (commandline --tokenize --cut-at-cursor)[-1] if __fish_seen_subcommand_from add - if test "$previous_token" = '/t' - echo 'REG_SZ -REG_MULTI_SZ -REG_DWORD_BIG_ENDIAN -REG_DWORD -REG_BINARY -REG_DWORD_LITTLE_ENDIAN -REG_LINK -REG_FULL_RESOURCE_DESCRIPTOR -REG_EXPAND_SZ' - return - end - - if not __fish_seen_argument --windows 'v' --windows 've' - echo -e '/v\tSpecify the name of the add registry entry -/ve\tSpecify that the added registry entry has a null value' - end - - echo -e '/t\tSpecify the type for the registry entry -/s\tSpecify the character to be used to separate multiple instances of data -/d\tSpecify the data for the new registry entry -/f\tAdd the registry entry without prompting for confirmation -/?\tShow help' + __reg_add_generate_args else if __fish_seen_subcommand_from compare - if not __fish_seen_argument --windows 'v' --windows 've' - echo -e '/v\tSpecify the value name to compare under the subkey -/ve\tSpecify that only entries that have a value name of null should be compared' - end - - if not __fish_seen_argument --windows 'oa' --windows 'od' --windows 'os' --windows 'on' - echo -e '/oa\tSpecify that all differences and matches are displayed -/od\tSpecify that only differences are displayed -/os\tSpecify that only matches are displayed -/on\tSpecify that nothing is displayed' - end - - echo -e '/s\tSpecify the type for the registry entry -/?\tShow help' + __reg_compare_generate_args else if __fish_seen_subcommand_from copy - echo -e '/s\tCopy all subkeys and entries under the specified subkey -/f\tCopy the subkey without prompting for confirmation -/?\tShow help' + __reg_copy_generate_args else if __fish_seen_subcommand_from delete - if not __fish_seen_argument --windows 'v' --windows 've' --windows 'va' - echo -e '/v\tDelete a specific entry under the subkey -/ve\tSpecify that only entries that have no value will be deleted -/va\tDelete all entries under the specified subkey' - end - - echo -e '/f\tDelete the existing registry subkey or entry without asking for confirmation -/?\tShow help' + __reg_delete_generate_args else if __fish_seen_subcommand_from export - echo -e '/y\tOverwrite any existing file with the name filename without prompting for confirmation -/?\tShow help' + __reg_export_generate_args else if __fish_seen_subcommand_from query - if test "$previous_token" = '/t' - echo 'REG_SZ -REG_MULTI_SZ -REG_EXPAND_SZ -REG_DWORD -REG_BINARY -REG_NONE' - return - end - - if not __fish_seen_argument --windows 'v' --windows 've' - echo -e '/v\tSpecify the registry value name that is to be queried -/ve\tRun a query for value names that are empty' - end - - if not __fish_seen_argument --windows 'k' --windows 'd' - echo -e '/k\tSpecify to search in key names only -/d\tSpecify to search in data only' - end - - echo -e '/se\tSpecify the single value separator to search for in the value name type REG_MULTI_SZ -/f\tSpecify the data or pattern to search for -/c\tSpecify that the query is case sensitive -/e\tSpecify to return only exact matches -/t\tSpecify registry types to search -/z\tSpecify to include the numeric equivalent for the registry type in search results -/?\tShow help' + __reg_query_generate_args else if __fish_seen_subcommand_from save - echo -e '/y\tOverwrite an existing file with the name filename without prompting for confirmation -/?\tShow help' + __reg_save_generate_args end end