aboutsummaryrefslogtreecommitdiffhomepage
Commit message (Collapse)AuthorAge
* Try to clarify test documentation for newbiesGravatar Fabian Homborg2016-02-28
| | | | See #2773
* Use command which in typeGravatar Fabian Homborg2016-02-28
| | | | | | | | Turns out some shells will alias which to be something function-aware, but doing this on fish would blow up because it would call type which would then call which which would then call type.... Fixes #2775
* Eliminate narrow_string_rep_tGravatar ridiculousfish2016-02-28
| | | | | | | | | | This was used to cache a narrow string representation of commands, so that if certain system calls returned errors after fork, we could output error messages without allocating memory. But in practice these errors are very uncommon, as are commands that have wide characters. It is simpler to do a best-effort output of the wide string, instead of caching a narrow string unconditionally.
* Re-use the parse tree generated during error detection for executionGravatar ridiculousfish2016-02-28
| | | | | | | Prior to this fix, read_ni would use parse_util_detect_errors to lint the script to run, and then parser_t::eval() to execute it. Both functions would parse the script into a parse tree. This allows us to re-use the parse tree, improving perfomance.
* Allow parse_execution_context to take ownership of a parse treeGravatar ridiculousfish2016-02-28
| | | | | | Introduces a new template moved_ref which is like an rvalue reference. This allows passing around objects while being explicit that the receiver may acquire ownership. This will help reduce some allocations.
* Add missing #include guards in FISH_PAGER_HGravatar ridiculousfish2016-02-27
|
* Remove unused MESS_SIZE defineGravatar ridiculousfish2016-02-27
|
* Remove some unnecessary statics and a silly #define constGravatar ridiculousfish2016-02-27
|
* Mark a bunch of constructors as explicitGravatar ridiculousfish2016-02-27
| | | | This prevents undesired implicit conversions
* Make expand_argument_list a static functionGravatar ridiculousfish2016-02-27
| | | | It doesn't use any properties of parser_t
* Eliminate parser_t::show_errorsGravatar ridiculousfish2016-02-27
| | | | Errors are now unconditionally shown
* Eliminate parser_type_tGravatar ridiculousfish2016-02-27
| | | | It was never fully implemented and wasn't used for anything
* Allow -w option as short for --wraps in define_functionGravatar ridiculousfish2016-02-27
| | | | Fixes #2772
* Allow variable completion from just a $Gravatar ridiculousfish2016-02-27
| | | | | Previously there had to be some variable text, now you can tab complete from just a naked $.
* Save a few allocations in src/parse_execution.cppGravatar ridiculousfish2016-02-27
|
* Fix a subtle problem that caused lots of unnecessary memory allocationGravatar ridiculousfish2016-02-27
|
* Rewrite __fish_urlencode to not encode valid charactersGravatar Kevin Ballard2016-02-27
| | | | | | Much better to only encode the characters that are not URL-safe. This also doesn't involve any forking, and it even handles newlines and NULs in the input.
* Remove share/config.fish from .gitignoreGravatar Kevin Ballard2016-02-26
| | | | | | This is a file under version control, there's no reason it should be listed here. Having it in .gitignore was causing tools like `ag` to avoid looking at share/config.fish.
* Skip over /etc/paths.d entries that don't existGravatar Kevin Ballard2016-02-26
| | | | | | I had an old /etc/paths.d/TeX file that listed a path /usr/texbin that doesn't exist anymore. This was causing the `set PATH` to print a warning.
* Standardize indentation in config.fishGravatar Kevin Ballard2016-02-26
|
* README updatesGravatar David Adam2016-02-26
| | | | [ci skip]
* Add functions and configuration snippets hierarchyGravatar Fabian Homborg2016-02-26
| | | | | | | | | | | | This allows "vendors" (i.e. third-party upstreams interested in supporting fish) to add auto-loaded functions and eager-loaded configuration "snippets", while still allowing both the user and the administrator to fully override all of that. This has been inspired by systemd's configuration hierarchy, and implements a similar scheme whereby files with the same name in higher-ranking directories override files in lower-ranking ones. Fixes #1956
* make testing on local servers hermeticGravatar Kurtis Rader2016-02-25
| | | | | | | | | | | | | | | | | | I noticed while fixing issue #2702 that the fish program being tested was sourcing config.fish files outside of the current build. This also happens when Travis CI runs the tests but isn't an issue there because of how Travis is configured to execute the tests. I also noticed that running `make test` was polluting my personal fish history; which will become a bigger problem if and when the fishd universal var file is moved from $XDG_CONFIG_HOME to $XDG_DATA_HOME. This change makes it possible for an individual to run the tests on their local machine secure in the knowledge that only the config.fish and related files from their git repository will be used and doing so won't pollute their personal fish history. Resolves #469
* Send BEL to terminal to flash/beep while trying to complete something not ↵Gravatar Aaron Gyes2016-02-25
| | | | completeable.
* Makefile: enable maintainer mode for PCRE2Gravatar David Adam2016-02-24
| | | | Closes #2469.
* github: add issues templateGravatar David Adam2016-02-24
| | | | [ci skip]
* add completions for diskutil (osx)Gravatar Fabian Weisshaar2016-02-23
|
* Update index.hdr.inGravatar Adam Dymitruk2016-02-22
| | | | simple grammar correction
* add files for the fish logo as used for the fish-shell stickersGravatar Steve Stagg2016-02-22
|
* Resume sorting completions from wildcard expansionsGravatar ridiculousfish2016-02-22
| | | | Ought to fix the wildcard expansion test on Linux
* Remove an unused variableGravatar ridiculousfish2016-02-22
|
* make fish compatible with pcre2 10.21Gravatar Michael Steed2016-02-21
| | | | | | | | | | | | | pcre2_substitute() now sets the output buffer length to PCRE2_UNSET (~0) if the output buffer is determined to be too small. This change keeps track of the buffer size separately where pcre2 can't touch it. A better fix would be to let pcre2 tell fish what size buffer it needs. This can be done with PCRE2_SUBSTITUTE_OVERFLOW_LENGTH, but this requires pcre2 10.21 or later (released January 12), which may be too new to introduce as a dependency at this point. Fixes #2743
* docs: Remove duplicate color variable listingGravatar Fabian Homborg2016-02-21
|
* Try to just see if grep is happy with --color=auto, or not, as the --help ↵Gravatar Aaron Gyes2016-02-20
| | | | exit status varies in BSD vs. GNU.
* Miscellaneous cleanup and dead code removalGravatar ridiculousfish2016-02-19
| | | | Noticed by cppcheck
* Add fish_color_autosuggestion to docsGravatar Fabian Homborg2016-02-19
| | | | Fixes #2741.
* Remove some newly dead codeGravatar ridiculousfish2016-02-18
| | | | out_suggested_cdpath is no longer required from is_potential_path
* Remove autosuggest_suggest_specialGravatar ridiculousfish2016-02-18
|
* Implement the cd "unique hierarchy" autosuggestion in expand.cppGravatar ridiculousfish2016-02-18
|
* Teach tests about changes to special autosuggestionsGravatar ridiculousfish2016-02-18
|
* Always env_set_pwd after chdir in the fish testsGravatar ridiculousfish2016-02-18
| | | | This avoids confusion between getcwd() and $PWD
* Additional work on unifying cd autosuggestions with completeGravatar ridiculousfish2016-02-18
|
* Complete to take a pointer to output completions, not a mutable refGravatar ridiculousfish2016-02-18
|
* Migrate sort_and_prioritize to complete.cppGravatar ridiculousfish2016-02-18
|
* Switch autosuggest_suggest_special to returning a completion_tGravatar ridiculousfish2016-02-18
|
* Early work towards moving the cd special autosuggestion into completionsGravatar ridiculousfish2016-02-18
| | | | This will simplify some code and make the cd autosuggestion smarter
* Fix the file URL for Terminal.appGravatar Jak Wings2016-02-16
| | | | | | | * When using a UTF-8 locale, set locale to C temporarily in order to read one byte at a time. * Use the builtin printf in a forward-compatible way. (GNU) * Improve the readability of the code.
* Stop always returning STATUS_BUILTIN_ERROR on --merge.Gravatar Aaron Gyes2016-02-16
|
* fix flakey testGravatar Kurtis Rader2016-02-16
| | | | | | I've run this more than twenty times through Travis CI (by adding/removing a comment line). Without this tweak the longest sequence seems to be around six successful runs.
* Correctly handle --merge in the history.fish functionGravatar ridiculousfish2016-02-16
| | | | | Previously --merge happened to work, but only because it was smuggled in through the 'print' command