JT
d856cebebd
Add a simple scope variable
2021-11-02 16:08:05 +13:00
JT
89b8ee6ad8
Merge pull request #268 from onthebridgetonowhere/date_enqine_q
...
Port date commands to enqine-q
2021-11-02 11:18:46 +13:00
Fernando Herrera
ef94c71866
Merge branch 'main' of https://github.com/nushell/engine-q into plugins
2021-11-01 07:24:33 +00:00
Fernando Herrera
43c3cfecf7
plugin call function
2021-11-01 07:20:33 +00:00
JT
3176f60b5b
Merge pull request #243 from kubouch/module-files
...
Loading modules from files
2021-11-01 11:08:03 +13:00
Jakub Žádník
7112664b3f
Fix wrong spans of multiple files
...
The introduction of `use <file.nu>` added the possibility of calling
`working_set.add_file()` more than once per parse pass. Some of the
logic handling the file contents offsets prevented it from working and
hopefully, this commit fixes it.
2021-10-31 17:22:10 +02:00
Stefan Stanciulescu
fa8a0958e4
Merge branch 'main' of https://github.com/nushell/engine-q into date_enqine_q
2021-10-31 07:56:32 +01:00
Stefan Stanciulescu
20c770370b
Port date commands to engine-q
2021-10-31 07:54:51 +01:00
Fernando Herrera
f301f686b5
Merge branch 'main' of https://github.com/nushell/engine-q into plugins
2021-10-30 11:01:49 +01:00
JT
cf3f3fde92
Add some support for
2021-10-30 07:15:17 +13:00
Fernando Herrera
51e48bee53
Merge branch 'main' of https://github.com/nushell/engine-q into plugins
2021-10-28 07:12:40 +01:00
JT
bac8b8a450
Add initial ctrl-c support
2021-10-28 17:13:10 +13:00
Fernando Herrera
af02c8f6ea
call info encoder
2021-10-26 20:50:39 +01:00
JT
c18f0dcc84
range display touchup
2021-10-26 11:24:10 +13:00
JT
85a69c0a45
WIP
2021-10-26 10:14:21 +13:00
JT
d29208dd9e
WIP
2021-10-26 09:04:23 +13:00
JT
f84582ca2b
WIP
2021-10-26 06:46:26 +13:00
JT
5d19017603
WIP
2021-10-26 05:58:58 +13:00
JT
baac60a5a7
WIP
2021-10-25 19:42:38 +13:00
JT
b5965ee8ef
WIP
2021-10-25 19:31:39 +13:00
JT
397a31e69c
WIP
2021-10-25 17:24:10 +13:00
JT
b6d269e90a
WIP
2021-10-25 17:01:02 +13:00
JT
b322a12f58
Add more helper functions
2021-10-20 18:58:25 +13:00
JT
bd5009a865
Merge pull request #235 from GabrielBG0/interactive-flag
...
cp, mv, and rm commands need to support -i flag
2021-10-16 07:17:03 +13:00
Gabriel B Gutierrez
8c2ae1eed1
-i flag finished, lacking tests
2021-10-14 14:54:51 -03:00
JT
fdd2c35fd9
Add the default help flag
2021-10-14 06:53:27 +13:00
xiuxiu62
8fee0b32e7
impl Value::Record from HashMap<String, Value>
2021-10-12 14:54:28 -07:00
JT
6024a001b4
Clarify todo/fixmes
2021-10-13 06:44:23 +13:00
JT
5f14faf4b4
Custom switch support
2021-10-12 17:49:17 +13:00
JT
96419f168b
Also fix the flag params
2021-10-12 10:17:45 +13:00
JT
63e3552eef
Add the remaining missing operators
2021-10-12 09:35:12 +13:00
JT
1a15f30eb8
Error on missing column during cell path
2021-10-12 08:51:54 +13:00
JT
38bc394a12
Expose errors early when possible
2021-10-12 07:45:31 +13:00
JT
d33a9549b5
Add serialize/deserialize for streams
2021-10-12 07:12:47 +13:00
JT
4d0a253924
Merge main
2021-10-11 14:57:39 +13:00
JT
c3a032950d
Add initial batch of into conversions
2021-10-11 14:56:19 +13:00
Justin
7cafdc9675
Merge branch 'nushell:main' into main
2021-10-10 13:15:54 -07:00
Jakub Žádník
77c520e10b
Make predeclarations scoped; Add hiding tests
...
In some rare cases, the global predeclarations would clash, for example:
> module spam { export def foo [] { "foo" } }; def foo [] { "bar" }
In the example, the `foo [] { "bar" }` would get predeclared first, then
the predeclaration would be overwritten and consumed by `foo [] {"foo"}`
inside the module, then when parsing the actual `foo [] { "bar" }`, it
would not find its predeclaration.
2021-10-10 14:31:13 +03:00
Jakub Žádník
40741254f6
Rewrite hiding system
...
Hiding definitions now should work correctly with repeated use of 'use',
'def' and 'hide' keywords.
The key change is that 'hide foo' will hide all definitions of foo
that were defined/used within the scope (those from other scopes are
still available). This makes the logic simpler and I found it leads to a
simpler mental map: you don't need to remember the order of defined/used
commands withing the scope -- it just hides all.
2021-10-10 13:18:47 +03:00
xiuxiu62
97ca242634
add rm command + stubs for open and save
2021-10-09 21:13:15 -07:00
Arthur Targaryen
a0a63c966f
Add inline attribute and address warning
2021-10-09 19:44:03 +02:00
Arthur Targaryen
75de7f7e61
Implement PartialOrd
for Value::Stream
2021-10-09 19:40:47 +02:00
Arthur Targaryen
4e443b2088
Change helper method visibility
2021-10-09 19:40:47 +02:00
Arthur Targaryen
9e7e8ed48f
Handle not-in
operator
2021-10-09 19:40:47 +02:00
Arthur Targaryen
5f9ad0947d
Fix Range::contains
2021-10-09 19:40:47 +02:00
Arthur Targaryen
4235cf1191
Implement and use PartialOrd
for Value
2021-10-09 19:40:45 +02:00
Arthur Targaryen
357b9ccaa9
Remove unused import
2021-10-09 19:27:54 +02:00
Arthur Targaryen
d1f0740765
Refactor in
operator for Range
2021-10-09 19:27:54 +02:00
Arthur Targaryen
29cbcb8459
Implement RangeIterator::contains
2021-10-09 19:27:54 +02:00
Arthur Targaryen
7f06d6144f
Support in
operator for record and value stream
2021-10-09 19:27:54 +02:00
Arthur Targaryen
7db6b876ab
Simplify Result<Value, _>
comparaison using matches!
2021-10-09 19:27:54 +02:00
Arthur Targaryen
d3bc096d47
Handle reverse ranges
...
This is really ugly and should be refactored.
2021-10-09 19:27:54 +02:00
Arthur Targaryen
8783cf0138
Add basic in
operator support
2021-10-09 19:27:54 +02:00
JT
8df9ea6c68
Add a couple more tests to for
2021-10-10 05:58:33 +13:00
JT
5d36d37d20
Merge branch 'main' into fix_for
2021-10-10 05:20:50 +13:00
JT
e4ce41ba15
Fix the for loop to create vars
2021-10-10 05:10:46 +13:00
Fernando Herrera
41366f6cc4
Merge branch 'main' of https://github.com/nushell/engine-q into unit-test
2021-10-09 14:17:07 +01:00
Fernando Herrera
e3e4ae0591
example unit test
2021-10-09 14:10:10 +01:00
JT
2cd1f634d0
Add map and flat_map to value
2021-10-09 19:20:32 +13:00
JT
44fbf0fce3
Merge pull request #108 from nushell/help_and_start_split
...
Port help and start porting split
2021-10-09 14:07:13 +13:00
JT
4ddc953e38
Port help and start porting split
2021-10-09 14:02:01 +13:00
JT
64d83142c3
More external cleanup
2021-10-09 11:30:10 +13:00
JT
dea9c1482b
Allow vars and subexprs in extern args
2021-10-09 10:51:47 +13:00
xiuxiu62
bdfe8c0888
add mkdir command
2021-10-07 15:20:23 -07:00
xiuxiu62
e8e1ead99d
change diagnostic code on CreateNotPossible
2021-10-07 14:20:03 -07:00
xiuxiu62
adabc839bf
add touch command
2021-10-07 14:18:03 -07:00
Tanishq Kancharla
d481d5ca96
Merge branch 'main' of https://github.com/nushell/engine-q into source-command
2021-10-05 22:16:07 -04:00
xiuxiu62
74d4c501a8
add move, recursive fill, and recursive create procedures
2021-10-05 14:08:39 -07:00
xiuxiu62
9d49618e87
add impl From io::Error and dyn Error for ShellError
2021-10-05 12:54:30 -07:00
Justin
4eb43adef2
Merge branch 'nushell:main' into main
2021-10-04 22:02:43 -07:00
xiuxiu62
1b96da5e5b
add custom filesystem shell errors
2021-10-04 20:43:07 -07:00
JT
31ce8c1e33
Variable completions and better ls
2021-10-05 15:46:24 +13:00
JT
535ece4e76
Add unit parsing and eval support
2021-10-05 15:27:39 +13:00
JT
26166192e5
Merge pull request #89 from kubouch/hide-import-patterns
...
Add import patterns to 'hide'
2021-10-05 10:44:13 +13:00
JT
a88058006a
Add path completions
2021-10-05 08:21:31 +13:00
Jakub Žádník
9737d4a614
Change comments
2021-10-04 20:33:27 +03:00
Tanishq Kancharla
dfd321a679
Merge branch 'main' into source-command
2021-10-03 14:25:00 -04:00
JT
758fce8ae3
Merge pull request #86 from nushell/add_cd
...
Add simple cd
2021-10-03 09:20:28 +13:00
JT
91090e1db1
Add simple cd
2021-10-03 09:16:37 +13:00
JT
1d7ab28a0f
Merge pull request #74 from kubouch/module-export
...
Modules: export & hide
2021-10-03 06:25:43 +13:00
Jakub Žádník
81cd03626d
Merge branch 'main' into module-export
2021-10-02 18:53:35 +03:00
Fernando Herrera
03339beae1
prompt with env variable
2021-10-02 14:10:28 +01:00
JT
6b76dd7cd7
Add select
2021-10-02 17:55:05 +13:00
JT
5843acec02
Add wrap and get and cell_path parsing
2021-10-02 15:59:11 +13:00
Tanishq Kancharla
16c60f44d5
merge w/ upstream
2021-10-01 22:09:16 -04:00
JT
c5e9ff5f14
add ps and early help
2021-10-02 10:53:13 +13:00
Jakub Žádník
fb0f83e574
Disallow hiding the same def twice; Add tests
...
Tests got removed after rebase.
2021-10-02 00:12:30 +03:00
Jakub Žádník
25b05dec9e
Fix panic on double def; Tests; Double def error
...
* Fixes a panic with defining two commands with the same name caused by
declaration not found after predeclaration.
* Adds a new error if a custom command is defined more than once in one
block.
* Add some tests
2021-10-01 23:25:24 +03:00
Jakub Žádník
2af8116f50
Fix hiding logic; Fix hiding with predecls
...
* Hiding logic is simplified and fixed so you can hide and unhide the
same def repeatedly.
* Separates predeclared ids into its own data structure to protect them
from hiding. Otherwise, you could hide the predeclared variable and
the actual def would panic.
2021-10-01 23:24:57 +03:00
Jakub Žádník
7488254cca
Implement a rough version of 'hide'
...
'hide' command is used to undefine custom commands
2021-10-01 23:24:54 +03:00
JT
503939dcbe
add sys command
2021-10-01 19:53:47 +13:00
JT
d6e24cceb4
add a vertical record view
2021-10-01 19:01:22 +13:00
JT
db3e9efc4b
fix warnings
2021-10-01 18:20:25 +13:00
JT
3e232a5db8
Add 'from json'
2021-10-01 18:11:49 +13:00
Tanishq Kancharla
719920fa37
tried to move source command into parser (still doesn't compile)
2021-09-27 08:10:18 -04:00
JT
0108a935ed
add import lists
2021-09-27 13:23:22 +13:00
JT
abb0d7bd22
Add support for module imports
2021-09-27 07:39:19 +13:00
JT
47421e9ca7
Merge pull request #69 from kubouch/simple-module
...
Primitive module implementation
2021-09-27 05:14:23 +13:00
Jakub Žádník
3f8f3ecf9a
Fmt
2021-09-26 14:12:39 +03:00
Jakub Žádník
f57f7b2def
Allow adding definitions from module into scope
2021-09-26 13:53:52 +03:00
Jakub Žádník
9e176674a5
Start parsing 'use'; Add Use command
2021-09-26 13:25:52 +03:00
Jakub Žádník
12cf1a8f83
Allow adding module blocks to engine state
2021-09-26 12:12:32 +03:00
Fernando Herrera
d9c42eb194
contents declaration
2021-09-25 17:28:15 +01:00
Fernando Herrera
767d822cbf
change line format for test
2021-09-24 13:20:50 +01:00
Fernando Herrera
b4977f1515
better print out for stream output
2021-09-24 13:03:39 +01:00
Fernando Herrera
660e8b5b73
external with redirection
2021-09-23 17:42:03 +01:00
Kat Marchán
a7ecf7af90
add magical debugging code to SourceCode impl for future debugging
2021-09-21 17:54:20 -07:00
JT
4841d62d76
Add some improvements to errors
2021-09-21 16:03:06 +12:00
Kat Marchán
a1d6cefdf8
replace codespan-reporting with miette 3.0
2021-09-20 17:14:20 -07:00
Fernando Herrera
bafc50fd5c
external command
2021-09-19 20:29:58 +01:00
Fernando Herrera
1a9247b77f
Merge branch 'main' of https://github.com/nushell/engine-q into externals
2021-09-14 07:19:31 +01:00
JT
b4f918b889
Very early proof-of-concept git branch completion
2021-09-14 16:59:46 +12:00
JT
4dfde7393b
Merge branch 'main' into block_param_types
2021-09-13 19:59:18 +12:00
JT
32c1f0c8d4
better it detection and block params in shapes
2021-09-13 19:54:13 +12:00
JT
eb67eab122
WIP
2021-09-13 19:31:11 +12:00
JT
caa6236f1f
Merge pull request #44 from kubouch/float-ranges
...
Floating point ranges
2021-09-13 04:59:51 +12:00
JT
f459f77335
Merge pull request #40 from elferherrera/parse-error
...
Parse errors for def, let and alias
2021-09-13 04:58:25 +12:00
Fernando Herrera
8f07f40f22
external call
2021-09-12 16:34:43 +01:00
Jakub Žádník
9936946eb5
Fmt
2021-09-12 14:58:32 +03:00
Jakub Žádník
013b12a864
Do not allow precision interval to rach < epsilon
2021-09-12 14:55:11 +03:00
Jakub Žádník
2f04c172fe
Add floating point support for ranges
2021-09-12 14:12:53 +03:00
JT
648fe052db
Merge branch 'main' into wip
2021-09-12 09:26:47 +12:00
JT
55aa70c88a
WIP
2021-09-12 09:26:35 +12:00
Jakub Žádník
4749776984
Add stepping to ranges & enable reverse ranges
...
Follows the following syntax: <start>..<next-value>..<end>
2021-09-11 14:28:46 +03:00
Fernando Herrera
47ee50072e
Merge branch 'main' of https://github.com/nushell/engine-q into parse-error
2021-09-11 08:26:29 +01:00
JT
bfd05772ef
Improve completions inside of a pipeline
2021-09-10 20:07:18 +12:00
Fernando Herrera
2ea19aeac0
Merge branch 'main' of https://github.com/nushell/engine-q into parse-error
2021-09-10 08:28:58 +01:00
Fernando Herrera
0794ebf5fa
error parsing for def, alias and let
2021-09-10 08:28:43 +01:00
JT
26d50ebcd5
Add a very silly table
2021-09-10 14:27:12 +12:00
JT
16baf5e16a
Add a very silly ls
2021-09-10 13:06:44 +12:00
JT
abda6f148c
Finish up completions
2021-09-10 10:09:40 +12:00
JT
bb6781a3b1
Add row conditions
2021-09-10 09:47:20 +12:00
JT
2d7192e390
Add parser README, some parser fixups
2021-09-09 06:54:27 +12:00
Tanishq Kancharla
d35a58e05c
Remove unused imports
2021-09-07 22:32:28 -04:00
Tanishq Kancharla
ecbe7bf8d7
move value into its own folder
2021-09-07 22:26:57 -04:00
JT
a8646f94ab
Add cell paths for streams
2021-09-07 19:35:59 +12:00
JT
b0ab78a767
Switch tables to list/streams of records
2021-09-07 19:07:11 +12:00
JT
bdce34676a
Allow rest vars to have a custom name
2021-09-07 15:37:02 +12:00
JT
3b7d7861e3
Add cell paths
2021-09-07 10:02:24 +12:00
JT
4ce9a5c894
Make variable assignment convert streams to full values
2021-09-07 06:05:46 +12:00
JT
a1f7a3c17b
improve int division to be more nushell-like
2021-09-06 17:35:58 +12:00
JT
96b0edf9b0
range iteration
2021-09-06 16:07:48 +12:00
JT
979faf853a
Block params
2021-09-06 14:20:02 +12:00
JT
aaee3a8b61
WIP
2021-09-06 11:16:27 +12:00
Jakub Žádník
f0d469f1d4
Fix clippy warnings
2021-09-05 01:40:15 +03:00
Jakub Žádník
6b4fee88c9
Fmt
2021-09-05 01:35:08 +03:00
Jakub Žádník
0b412cd6b3
Add support for positive integer ranges
...
Including support for variables and subexpressions as range bounds.
2021-09-05 00:52:57 +03:00
Fernando Herrera
d6b1ff932a
Merge branch 'main' of https://github.com/jonathandturner/engine-q into similar-name
2021-09-04 09:20:35 +01:00
JT
26b1f022b7
fixup
2021-09-04 20:19:07 +12:00
Fernando Herrera
ab307c8d38
Merge branch 'main' of https://github.com/jonathandturner/engine-q into similar-name
2021-09-04 09:10:38 +01:00