aboutsummaryrefslogtreecommitdiffhomepage
path: root/complete.cpp
Commit message (Collapse)AuthorAge
* Fix issue where tab completions could ignore command-specific completionsGravatar ridiculousfish2014-11-20
| | | | Fixes #1742
* Don't suggest non-directories when tab completing cdGravatar ridiculousfish2014-10-31
| | | | Fixes #1059
* Remove a bunch of dead code identified by cppcheckGravatar ridiculousfish2014-10-31
|
* Set of fixes for issues identified by cppcheckGravatar ridiculousfish2014-10-30
|
* Fix C_ call to work when gettext is presentGravatar ridiculousfish2014-10-30
|
* Make C_ (gettext used in completions) return wcstringGravatar ridiculousfish2014-10-30
|
* Don't include child directories of $PATH in completionsGravatar Kevin Ballard2014-09-20
| | | | | | | | | Directories are completed like commands, because of implicit cd. However, directories found inside $PATH entries should not be completed, as implicit cd doesn't work there. Similarly, directories should not be completed after the `command` builtin. Fixes #1695.
* Don't erase old-style options with `complete -l foo -e`Gravatar Kevin Ballard2014-09-02
| | | | | When erasing long option completions, distinguish between gnu-style and old-style options, just like we do when adding and printing completions.
* Don't erase all long opts with `complete -e`Gravatar Kevin Ballard2014-09-02
| | | | | | When using `complete -c foo -l bar -e`, all long options for the command were being erased because it was also comparing the short option, which was 0.
* Don't segfault when erasing short option completionsGravatar Kevin Ballard2014-09-02
| | | | | | | When using `complete -s x -e`, the long option is unspecified, which makes it NULL. Comparing this to a `wcstring` segfaults. Fixes #1182.
* Don't suggest after | & or in commentsGravatar ridiculousfish2014-08-24
| | | | Fixes #1631
* Make escape_string transform wildcard charactersGravatar ridiculousfish2014-08-16
| | | | | | The characters ANY_CHAR, ANY_STRING, and ANY_STRING_RECURSIVE are currently transformed by unescape, but not by escape. Let's try escaping them. Fixes #1614.
* Support for command wrapping ("aliases")Gravatar ridiculousfish2014-08-15
| | | | | | | | | | | | | | | | | | | | | | | Add the --wraps option to 'complete' and 'function'. This allows a command to (recursively) inherit the completions of a wrapped command. Fixes #393. When evaluating a completion, we inspect the entire "wrap chain" for a command, i.e. we follow the sequence of wrapping until we either hit a loop (which we silently ignore) or the end of the chain. We then evaluate completions as if the wrapping command were substituted with the wrapped command. Currently this only works for commands, i.e. 'complete --command gco --wraps git\ checkout' won't work (that would seem to encroaching on abbreviations anyways). It might be useful to show an error message for that case. The commandline builtin reflects the commandline with the wrapped command substituted in, so e.g. git completions (which inspect the command line) will just work. This sort of command line munging is also performed by 'complete -C' so it's not totally without precedent. 'alias will also now mark its generated function as wrapping the 'target.
* Use adjusted_pos when determining the token for tab completingGravatar ridiculousfish2014-05-03
| | | | redirecitons, per #1296
* Correctly complete redirections. Fixes #1296Gravatar ridiculousfish2014-05-02
|
* Run restyle.sh to enforce style rules.Gravatar ridiculousfish2014-03-31
|
* Excise use of parser_t's error() functionality. Thread aGravatar ridiculousfish2014-03-21
| | | | | | parse_error_list_t through all of the expand functions, enabling them to report errors more directly. Improve aspects of error reporting for expansion failures.
* Rewrite parser_t::test_args and parser_t::eval_args to use new parserGravatar ridiculousfish2014-03-20
|
* Rewrite parser_t::eval_args to use new AST parserGravatar ridiculousfish2014-03-20
|
* Revert "Merge pull request #1317 from pullreq/cpp"Gravatar ridiculousfish2014-02-28
| | | | | | | This reverts commit 74135c0600d5dcc40d396d0e7293c17b8d4bdaa7, reversing changes made to 6d749789ce240a3e6f1447777db63fd8e7525560. See discussion in #1317
* Fixes .c -> .cpp in comments. For doxygen.Gravatar Geoff Nixon2014-02-27
|
* Fix for busted tab completions in for loop arguments, switch statements,Gravatar ridiculousfish2014-02-21
| | | | and other syntactic constructs. Fixes #1309
* Reimplement exec parsing. Instead of special-casing exec as a command,Gravatar ridiculousfish2014-02-13
| | | | | | promote it to a decoration (like 'command' or 'builtin'). This makes tab completion and syntax highlighting treat exec's first argument as a command and is otherwise a nice simplification. Fixes #1300
* Don't complete variables when single quoted. Fixes #1023Gravatar ridiculousfish2014-02-09
|
* Fix for tab-completing arguments. Closes #1261Gravatar ridiculousfish2014-01-23
|
* Update style and formatting to conform to fish style guide.Gravatar ridiculousfish2014-01-15
|
* Fix for extra space when tab completing directories. Fixes #1241Gravatar ridiculousfish2014-01-14
|
* Eliminate class parse_tGravatar ridiculousfish2014-01-12
|
* Miscellaneous minor fixes based on cppcheck static analyzerGravatar ridiculousfish2014-01-12
|
* Miscellaneous optimizations to reduce string copyingGravatar ridiculousfish2014-01-07
|
* Merge branch 'master' into astGravatar ridiculousfish2014-01-01
|\
* | Support for stack overflow and infinite recursion detection in newGravatar ridiculousfish2014-01-01
| | | | | | | | parser
| * Fix completion bug for special fish characters.Gravatar Mandeep Sandhu2013-12-30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Issue #1108: If there are special characters like '{' in the completion suggestions, then we fail to parse it successfully as we are passing an unescaped version of the character to parser_t::eval_args(...). This causes us to retun w/o completion suggestions. This bug was discovered while implementing 'git stash' completion as the suggestion contained strings like 'stash@\{0\}'. Th fix is to properly escape the string before parsing it.
* | Merge branch 'master' into astGravatar ridiculousfish2013-12-07
|\| | | | | | | | | | | | | Conflicts: complete.cpp fish_tests.cpp highlight.cpp
| * Replace autosuggestions "completions to load" mechanism with moderatelyGravatar ridiculousfish2013-11-29
| | | | | | | | less hackish and far simpler "perform on main thread" mechanism
| * Allow autosuggestions to do job expansion. FixesGravatar ridiculousfish2013-11-29
| | | | | | | | https://github.com/fish-shell/fish-shell/issues/1152
* | Merge branch 'master' into astGravatar ridiculousfish2013-11-24
|\| | | | | | | | | | | Conflicts: complete.cpp fish_tests.cpp
| * Large cleanup and refactoring of unescape() function.Gravatar ridiculousfish2013-11-24
| |
* | Merge branch 'master' into astGravatar ridiculousfish2013-10-27
|\| | | | | | | | | Conflicts: complete.cpp
| * Fix formattingGravatar ridiculousfish2013-10-26
| |
* | Fix for bogus completions for function namesGravatar ridiculousfish2013-10-13
| |
* | Adopt new parser in tab completionsGravatar ridiculousfish2013-10-12
|/
* Restore directories' tab completion without slash in command.Gravatar Konrad Borowski2013-10-01
| | | | This is needed for implicit cd when ending command with `/`.
* Make tok_last_type return an enum token_type instead of intGravatar ridiculousfish2013-09-30
|
* Don't do fuzzy matching for file completions for arguments beginningGravatar ridiculousfish2013-09-15
| | | | with a dash, as suggested in #568
* Adjust prefix completions to sort alphabetically instead of by length.Gravatar ridiculousfish2013-08-31
| | | | | Other completions are still sorted by length. https://github.com/fish-shell/fish-shell/issues/923
* FormattingGravatar ridiculousfish2013-06-02
|
* Support for fuzzy completionsGravatar ridiculousfish2013-05-25
| | | | | https://github.com/fish-shell/fish-shell/issues/568 https://github.com/fish-shell/fish-shell/issues/528
* Prevent inline destructor of completion_t to reduce compiled code size a bitGravatar ridiculousfish2013-04-19
|
* Update code formattingGravatar ridiculousfish2013-03-21
|