Commit message (Collapse) | Author | Age | |
---|---|---|---|
* | Hack the tokenizer to compress multiple adjacent newlines into one | ridiculousfish | 2014-11-24 |
| | | | | | This slightly reduces the size of parse trees, and is otherwise a minor optimization | ||
* | Disallow backgrounding in conditionals and before and/or bool statements | ridiculousfish | 2014-11-02 |
| | | | | Fixes #1136 | ||
* | Support space separators for abbreviations as part of #731 | ridiculousfish | 2014-10-11 |
| | |||
* | Teach the highlighter about multiple adjacent square bracket expansions | ridiculousfish | 2014-09-30 |
| | | | | Fixes #1627 | ||
* | Fix to indent comments in blocks properly (#1710) | ridiculousfish | 2014-09-29 |
| | | | | | | | | | | | | | | | | | | | | This makes two changes to parse trees: 1. Unmaterialized nodes no longer have an invalid source location For example, with the code `while false;end` there are no tokens associated with the while loop's job_list, and therefore it is unmaterialized. Previously it would have had a SOURCE_OFFSET_INVALID. But now it has a zero source length, but an offset equal to the end of the while loop (i.e. the semicolon), and a zero length. Correspondingly, the has_source function now checks the length instead of the offset. 2. Special (comment and error) nodes have always been "disconnected," meaning they are not the child of any other node. However, they now have their parent offsets set to whatever the top of the node stack was when the node was encountered. This gives us a sense of which node the comment is "in", e.g. if we are constructing a job list then the comment's parent will be the job list. This lets us determine the comment's indent. | ||
* | Revert "Prepend ./ to "flag-like file" wildcard expansions and completions" | ridiculousfish | 2014-09-25 |
| | | | | | | | | | This reverts commit 316d7004a3d4f6905f36301b6d5c9ebd934f11fa. Reverts fix for 1519 in light of #1713 Conflicts: fish_tests.cpp | ||
* | Report expand errors better in fish tests | Kevin Ballard | 2014-09-25 |
| | | | | Print the expected and actual results if an error occurs. | ||
* | Refactor expand tests slightly to handle errors better | Kevin Ballard | 2014-09-25 |
| | | | | | | If we get an error relating to our manipulation of the temporary directory or cwd, we don't want to run the rest of the tests that assume it worked. | ||
* | Prepend ./ to "flag-like file" wildcard expansions and completions | ridiculousfish | 2014-09-24 |
| | | | | | | | | If a wildcard or completion expands to a file that begins with one or more dashes, prepend a ./ to it so that it doesn't get parsed as an option. Fixes #1519 | ||
* | Allow running executables with $ in their name. | ridiculousfish | 2014-09-21 |
| | | | | Fixes #1686 | ||
* | Implement new `read --null` flag | Kevin Ballard | 2014-09-21 |
| | | | | | | | | The `--null` flag to `read` makes it split incoming lines on NUL instead of newlines. This is intended for processing the output of a command that uses NUL separators (such as `find -print0`). Fixes #1694. | ||
* | Clean up variable expansion, and properly handle embedded NULs | ridiculousfish | 2014-08-24 |
| | |||
* | Add a test for syntax highlighting pipes | ridiculousfish | 2014-08-22 |
| | |||
* | Support for command wrapping ("aliases") | ridiculousfish | 2014-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. | ||
* | Don't try to colorize errors when running in Xcode | ridiculousfish | 2014-08-04 |
| | |||
* | Add fish_tests target to Xcode build | ridiculousfish | 2014-08-04 |
| | | | | Allows running the tests in Xcode | ||
* | Fix up OSC / iTerm2 escape code parsing as part of #1565 | ridiculousfish | 2014-07-30 |
| | |||
* | Parse OSC codes in escape_code_length(). They begin with <esc> ] and are ↵ | George Nachman | 2014-07-30 |
| | | | | terminated with ST (<esc> backslash) or BEL (ASCII 7). | ||
* | Improve history robustness against corrupt files | ridiculousfish | 2014-07-29 |
| | | | | Fixes #1581 | ||
* | Teach fish to compute the length of more escape sequences. | ridiculousfish | 2014-07-26 |
| | | | | Fixes #1243 | ||
* | Add support for history --merge to incorporate history changes from | ridiculousfish | 2014-07-25 |
| | | | | | | other sessions. Fixes #825 | ||
* | Universal variable callbacks should only be announced for changed | ridiculousfish | 2014-06-16 |
| | | | | values, not every value. Also support erase notifications. | ||
* | Migrate global functions out of env_universal. Have env operate directly | ridiculousfish | 2014-06-15 |
| | | | | on an env_universal_t. | ||
* | Remove inotify-based universal notifier | ridiculousfish | 2014-05-29 |
| | | | | | | The inotify notifier is fragile, fails on travis, and fails to compile on certain Linux kernels. It doesn't appear to work as well as the named pipe mechanism. Best to just get rid of it. | ||
* | Fix some annoying warnings in fish_tests with gcc 4.8 | ridiculousfish | 2014-05-24 |
| | |||
* | Remove an errant system("ls") | ridiculousfish | 2014-05-21 |
| | |||
* | Disable inotify tests pending investigation into why it fails on | ridiculousfish | 2014-05-21 |
| | | | | travis-ci | ||
* | Try using IN_DELETE_SELF with inotify | ridiculousfish | 2014-05-16 |
| | |||
* | Add check for kernel version to try to determine why travis-ci is | ridiculousfish | 2014-05-16 |
| | | | | failing with inotify | ||
* | Check for non-negative watch object in inotify_add_watch | ridiculousfish | 2014-05-16 |
| | |||
* | Add a check to ensure the file really is deleted in inotify test | ridiculousfish | 2014-05-16 |
| | |||
* | Add test for inotify support to try to track down travis-ci is failing | ridiculousfish | 2014-05-16 |
| | |||
* | Refine test for enabling strategy_inotify in fish_tests | ridiculousfish | 2014-05-15 |
| | |||
* | Fix a warning about missing enum in fish_tests.cpp | ridiculousfish | 2014-05-15 |
| | |||
* | Merge branch 'master' into death_of_fishd | ridiculousfish | 2014-05-09 |
|\ | |||
* | | Remove needs_polling from universal_notifier_t. Add some expository | ridiculousfish | 2014-05-07 |
| | | | | | | | | comments. | ||
* | | Further cleanup and rationalization of named pipe universal notifier. | ridiculousfish | 2014-05-06 |
| | | |||
| * | Move the empty function test to tests. | Konrad Borowski | 2014-05-06 |
| | | |||
* | | Fix named pipe universal notifier. No more threads. Tests now pass. | ridiculousfish | 2014-05-05 |
| | | |||
| * | Improve test_wchar2utf8(). | Konrad Borowski | 2014-05-04 |
| | | | | | | | | | | | | | | | | | | | | | | Currently it contains strange code like using `do` loop in order to avoid `goto`s (they aren't evil, honestly), the pointless `if (mem)` conditional which doesn't even work (had semicolon for some reason). You may think this code had a bug where the code didn't check for the pointer to be null before calling `free`, but this is not the case, as according to C and C++ standard, `free` should allow `NULL` pointers, and ignore them. | ||
* | | Make inotify-based universal variable notifier tests pass | ridiculousfish | 2014-05-03 |
| | | |||
* | | Merge branch 'death_of_fishd' of https://github.com/fish-shell/fish-shell ↵ | ridiculousfish | 2014-05-03 |
|\ \ | | | | | | | | | | into death_of_fishd | ||
| * | | Re-establish inotify watch when file is deleted | ridiculousfish | 2014-05-03 |
| | | | |||
* | | | Merge branch 'master' into death_of_fishd | ridiculousfish | 2014-05-03 |
|\ \ \ | |/ / |/| / | |/ | | | Conflicts: configure.ac | ||
| * | Simple test for completing redirections | ridiculousfish | 2014-05-02 |
| | | |||
* | | Early implementation of inotify-based universal variable notifier for | ridiculousfish | 2014-05-01 |
| | | | | | | | | Linux | ||
* | | Implement notifyd-based notification strategy for universal variables | ridiculousfish | 2014-04-30 |
| | | | | | | | | (OS X specific) | ||
* | | Implement universal variable deletion. Adopt shared memory uvar notification. | ridiculousfish | 2014-04-29 |
| | | |||
* | | Implement shared memory strategy for universal variable notifications | ridiculousfish | 2014-04-29 |
| | | |||
* | | Move universal variable callbacks out from under the lock, to avoid a | ridiculousfish | 2014-04-29 |
| | | | | | | | | possible deadlock on reentrancy |