Stefan Holderbach
5ea245badf
Make example binaries proper cargo examples ( #7019 )
...
Should not be built by default with `cargo build`
Instead are compiled with `cargo test` to avoid bitrot
Run with `cargo run -p ... --example ...`
2022-11-06 11:39:27 -08:00
Alex Saveau
be5d71ea47
Run a round of clippy --fix to fix a ton of lints ( #7006 )
...
Signed-off-by: Alex Saveau <saveau.alexandre@gmail.com>
Signed-off-by: Alex Saveau <saveau.alexandre@gmail.com>
2022-11-04 15:11:17 -05:00
Stefan Holderbach
2c4048eb43
Refactor ansi stripping into nu-utils
functions ( #6966 )
...
Allows use of slightly optimized variants that check if they have to use
the heavier vte parser. Tries to avoid unnnecessary allocations. Initial
performance characteristics proven out in #4378 .
Also reduces boilerplate with right-ward drift.
2022-11-05 07:49:45 +13:00
Darren Schroeder
bb968304da
bump rust-toolchain to 1.64 ( #7005 )
...
* bump rust-toolchain to 1.64
* 1.64 clippy
2022-11-04 10:27:23 -05:00
Maxim Zhiburt
66c2a36123
table: Show truncated record differently ( #6884 )
...
Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>
Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>
2022-10-28 14:00:10 +02:00
Maxim Zhiburt
b2c29117d9
table -e
align key to 2nd line (#6842 )
...
Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>
Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>
2022-10-21 06:29:55 -05:00
Maxim Zhiburt
5921c19bc0
WIP/ Checkout to new tabled
( #6286 )
...
* nu-table/ Use latest tabled
Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>
* nu-table/ Fix first column alignment
Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>
* nu-table: Fix cargo clippy
Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>
* nu-table: Fix color issue
Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>
* nu-table: Fix footer row
Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>
* nu-table: Bump tabled
Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>
* nu-table: Bump tabled
Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>
* nu-table: Bump tabled
Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>
* Update
Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>
* nu-table/ Update
* Use latest tabled
Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>
* Add optional -e, -c argument to `table` command for different view
Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>
* Fix clippy
Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>
* Fix clippy
Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>
* Update
Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>
* Fix cargo clippy
Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>
* Fix tests
Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>
* nu-table: Add footer into -e/c mode
Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>
* Publish new expand mode
Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>
* Add width ctrl for Expand mode
Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>
* Refactorings
Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>
* Refactorings
Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>
* Add tests
Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>
* Add tests
Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>
* Merge with main
Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>
* Fix clippy
Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>
* Fix tests
Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>
* Fix tests
Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>
* Bump tabled
Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>
* Add record expand and fix empty list issue
Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>
* refactoring
Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>
2022-10-03 11:40:16 -05:00
Nano
5c99921e15
Table indexes ( #6620 )
...
* Table indexes
* Renamed to `show_table_indexes`
* Renamed to `table_index_mode`
2022-09-28 17:07:33 -05:00
Darren Schroeder
47ef193600
add rust toolchain file to pin rust version ( #6298 )
...
* add rust toolchain file to pin rust version
* rust 1.63 release, bump toolchain
* linux clippy
* pin to 1.63
* pin to 1.61
2022-08-11 15:45:01 -05:00
Maxim Zhiburt
453c11b4b5
nu-table/ Bump tabled version ( #6097 )
...
Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>
2022-07-22 10:33:29 -05:00
Maxim Zhiburt
e5684bc34c
Consider space for single ...
column not enough space ( #6080 )
...
* nu-table: Refactoring
Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>
* nu-table: consider space for single `...` column not enough space
Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>
2022-07-19 12:35:25 -05:00
Maxim Zhiburt
41669e60c8
nu-table: Fix header style (again 2x) ( #6073 )
...
* nu-table: Fix header style
It did appeared again after my small change...
Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>
* nu-table: Add a empty header style test
Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>
2022-07-18 11:45:21 -05:00
Maxim Zhiburt
d8d88cd395
nu-table: Add suffix coloring ( #6071 )
...
* nu-table: Bump tabled
Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>
* nu-table: Add suffix coloring while truncating
Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>
* Fix cargo fmt
Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>
2022-07-17 13:56:31 -05:00
Maxim Zhiburt
7bf09559a6
Refactoring nu_table ( #6049 )
...
* nu-table: Remove unused dependencies
Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>
* nu-table: Small refactoring
Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>
* nu-table: Refactoring
Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>
* nu-table: Refactoring alignments
Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>
* nu-table: Add width check
Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>
* nu-table/ Use commit instead of branch of tabled
To be safe
* Update Cargo.lock
Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>
* nu-table: Bump tabled
Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>
2022-07-14 15:24:32 -05:00
Maxim Zhiburt
58ab5aa887
nu-table: Remove width estimation logic ( #6037 )
...
Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>
2022-07-13 06:54:03 -05:00
Maxim Zhiburt
2b2117173c
nu-table: Restore atty check ( #6036 )
...
Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>
2022-07-13 06:49:43 -05:00
Maxim Zhiburt
f2a79cf381
nu-table: Don't show empty header ( #6035 )
...
Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>
2022-07-13 06:43:39 -05:00
Maxim Zhiburt
8b6232ac87
nu_table: Fix truncating logic ( #6028 )
...
Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>
2022-07-12 13:35:05 -05:00
Maxim Zhiburt
93a965e3e2
nu_table: Fix style of tables with no header ( #6025 )
...
Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>
2022-07-12 20:56:36 +03:00
Maxim Zhiburt
217c2bae99
Move wrap responsibility on tabled ( #5999 )
...
* nu_table/ Replace wrap.rs logic by tabled::Width::wrap
Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>
* nu_table: Rename wrap.rs to width_control.rs
Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>
* nu_table: Add configuration of trimming
```
let-env config = ($env.config | upsert table_trim { methodology: 'wrapping', wrapping_try_keep_words: false })
let-env config = ($env.config | upsert table_trim { methodology: 'truncating', truncatting_suffix: '...@@...' })
```
Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>
* nu_table: Fix right padding issue
Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>
* nu_table: Fix trancate issue
Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>
* nu_table: Fix spelling in config
Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>
* nu_table: Update tabled dependency
Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>
* Update default_config.nu with a table_trim options
Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>
2022-07-12 11:23:50 -05:00
Maxim Zhiburt
e4c512e33d
nu-table: Fix wrap logic ( #5998 )
...
Adding space may overflow a cell_width.
Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>
2022-07-09 14:55:39 -05:00
Maxim Zhiburt
6802a4ee21
nu-table: Remove a error prone assertion ( #5993 )
2022-07-08 17:00:01 -05:00
Maxim Zhiburt
d1687df067
Give tabled a try ( #5969 )
...
* Drop in replacement from nu-table to tabled.
Must act the same way as original nu-table.
Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>
Fix some issues
Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>
* Bump ansi-str version
Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>
* Update to latest
Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>
* Fix footer issue
Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>
* Fix header alignment
Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>
* Fix header style
Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>
* Use latest tabled/ansi-str
* Refactorings
Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>
* Fix clippy warnings
Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>
2022-07-06 14:57:40 -05:00
Darren Schroeder
9f07bcc66f
first stab at minimizing ansi escapes ( #5822 )
2022-06-17 22:07:46 -05:00
Vanilla
cb909f810e
fix[table]: Panic when passthru small number of table -w
. ( #5705 )
2022-06-03 07:46:36 -05:00
Vanilla
727ff5f2d4
feat[table]: Allow specific table width with -w
, like command grid
. ( #5643 )
2022-05-26 06:53:05 -05:00
Darren Schroeder
d1e7884d19
table refactor for readability ( #5555 )
2022-05-16 10:35:57 -05:00
Maxim Zhiburt
ac48f5a318
Fix coloring when string has spaces ( #5425 )
...
* Replace ansi-cut with ansi-str
There's no issues with it we just need to use it later.
Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>
* Fix color losing in string spliting into Sublines
Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>
2022-05-03 09:48:43 -05:00
JT
2126bef052
clean table text before rendering ( #4638 )
2022-02-25 08:13:55 -05:00
Stefan Holderbach
9c7feb2b19
Reduce table allocs: only strip ANSI if necessary ( #4378 )
...
For the width calculations for table layout the `strip_ansi` function
has to be called frequently. By checking for the ASCII control chars
(0x00 to 0x1f) except `\n` that are stripped by `strip_ansi_escapes` the number of
necessary allocations can be reduced significantly for the simple case
of text not containing ANSI escapes.
**Benchmark:**
```
nu -c "for i in 0..1000 { ls } | flatten | table"
```
**Allocation reduction**
Running on the nushell repo root as the directory, this change reduces the
allocation volume by approximately 400 MB
(Measured run via KDE heaptrack)
**Speed improvement to output**
Measured via `/usr/bin/time -v`
*before*
```
Command being timed: "./eager_nu -c for i in 0..1000 {ls} | flatten | table"
User time (seconds): 0.87
System time (seconds): 0.14
Percent of CPU this job got: 87%
Elapsed (wall clock) time (h:mm:ss or m:ss): 0:01.16
Average shared text size (kbytes): 0
Average unshared data size (kbytes): 0
Average stack size (kbytes): 0
Average total size (kbytes): 0
Maximum resident set size (kbytes): 18888
Average resident set size (kbytes): 0
Major (requiring I/O) page faults: 0
Minor (reclaiming a frame) page faults: 4809
Voluntary context switches: 38
Involuntary context switches: 14
Swaps: 0
File system inputs: 0
File system outputs: 0
Socket messages sent: 0
Socket messages received: 0
Signals delivered: 0
Page size (bytes): 4096
Exit status: 0
```
*after*
```
Command being timed: "./lazy_nu -c for i in 0..1000 {ls} | flatten | table"
User time (seconds): 0.63
System time (seconds): 0.14
Percent of CPU this job got: 80%
Elapsed (wall clock) time (h:mm:ss or m:ss): 0:00.97
Average shared text size (kbytes): 0
Average unshared data size (kbytes): 0
Average stack size (kbytes): 0
Average total size (kbytes): 0
Maximum resident set size (kbytes): 18660
Average resident set size (kbytes): 0
Major (requiring I/O) page faults: 0
Minor (reclaiming a frame) page faults: 5149
Voluntary context switches: 24
Involuntary context switches: 5
Swaps: 0
File system inputs: 0
File system outputs: 0
Socket messages sent: 0
Socket messages received: 0
Signals delivered: 0
Page size (bytes): 4096
Exit status: 0
```
2022-02-08 17:43:32 -06:00
JT
d70d91e559
Remove old nushell/merge engine-q
2022-02-07 14:54:06 -05:00
Fernando Herrera
fdce6c49ab
engine-q merge
2022-02-07 19:11:34 +00:00
Maxim Zhiburt
fd3eec81b5
Bump ansi-cut version to 0.2.0 ( #822 )
...
Signed-off-by: Maxim Zhiburt <zhiburt@gmail.com>
2022-01-22 18:36:40 -05:00
Stefan Holderbach
01e691c5ba
Fix unicode word wrapping with ansi-cut ( #767 )
...
Ansi-cut expects ranges of character numbers (of the non-ansi control
sequence characters) instead of byte indices.
This fixes the panics when wrapping of non-unicode lines (which exceed
the demanded number of characters as byte indices).
Also rectifies some wrong wrapping of unicdoe containing lines that
don't panic
2022-01-17 15:31:21 -05:00
Darren Schroeder
ffb086d56f
a little better table alignment ( #720 )
2022-01-11 08:49:15 -06:00
Darren Schroeder
2e2d5ef0eb
fix 1 off table wrapping for help commands ( #460 )
2021-12-09 19:16:50 -06:00
Darren Schroeder
5c27ffa42e
update to latest reedline, change config point name, enable output without ansi ( #458 )
2021-12-09 16:06:26 -06:00
Darren Schroeder
a8e5cb871e
optionally remove table output color ( #455 )
2021-12-09 10:00:26 -06:00
Fernando Herrera
8a06ea133b
removed unwraps ( #430 )
2021-12-04 12:38:21 +00:00
Darren Schroeder
d8c721282b
add optional footer to table ( #392 )
...
* add optional footer to table
* missed a draw_table
2021-12-01 13:20:23 -06:00
Darren Schroeder
7cf96c6597
added row_index coloring ( #391 )
2021-12-01 09:17:50 -06:00
Darren Schroeder
ab22619f4a
enable ls_colors for the ls
command ( #340 )
...
* enable ls_colors for the `ls` command
* added wrapping with ansi-cut so the ansi sequences don't bleed over
* clippy
2021-11-15 14:09:17 -06:00
JT
5843acec02
Add wrap and get and cell_path parsing
2021-10-02 15:59:11 +13:00
Darren Schroeder
d395816929
remove ansi colors if this is not a tty ( #4058 )
2021-10-01 09:00:08 -05:00
JT
bfd05772ef
Improve completions inside of a pipeline
2021-09-10 20:07:18 +12:00
JT
26d50ebcd5
Add a very silly table
2021-09-10 14:27:12 +12:00
Marcin Puc
51c74eebd0
Add general refactorings ( #3996 )
2021-09-10 10:44:22 +12:00
Darren Schroeder
7c0a52a81e
updated main
in table so that it outputs again ( #3662 )
2021-06-21 14:14:20 -05:00
JT
383e874166
Fix a bunch of future clippy warnings ( #3586 )
...
* Fix a bunch of future clippy warnings
* Fix a bunch of future clippy warnings
2021-06-10 07:08:12 +12:00
Darren Schroeder
0b5e131410
Remove x1b, update prompt ( #3291 )
...
* add term size command
* remove \x1b and use nu_ansi_term, make prompt with no config prettier
2021-04-09 11:38:56 -05:00