JT
e36649f74b
Update path completions to handle spaces ( #5419 )
2022-05-03 12:37:38 +12:00
panicbit
49cbc30974
Add ends-with operator and fix dataframe operator behavior ( #5395 )
...
* add ends-with operator
* escape needles in dataframe operator regex patterns
2022-05-02 20:02:38 +12:00
JT
4a69819f9a
Rename =^ to 'starts-with' ( #5407 )
2022-05-02 19:20:07 +12:00
JT
92785ab92c
Add unescaping to external command parsing ( #5399 )
2022-05-02 07:26:29 +12:00
JT
98ab31e15e
Move uses of trim_quotes to unescape for filenames ( #5398 )
...
* Move uses of trim_quotes to unescape for filenames
* Fix Windows tests
2022-05-02 06:37:20 +12:00
gipsyh
fb8f7b114e
Fix use of export/alias --help
bug ( #5332 )
...
* fix alias --help bug
Signed-off-by: SuYuheng <yuheng.su@motiong.com>
* fix export --help bug
Signed-off-by: SuYuheng <yuheng.su@motiong.com>
Co-authored-by: SuYuheng <yuheng.su@motiong.com>
2022-04-26 11:51:49 -05:00
JT
3492d4015d
Allow bare words to interpolate ( #5327 )
...
* Allow bare words to interpolate
* fix highlighting
2022-04-26 11:44:44 +12:00
Herlon Aguiar
5ff2ae628b
nu-cli: directory syntax shape + completions ( #5299 )
2022-04-22 15:18:51 -05:00
JT
ee29a15119
Add 'and' and 'or' operators ( #5297 )
2022-04-23 07:14:31 +12:00
JT
76079d5183
Move config to be an env var ( #5230 )
...
* Move config to be an env var
* fix fmt and tests
2022-04-19 10:28:01 +12:00
merkrafter
a30930324d
Support binary literals with binary format ( #5149 )
...
* 4924 Support binary literals with binary format
* 4924 Support automatic padding for binary literals
2022-04-11 19:58:57 +12:00
JT
14066ccc30
Fix known externals, fix operator spans ( #5140 )
2022-04-09 17:17:48 +12:00
Hristo Filaretov
683b912263
Track call arguments in a single list ( #5125 )
...
* Initial implementation of ordered call args
* Run cargo fmt
* Fix some clippy lints
* Add positional len and nth
* Cargo fmt
* Remove more old nth calls
* Good ole rustfmt
* Add named len
Co-authored-by: Hristo Filaretov <h.filaretov@protonmail.com>
2022-04-09 14:55:02 +12:00
JT
97eb8492a3
Improve $in
handling ( #5137 )
...
* Simplify in logic
* Add tests
* more tests, and fixes
2022-04-09 09:41:05 +12:00
JT
0b85938415
Soften the block arity checking ( #5135 )
2022-04-09 07:57:27 +12:00
Reilly Wood
b2c52b51b7
Change string contains operators to regex ( #5117 )
2022-04-07 18:23:14 +12:00
JT
888369022f
Add datetime to math-like ( #5118 )
...
* Add datetime to math-like
* add test
2022-04-07 18:02:28 +12:00
JT
4409185e1b
Improve describe to be more accurate ( #5116 )
2022-04-07 16:34:09 +12:00
JT
ef1934a7ee
Remove external name exceptions ( #5115 )
2022-04-07 14:01:31 +12:00
JT
591fb4bd36
Add unary not ( #5111 )
2022-04-07 07:10:25 +12:00
JT
abe028f930
Add raw strings, use raw strings for env ( #5090 )
2022-04-05 08:42:26 +12:00
JT
6649da3f5d
Add support for single value row conditions ( #5072 )
2022-04-03 10:41:36 +12:00
Darren Schroeder
2cb815b7b4
Add starts with operator ( #5061 )
...
* add starts_with operator
* added a test
2022-04-01 13:35:46 -05:00
Jakub Žádník
d89ad4fafd
Add record, list, and table to signature types ( #5040 )
2022-03-31 11:11:03 +03:00
Reilly Wood
31a4fc41eb
Fix env var shorthand when value contains =
( #5022 )
2022-03-30 09:56:55 +13:00
JT
cf88c8eef3
Improve escaping in string interpolation ( #4982 )
2022-03-27 12:52:09 +13:00
JT
d122827a30
Fix operator precedence parser ( #4947 )
2022-03-25 16:23:08 +13:00
Tomoki Aonuma
90013295aa
Fix parse_string_strict() to detect unbalanced quotes properly ( #4928 )
2022-03-25 05:57:03 +13:00
JT
66e736dab4
Externals shouldn't expand aliases ( #4889 )
2022-03-22 11:57:48 +13:00
JT
bd5778fa24
remove the boolean vars ( #4879 )
2022-03-20 08:12:10 +13:00
JT
983d115bc0
Add an alias denylist for expansions ( #4871 )
2022-03-19 08:03:57 +13:00
JT
7773c4cd4d
Fix single quote external interpolation ( #4867 )
2022-03-18 19:59:28 +13:00
JT
d0cbb2d12c
Allow expanding aliases before keywords, improve hiding ( #4858 )
...
* Allow aliasing source
* Add test
* improve hiding
* Finish adding tests
* fix test
2022-03-18 11:35:50 +13:00
JT
0bd8664f33
Fix string interpolation escaping ( #4854 )
2022-03-16 05:09:30 +13:00
JT
54d9fff4f2
Revert "Alias to keywords (eg source
) ( #4835 )" ( #4841 )
...
This reverts commit c023d4111a
.
2022-03-13 13:38:16 -07:00
JT
c023d4111a
Alias to keywords (eg source
) ( #4835 )
...
* Allow aliasing source
* Add test
2022-03-13 11:30:37 -07:00
JT
12bf23faa6
Move completions to DeclId ( #4801 )
...
* Move completions to DeclId
* fmt
* fmt
2022-03-10 09:49:02 +02:00
JT
8fcf51908a
Fix expansion of row condition implied it ( #4795 )
2022-03-09 08:05:03 -05:00
JT
2ac990655e
Add support for var decl spans ( #4787 )
2022-03-09 04:42:19 -05:00
Darren Schroeder
35ff1076f3
add ansi escape ( #4772 )
...
* add ansi escape
* also add the ability to escape parens
* add a few more escapes that could be problematic for the nushell lang
2022-03-07 16:39:16 -06:00
JT
1837bf775c
Default values ( #4770 )
2022-03-07 15:08:56 -05:00
JT
a2723c2ba4
Fix rest parsing ( #4765 )
...
* More nuon tests, fix table print
* Fix rest type parsing
2022-03-07 11:44:27 -05:00
JT
e64ca97fe2
move scope variable into nu variable ( #4725 )
2022-03-04 11:36:11 -05:00
Genna Wingert
97b3e4a233
Fix aliases to known externals ( #4707 )
2022-03-03 14:05:55 -05:00
JT
7d0531d270
Add support for escape characters, make nuon a JSON superset ( #4706 )
...
* WIP
* Finish adding escape support in strings
* Try to fix windows
2022-03-03 13:14:03 -05:00
Yutaro Ohno
210d25f2a0
Add into duration
( #4683 )
...
* Add `into duration` command
* Avoid using unwrap()
* Use existing logic to parse duration strings
2022-03-03 08:16:04 -05:00
JT
96a1bf5f8d
Experiment: Allow both $true/true and $false/false ( #4696 )
...
* Change true/false to keywords
* oops, clippy
* Both kinds of bools
* Add in some boolean variables
* disable py virtualenv test for now
2022-03-02 19:55:03 -05:00
JT
a6a96b29cb
Add binary literals ( #4680 )
2022-02-28 18:31:53 -05:00
JT
3c62d27c28
Try again with math-like externals ( #4629 )
...
* Try again with math-like externals
* clippy 1.59
* clippy 1.59
* clippy 1.59
2022-02-24 14:02:28 -05:00
JT
308ab91aff
Speed up the parser and nuon parser a bit more ( #4626 )
2022-02-24 07:58:53 -05:00
JT
4b18fdcc6e
Date literals ( #4619 )
...
* Date literals
* update deps
* Add date+duration
2022-02-23 21:02:48 -05:00
JT
25712760ba
Add support for math-like externals ( #4606 )
2022-02-22 10:55:28 -05:00
JT
3e8a41fbc9
Speedup unit parse ( #4598 )
...
* Compact nuon tables
* Speed up unit parsing a bit
2022-02-22 04:50:49 -05:00
JT
9888f8f298
Add pipeline redirection support ( #4594 )
...
* redirection
* Remove commented-out
* fix tests
* more fixes
2022-02-21 17:22:21 -05:00
JT
6670b77b27
Fix shorthand env duplicates ( #4587 )
2022-02-21 12:58:04 -05:00
JT
9ea5a2ecd3
Improve missing param error span ( #4560 )
2022-02-19 21:30:29 -05:00
Jakub Žádník
bccce0ab46
Use overlay ID for module import lookup ( #4514 )
...
* Add id to import pattern
* Finish testing importing in a block
2022-02-17 20:58:24 -05:00
JT
6e733f49bc
Require block params ( #4505 )
...
* Require block params
* Improve errors
2022-02-17 06:40:24 -05:00
JT
e763a8dcef
Auto-hide aliases to prevent recursion ( #4487 )
2022-02-15 17:36:24 -05:00
JT
56b3fc61a3
Remove statements, replaced by pipelines ( #4482 )
2022-02-15 14:31:14 -05:00
JT
a743db8e8f
Improve alias expansion, again ( #4474 )
2022-02-14 21:09:21 -05:00
JT
fbaafaa459
Make param parsing more resilient, correct missing param error ( #4470 )
2022-02-14 12:33:47 -05:00
Jakub Žádník
328f7e92a0
Hide alias ( #4432 )
...
* Add alias interning
Now, AliasId is used to reference aliases stored in EngineState, similar
to decls, blocks, etc.
* Fix wrong message
* Fix using decl instead of alias
* Extend also alias id visibility
* Merge also aliases from delta
* Add alias hiding code
Does not work yet but passes tests at least.
* Fix wrong alias lookup and visibility appending
* Add hide alias tests
* Fmt & Clippy
* Fix random clippy warnings in "which" command
2022-02-12 11:50:37 +02:00
JT
a16e485cce
Add support for defining known externals with their own custom completions ( #4425 )
...
* WIP for known externals
* Now completions can work from scripts
* Add support for definiing externs
* finish cleaning up old proof-of-concept
2022-02-11 13:38:10 -05:00
JT
886ed5ab2d
Fix captures ( #4421 )
...
* Fix rowcondition and import captures
* Only check extra blocks if not yet seen
2022-02-11 07:37:10 -05:00
JT
e6db37bc82
Fix multi-command variable captures ( #4413 )
2022-02-10 18:15:15 -05:00
JT
2e3b2a48ee
Fix string interpolation paren cases ( #4410 )
2022-02-10 11:09:08 -05:00
JT
a008f1aa80
Command tests ( #922 )
...
* WIP command tests
* Finish marking todo tests
* update
* update
* Windows cd test ignoring
2022-02-03 21:01:45 -05:00
Jakub Žádník
2fbd182993
Allow viewing the source code of blocks ( #894 )
...
* Add spans to blocks and view command
* Better description; Cleanup
* Rename "view" command to "view-source"
2022-01-31 00:05:25 +02:00
JT
44821d9941
Add support for def-env
and export def-env
( #887 )
2022-01-29 15:45:46 -05:00
JT
04395ee05c
Allow equals to sep long flag and arg ( #858 )
2022-01-27 12:20:12 +11:00
JT
6f4b7efd3e
Also set $in-variable with input ( #856 )
...
* Also set in-variable with input
* Fix test
* Add more tests
2022-01-27 10:46:13 +11:00
JT
af52def93c
Fix doc comments for custom commands ( #815 )
2022-01-22 13:24:47 -05:00
JT
939745ad67
Support recursive functions in capture ( #797 )
2022-01-21 11:39:55 -05:00
JT
d2d22815fb
Improve env shorthand parse ( #777 )
2022-01-20 01:58:12 +11:00
Jakub Žádník
3b4baa31b6
Fix ls relative path & command argument path expansion ( #757 )
...
* Switch to short-names when the path is a relative_path (a dir) and exit with an error if the path does not exist
* Remove debugging print line
* Show relative filenames... It does not work yet for ls ../
* Try something else to fix relative paths... it works, but the ../ code part is not very pretty
* Add canonicalize check and remove code clones
* Fix the canonicalize_with issue pointed out by kubouch. Not sure the prefix_str is what kubouch suggested
* Fix the canonicalize_with issue pointed out by kubouch. Not sure the prefix_str is what kubouch suggested
* Add single-dot expansion to nu-path
* Move value path expansion from parser to eval
Fixes #745
* Remove single dot expansion from parser
It is not necessary since it will get expanded anyway in the eval.
* Fix ls to display globs with relative paths
* Use pathdiff crate to get relative paths for ls
Co-authored-by: Stefan Stanciulescu <contact@stefanstanciulescu.com>
2022-01-17 00:55:56 +11:00
JT
b78924c777
Add support for load-env ( #752 )
2022-01-15 18:50:11 -05:00
JT
f9c0d223c1
Improve keyword parsing, including for ( #747 )
...
* Improve keyword parsing, including for
* touchup
2022-01-16 02:26:52 +11:00
JT
82d90f4930
Add support for var/string interp for external names ( #729 )
2022-01-13 19:17:45 +11:00
Darren Schroeder
d0f9943709
expose a few more types to custom commands (def
) ( #725 )
2022-01-12 09:59:07 -06:00
JT
186da4d725
Fixing captures ( #723 )
...
* WIP fixing captures
* small fix
* WIP
* Rewrite to proof-of-concept better parse_def
* Add missing file
* Finish capture refactor
* Fix tests
* Add more tests
2022-01-12 15:06:56 +11:00
JT
d3bfc61524
Don't panic on alias errors ( #713 )
2022-01-10 13:52:01 +11:00
Jakub Žádník
733b2836f1
Cleanup parsing of use and hide commands ( #705 )
2022-01-10 12:39:25 +11:00
Jakub Žádník
3b467bedd9
Add reduce command ( #700 )
...
* Add reduce command
* Fix example and missing test commands
* Add forgotten file
2022-01-08 02:40:40 +02:00
JT
f016a5cb72
Fix short flags with extra ( #696 )
2022-01-07 08:06:54 +11:00
JT
e44789556b
Fix path external ( #684 )
...
* Fix external invocation/expansion
* clippy
2022-01-06 21:20:31 +11:00
JT
d39e8c15fe
Expand external command names ( #682 )
2022-01-06 10:32:56 +11:00
JT
41dbc641cc
Some cleanups for cd/PWD ( #667 )
...
* Some cleanups for cd/PWD
* Some cleanups for cd/PWD
2022-01-05 11:26:01 +11:00
JT
8f6843c600
Move $nu.env to $env ( #665 )
...
* Move env from nu builtin to its own
* update samples/tests
2022-01-05 08:34:42 +11:00
JT
b6fcd46075
Some error improvements ( #659 )
2022-01-04 10:14:33 +11:00
JT
fe5f65a247
Highlight block and record ( #653 )
2022-01-03 16:21:26 +11:00
JT
9535e2c309
Fix list and table print ( #652 )
...
* Fix list printing
* Fix list and table highlighting
2022-01-03 14:18:23 +11:00
JT
ac487dfcbc
Add parser tracing, fix 629 ( #638 )
2022-01-02 08:42:50 +11:00
JT
80649f2341
Fix flattening of in-variable ( #624 )
2021-12-30 14:26:40 +11:00
JT
384ea111eb
Allow for and other commands missing positionals near keywords ( #606 )
...
* Allow for and other commands missing positionals near keywords
* A bit more resilience
2021-12-28 07:04:48 +11:00
Fernando Herrera
53330c5676
def argument check ( #604 )
...
* def argument check
* corrected test
* clippy error
2021-12-28 06:13:52 +11:00
JT
3706bef0a1
Require let to be a statement ( #594 )
2021-12-27 14:04:22 +11:00
JT
ca6baf7a46
Add single tick string interpolation ( #581 )
...
* Add single tick string interpolation
* give string interpolation its own highlighting
2021-12-26 07:50:02 +11:00
Fernando Herrera
e949658381
nothing variable ( #527 )
...
* nothing variable
* corrected comments
* added color to nothing like bool
* compare nothing with values
* comparison tests
2021-12-20 12:05:33 +11:00
JT
2883d6cd1e
Remove Span::unknown ( #525 )
2021-12-19 18:46:13 +11:00