fish-shell/share/functions
Johannes Altmanninger 6fb7f9b6b8 Fix completion for builtins (with subcommands)
Presently the completion engine ignores builtins that are part of the
fish syntax. This can be a problem when completing a string that was
based on the output of `commandline -p`.  This changes completions to
treat these builtins like any other command.

This also disables generic (filename) completion inside comments and
after strings that do not tokenize.

Additionally, comments are stripped off the output of `commandline -p`.

Fixes #5415
Fixes #2705
2019-11-04 16:44:51 +01:00
..
__fish_abbr_old.fish Move abbr_old to __fish_abbr_old 2018-09-21 09:25:16 +08:00
__fish_any_arg_in.fish completions/git: some improvements 2019-10-29 19:13:31 +01:00
__fish_anypython.fish functions/__fish_anypython: Also try python{3,2}.7 2019-06-25 19:40:22 +02:00
__fish_append.fish functions/__fish_append: Stringify 2019-03-14 13:23:48 +01:00
__fish_cancel_commandline.fish Emit 'fish_cancel' at end of __fish_cancel_commandline. 2019-07-15 21:01:49 +02:00
__fish_clang_complete.fish Reformat all files 2019-05-05 12:09:25 +02:00
__fish_commandline_is_singlequoted.fish Auto-escape pastes inside single-quotes 2017-03-16 16:08:13 +01:00
__fish_complete_ant_targets.fish Remove x-bit from function 2019-07-15 21:02:08 +02:00
__fish_complete_atool_archive_contents.fish reformat all fish scripts 2016-11-27 21:27:22 -08:00
__fish_complete_bittorrent.fish reformat all fish scripts 2016-11-27 21:27:22 -08:00
__fish_complete_blockdevice.fish Split off __fish_complete_blockdevice from mount.fish. 2016-05-27 14:56:47 -07:00
__fish_complete_cd.fish Revert "Fix cd completions if a directory exists in $CDPATH and $PWD" 2017-10-16 19:33:38 +02:00
__fish_complete_command.fish reformat all fish scripts 2016-11-27 21:27:22 -08:00
__fish_complete_convert_options.fish fix 'grep ... | sed' 2018-04-09 01:09:49 +02:00
__fish_complete_directories.fish fish_complete_directories: Use complete -C 2019-05-27 19:33:52 +02:00
__fish_complete_external_command.fish Fix completion for builtins (with subcommands) 2019-11-04 16:44:51 +01:00
__fish_complete_file_url.fish reformat all fish scripts 2016-11-27 21:27:22 -08:00
__fish_complete_ftp.fish reformat all fish scripts 2016-11-27 21:27:22 -08:00
__fish_complete_gpg_key_id.fish refactor gpg.fish completions 2019-10-29 19:07:35 +01:00
__fish_complete_gpg_user_id.fish refactor gpg.fish completions 2019-10-29 19:07:35 +01:00
__fish_complete_gpg.fish minor fixes to version-specific completions 2019-11-03 21:37:57 +08:00
__fish_complete_groups.fish remove sed from __fish_complete_groups.fish 2018-04-25 15:45:12 +02:00
__fish_complete_job_pids.fish Add a function to complete job PIDs. 2015-11-27 16:07:16 -08:00
__fish_complete_list.fish reformat all fish scripts 2016-11-27 21:27:22 -08:00
__fish_complete_lpr_option.fish Remove use of caret redirection from share/* 2018-04-01 13:42:38 -07:00
__fish_complete_lpr.fish reformat all fish scripts 2016-11-27 21:27:22 -08:00
__fish_complete_lsusb.fish misc improvements to scripts 2016-12-21 13:46:43 +01:00
__fish_complete_man.fish Reformat all files 2019-05-05 12:09:25 +02:00
__fish_complete_mount_opts.fish Fixed mount -o<TAB> exception 2019-03-19 09:28:14 +01:00
__fish_complete_path.fish reformat all fish scripts 2016-11-27 21:27:22 -08:00
__fish_complete_pgrep.fish Rewrite __fish_complete_proc 2018-11-22 15:23:05 +01:00
__fish_complete_pids.fish Rename $pid (née %self) to $fish_pid 2018-03-24 11:54:27 -05:00
__fish_complete_ppp_peer.fish reformat all fish scripts 2016-11-27 21:27:22 -08:00
__fish_complete_proc.fish Rewrite __fish_complete_proc 2018-11-22 15:23:05 +01:00
__fish_complete_setxkbmap.fish reformat all fish scripts 2016-11-27 21:27:22 -08:00
__fish_complete_ssh.fish style fixes to previous commit 2017-02-01 22:49:40 -08:00
__fish_complete_subcommand.fish Revert "Switch to bare vars in our math invocations" 2017-09-09 23:35:47 -07:00
__fish_complete_suffix.fish Reformat all files 2019-05-05 12:09:25 +02:00
__fish_complete_svn_diff.fish reformat all fish scripts 2016-11-27 21:27:22 -08:00
__fish_complete_tar.fish Remove caret redirection from tar completion 2018-04-28 18:13:24 +02:00
__fish_complete_unrar.fish reformat all fish scripts 2016-11-27 21:27:22 -08:00
__fish_complete_user_at_hosts.fish a make style-all cleanup 2017-07-18 22:40:25 -07:00
__fish_complete_users.fish Fixed __fish_complete_users to better format GECOS 2017-07-11 17:00:08 +02:00
__fish_complete_wvdial_peers.fish reformat all fish scripts 2016-11-27 21:27:22 -08:00
__fish_complete_zfs_mountpoint_properties.fish Reformat all files 2019-05-05 12:09:25 +02:00
__fish_complete_zfs_pools.fish Reformat all files 2019-05-05 12:09:25 +02:00
__fish_complete_zfs_ro_properties.fish Reformat all files 2019-05-05 12:09:25 +02:00
__fish_complete_zfs_rw_properties.fish Reformat all files 2019-05-05 12:09:25 +02:00
__fish_complete_zfs_write_once_properties.fish Reformat all files 2019-05-05 12:09:25 +02:00
__fish_config_interactive.fish Fix completion for builtins (with subcommands) 2019-11-04 16:44:51 +01:00
__fish_contains_opt.fish use the new set -a and set -p in our scripts 2017-08-04 18:02:24 -07:00
__fish_crux_packages.fish reformat all fish scripts 2016-11-27 21:27:22 -08:00
__fish_cursor_1337.fish fish vi mode cursor shape on iTerm2 2016-12-02 19:49:15 -08:00
__fish_cursor_konsole.fish reformat all fish scripts 2016-11-27 21:27:22 -08:00
__fish_cursor_xterm.fish Revert "Switch to bare vars in our math invocations" 2017-09-09 23:35:47 -07:00
__fish_describe_command.fish Keep "; and" and "; or" on fish files 2019-05-05 13:34:38 +02:00
__fish_first_token.fish Reformat all files 2019-05-05 12:09:25 +02:00
__fish_git_prompt.fish Move __fish_git_prompt -> fish_git_prompt 2019-02-10 14:44:50 +01:00
__fish_gnu_complete.fish reformat all fish scripts 2016-11-27 21:27:22 -08:00
__fish_hg_prompt.fish Rename __fish_hg_prompt -> fish_hg_prompt 2019-02-10 14:44:50 +01:00
__fish_is_first_arg.fish Reformat all files 2019-05-05 12:09:25 +02:00
__fish_is_first_token.fish reformat all fish scripts 2016-11-27 21:27:22 -08:00
__fish_is_git_repository.fish Remove use of caret redirection from share/* 2018-04-01 13:42:38 -07:00
__fish_is_switch.fish Reformat all files 2019-05-05 12:09:25 +02:00
__fish_is_token_n.fish reformat all fish scripts 2016-11-27 21:27:22 -08:00
__fish_is_zfs_feature_enabled.fish Fix zfs completions under FreeBSD 2018-05-26 12:20:04 -05:00
__fish_list_current_token.fish Fix error on typing Alt-l on a token that starts with a dash 2019-10-19 12:31:09 +02:00
__fish_make_completion_signals.fish Remove use of caret redirection from share/* 2018-04-01 13:42:38 -07:00
__fish_man_page.fish sudo keywork is ignored when alt+h is pressed 2019-10-06 15:12:02 +02:00
__fish_move_last.fish nextd/prevd: Print BEL instead of "Hit end of history" 2019-03-28 11:58:53 +01:00
__fish_no_arguments.fish reformat all fish scripts 2016-11-27 21:27:22 -08:00
__fish_not_contain_opt.fish fix typo in error message 2017-06-09 12:12:36 -07:00
__fish_number_of_cmd_args_wo_opts.fish Add eselect, rc-update and rc-service completions. (These are utilities used by Gentoo Linux) 2013-11-27 18:36:05 +08:00
__fish_paginate.fish Use the new &| in __fish_paginate 2019-10-29 20:48:10 +01:00
__fish_parent_directories.fish Reformat all files 2019-05-05 12:09:25 +02:00
__fish_parse_configure.fish Reformat all files 2019-05-05 12:09:25 +02:00
__fish_pipestatus_with_signal.fish Reformat all files 2019-05-05 12:09:25 +02:00
__fish_portage_print_available_pkgs.fish Reformat all files 2019-05-05 12:09:25 +02:00
__fish_portage_print_installed_pkgs.fish Reformat all files 2019-05-05 12:09:25 +02:00
__fish_portage_print_repository_names.fish Reformat all files 2019-05-05 12:09:25 +02:00
__fish_portage_print_repository_paths.fish Reformat all files 2019-05-05 12:09:25 +02:00
__fish_ports_dirs.fish reformat all fish scripts 2016-11-27 21:27:22 -08:00
__fish_prepend_sudo.fish Add default \es keybinding for "prepend sudo" 2019-10-06 15:17:49 +02:00
__fish_prev_arg_in.fish Reformat all files 2019-05-05 12:09:25 +02:00
__fish_print_abook_emails.fish reformat all fish scripts 2016-11-27 21:27:22 -08:00
__fish_print_addresses.fish remove sed from __fish_print_addresses.fish 2018-04-25 15:45:12 +02:00
__fish_print_cmd_args_without_options.fish functions/__fish_print_cmd_args_without_options: Stringify 2019-01-26 19:20:16 +01:00
__fish_print_cmd_args.fish Add eselect, rc-update and rc-service completions. (These are utilities used by Gentoo Linux) 2013-11-27 18:36:05 +08:00
__fish_print_commands.fish Clean up $__fish_*dir variable names 2018-03-12 08:34:20 -05:00
__fish_print_debian_apache_confs.fish reformat all fish scripts 2016-11-27 21:27:22 -08:00
__fish_print_debian_apache_mods.fish reformat all fish scripts 2016-11-27 21:27:22 -08:00
__fish_print_debian_apache_sites.fish reformat all fish scripts 2016-11-27 21:27:22 -08:00
__fish_print_debian_services.fish reformat all fish scripts 2016-11-27 21:27:22 -08:00
__fish_print_encodings.fish reformat all fish scripts 2016-11-27 21:27:22 -08:00
__fish_print_filesystems.fish add ffs to known filesystems 2017-12-12 19:18:47 +01:00
__fish_print_function_prototypes.fish requested changes 2016-12-21 18:44:34 +01:00
__fish_print_gpg_algo.fish refactor gpg.fish completions 2019-10-29 19:07:35 +01:00
__fish_print_groups.fish Added completions/translations for zfs and zpool 2017-12-21 16:39:06 +01:00
__fish_print_help.fish reformat 2019-10-28 18:36:07 +01:00
__fish_print_hostnames.fish functions/__fish_print_hostnames: Fix ssh_configs no values return (#6236) 2019-10-26 18:17:52 +02:00
__fish_print_interfaces.fish parse *BSD interface names 2017-12-12 19:18:53 +01:00
__fish_print_lpr_options.fish Remove use of caret redirection from share/* 2018-04-01 13:42:38 -07:00
__fish_print_lpr_printers.fish Remove use of caret redirection from share/* 2018-04-01 13:42:38 -07:00
__fish_print_lsblk_columns.fish reformat all fish scripts 2016-11-27 21:27:22 -08:00
__fish_print_modules.fish Remove use of caret redirection from share/* 2018-04-01 13:42:38 -07:00
__fish_print_mounted.fish Revert "mount completions: don't truncate mounts with spaces in them" 2018-11-17 14:06:15 +01:00
__fish_print_packages.fish Keep "; and" and "; or" on fish files 2019-05-05 13:34:38 +02:00
__fish_print_pacman_repos.fish functions/__fish_print_pacman_repos.fish: fix 2019-10-26 18:11:29 +02:00
__fish_print_pipestatus.fish Reformat all files 2019-05-05 12:09:25 +02:00
__fish_print_service_names.fish Remove use of caret redirection from share/* 2018-04-01 13:42:38 -07:00
__fish_print_svn_rev.fish reformat all fish scripts 2016-11-27 21:27:22 -08:00
__fish_print_users.fish refactor the __*_users functions 2017-04-23 20:08:40 -07:00
__fish_print_VBox_vms.fish Add __fish_print_VBox_vms function 2016-12-21 14:51:48 +01:00
__fish_print_xdg_applications_directories.fish Update xdg-mime helper 2017-08-17 10:50:06 -07:00
__fish_print_xdg_desktop_file_ids.fish Update xdg-mime helper 2017-08-17 10:50:06 -07:00
__fish_print_xdg_mimetypes.fish Remove use of caret redirection from share/* 2018-04-01 13:42:38 -07:00
__fish_print_xwindows.fish Reformat all files 2019-05-05 12:09:25 +02:00
__fish_print_zfs_bookmarks.fish Reformat all files 2019-05-05 12:09:25 +02:00
__fish_print_zfs_filesystems.fish Reformat all files 2019-05-05 12:09:25 +02:00
__fish_print_zfs_snapshots.fish Reformat all files 2019-05-05 12:09:25 +02:00
__fish_print_zfs_volumes.fish Reformat all files 2019-05-05 12:09:25 +02:00
__fish_pwd.fish reformat all fish scripts 2016-11-27 21:27:22 -08:00
__fish_seen_argument.fish add -o/--old to __fish_seen_argument 2019-11-02 14:48:57 -07:00
__fish_seen_subcommand_from.fish Drop unneeded '--' when using set builtin in various places 2006-12-13 06:37:27 +10:00
__fish_set_locale.fish Remove some dead code 2018-05-12 13:48:32 +02:00
__fish_sgrep.fish mark __fish_sgrep as deprecated 2017-04-15 21:51:33 -07:00
__fish_shared_key_bindings.fish Add default \es keybinding for "prepend sudo" 2019-10-06 15:17:49 +02:00
__fish_should_complete_switches.fish Reformat all files 2019-05-05 12:09:25 +02:00
__fish_status_to_signal.fish add __fish_status_to_signal.fish and __fish_pipestatus_with_signal.fish 2019-02-26 18:09:37 +00:00
__fish_svn_prompt.fish Rename __fish_svn_prompt -> fish_svn_prompt 2019-02-10 14:44:50 +01:00
__fish_systemctl_services.fish Remove use of caret redirection from share/* 2018-04-01 13:42:38 -07:00
__fish_systemd_machine_images.fish reformat all fish scripts 2016-11-27 21:27:22 -08:00
__fish_systemd_machines.fish reformat all fish scripts 2016-11-27 21:27:22 -08:00
__fish_toggle_comment_commandline.fish reformat all fish scripts 2016-11-27 21:27:22 -08:00
__fish_use_subcommand.fish reformat all fish scripts 2016-11-27 21:27:22 -08:00
__fish_vcs_prompt.fish Rename __fish_vcs_prompt -> fish_vcs_prompt 2019-02-10 14:44:50 +01:00
__fish_whatis_current_token.fish Only print extra newlines for multi-line prompts (#6179) 2019-10-08 19:14:51 +02:00
__fish_whatis.fish Reformat all files 2019-05-05 12:09:25 +02:00
__terlar_git_prompt.fish Reformat all files 2019-05-05 12:09:25 +02:00
_.fish functions/_.fish: Use ggetext if available 2019-02-13 13:05:50 +01:00
_fish_systemctl.fish Keep "; and" and "; or" on fish files 2019-05-05 13:34:38 +02:00
_validate_int.fish add ability for argparse to validate args 2017-07-18 14:42:50 -07:00
abbr.fish Keep "; and" and "; or" on fish files 2019-05-05 13:34:38 +02:00
alias.fish Add alias -s/--save, which saves the alias. 2018-04-09 01:08:56 +02:00
cd.fish cd: Fix test for too many args 2019-10-10 18:06:11 +02:00
cdh.fish cdh: Only replace home directory with ~ at the start of paths 2018-08-13 18:24:42 +02:00
contains_seq.fish Revert "Switch to bare vars in our math invocations" 2017-09-09 23:35:47 -07:00
delete-or-exit.fish reformat all fish scripts 2016-11-27 21:27:22 -08:00
dirh.fish fix dirh output with reversed $dirnext 2019-01-26 13:30:45 +01:00
dirs.fish update dirs to use argparse 2017-07-13 11:53:29 -07:00
down-or-search.fish reformat all fish scripts 2016-11-27 21:27:22 -08:00
edit_command_buffer.fish Revert "edit_command_buffer: Use variable-as-command" 2019-02-07 09:47:24 +01:00
export.fish Fix export returning 1 on success 2017-10-01 01:11:17 -07:00
fish_breakpoint_prompt.fish Revert "Switch to bare vars in our math invocations" 2017-09-09 23:35:47 -07:00
fish_clipboard_copy.fish Always use wl-{copy,paste} if running on wayland 2019-10-24 11:42:33 +02:00
fish_clipboard_paste.fish Set fish_clipboard_paste handler once on startup 2019-10-27 12:40:53 -05:00
fish_config.fish Reformat all files 2019-05-05 12:09:25 +02:00
fish_default_key_bindings.fish Simplify space binding and fix search 2019-09-21 16:06:19 -07:00
fish_default_mode_prompt.fish Rename replace-one to replace_one 2017-04-17 21:10:23 -07:00
fish_fallback_prompt.fish Quote $USER when used with switch or test 2017-07-20 19:45:32 +02:00
fish_git_prompt.fish fish_git_prompt: Add a way to use the informative chars 2019-06-25 16:11:18 +02:00
fish_hg_prompt.fish Reformat all files 2019-05-05 12:09:25 +02:00
fish_hybrid_key_bindings.fish Add separation of "preset" bindings 2018-09-30 16:54:56 +02:00
fish_indent.fish Rename $FISH_VERSION back to the original $version. 2017-10-14 08:33:02 -07:00
fish_key_reader.fish Rename $FISH_VERSION back to the original $version. 2017-10-14 08:33:02 -07:00
fish_md5.fish Gradle-completions for gradle tasks (#3972) 2017-05-13 13:28:32 +02:00
fish_mode_prompt.fish Added default mode prompt function (#3727) 2017-01-12 16:07:41 +01:00
fish_npm_helper.fish Reformat all files 2019-05-05 12:09:25 +02:00
fish_opt.fish Fix fish_opt --help showing nextd manpage. 2017-11-14 01:56:58 -08:00
fish_print_git_action.fish Fixed invalid assignments in fish_print_git_action 2019-07-03 17:37:44 +02:00
fish_print_hg_root.fish Reformat all files 2019-05-05 12:09:25 +02:00
fish_prompt.fish Quote $USER when used with switch or test 2017-07-20 19:45:32 +02:00
fish_svn_prompt.fish svn_prompt: Check for svnversion 2019-10-30 21:45:50 +01:00
fish_title.fish Disable fish_title in emacs 2019-05-06 17:06:40 +02:00
fish_update_completions.fish Add __fish_anypython helper function 2019-03-09 18:04:21 +01:00
fish_vcs_prompt.fish fish_vcs_prompt: Stop at first success 2019-07-15 17:32:22 +02:00
fish_vi_cursor.fish Disable vi-cursor in tests 2019-05-05 17:31:33 +02:00
fish_vi_key_bindings.fish Simplify space binding and fix search 2019-09-21 16:06:19 -07:00
fish_vi_mode.fish reformat all fish scripts 2016-11-27 21:27:22 -08:00
funced.fish Revert "funced: Use variable-as-command" 2019-02-07 09:47:15 +01:00
funcsave.fish Make --help work 2018-11-22 12:43:35 +01:00
grep.fish reformat all fish scripts 2016-11-27 21:27:22 -08:00
help.fish Keep "; and" and "; or" on fish files 2019-05-05 13:34:38 +02:00
history.fish history: Use --contains by default for "delete" 2019-11-01 08:53:24 +01:00
hostname.fish reformat all fish scripts 2016-11-27 21:27:22 -08:00
isatty.fish isatty: command [ instead of command test 2019-02-16 17:15:52 -08:00
la.fish reformat all fish scripts 2016-11-27 21:27:22 -08:00
ll.fish reformat all fish scripts 2016-11-27 21:27:22 -08:00
ls.fish Reformat all files 2019-05-05 12:09:25 +02:00
man.fish Fix man function for NetBSD 2019-02-14 10:57:38 +01:00
N_.fish reformat all fish scripts 2016-11-27 21:27:22 -08:00
nextd-or-forward-word.fish reformat all fish scripts 2016-11-27 21:27:22 -08:00
nextd.fish Remove use of caret redirection from share/* 2018-04-01 13:42:38 -07:00
open.fish Make --help work 2018-11-22 12:43:35 +01:00
popd.fish Revert "convert popd and pushd to use argparse" 2017-09-14 12:36:37 +08:00
prevd-or-backward-word.fish reformat all fish scripts 2016-11-27 21:27:22 -08:00
prevd.fish Remove use of caret redirection from share/* 2018-04-01 13:42:38 -07:00
prompt_hostname.fish Revert prompt_hostname to short hostname only 2018-03-12 08:24:42 -05:00
prompt_pwd.fish update prompt_pwd to use argparse 2017-07-13 14:12:51 -07:00
psub.fish Switch from tee to cat in psub --fifo 2019-02-03 01:58:49 -08:00
pushd.fish Revert "convert popd and pushd to use argparse" 2017-09-14 12:36:37 +08:00
realpath.fish Make --help work 2018-11-22 12:43:35 +01:00
seq.fish seq.fish: use gseq if available. 2019-03-09 13:44:03 -08:00
setenv.fish fix setenv and add unit tests 2017-04-05 15:31:13 -07:00
suspend.fish Rename $pid (née %self) to $fish_pid 2018-03-24 11:54:27 -05:00
trap.fish functions/trap: Don't test with one argument 2019-01-27 15:38:03 +01:00
type.fish builtin functions: colorize output if interactive 2019-09-25 04:18:06 -07:00
umask.fish Revert "Switch to bare vars in our math invocations" 2017-09-09 23:35:47 -07:00
up-or-search.fish reformat all fish scripts 2016-11-27 21:27:22 -08:00
vared.fish Remove test invocations with implicit -n tests 2018-05-17 13:24:26 +02:00