It's been a productive 3 months since v1.2. The largest effort in this release was a commands/options reworking, which will hopefully pay dividends in the future. Many other so-called improvements were made as well. Here's a list of most of them:
- All commands were thoughtfully renamed, and the command longnames should be largely stable now.
commands.tsvis an exhaustive list of commands and their attributes and side effects.
- The manpage has moved to
Ctrl+H(sysopen-help), which is hopefully its final keybinding.
F1will still open the manpage if the terminal doesn't intercept it.
z?has been repurposed (see below).
- Note that because iTerm reports
Backspace, these help commands are also available by using
Backspace(backspace for help, a new trend).
z Ctrl+Hopens a list of commands available on this sheet.
- Keybindings and longnames are separated out. The cmdlog now records longnames as well.
- See the new keyboard layouts page (thanks to @deinspanjer for inspiration).
changes to existing commands and options
- The experimental menu system (was
Space) has been removed.
Space(exec-longname) executes the command for the input longname (tab completion of available commands is supported). (This function was previously bound to
options.wrap(for TextSheet wrapping of lines) now defaults to
R(random-sheet) opens a new sheet instead of selecting random rows (reverting to former behavior).
za(addcol-empty) asks for column name
zd(delete-cell) moves value to clipboard ("cut", like other delete commands)
- options can now be set on specific sheet types or even individual sheets.
Shift+Oopens options for the current sheet type, and
g Shift+Oopens the global options sheet.
- See available colors by pressing
Spaceand then typing the longname
new safety options
- Error messages are sorted before informational status messages, and colored by
color_warning(thanks to @jsvine for suggestion)
Falseto keep old behavior) if True, will confirm before quitting last sheet.
gS(sheets-graveyard) command opens a sheet that shows all discarded (but "precious") sheets. These are stored as weak references so they will be garbage collected eventually, but can be resurrected from the graveyard sheet until then.
False) makes loading/saving more robust, likely at the cost of performance which can become significant in large files.
- Currently, only removes NULs from csv input.
options.tsv_safe_charis split into
new power features
addcol-sh) adds new columns for stdout/stderr of a
bashcommand, which uses
$colnameto substitute values from other columns (whole arguments only, so far).
unselect-expr) select/unselect by Python expression (thanks to @jsvine for suggestion).
searchr-expr) to search forward/backward by Python expression.
describe-all) describes all columns in all sheeets (like
(('expand-column') are filled out.
z#sets type of current column to
- yaml loader (thanks to @robcarrington, @JKiely, @anjakefala at PyCon Sprints for making this happen)
- pcap loader (thanks to @vbrown608 and @TemperedNetworks)
- xml loader
- jsonl saver
- [json loader] no more incremental display (need a better json parser than the Python stdlib offers)
- pandas adapter (thanks to @jjzmajic for issue #162)
- System clipboard command detection is more portable (thanks to @chocolateboy for the PR).
datesupports adding a number of days (or like
- Hidden columns are darkened on columns sheet.
- Exceptions are rolled up properly.
options.motd_urlnow uses https by default (thanks to @jsvine for the warning).
modeis editable (set to octal like
- [internal dev] ProfileSheet is improved.
- cmdlog replay with a
save-sheet) to an existing file gets stuck in an infinite loop when
- After renaming a file on a DirSheet,
reload-sheet) is required to refresh the
extcolumn for that row.
prev-search) won't continue a previous
show-aggregatewith mean errors on
- Contracting (with
)) a previously expanded column on a dup-ed (with
") sheet results it in disappearing on the source sheet.