Commit Graph

43 Commits

Author SHA1 Message Date
8d5fd6f379 Unwrap cleanup mitigation. 2019-08-21 10:08:38 -05:00
64c129d65f Finish updating the last cases 2019-08-20 18:11:11 +12:00
5bfb96447a Reduce unwraps
Remove a number of unwraps. In some cases, a `?` just worked as is. I also made it possible to use `?` to go from Result<OutputStream, ShellError> to OutputStream. Finally, started updating PerItemCommand to be able to use the signature deserialization logic, which substantially reduces unwraps.

This is still in-progress work, but tests pass and it should be clear to merge and keep iterating on master.
2019-08-16 20:53:39 -07:00
0dc4b2b686 Add support for external escape valve (^dir)
This commit makes it possible to force nu to treat a command as an external command by prefixing it with `^`. For example `^dir` will force `dir` to run an external command, even if `dir` is also a registered nu command.

This ensures that users don't need to leave nu just because we happened to use a command they need.

This commit adds a new token type for external commands, which, among other things, makes it pretty straight forward to syntax highlight external commands uniquely, and generally to treat them as special.
2019-08-15 15:18:18 -07:00
785536983a Revert "Heuristic table view" 2019-08-16 04:49:07 +12:00
123b1856c8 Attempt heuristic table 2019-08-13 19:45:31 +12:00
aadacc2d36 Merge master 2019-08-09 16:51:21 +12:00
99671b8ffc Move more parts to tags and away from spans 2019-08-05 20:54:29 +12:00
fc173c46d8 Restructuring 2019-08-02 12:15:07 -07:00
462f783fac initial change to Tagged<Value> 2019-08-01 13:58:42 +12:00
568931c80c add basic paging to text views 2019-07-24 19:44:12 +12:00
d5d4da0bf8 Add first step of uuid generation and bookkeeping 2019-07-20 07:48:14 +12:00
2ed46046bd Cleanup for upcoming release 2019-07-17 07:10:25 +12:00
7e555a0ef2 "Add plugin arg errors. Bring remaining errors to parity" 2019-07-14 04:59:59 +12:00
2da12aed56 Tests pass 2019-07-12 19:20:26 -07:00
7b68739b52 WIP 2019-07-12 19:20:26 -07:00
34033afce4 WIP improve error infrastructure
Also simplify commands and reduce papercuts
2019-07-12 19:20:26 -07:00
711ed05b43 Produce ArgumentError for signature mismatch
ArgumentError also automatically produces diagnostics
2019-06-29 23:14:40 -07:00
3379c23a49 Support evaluating most expressions
Blocks, paths, and others

Plus a bunch of other infra improvements
2019-06-29 01:55:42 -07:00
d5704808d4 First working plugin 2019-06-27 16:56:48 +12:00
7957fc502f Fix a bunch of bugs 2019-06-23 18:55:31 -06:00
9ae9beb94a WIP 2019-06-22 15:43:37 +12:00
baeb192f12 Merge master 2019-06-22 13:38:17 +12:00
54be5bf16e Update errors and improve ctrl-c 2019-06-16 06:36:17 +12:00
4291e31dc7 Start rebuilding lite parser using nom 2019-06-14 20:16:13 -07:00
4e6c3d255c Add opening urls 2019-06-09 06:09:17 +12:00
e94d1d2758 Add pretty errors to commands 2019-06-08 10:35:07 +12:00
324f7915be Span all the things
Also set up builder infra for more consistent AST creation.
2019-06-05 23:34:59 -07:00
f3bb4a03c2 Improve parser 2019-06-04 14:42:31 -07:00
a8574abbf2 Improve errors 2019-06-02 22:11:21 -07:00
69effbc9e7 Improve signature infrastructure
The `config` command uses different kinds of named arguments, which
illustrates how it works.
2019-05-31 22:54:15 -07:00
b7d15c2afd Better errors and more fleshed out semantics 2019-05-29 21:19:46 -07:00
b34676441b Add json support 2019-05-28 14:01:37 +12:00
b74daa2e60 A real parser (lalrpop) 2019-05-26 00:17:35 -07:00
f9fb353c5c Streams are wired up pairwise 2019-05-24 00:29:16 -07:00
bf332ea50c Improved streams 2019-05-23 21:34:43 -07:00
31dd579d6f Small restructuring 2019-05-22 21:30:43 -07:00
2feef6bd25 Added a first pass at sort-by 2019-05-17 08:55:50 -07:00
98ab5e63fc Refactor the repl loop 2019-05-16 14:43:36 -07:00
af1963d148 Remove dead code 2019-05-15 15:58:44 -07:00
8f327477e7 Internals cleanup and | select ...fields 2019-05-15 13:14:51 -05:00
ceb0487eba A bunch of rework
I'm gonna use a VecDeque now instead of trying to get async streams
working to make progress, but the intent is that we should be able to
use async streams in and out to interleave the work better.
2019-05-13 13:30:51 -04:00
8f3b273337 objectshell initial commit 2019-05-10 09:59:12 -07:00