ridiculousfish
1fbf633817
Reimplement exec parsing. Instead of special-casing exec as a command,
...
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
2014-02-13 10:10:49 -08:00
ridiculousfish
503bbd85b5
Test and fix issue where, if binding X is a prefix of binding Y, and X
...
is specified before Y, then Y will never be invoked because X will
always get there first. Now instead we order bindings in descending
order by length, so that we always test the binding before any others that
prefixes it. Fixes #1283 .
2014-02-12 12:52:31 -08:00
ridiculousfish
5ea7f52df2
Don't complete variables when single quoted. Fixes #1023
2014-02-09 15:27:04 -08:00
ridiculousfish
bac3b39227
Highlight the entire variable name, not just the dollar sign. Fixes #1201
2014-02-03 14:16:00 -08:00
ridiculousfish
830ab99e6e
Merge branch 'master' into pager
2014-01-24 18:10:41 -08:00
ridiculousfish
535445a555
Replace assertions with new do_test macro in fish_tests.cpp
2014-01-23 18:19:52 -08:00
ridiculousfish
f6afddd94b
Fix for tab-completing arguments. Closes #1261
2014-01-23 18:07:21 -08:00
ridiculousfish
d9d65577f4
Improved navigation of pager list. Added tests for it too.
2014-01-19 16:41:40 -08:00
David Adam
568de7e818
fish_tests.cpp: set return value if tests fail
2014-01-15 23:50:42 +08:00
Konrad Borowski
7874cdf52a
Replace size_t with unsigned long.
...
size_t is not compatible type for `%lu`.
2014-01-15 15:36:50 +01:00
ridiculousfish
53814983ff
Update style and formatting to conform to fish style guide.
2014-01-15 01:40:40 -08:00
ridiculousfish
e2fe873049
Change highlight colors from a bitmask into a combination enum / bitmask
...
so that we can support more than 16 color specifications.
2014-01-15 01:01:25 -08:00
ridiculousfish
28c7094f5b
Fix for issue where 'function' would not define a function if the
...
arguments came before its name. Fixes #1240
2014-01-14 02:29:53 -08:00
ridiculousfish
ff5e2746da
Fix for issue in new parser where no error would be reported if the very
...
first token is an error. Fixes #1239 .
2014-01-14 00:38:55 -08:00
ridiculousfish
dc8014562b
Fix for issue where unterminated quotes would attempt to be executed,
...
instead of continuing edit onto the next line.
2014-01-14 00:02:18 -08:00
ridiculousfish
212eeaa77c
Correctly report errors for 'and' and 'or' in pipelines with new parser
2014-01-13 13:19:58 -08:00
ridiculousfish
95f87cdd56
Support for special && and || error messages in new parser
2014-01-13 02:24:11 -08:00
ridiculousfish
746cc4c10b
Rename highlight_shell_magic to highlight_shell_new_parser
2014-01-13 00:31:25 -08:00
ridiculousfish
096f850433
Eliminate class parse_t
2014-01-12 22:39:12 -08:00
ridiculousfish
bf75731bbe
Fix for wrong syntax highlighting in the face of tokenizer errors, e.g.
...
"echo 'hi"
2014-01-03 17:42:25 -08:00
ridiculousfish
b8079953d8
Fix for cross-test interference where cancellation from one test would
...
lead to failure in expansion test
2014-01-03 15:27:39 -08:00
ridiculousfish
993148552e
Support for Ctrl-C cancellation in new parser. Added tests for it too.
2014-01-02 16:19:33 -08:00
ridiculousfish
fb882f0b69
Support for stack overflow and infinite recursion detection in new
...
parser
2014-01-01 15:29:56 -08:00
ridiculousfish
a6ca809a4e
Fix for issue where last job_list in tree would have a -1 production_idx
...
because we never actually sent the terminal token type
2013-12-26 14:52:15 -08:00
ridiculousfish
af21dfd294
Make the tests compile again
2013-12-16 17:18:32 -08:00
ridiculousfish
5cf59de676
Finish rewriting detect_errors to use new parser. All tests now pass (!)
2013-12-12 18:18:07 -08:00
ridiculousfish
7a3f5afee7
Initial work towars improved error reporting. Tests currently fail.
2013-12-08 21:54:06 -08:00
ridiculousfish
925fe65dd8
Remove the indentation part of parser_t::test(). Rename it to
...
detect_errors().
2013-12-08 16:25:07 -08:00
ridiculousfish
67b1f14a6f
Better support for parse errors in indenting
2013-12-08 14:13:23 -08:00
ridiculousfish
dd0cc5ed9f
Rewriting indenting functionality to use new parser
2013-12-08 13:41:12 -08:00
ridiculousfish
a23441109d
Merge branch 'master' into ast
...
Conflicts:
complete.cpp
fish_tests.cpp
highlight.cpp
2013-12-07 12:54:43 -08:00
ridiculousfish
263f919beb
Replace autosuggestions "completions to load" mechanism with moderately
...
less hackish and far simpler "perform on main thread" mechanism
2013-11-29 23:44:26 -08:00
ridiculousfish
9f986d8a86
Implemented iothread_perform_on_main() to support background threads
...
scheduling work on main thread
2013-11-27 16:04:30 -08:00
ridiculousfish
5121417725
Fix for annoying error message when converting out of range escape
...
https://github.com/fish-shell/fish-shell/issues/1107
2013-11-26 10:52:32 -08:00
ridiculousfish
f2211ff3ad
Update some tests
2013-11-26 00:01:23 -08:00
Konrad Borowski
312977d5a6
Fix %lu for size_t in fish_tests.cpp
2013-11-25 16:15:36 +01:00
ridiculousfish
2a1fd421bd
Correctly detect unbalanced 'end' in syntax highlighting
2013-11-25 00:48:01 -08:00
ridiculousfish
34540babdb
Merge branch 'master' into ast
...
Conflicts:
complete.cpp
fish_tests.cpp
2013-11-24 23:21:00 -08:00
ridiculousfish
9f6223311e
Large cleanup and refactoring of unescape() function.
2013-11-24 22:58:39 -08:00
ridiculousfish
964c7e6f3b
Merge branch 'master' into ast
...
Conflicts:
complete.cpp
2013-10-27 13:37:14 -07:00
ridiculousfish
cf766b55cc
Fix formatting
2013-10-26 15:27:39 -07:00
ridiculousfish
ce857b0770
Syntax highlighting for file redirections
2013-10-13 16:58:40 -07:00
ridiculousfish
cbd8a27a6d
Beef up completion tests
2013-10-12 12:04:31 -07:00
ridiculousfish
b60db79866
Modify fish_tests to support specifying the tests to run via arguments
2013-10-12 11:32:34 -07:00
ridiculousfish
ddec870d25
Rework decision process for whether to interpret keywords as structural
...
or as commands (for LL parser). Will allow 'builtin --' to parse as a
plain statement, instead of a decorated statement '--'
2013-10-12 02:46:49 -07:00
ridiculousfish
77e358a001
Support for parsing e.g. 'command --' as a plain statement, instead of
...
executing the command '--'.
2013-10-12 01:47:31 -07:00
ridiculousfish
5490f54d00
Make parse_t::parse a static method so we don't have to create lots of
...
useless parse_t objects
2013-10-12 01:17:55 -07:00
ridiculousfish
58447c147f
Make the new parser LL(2). Support for correct handling of e.g. 'command
...
--help'
2013-10-09 20:37:07 -07:00
ridiculousfish
7b86b2e05a
Adoption of new parser in abbreviations
2013-10-09 02:03:50 -07:00
ridiculousfish
54d7c29221
Syntax highlighting for command substitutions
2013-10-08 18:41:35 -07:00