summaryrefslogtreecommitdiff
path: root/shell/completion.bash
AgeCommit message (Collapse)Author
2019-02-28[shell] Skip loading completion code on non-interactive shellJunegunn Choi
This change is not required if you use the install script to generate ~/.fzf.bash or ~/.fzf.zsh which already has the proper guard statement. Close #1474
2018-07-06[completion] Filter out non-hostnames in SSH config file (#1329)Jay
* Correctly exclude SSH config options with Host SSH config files have 14 options containing 'Host'. Previously The zsh and bash completion scripts would include lines containing these options when doing command-line completion of SSH hosts with `ssh **`. This commit fixes that problem by only including lines with 'host '. * Don't autocomplete SSH hostnames using ? SSH config files support ? as well as * for wildcards in Host lines. This commit excludes lines containing ? for zsh/bash command line completeion using `ssh **`
2018-06-02[bash/zsh] Fix missing fuzzy completions (#1303)ptzz
* [bash/zsh] Fix missing fuzzy completions `cat foo**<TAB>` did not display the file `foobar` if there was a directory named `foo`. Fixes #1301 * [zsh] Evaluate completion prefix cat $HOME** cat ~username** cat ~username/foo**
2018-05-04[bash] Do not print error when falling back to default completion (#1279)ptzz
Fixes #1278
2018-04-30[bash] Fix infinite loop on tab completionJunegunn Choi
awk may not set OFS to match FS depending on the implementation. Close #1227
2018-04-12ZSH and Bash completion: remove shebang (#1248)Avindra Goolcharan
Shebangs are only for files that are directly executable. In cases where files are only sourced (such as completion scripts), these are unneeded.
2018-02-15[bash] Fix extra space issue of dynamic completion with 'nospace'Junegunn Choi
Close #1203
2017-12-03[bash-completion] Fix custom completion with dynamic loader enabledJunegunn Choi
After _completion_loader is called, instead of loading the entire completion.bash file, just restore the fzf completion for the current command. `_fzf_orig_completion_$cmd` is only set if _completion_loader actually changed the completion options to avoid infinite loop. Close #1170
2017-10-21[completion] Ensure ps called as command (#1098)Igor Urazov
When `ps` is aliased for something uncommon, like `alias ps=grc ps` which colorizes ps output, the output of `ps` can be unexpected and/or undesired. This change makes ps to be always executed as command, even if it's aliased.
2017-10-19[completion] Fix known_hosts completion for custom port number (#1092)Andrey Chernih
Handles records like "[20.20.7.168]:9722 ssh-rsa ..." This is a standard format for servers running on custom port according to http://man.openbsd.org/sshd.8#SSH_KNOWN_HOSTS_FILE_FORMAT A hostname or address may optionally be enclosed within ‘[’ and ‘]’ brackets then followed by ‘:’ and a non-standard port number.
2017-09-27[completion] Include host aliases in ssh completion (#1062)Josh Pencheon
2017-07-31Revert "[bash] Do not append space when path completion is cancelled"Junegunn Choi
This reverts commit 376a76d1d3c39a1686b6ac7a6118c1f80af3178e as it affects normal completion
2017-07-30[bash] Do not append space when path completion is cancelledJunegunn Choi
Close #990
2017-04-11[bash-completion] Use -o dirnames instead of -o plusdirsJunegunn Choi
Close #903 Related #135
2017-03-21Add support for IPv6 addresses in ssh completion (#877)Sam Van Den Berge
Signed-off-by: Sam Van Den Berge <sam@drgt.net>
2017-01-15[completion] Restore --height option for kill completionJunegunn Choi
2017-01-15[shell] Make layout configurable via $FZF_DEFAULT_OPTS and $FZF_{KEY}_OPTSJunegunn Choi
2017-01-15[completion] Add preview window to kill completionJunegunn Choi
2017-01-15Replace --normalize with --literal and enable normalization by defaultJunegunn Choi
Ref #790
2017-01-14Fix $FZF_COMPLETION_OPTS evaluationJunegunn Choi
Close #799
2017-01-08Add --height optionJunegunn Choi
2017-01-07[bash/zsh-completion] Filter ~/.ssh/known_hostsJunegunn Choi
Close #791
2016-12-31[bash-completion] Always backup existing completion definitionsJunegunn Choi
_fzf_completion_loaded is no longer checked. This change increases the load time by a few milliseconds, but I can't think of a better way to handle the issue. Close #783.
2016-09-24Fix #668Maverick Woo
Handle uppercase letters in program names. This also deals with `-` and `.`, both of which are quite common in program names, e.g., `xdg-open` and `foo.sh`.
2016-07-07[shell] Suppress alias/function expansionJunegunn Choi
Close #611
2016-06-02[bash/zsh] Take SSH completion hints from known_hostsJim Howell
Signed-off-by: Junegunn Choi <junegunn.c@gmail.com>
2016-04-23Update completion.bashGene Pavlovsky
Fixes #548. Avoid using a subshell in _fzf_defc().
2016-03-02[bash] Fix shellcheck warningsJunegunn Choi
Close #516
2016-02-070.11.3Junegunn Choi
2016-01-29[completion] _fzf_complete_COMMAND_post for post processingJunegunn Choi
e.g. _fzf_complete_foo() { _fzf_complete "--multi --reverse --header-lines=3" "$@" < <( ls -al ) } _fzf_complete_foo_post() { awk '{print $NF}' } [ -n "$BASH" ] && complete -F _fzf_complete_foo -o default -o bashdefault foo
2016-01-20Make fuzzy completion customizable with _fzf_compgen_{path,dir}Junegunn Choi
Notes: - You can now override _fzf_compgen_path and _fzf_compgen_dir functions to use custom commands such as ag instead of find for listing completion candidates. - The first argument is the base path to start traversal - Removed file-only completion in bash, i.e. _fzf_file_completion. Maintaining a list of commands that only expect files, not directories, is cumbersome (there are too many) and error-prone. TBD: - Added $FZF_COMPLETION_DIR_COMMANDS to customize the list of commands which use directory-only completion. The default is "cd pushd rmdir". Not sure if it's the best approach to address the requirement, I'll leave it as an undocumented feature. Related: #406 (@thomcom), #456 (@frizinak)
2015-12-28Fix autocompletion for absolute pathsKobe Lipkens
2015-12-29[bash/zsh-completion] List hidden files as wellJunegunn Choi
Close #456 and #457
2015-11-12[bash-completion] Fix #417 - Update command listJunegunn Choi
2015-11-06[bash-completion] Add nvim to f_cmdsLeandro Freitas
2015-11-03Make --extended defaultJunegunn Choi
Close #400
2015-10-12[bash-completion] Retain original completion options (#288)Junegunn Choi
2015-10-05[completion] Revamp completion APIJunegunn Choi
* _fzf_complete is the helper function for custom completion * _fzf_complete FZF_OPTS ARGS * Reads the output of the source command instead of the command string * In zsh, you can use pipe to feed the data into the function, but it's not possible in bash as by doing so COMPREPLY is set from the subshell and thus nullified * Change the naming convention for consistency: * _fzf_complete_COMMAND e.g. # pass completion suggested by @d4ndo (#362) _fzf_complete_pass() { _fzf_complete '+m' "$@" < <( local pwdir=${PASSWORD_STORE_DIR-~/.password-store/} local stringsize="${#pwdir}" find "$pwdir" -name "*.gpg" -print | cut -c "$((stringsize + 1))"- | sed -e 's/\(.*\)\.gpg/\1/' ) } # Only in bash complete -F _fzf_complete_pass -o default -o bashdefault pass
2015-10-05[zsh-completion] Allow custom completion functionJunegunn Choi
While in bash you can externally register custom completion functions using `complete` command, it was not possible to do so in zsh without changing completion.zsh as the name of the supported commands are hard-coded within the code (See #362). With this commit, fzf-completion of zsh will first look if `_fzf_COMMAND_completion` exists and calls the function, so one can externally define completion functions for specific commands. This commit also tries to make the interface of (yet undocumented) _fzf_list_completion helper function consistent across bash and zsh. So the following code works both on bash and zsh. _fzf_pass_completion() { local pwdir=${PASSWORD_STORE_DIR-~/.password-store/} local stringsize="${#pwdir}" let "stringsize+=1" _fzf_list_completion '+m' "$@" << "EOF" find "$pwdir" -name "*.gpg" -print | cut -c "$stringsize"- | sed -e 's/\(.*\)\.gpg/\1/' EOF } # Only on bash complete -F _fzf_pass_completion -o default -o bashdefault pass Note that the suggested convention and the interface are not yet final and subject to change. /cc @d4ndo
2015-09-15Replace --header-file with --header (#346)Junegunn Choi
and allow using --header and --header-lines at the same time. Close #346.
2015-07-26Add --margin optionJunegunn Choi
Close #299
2015-07-23[bash] Update fzf option completionJunegunn Choi
2015-07-04Fix g++: possible retry loopEvgeny Vereshchagin
See http://unix.stackexchange.com/q/213432/120177
2015-06-210.10.0Junegunn Choi
2015-06-14Add support for search historyJunegunn Choi
- Add `--history` option (e.g. fzf --history ~/.fzf.history) - Add `--history-max` option for limiting the size of the file (default 1000) - Add `previous-history` and `next-history` actions for `--bind` - CTRL-P and CTRL-N are automatically remapped to these actions when `--history` is used Closes #249, #251
2015-05-210.9.12Junegunn Choi
2015-05-11[zsh/bash-completion] Avoid caret expansionJunegunn Choi
Close #233 setopt extendedglob on zsh caused caret in grep pattern to be expanded. Problem identified and patch submitted by @lazywei.
2015-05-11[bash-completion] Allow specifying empty completion trigger (#230)Junegunn Choi
2015-05-08[bash-completion] Ignore 0.0.0.0Junegunn Choi
Close #228
2015-04-23Update completion for fzf itselfJunegunn Choi