visidata 2.11.1__py3-none-any.whl → 3.0.1__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (256) hide show
  1. visidata/__init__.py +72 -91
  2. visidata/_input.py +259 -42
  3. visidata/_open.py +84 -29
  4. visidata/_types.py +21 -3
  5. visidata/_urlcache.py +17 -4
  6. visidata/aggregators.py +78 -25
  7. visidata/apps/__init__.py +0 -0
  8. visidata/apps/vdsql/__about__.py +8 -0
  9. visidata/apps/vdsql/__init__.py +5 -0
  10. visidata/apps/vdsql/__main__.py +27 -0
  11. visidata/apps/vdsql/_ibis.py +748 -0
  12. visidata/apps/vdsql/bigquery.py +61 -0
  13. visidata/apps/vdsql/clickhouse.py +53 -0
  14. visidata/apps/vdsql/setup.py +40 -0
  15. visidata/apps/vdsql/snowflake.py +67 -0
  16. visidata/apps/vgit/__init__.py +13 -0
  17. {vgit → visidata/apps/vgit}/blame.py +5 -2
  18. {vgit → visidata/apps/vgit}/branch.py +31 -16
  19. {vgit → visidata/apps/vgit}/config.py +3 -3
  20. visidata/apps/vgit/diff.py +169 -0
  21. visidata/apps/vgit/gitsheet.py +161 -0
  22. {vgit → visidata/apps/vgit}/grep.py +6 -5
  23. visidata/apps/vgit/log.py +81 -0
  24. {vgit → visidata/apps/vgit}/main.py +18 -5
  25. {vgit → visidata/apps/vgit}/remote.py +8 -4
  26. visidata/apps/vgit/repos.py +71 -0
  27. {vgit → visidata/apps/vgit}/setup.py +6 -4
  28. visidata/apps/vgit/stash.py +69 -0
  29. visidata/apps/vgit/status.py +204 -0
  30. {vgit → visidata/apps/vgit}/statusbar.py +2 -0
  31. visidata/basesheet.py +63 -51
  32. visidata/canvas.py +208 -93
  33. visidata/choose.py +6 -6
  34. visidata/clean_names.py +29 -0
  35. visidata/clipboard.py +73 -17
  36. visidata/cliptext.py +220 -46
  37. visidata/cmdlog.py +88 -114
  38. visidata/color.py +142 -56
  39. visidata/column.py +121 -129
  40. visidata/ddw/input.ddw +74 -79
  41. visidata/ddw/regex.ddw +57 -0
  42. visidata/ddwplay.py +33 -14
  43. visidata/deprecated.py +77 -3
  44. visidata/desktop/visidata.desktop +7 -0
  45. visidata/editor.py +12 -6
  46. visidata/errors.py +6 -2
  47. visidata/experimental/__init__.py +0 -0
  48. visidata/experimental/diff_sheet.py +29 -0
  49. visidata/experimental/digit_autoedit.py +6 -0
  50. visidata/experimental/gdrive.py +89 -0
  51. visidata/experimental/google.py +37 -0
  52. visidata/experimental/gsheets.py +79 -0
  53. visidata/experimental/live_search.py +37 -0
  54. visidata/experimental/liveupdate.py +45 -0
  55. visidata/experimental/mark.py +133 -0
  56. visidata/experimental/noahs_tapestry/__init__.py +1 -0
  57. visidata/experimental/noahs_tapestry/tapestry.py +147 -0
  58. visidata/experimental/rownum.py +73 -0
  59. visidata/experimental/slide_cells.py +26 -0
  60. visidata/expr.py +8 -4
  61. visidata/extensible.py +22 -4
  62. visidata/features/__init__.py +0 -0
  63. visidata/features/addcol_audiometadata.py +42 -0
  64. visidata/features/addcol_histogram.py +34 -0
  65. visidata/features/canvas_save_svg.py +69 -0
  66. visidata/features/change_precision.py +46 -0
  67. visidata/features/cmdpalette.py +197 -0
  68. visidata/features/colorbrewer.py +363 -0
  69. visidata/{colorsheet.py → features/colorsheet.py} +17 -16
  70. visidata/features/command_server.py +105 -0
  71. visidata/features/currency_to_usd.py +70 -0
  72. visidata/{customdate.py → features/customdate.py} +2 -0
  73. visidata/features/dedupe.py +132 -0
  74. visidata/{describe.py → features/describe.py} +17 -15
  75. visidata/features/errors_guide.py +26 -0
  76. visidata/features/expand_cols.py +202 -0
  77. visidata/{fill.py → features/fill.py} +3 -1
  78. visidata/{freeze.py → features/freeze.py} +11 -6
  79. visidata/features/graph_seaborn.py +79 -0
  80. visidata/features/helloworld.py +10 -0
  81. visidata/features/hint_types.py +17 -0
  82. visidata/{incr.py → features/incr.py} +5 -0
  83. visidata/{join.py → features/join.py} +107 -53
  84. visidata/features/known_cols.py +21 -0
  85. visidata/features/layout.py +62 -0
  86. visidata/{melt.py → features/melt.py} +32 -21
  87. visidata/features/normcol.py +118 -0
  88. visidata/features/open_config.py +7 -0
  89. visidata/features/open_syspaste.py +18 -0
  90. visidata/features/ping.py +157 -0
  91. visidata/features/procmgr.py +208 -0
  92. visidata/features/random_sample.py +6 -0
  93. visidata/{regex.py → features/regex.py} +47 -31
  94. visidata/features/reload_every.py +55 -0
  95. visidata/features/rename_col_cascade.py +30 -0
  96. visidata/features/scroll_context.py +60 -0
  97. visidata/features/select_equal_selected.py +11 -0
  98. visidata/features/setcol_fake.py +65 -0
  99. visidata/{slide.py → features/slide.py} +77 -21
  100. visidata/features/sparkline.py +48 -0
  101. visidata/features/status_source.py +20 -0
  102. visidata/{sysedit.py → features/sysedit.py} +2 -1
  103. visidata/features/sysopen_mailcap.py +46 -0
  104. visidata/features/term_extras.py +13 -0
  105. visidata/{transpose.py → features/transpose.py} +5 -4
  106. visidata/features/type_ipaddr.py +73 -0
  107. visidata/features/type_url.py +11 -0
  108. visidata/{unfurl.py → features/unfurl.py} +9 -9
  109. visidata/{window.py → features/window.py} +2 -2
  110. visidata/form.py +50 -21
  111. visidata/freqtbl.py +81 -33
  112. visidata/fuzzymatch.py +414 -0
  113. visidata/graph.py +105 -33
  114. visidata/guide.py +200 -0
  115. visidata/help.py +75 -44
  116. visidata/hint.py +39 -0
  117. visidata/indexsheet.py +109 -0
  118. visidata/input_history.py +55 -0
  119. visidata/interface.py +58 -0
  120. visidata/keys.py +20 -16
  121. visidata/loaders/__init__.py +9 -0
  122. visidata/loaders/_pandas.py +61 -21
  123. visidata/loaders/api_airtable.py +70 -0
  124. visidata/loaders/api_bitio.py +102 -0
  125. visidata/loaders/api_matrix.py +148 -0
  126. visidata/loaders/api_reddit.py +306 -0
  127. visidata/loaders/api_zulip.py +249 -0
  128. visidata/loaders/archive.py +41 -7
  129. visidata/loaders/arrow.py +7 -7
  130. visidata/loaders/conll.py +49 -0
  131. visidata/loaders/csv.py +25 -7
  132. visidata/loaders/eml.py +3 -4
  133. visidata/loaders/f5log.py +1204 -0
  134. visidata/loaders/fec.py +325 -0
  135. visidata/loaders/fixed_width.py +2 -4
  136. visidata/loaders/frictionless.py +3 -3
  137. visidata/loaders/geojson.py +8 -5
  138. visidata/loaders/google.py +48 -0
  139. visidata/loaders/graphviz.py +4 -4
  140. visidata/loaders/hdf5.py +4 -4
  141. visidata/loaders/html.py +54 -12
  142. visidata/loaders/http.py +84 -30
  143. visidata/loaders/imap.py +20 -10
  144. visidata/loaders/jrnl.py +52 -0
  145. visidata/loaders/json.py +83 -29
  146. visidata/loaders/jsonla.py +74 -0
  147. visidata/loaders/lsv.py +15 -11
  148. visidata/loaders/mailbox.py +40 -0
  149. visidata/loaders/markdown.py +1 -3
  150. visidata/loaders/mbtiles.py +4 -5
  151. visidata/loaders/mysql.py +11 -13
  152. visidata/loaders/npy.py +7 -7
  153. visidata/loaders/odf.py +4 -1
  154. visidata/loaders/orgmode.py +428 -0
  155. visidata/loaders/pandas_freqtbl.py +14 -20
  156. visidata/loaders/parquet.py +62 -6
  157. visidata/loaders/pcap.py +3 -3
  158. visidata/loaders/pdf.py +4 -3
  159. visidata/loaders/png.py +19 -13
  160. visidata/loaders/postgres.py +9 -8
  161. visidata/loaders/rec.py +7 -3
  162. visidata/loaders/s3.py +342 -0
  163. visidata/loaders/sas.py +5 -5
  164. visidata/loaders/scrape.py +186 -0
  165. visidata/loaders/shp.py +6 -5
  166. visidata/loaders/spss.py +5 -6
  167. visidata/loaders/sqlite.py +68 -28
  168. visidata/loaders/texttables.py +1 -1
  169. visidata/loaders/toml.py +60 -0
  170. visidata/loaders/tsv.py +61 -19
  171. visidata/loaders/ttf.py +19 -7
  172. visidata/loaders/unzip_http.py +6 -5
  173. visidata/loaders/usv.py +1 -1
  174. visidata/loaders/vcf.py +16 -16
  175. visidata/loaders/vds.py +10 -7
  176. visidata/loaders/vdx.py +30 -5
  177. visidata/loaders/xlsb.py +8 -1
  178. visidata/loaders/xlsx.py +145 -25
  179. visidata/loaders/xml.py +6 -3
  180. visidata/loaders/xword.py +4 -4
  181. visidata/loaders/yaml.py +15 -5
  182. visidata/macros.py +129 -42
  183. visidata/main.py +119 -94
  184. visidata/mainloop.py +101 -155
  185. visidata/man/parse_options.py +2 -2
  186. visidata/man/vd.1 +302 -149
  187. visidata/man/vd.txt +291 -154
  188. visidata/memory.py +3 -3
  189. visidata/menu.py +104 -423
  190. visidata/metasheets.py +59 -141
  191. visidata/modify.py +78 -23
  192. visidata/motd.py +3 -3
  193. visidata/mouse.py +137 -0
  194. visidata/movement.py +43 -35
  195. visidata/optionssheet.py +99 -0
  196. visidata/path.py +113 -32
  197. visidata/pivot.py +73 -47
  198. visidata/plugins.py +65 -192
  199. visidata/pyobj.py +55 -205
  200. visidata/rename_col.py +20 -0
  201. visidata/save.py +37 -20
  202. visidata/search.py +54 -10
  203. visidata/selection.py +84 -5
  204. visidata/settings.py +162 -25
  205. visidata/sheets.py +239 -260
  206. visidata/shell.py +51 -21
  207. visidata/sidebar.py +162 -0
  208. visidata/sort.py +11 -4
  209. visidata/statusbar.py +114 -104
  210. visidata/stored_list.py +43 -0
  211. visidata/stored_prop.py +38 -0
  212. visidata/tests/benchmark.csv +52 -0
  213. visidata/tests/conftest.py +3 -3
  214. visidata/tests/test_cliptext.py +39 -0
  215. visidata/tests/test_commands.py +65 -7
  216. visidata/tests/test_edittext.py +2 -2
  217. visidata/tests/test_features.py +28 -0
  218. visidata/tests/test_menu.py +14 -0
  219. visidata/tests/test_path.py +13 -4
  220. visidata/text_source.py +53 -0
  221. visidata/textsheet.py +10 -3
  222. visidata/theme.py +44 -0
  223. visidata/themes/__init__.py +0 -0
  224. visidata/themes/ascii8.py +84 -0
  225. visidata/themes/asciimono.py +84 -0
  226. visidata/themes/light.py +17 -0
  227. visidata/threads.py +89 -40
  228. visidata/tuiwin.py +22 -0
  229. visidata/type_currency.py +22 -3
  230. visidata/type_date.py +31 -9
  231. visidata/type_floatsi.py +5 -1
  232. visidata/undo.py +17 -5
  233. visidata/utils.py +106 -23
  234. visidata/vdobj.py +28 -17
  235. visidata/windows.py +10 -0
  236. visidata/wrappers.py +9 -3
  237. visidata-3.0.1.data/data/share/applications/visidata.desktop +7 -0
  238. {visidata-2.11.1.data → visidata-3.0.1.data}/data/share/man/man1/vd.1 +302 -149
  239. {visidata-2.11.1.data → visidata-3.0.1.data}/data/share/man/man1/visidata.1 +302 -149
  240. visidata-3.0.1.data/scripts/vd2to3.vdx +9 -0
  241. {visidata-2.11.1.dist-info → visidata-3.0.1.dist-info}/METADATA +12 -8
  242. visidata-3.0.1.dist-info/RECORD +258 -0
  243. {visidata-2.11.1.dist-info → visidata-3.0.1.dist-info}/WHEEL +1 -1
  244. vgit/__init__.py +0 -1
  245. vgit/gitsheet.py +0 -164
  246. visidata/layout.py +0 -44
  247. visidata/misc.py +0 -5
  248. visidata-2.11.1.data/scripts/vgit +0 -9
  249. visidata-2.11.1.dist-info/RECORD +0 -155
  250. {vgit → visidata/apps/vgit}/__main__.py +0 -0
  251. {vgit → visidata/apps/vgit}/abort.py +0 -0
  252. /visidata/{repeat.py → features/repeat.py} +0 -0
  253. {visidata-2.11.1.data → visidata-3.0.1.data}/scripts/vd +0 -0
  254. {visidata-2.11.1.dist-info → visidata-3.0.1.dist-info}/LICENSE.gpl3 +0 -0
  255. {visidata-2.11.1.dist-info → visidata-3.0.1.dist-info}/entry_points.txt +0 -0
  256. {visidata-2.11.1.dist-info → visidata-3.0.1.dist-info}/top_level.txt +0 -0
visidata/man/vd.1 CHANGED
@@ -1,4 +1,4 @@
1
- .Dd January 11, 2023
1
+ .Dd January 7, 2024
2
2
  .Dt vd \&1 "Quick Reference Guide"
3
3
  .Os Linux/MacOS
4
4
  .
@@ -26,6 +26,7 @@
26
26
  .Cm --play Ar cmdlog
27
27
  .Op Cm -w Ar waitsecs
28
28
  .Op Cm --batch
29
+ .Op Cm -i
29
30
  .Op Cm -o Ar output
30
31
  .Op Ar field Ns Cm = Ns Ar value
31
32
  .
@@ -48,22 +49,18 @@ Rows can be selected, filtered, and grouped; columns can be rearranged, transfor
48
49
  .
49
50
  .Lf b batch
50
51
  replay in batch mode (with no interface)
52
+ .Lf i interactive
53
+ launch VisiData in interactive mode after batch
51
54
  .
52
55
  .Lo o output file
53
56
  .No save final visible sheet to Ar file No as .tsv
54
57
  .
55
- .It Sy --replay-movement
56
- .No toggle Sy --play No to move cursor cell-by-cell
57
58
  .It Ar field Ns Cm = Ns Ar value
58
59
  .No replace \&"{ Ns Ar field Ns }\&" in Ar cmdlog No contents with Ar value
59
60
  .El
60
61
  .
61
62
  .Ss Commands During Replay
62
63
  .Bl -tag -width XXXXXXXXXXXXXXXXXXX -compact -offset XXX
63
- .It Sy ^U
64
- pause/resume replay
65
- .It Sy ^N
66
- execute next row in replaying sheet
67
64
  .It Sy ^K
68
65
  cancel current replay
69
66
  .El
@@ -86,19 +83,34 @@ quit current sheet and free associated memory
86
83
  .It Ic " gq"
87
84
  quit all sheets (clean exit)
88
85
  .Pp
89
- .It Ic " ^H"
86
+ .It Ic "Alt+H"
90
87
  .No activate help menu ( Ns Sy Enter Ns / Ns Sy left-mouse No to expand submenu or execute command)
91
88
  .It Ic "g^H"
92
89
  view this man page
93
90
  .It Ic "z^H"
94
91
  view sheet of command longnames and keybindings for current sheet
95
- .It Ic "Space" Ar longname
96
- .No execute command by its Ar longname
92
+ .Pp
93
+ .It Ic " gb"
94
+ open sidebar in a new sheet
95
+ .It Ic " b"
96
+ toggle sidebar
97
97
  .Pp
98
98
  .It Ic " U"
99
99
  .No undo the most recent modification ( requires enabled Sy options.undo Ns )
100
100
  .It Ic " R"
101
101
  .No redo the most recent undo ( requires enabled Sy options.undo Ns )
102
+ .Pp
103
+ .It Ic "Space" Ar longname
104
+ .No open command palette; Sy Enter No to execute top command by its Ar longname
105
+ .El
106
+ .Ss " Command Palette"
107
+ .Bl -tag -width XXXXXXXXXXXXXXX -compact -offset XXX
108
+ .It Ic "Tab"
109
+ .No Move to command palette, and cycle through commands
110
+ .It Ic "0-9"
111
+ .No Execute numbered command
112
+ .It Ic "Enter"
113
+ .No Execute highlighted command
102
114
  .El
103
115
  .Ss "Cursor Movement"
104
116
  .
@@ -186,6 +198,8 @@ unhide all columns
186
198
  toggle/unset current column as a key column
187
199
  .It Ic "~ # % $ @ z#"
188
200
  set type of current column to str/int/float/currency/date/len
201
+ .It Ic "Alt++ Alt+-"
202
+ show more/less precision in current numerical column
189
203
  .It Ic " ^"
190
204
  rename current column
191
205
  .It Ic " g^"
@@ -237,8 +251,10 @@ add/reset cache for current/all visible column(s)
237
251
  .No expand current/all visible column(s) of lists (e.g. Sy [3] Ns ) or dicts (e.g. Sy {3} Ns ) one level
238
252
  .It Ic "z( gz(" Ar depth
239
253
  .No expand current/all visible column(s) of lists (e.g. Sy [3] Ns ) or dicts (e.g. Sy {3} Ns ) to given Ar depth ( Ar 0 Ns = fully)
240
- .It Ic " )"
241
- unexpand current column; restore original column and remove other columns at this level
254
+ .It Ic " ) g("
255
+ unexpand current/all visible column(s); restore original column and remove other columns at this level
256
+ .It Ic "z) gz)" Ar depth
257
+ .No contract current/all visible column(s) of former lists (e.g. Sy [3] Ns ) or dicts (e.g. Sy {3} Ns ) to given Ar depth ( Ar 0 Ns = fully)
242
258
  .It Ic "zM"
243
259
  .No row-wise expand current column of lists (e.g. Sy [3] Ns ) or dicts (e.g. Sy {3} Ns ) within that column
244
260
  .El
@@ -365,7 +381,7 @@ toggle insert mode
365
381
  .It Ic "Up Down"
366
382
  set contents to previous/next in history
367
383
  .It Ic "Tab Shift+Tab"
368
- autocomplete input (when available)
384
+ .No move cursor left/right and re-enter edit mode
369
385
  .It Ic "Shift+Arrow"
370
386
  .No move cursor in direction of Sy Arrow No and re-enter edit mode
371
387
  .
@@ -521,9 +537,9 @@ open current row/cell/sheet as Python object
521
537
  .It Sy " \&."
522
538
  .Sy Directory Sheet No " browse properties of files in a directory"
523
539
  .It Sy " \&."
524
- .Sy Plugins Sheet No " browse, install, and (de)activate plugins"
540
+ .Sy Guide Index No " read documentation from within VisiData"
525
541
  .It Sy " \&."
526
- .Sy Memory Sheet No (Alt+Shift+M) " browse saved values, including clipboard"
542
+ .Sy Memory Sheet No (Alt+Shift+M) " browse saved values, including clipboard"
527
543
  .It " "
528
544
  .It Sy Metasheets
529
545
  .It Sy " \&."
@@ -585,25 +601,23 @@ open parent directory
585
601
  commit changes to file system
586
602
  .El
587
603
  .
588
- .Ss Plugins Sheet
604
+ .Ss Guide Index
589
605
  .Bl -inset -compact
590
- .It Browse through a list of available plugins. VisiData needs to be restarted before plugin activation takes effect. Installation may require internet access.
606
+ .It Browse through a list of available guides. Each guide shows you how to use a particular feature. Gray guides have not been written yet.
591
607
  .El
592
608
  .Bl -inset -compact
593
609
  .It (global commands)
594
610
  .El
595
611
  .Bl -tag -width XXXXXXXXXXXXXXX -compact -offset XXX
596
- .It Ic Space Ar open-plugins
597
- .No open the Sy Plugins Sheet
612
+ .It Ic Space Ar open-guide-index
613
+ .No open the Sy Guide Index
598
614
  .El
599
615
  .Bl -inset -compact
600
616
  .It (sheet-specific commands)
601
617
  .El
602
618
  .Bl -tag -width XXXXXXXXXXXXXXX -compact -offset XXX
603
- .It Ic "a"
604
- install and activate current plugin
605
- .It Ic "d"
606
- deactivate current plugin
619
+ .It Ic "Enter"
620
+ open a guide
607
621
  .El
608
622
  .
609
623
  .Ss Memory Sheet
@@ -704,7 +718,7 @@ save selected or all sheets
704
718
  .It Sy "\&."
705
719
  .Sy extend No "copy first selected sheet, keeping all rows and sheet type, and extend with columns from other sheets"
706
720
  .It Sy "\&."
707
- .Sy merge No " mostly keep all rows from first selected sheet, except prioritise cells with non-null/non-error values"
721
+ .Sy merge No " keep all rows from first sheet, updating any False-y cells with non-False-y values from second sheet; add unique rows from second sheet"
708
722
  .El
709
723
  .
710
724
  .Ss Options Sheet (Shift+O)
@@ -863,6 +877,9 @@ show/hide methods and hidden properties
863
877
  .No preplay Ar longname No before replay or regular launch; limited to Sy Base Sheet No bound commands
864
878
  .It Cm + Ns Ar toplevel Ns : Ns Ar subsheet Ns : Ns Ar col Ns : Ns Ar row
865
879
  .No launch vd with Ar subsheet No of Ar toplevel No at top-of-stack, and cursor at Ar col No and Ar row Ns ; all arguments are optional
880
+ .It Cm --overwrite Ns = Ns Ar c
881
+ .No Overwrite with confirmation
882
+ .
866
883
  .Pp
867
884
  .Lo f filetype filetype
868
885
  .No "tsv "
@@ -874,46 +891,28 @@ instead of file extension
874
891
  .No "\(rst "
875
892
  field delimiter to use for tsv/usv filetype
876
893
  .
877
- .Lo y confirm-overwrite F
878
- .No "True "
894
+ .Lo y overwrite y
895
+ .No "y "
879
896
  overwrite existing files without confirmation
880
897
  .
898
+ .Lo ro overwrite n
899
+ .No "n "
900
+ do not overwrite existing files
901
+ .
881
902
  .Lo N nothing T
882
- .No "False "
903
+ .No "False "
883
904
  disable loading .visidatarc and plugin addons
884
905
  .
885
906
  .El
886
907
  .Bl -tag -width XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX -compact
887
908
  .It Sy --visidata-dir Ns = Ns Ar "str " No "~/.visidata/"
888
909
  directory to load and store additional files
889
- .It Sy --mouse-interval Ns = Ns Ar "int " No "1"
890
- max time between press/release for click (ms)
891
- .It Sy --null-value Ns = Ns Ar "NoneType " No "None"
892
- a value to be counted as null
910
+ .It Sy --debug No " False"
911
+ exit on error and display stacktrace
893
912
  .It Sy --undo Ns = Ns Ar "bool " No "True"
894
913
  enable undo/redo
895
914
  .It Sy --col-cache-size Ns = Ns Ar "int " No "0"
896
915
  max number of cache entries in each cached column
897
- .It Sy --clean-names No " False"
898
- clean column/sheet names to be valid Python identifiers
899
- .It Sy --default-width Ns = Ns Ar "int " No "20"
900
- default column width
901
- .It Sy --default-height Ns = Ns Ar "int " No "4"
902
- default column height
903
- .It Sy --textwrap-cells Ns = Ns Ar "bool " No "True"
904
- wordwrap text for multiline rows
905
- .It Sy --quitguard No " False"
906
- confirm before quitting modified sheet
907
- .It Sy --debug No " False"
908
- exit on error and display stacktrace
909
- .It Sy --skip Ns = Ns Ar "int " No "0"
910
- skip N rows before header
911
- .It Sy --header Ns = Ns Ar "int " No "1"
912
- parse first N rows as column names
913
- .It Sy --load-lazy No " False"
914
- load subsheets always (False) or lazily (True)
915
- .It Sy --force-256-colors No " False"
916
- use 256 colors even if curses reports fewer
917
916
  .It Sy --note-pending Ns = Ns Ar "str " No "\[u231B]"
918
917
  note to display for pending cells
919
918
  .It Sy --note-format-exc Ns = Ns Ar "str " No "?"
@@ -924,6 +923,16 @@ cell note for an exception during computation
924
923
  cell note for an exception during type conversion
925
924
  .It Sy --scroll-incr Ns = Ns Ar "int " No "-3"
926
925
  amount to scroll with scrollwheel
926
+ .It Sy --force-256-colors No " False"
927
+ use 256 colors even if curses reports fewer
928
+ .It Sy --quitguard No " False"
929
+ confirm before quitting modified sheet
930
+ .It Sy --default-width Ns = Ns Ar "int " No "20"
931
+ default column width
932
+ .It Sy --default-height Ns = Ns Ar "int " No "4"
933
+ default column height
934
+ .It Sy --textwrap-cells Ns = Ns Ar "bool " No "True"
935
+ wordwrap text for multiline rows
927
936
  .It Sy --name-joiner Ns = Ns Ar "str " No "_"
928
937
  string to join sheet or column names
929
938
  .It Sy --value-joiner Ns = Ns Ar "str " No " "
@@ -936,16 +945,26 @@ specify default file type to save as
936
945
  enable profiling on threads
937
946
  .It Sy --min-memory-mb Ns = Ns Ar "int " No "0"
938
947
  minimum memory to continue loading and async processing
939
- .It Sy --encoding Ns = Ns Ar "str " No "utf-8"
940
- encoding passed to codecs.open
948
+ .It Sy --encoding Ns = Ns Ar "str " No "utf-8-sig"
949
+ encoding passed to codecs.open when reading a file
941
950
  .It Sy --encoding-errors Ns = Ns Ar "str " No "surrogateescape"
942
951
  encoding_errors passed to codecs.open
943
- .It Sy --input-history Ns = Ns Ar "str " No ""
944
- basename of file to store persistent input history
952
+ .It Sy --mouse-interval Ns = Ns Ar "int " No "1"
953
+ max time between press/release for click (ms)
945
954
  .It Sy --bulk-select-clear No " False"
946
955
  clear selected rows before new bulk selections
947
956
  .It Sy --some-selected-rows No " False"
948
957
  if no rows selected, if True, someSelectedRows returns all rows; if False, fails
958
+ .It Sy --regex-skip Ns = Ns Ar "str " No ""
959
+ regex of lines to skip in text sources
960
+ .It Sy --regex-flags Ns = Ns Ar "str " No "I"
961
+ flags to pass to re.compile() [AILMSUX]
962
+ .It Sy --load-lazy No " False"
963
+ load subsheets always (False) or lazily (True)
964
+ .It Sy --skip Ns = Ns Ar "int " No "0"
965
+ skip N rows before header
966
+ .It Sy --header Ns = Ns Ar "int " No "1"
967
+ parse first N rows as column names
949
968
  .It Sy --delimiter Ns = Ns Ar "str " No " "
950
969
  field delimiter to use for tsv/usv filetype
951
970
  .It Sy --row-delimiter Ns = Ns Ar "str " No "
@@ -956,7 +975,7 @@ replacement for newline character when saving to tsv
956
975
  .It Sy --tsv-safe-tab Ns = Ns Ar "str " No ""
957
976
  replacement for tab character when saving to tsv
958
977
  .It Sy --visibility Ns = Ns Ar "int " No "0"
959
- visibility level (0=low, 1=high)
978
+ visibility level
960
979
  .It Sy --default-sample-size Ns = Ns Ar "int " No "100"
961
980
  number of rows to sample for regex.split (0=all)
962
981
  .It Sy --fmt-expand-dict Ns = Ns Ar "str " No "%s.%s"
@@ -967,54 +986,46 @@ format str to use for names of columns expanded from list (colname, index)
967
986
  indent to use when saving json
968
987
  .It Sy --json-sort-keys No " False"
969
988
  sort object keys when saving to json
989
+ .It Sy --json-ensure-ascii Ns = Ns Ar "bool " No "True"
990
+ ensure ascii encode when saving json
970
991
  .It Sy --default-colname Ns = Ns Ar "str " No ""
971
992
  column name to use for non-dict rows
972
993
  .It Sy --filetype Ns = Ns Ar "str " No ""
973
994
  specify file type
995
+ .It Sy --safe-error Ns = Ns Ar "str " No "#ERR"
996
+ error string to use while saving
997
+ .It Sy --save-encoding Ns = Ns Ar "str " No "utf-8"
998
+ encoding passed to codecs.open when saving a file
999
+ .It Sy --clean-names No " False"
1000
+ clean column/sheet names to be valid Python identifiers
974
1001
  .It Sy --replay-wait Ns = Ns Ar "float " No "0.0"
975
1002
  time to wait between replayed commands, in seconds
976
- .It Sy --replay-movement No " False"
977
- insert movements during replay
978
1003
  .It Sy --rowkey-prefix Ns = Ns Ar "str " No "\[u30AD]"
979
1004
  string prefix for rowkey in the cmdlog
980
- .It Sy --cmdlog-histfile Ns = Ns Ar "str " No ""
981
- file to autorecord each cmdlog action to
982
- .It Sy --confirm-overwrite Ns = Ns Ar "bool " No "True"
983
- whether to prompt for overwrite confirmation on save
984
- .It Sy --safe-error Ns = Ns Ar "str " No "#ERR"
985
- error string to use while saving
986
1005
  .It Sy --clipboard-copy-cmd Ns = Ns Ar "str " No "xclip -selection clipboard -filter"
987
1006
  command to copy stdin to system clipboard
988
1007
  .It Sy --clipboard-paste-cmd Ns = Ns Ar "str " No "xclip -selection clipboard -o"
989
1008
  command to send contents of system clipboard to stdout
990
1009
  .It Sy --fancy-chooser No " False"
991
1010
  a nicer selection interface for aggregators and jointype
992
- .It Sy --describe-aggrs Ns = Ns Ar "str " No "mean stdev"
993
- numeric aggregators to calculate on Describe sheet
1011
+ .It Sy --null-value Ns = Ns Ar "NoneType " No "None"
1012
+ a value to be counted as null
994
1013
  .It Sy --histogram-bins Ns = Ns Ar "int " No "0"
995
1014
  number of bins for histogram of numeric columns
996
1015
  .It Sy --numeric-binning No " False"
997
1016
  bin numeric columns into ranges
998
- .It Sy --regex-flags Ns = Ns Ar "str " No "I"
999
- flags to pass to re.compile() [AILMSUX]
1000
- .It Sy --regex-maxsplit Ns = Ns Ar "int " No "0"
1001
- maxsplit to pass to regex.split
1002
- .It Sy --show-graph-labels Ns = Ns Ar "bool " No "True"
1003
- show axes and legend on graph
1004
1017
  .It Sy --plot-colors Ns = Ns Ar "str " No ""
1005
1018
  list of distinct colors to use for plotting distinct objects
1006
- .It Sy --zoom-incr Ns = Ns Ar "float " No "2.0"
1007
- amount to multiply current zoomlevel when zooming
1008
1019
  .It Sy --motd-url Ns = Ns Ar "str " No ""
1009
1020
  source of randomized startup messages
1010
- .It Sy --dir-recurse No " False"
1011
- walk source path recursively on DirSheet
1021
+ .It Sy --dir-depth Ns = Ns Ar "int " No "0"
1022
+ folder recursion depth on DirSheet
1012
1023
  .It Sy --dir-hidden No " False"
1013
1024
  load hidden files on DirSheet
1014
- .It Sy --config Ns = Ns Ar "Path " No "/home/kefala/.visidatarc"
1025
+ .It Sy --config Ns = Ns Ar "Path " No "~/.visidatarc"
1015
1026
  config file to exec in Python
1016
1027
  .It Sy --play Ns = Ns Ar "str " No ""
1017
- file.vd to replay
1028
+ file.vdj to replay
1018
1029
  .It Sy --batch No " False"
1019
1030
  replay in batch mode (with no interface and all status sent to stdout)
1020
1031
  .It Sy --output Ns = Ns Ar "NoneType " No "None"
@@ -1025,10 +1036,38 @@ longnames to preplay before replay
1025
1036
  imports to preload before .visidatarc (command-line only)
1026
1037
  .It Sy --nothing No " False"
1027
1038
  no config, no plugins, nothing extra
1028
- .It Sy --unfurl-empty No " False"
1029
- if unfurl includes rows for empty containers
1030
- .It Sy --incr-base Ns = Ns Ar "float " No "1.0"
1031
- start value for column increments
1039
+ .It Sy --interactive No " False"
1040
+ run interactive mode after batch replay
1041
+ .It Sy --overwrite Ns = Ns Ar "str " No "c"
1042
+ overwrite existing files {y=yes|c=confirm|n=no}
1043
+ .It Sy --plugins-autoload Ns = Ns Ar "bool " No "True"
1044
+ do not autoload plugins if False
1045
+ .It Sy --theme Ns = Ns Ar "str " No ""
1046
+ display/color theme to use
1047
+ .It Sy --airtable-auth-token Ns = Ns Ar "str " No ""
1048
+ Airtable API key from https://airtable.com/account
1049
+ .It Sy --matrix-token Ns = Ns Ar "str " No ""
1050
+ matrix API token
1051
+ .It Sy --matrix-user-id Ns = Ns Ar "str " No ""
1052
+ matrix user ID associated with token
1053
+ .It Sy --matrix-device-id Ns = Ns Ar "str " No "VisiData"
1054
+ device ID associated with matrix login
1055
+ .It Sy --reddit-client-id Ns = Ns Ar "str " No ""
1056
+ client_id for reddit api
1057
+ .It Sy --reddit-client-secret Ns = Ns Ar "str " No ""
1058
+ client_secret for reddit api
1059
+ .It Sy --reddit-user-agent Ns = Ns Ar "str " No "3.0.1"
1060
+ user_agent for reddit api
1061
+ .It Sy --zulip-batch-size Ns = Ns Ar "int " No "-100"
1062
+ number of messages to fetch per call (<0 to fetch before anchor)
1063
+ .It Sy --zulip-anchor Ns = Ns Ar "int " No "1000000000"
1064
+ message id to start fetching from
1065
+ .It Sy --zulip-delay-s Ns = Ns Ar "float " No "1e-05"
1066
+ seconds to wait between calls (0 to stop after first)
1067
+ .It Sy --zulip-api-key Ns = Ns Ar "str " No ""
1068
+ Zulip API key
1069
+ .It Sy --zulip-email Ns = Ns Ar "str " No ""
1070
+ Email for use with Zulip API key
1032
1071
  .It Sy --csv-dialect Ns = Ns Ar "str " No "excel"
1033
1072
  dialect passed to csv.reader
1034
1073
  .It Sy --csv-delimiter Ns = Ns Ar "str " No ","
@@ -1044,36 +1083,82 @@ escapechar passed to csv.reader
1044
1083
  lineterminator passed to csv.writer
1045
1084
  .It Sy --safety-first No " False"
1046
1085
  sanitize input/output to handle edge cases, with a performance cost
1047
- .It Sy --xlsx-meta-columns No " False"
1048
- include columns for cell objects, font colors, and fill colors
1049
- .It Sy --sqlite-onconnect Ns = Ns Ar "str " No ""
1050
- sqlite statement to execute after opening a connection
1086
+ .It Sy --f5log-object-regex Ns = Ns Ar "NoneType" No "None"
1087
+ A regex to perform on the object name, useful where object names have a structure to extract. Use the (?P<foo>...) named groups form to get column names.
1088
+ .It Sy --f5log-log-year Ns = Ns Ar "NoneType " No "None"
1089
+ Override the default year used for log parsing. Use all four digits of the year (e.g., 2022). By default (None) use the year from the ctime of the file, or failing that the current year.
1090
+ .It Sy --f5log-log-timezone Ns = Ns Ar "str " No "UTC"
1091
+ The timezone the source file is in, by default UTC.
1051
1092
  .It Sy --fixed-rows Ns = Ns Ar "int " No "1000"
1052
1093
  number of rows to check for fixed width columns
1053
1094
  .It Sy --fixed-maxcols Ns = Ns Ar "int " No "0"
1054
1095
  max number of fixed-width columns to create (0 is no max)
1055
- .It Sy --postgres-schema Ns = Ns Ar "str " No "public"
1056
- The desired schema for the Postgres database
1096
+ .It Sy --graphviz-edge-labels Ns = Ns Ar "bool " No "True"
1097
+ whether to include edge labels on graphviz diagrams
1098
+ .It Sy --html-title Ns = Ns Ar "str " No "<h2>{sheet.name}</h2>"
1099
+ table header when saving to html
1057
1100
  .It Sy --http-max-next Ns = Ns Ar "int " No "0"
1058
1101
  max next.url pages to follow in http response
1059
1102
  .It Sy --http-req-headers Ns = Ns Ar "dict " No "{}"
1060
1103
  http headers to send to requests
1061
- .It Sy --html-title Ns = Ns Ar "str " No "<h2>{sheet.name}</h2>"
1062
- table header when saving to html
1063
- .It Sy --pcap-internet Ns = Ns Ar "str " No "n"
1064
- (y/s/n) if save_dot includes all internet hosts separately (y), combined (s), or does not include the internet (n)
1065
- .It Sy --xml-parser-huge-tree Ns = Ns Ar "bool " No "True"
1066
- allow very deep trees and very long text content
1067
- .It Sy --graphviz-edge-labels Ns = Ns Ar "bool " No "True"
1068
- whether to include edge labels on graphviz diagrams
1104
+ .It Sy --http-ssl-verify Ns = Ns Ar "bool " No "True"
1105
+ verify host and certificates for https
1069
1106
  .It Sy --npy-allow-pickle No " False"
1070
1107
  numpy allow unpickling objects (unsafe)
1108
+ .It Sy --pcap-internet Ns = Ns Ar "str " No "n"
1109
+ (y/s/n) if save_dot includes all internet hosts separately (y), combined (s), or does not include the internet (n)
1071
1110
  .It Sy --pdf-tables No " False"
1072
1111
  parse PDF for tables instead of pages of text
1073
- .It Sy --plugins-url Ns = Ns Ar "str " No "https://visidata.org/plugins/plugins.jsonl"
1074
- source of plugins sheet
1075
- .It Sy --plugins-autoload Ns = Ns Ar "bool " No "True"
1076
- do not autoload plugins if False
1112
+ .It Sy --postgres-schema Ns = Ns Ar "str " No "public"
1113
+ The desired schema for the Postgres database
1114
+ .It Sy --s3-endpoint Ns = Ns Ar "str " No ""
1115
+ alternate S3 endpoint, used for local testing or alternative S3-compatible services
1116
+ .It Sy --s3-glob Ns = Ns Ar "bool " No "True"
1117
+ enable glob-matching for S3 paths
1118
+ .It Sy --s3-version-aware No " False"
1119
+ show all object versions in a versioned bucket
1120
+ .It Sy --sqlite-onconnect Ns = Ns Ar "str " No ""
1121
+ sqlite statement to execute after opening a connection
1122
+ .It Sy --xlsx-meta-columns No " False"
1123
+ include columns for cell objects, font colors, and fill colors
1124
+ .It Sy --xml-parser-huge-tree Ns = Ns Ar "bool " No "True"
1125
+ allow very deep trees and very long text content
1126
+ .It Sy --plt-marker Ns = Ns Ar "str " No "."
1127
+ matplotlib.markers
1128
+ .It Sy --plot-palette Ns = Ns Ar "str " No "Set3"
1129
+ colorbrewer palette to use
1130
+ .It Sy --server-addr Ns = Ns Ar "str " No "127.0.0.1"
1131
+ IP address to listen for commands
1132
+ .It Sy --server-port Ns = Ns Ar "int " No "0"
1133
+ port to listen for commands
1134
+ .It Sy --fixer-api-key Ns = Ns Ar "str " No ""
1135
+ API Key for api.apilayer.com/fixer
1136
+ .It Sy --fixer-cache-days Ns = Ns Ar "int " No "1"
1137
+ Cache days for currency conversions
1138
+ .It Sy --describe-aggrs Ns = Ns Ar "str " No "mean stdev"
1139
+ numeric aggregators to calculate on Describe sheet
1140
+ .It Sy --hello-world Ns = Ns Ar "str " No "\[u00A1]Hola mundo!"
1141
+ shown by the hello-world command
1142
+ .It Sy --incr-base Ns = Ns Ar "float " No "1.0"
1143
+ start value for column increments
1144
+ .It Sy --ping-count Ns = Ns Ar "int " No "3"
1145
+ send this many pings to each host
1146
+ .It Sy --ping-interval Ns = Ns Ar "float " No "0.1"
1147
+ wait between ping rounds, in seconds
1148
+ .It Sy --regex-maxsplit Ns = Ns Ar "int " No "0"
1149
+ maxsplit to pass to regex.split
1150
+ .It Sy --rename-cascade No " False"
1151
+ cascade column renames into expressions
1152
+ .It Sy --faker-locale Ns = Ns Ar "str " No "en_US"
1153
+ default locale to use for Faker
1154
+ .It Sy --faker-extra-providers Ns = Ns Ar "NoneType" No "None"
1155
+ list of additional Provider classes to load via add_provider()
1156
+ .It Sy --faker-salt Ns = Ns Ar "str " No ""
1157
+ Use a non-empty string to enable deterministic fakes
1158
+ .It Sy --mailcap-mimetype Ns = Ns Ar "str " No ""
1159
+ force mimetype for sysopen-mailcap
1160
+ .It Sy --unfurl-empty No " False"
1161
+ if unfurl includes rows for empty containers
1077
1162
  .El
1078
1163
  .
1079
1164
  .Ss DISPLAY OPTIONS
@@ -1081,14 +1166,38 @@ do not autoload plugins if False
1081
1166
  .Pp
1082
1167
  .
1083
1168
  .Bl -tag -width XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX -compact
1084
- .It Sy "disp_splitwin_pct " No "0"
1085
- height of second sheet on screen
1086
- .It Sy "color_sidebar " No "black on 114 blue"
1087
- color of sidebar
1169
+ .It Sy "disp_menu " No "True"
1170
+ show menu on top line when not active
1171
+ .It Sy "disp_menu_keys " No "True"
1172
+ show keystrokes inline in submenus
1173
+ .It Sy "color_menu " No "black on 68 blue"
1174
+ color of menu items in general
1175
+ .It Sy "color_menu_active " No "223 yellow on black"
1176
+ color of active menu items
1177
+ .It Sy "color_menu_spec " No "black on 34 green"
1178
+ color of sheet-specific menu items
1179
+ .It Sy "color_menu_help " No "black italic on 68 blue"
1180
+ color of helpbox
1181
+ .It Sy "disp_menu_boxchars " No "\[u2502]\[u2502]\[u2500]\[u2500]\[u250C]\[u2510]\[u2514]\[u2518]\[u251C]\[u2524]"
1182
+ box characters to use for menus
1183
+ .It Sy "disp_menu_more " No "\[u00BB]"
1184
+ command submenu indicator
1185
+ .It Sy "disp_menu_push " No "\[u2398]"
1186
+ indicator if command pushes sheet onto sheet stack
1187
+ .It Sy "disp_menu_input " No "\[u2026]"
1188
+ indicator if input required for command
1189
+ .It Sy "disp_menu_fmt " No "| VisiData {vd.version} | Alt+H for help menu"
1190
+ right-side menu format string
1088
1191
  .It Sy "disp_float_fmt " No "{:.02f}"
1089
- default fmtstr to format for float values
1192
+ default fmtstr to format float values
1090
1193
  .It Sy "disp_int_fmt " No "{:d}"
1091
- default fmtstr to format for int values
1194
+ default fmtstr to format int values
1195
+ .It Sy "disp_formatter " No "generic"
1196
+ formatter to create the text in each cell (also used by text savers)
1197
+ .It Sy "disp_displayer " No "generic"
1198
+ displayer to render the text in each cell
1199
+ .It Sy "disp_splitwin_pct " No "0"
1200
+ height of second sheet on screen
1092
1201
  .It Sy "disp_note_none " No "\[u2300]"
1093
1202
  visible contents of a cell whose value is None
1094
1203
  .It Sy "disp_truncator " No "\[u2026]"
@@ -1151,6 +1260,8 @@ color of the bottom header row
1151
1260
  color of the cursor row
1152
1261
  .It Sy "color_current_col " No "bold"
1153
1262
  color of the cursor column
1263
+ .It Sy "color_current_cell " No ""
1264
+ color of current cell, if different from color_current_row+color_current_col
1154
1265
  .It Sy "color_current_hdr " No "bold reverse"
1155
1266
  color of the header for the cursor column
1156
1267
  .It Sy "color_column_sep " No "246 blue"
@@ -1161,92 +1272,134 @@ color of key columns
1161
1272
  color of hidden columns on metasheets
1162
1273
  .It Sy "color_selected_row " No "215 yellow"
1163
1274
  color of selected rows
1164
- .It Sy "disp_rstatus_fmt " No " {sheet.longname} {sheet.nRows:9d} {sheet.rowtype} {sheet.modifiedStatus} {sheet.options.disp_selected_note}{sheet.nSelectedRows}"
1275
+ .It Sy "color_clickable " No "underline"
1276
+ color of internally clickable item
1277
+ .It Sy "color_code " No "bold white on 237"
1278
+ color of code sample
1279
+ .It Sy "color_heading " No "bold 200"
1280
+ color of header
1281
+ .It Sy "color_guide_unwritten" No "243 on black"
1282
+ color of unwritten guides in GuideGuide
1283
+ .It Sy "disp_rstatus_fmt " No "{sheet.threadStatus} {sheet.keystrokeStatus} [:longname]{sheet.longname}[/] {sheet.nRows:9d} {sheet.rowtype} {sheet.modifiedStatus}{sheet.selectedStatus}{vd.replayStatus}"
1165
1284
  right-side status format string
1166
- .It Sy "disp_status_fmt " No "{sheet.shortcut}\[u203A] {sheet.name}| "
1285
+ .It Sy "disp_status_fmt " No "[:onclick sheets-stack]{sheet.shortcut}\[u203A] {sheet.name}[/]| "
1167
1286
  status line prefix
1168
1287
  .It Sy "disp_lstatus_max " No "0"
1169
1288
  maximum length of left status line
1170
- .It Sy "disp_status_sep " No " \[u2502] "
1289
+ .It Sy "disp_status_sep " No "\[u2502]"
1171
1290
  separator between statuses
1172
- .It Sy "color_keystrokes " No "bold 233 black on 110 cyan"
1173
- color of input keystrokes on status line
1174
- .It Sy "color_status " No "bold black on 110 cyan"
1291
+ .It Sy "color_keystrokes " No "bold white on 237"
1292
+ color of input keystrokes
1293
+ .It Sy "color_longname " No "bold 52 on 114 green"
1294
+ color of command longnames
1295
+ .It Sy "color_keys " No "bold"
1296
+ color of keystrokes in help
1297
+ .It Sy "color_status " No "bold on 238"
1175
1298
  status line color
1176
- .It Sy "color_error " No "red"
1299
+ .It Sy "color_error " No "202 1"
1177
1300
  error message color
1178
- .It Sy "color_warning " No "yellow"
1301
+ .It Sy "color_warning " No "166 15"
1179
1302
  warning message color
1180
1303
  .It Sy "color_top_status " No "underline"
1181
1304
  top window status bar color
1182
- .It Sy "color_active_status" No "black on 110 cyan"
1305
+ .It Sy "color_active_status" No "black on 68 blue"
1183
1306
  active window status bar color
1184
1307
  .It Sy "color_inactive_status" No "8 on black"
1185
1308
  inactive window status bar color
1186
- .It Sy "color_working " No "green"
1309
+ .It Sy "color_highlight_status" No "black on green"
1310
+ color of highlighted elements in statusbar
1311
+ .It Sy "color_working " No "118 5"
1187
1312
  color of system running smoothly
1188
- .It Sy "color_edit_cell " No "white"
1313
+ .It Sy "color_edit_unfocused" No "238 on 110"
1314
+ display color for unfocused input in form
1315
+ .It Sy "color_edit_cell " No "233 on 110"
1189
1316
  cell color to use when editing cell
1190
1317
  .It Sy "disp_edit_fill " No "_"
1191
1318
  edit field fill character
1192
1319
  .It Sy "disp_unprintable " No "\[u00B7]"
1193
1320
  substitute character for unprintables
1321
+ .It Sy "disp_date_fmt " No "%Y-%m-%d"
1322
+ default fmtstr passed to strftime for date values
1194
1323
  .It Sy "disp_currency_fmt " No "%.02f"
1195
1324
  default fmtstr to format for currency values
1196
- .It Sy "disp_date_fmt " No "%Y-%m-%d"
1197
- default fmtstr to strftime for date values
1325
+ .It Sy "color_currency_neg " No "red"
1326
+ color for negative values in currency displayer
1198
1327
  .It Sy "disp_replay_play " No "\[u25B6]"
1199
1328
  status indicator for active replay
1200
- .It Sy "disp_replay_pause " No "\[u2016]"
1201
- status indicator for paused replay
1202
1329
  .It Sy "color_status_replay" No "green"
1203
1330
  color of replay status indicator
1204
- .It Sy "disp_formatter " No "generic"
1205
- formatter to use for display and saving
1206
- .It Sy "disp_menu " No "True"
1207
- show menu on top line when not active
1208
- .It Sy "disp_menu_keys " No "True"
1209
- show keystrokes inline in submenus
1210
- .It Sy "color_menu " No "black on 110 cyan"
1211
- color of menu items in general
1212
- .It Sy "color_menu_active " No "223 yellow on black"
1213
- color of active menu items
1214
- .It Sy "color_menu_spec " No "black on 34 green"
1215
- color of sheet-specific menu items
1216
- .It Sy "color_menu_help " No "black italic on 110 cyan"
1217
- color of helpbox
1218
- .It Sy "disp_menu_boxchars " No "\[u2502]\[u2502]\[u2500]\[u2500]\[u250C]\[u2510]\[u2514]\[u2518]\[u251C]\[u2524]"
1219
- box characters to use for menus
1220
- .It Sy "disp_menu_more " No "\[u00BB]"
1221
- command submenu indicator
1222
- .It Sy "disp_menu_push " No "\[u2398]"
1223
- indicator if command pushes sheet onto sheet stack
1224
- .It Sy "disp_menu_input " No "\[u2026]"
1225
- indicator if input required for command
1226
- .It Sy "disp_menu_fmt " No "Ctrl+H for help menu"
1227
- right-side menu format string
1228
1331
  .It Sy "disp_histogram " No "\[u25A0]"
1229
1332
  histogram element character
1230
- .It Sy "disp_histolen " No "50"
1231
- width of histogram column
1333
+ .It Sy "disp_graph_labels " No "True"
1334
+ show axes and legend on graph
1232
1335
  .It Sy "disp_canvas_charset" No "\[u2800]\[u2801]\[u2802]\[u2803]\[u2804]\[u2805]\[u2806]\[u2807]\[u2808]\[u2809]\[u280A]\[u280B]\[u280C]\[u280D]\[u280E]\[u280F]\[u2810]\[u2811]\[u2812]\[u2813]\[u2814]\[u2815]\[u2816]\[u2817]\[u2818]\[u2819]\[u281A]\[u281B]\[u281C]\[u281D]\[u281E]\[u281F]\[u2820]\[u2821]\[u2822]\[u2823]\[u2824]\[u2825]\[u2826]\[u2827]\[u2828]\[u2829]\[u282A]\[u282B]\[u282C]\[u282D]\[u282E]\[u282F]\[u2830]\[u2831]\[u2832]\[u2833]\[u2834]\[u2835]\[u2836]\[u2837]\[u2838]\[u2839]\[u283A]\[u283B]\[u283C]\[u283D]\[u283E]\[u283F]\[u2840]\[u2841]\[u2842]\[u2843]\[u2844]\[u2845]\[u2846]\[u2847]\[u2848]\[u2849]\[u284A]\[u284B]\[u284C]\[u284D]\[u284E]\[u284F]\[u2850]\[u2851]\[u2852]\[u2853]\[u2854]\[u2855]\[u2856]\[u2857]\[u2858]\[u2859]\[u285A]\[u285B]\[u285C]\[u285D]\[u285E]\[u285F]\[u2860]\[u2861]\[u2862]\[u2863]\[u2864]\[u2865]\[u2866]\[u2867]\[u2868]\[u2869]\[u286A]\[u286B]\[u286C]\[u286D]\[u286E]\[u286F]\[u2870]\[u2871]\[u2872]\[u2873]\[u2874]\[u2875]\[u2876]\[u2877]\[u2878]\[u2879]\[u287A]\[u287B]\[u287C]\[u287D]\[u287E]\[u287F]\[u2880]\[u2881]\[u2882]\[u2883]\[u2884]\[u2885]\[u2886]\[u2887]\[u2888]\[u2889]\[u288A]\[u288B]\[u288C]\[u288D]\[u288E]\[u288F]\[u2890]\[u2891]\[u2892]\[u2893]\[u2894]\[u2895]\[u2896]\[u2897]\[u2898]\[u2899]\[u289A]\[u289B]\[u289C]\[u289D]\[u289E]\[u289F]\[u28A0]\[u28A1]\[u28A2]\[u28A3]\[u28A4]\[u28A5]\[u28A6]\[u28A7]\[u28A8]\[u28A9]\[u28AA]\[u28AB]\[u28AC]\[u28AD]\[u28AE]\[u28AF]\[u28B0]\[u28B1]\[u28B2]\[u28B3]\[u28B4]\[u28B5]\[u28B6]\[u28B7]\[u28B8]\[u28B9]\[u28BA]\[u28BB]\[u28BC]\[u28BD]\[u28BE]\[u28BF]\[u28C0]\[u28C1]\[u28C2]\[u28C3]\[u28C4]\[u28C5]\[u28C6]\[u28C7]\[u28C8]\[u28C9]\[u28CA]\[u28CB]\[u28CC]\[u28CD]\[u28CE]\[u28CF]\[u28D0]\[u28D1]\[u28D2]\[u28D3]\[u28D4]\[u28D5]\[u28D6]\[u28D7]\[u28D8]\[u28D9]\[u28DA]\[u28DB]\[u28DC]\[u28DD]\[u28DE]\[u28DF]\[u28E0]\[u28E1]\[u28E2]\[u28E3]\[u28E4]\[u28E5]\[u28E6]\[u28E7]\[u28E8]\[u28E9]\[u28EA]\[u28EB]\[u28EC]\[u28ED]\[u28EE]\[u28EF]\[u28F0]\[u28F1]\[u28F2]\[u28F3]\[u28F4]\[u28F5]\[u28F6]\[u28F7]\[u28F8]\[u28F9]\[u28FA]\[u28FB]\[u28FC]\[u28FD]\[u28FE]\[u28FF]"
1233
1336
  charset to render 2x4 blocks on canvas
1234
1337
  .It Sy "disp_pixel_random " No "False"
1235
1338
  randomly choose attr from set of pixels instead of most common
1339
+ .It Sy "disp_zoom_incr " No "2.0"
1340
+ amount to multiply current zoomlevel when zooming
1236
1341
  .It Sy "color_graph_hidden " No "238 blue"
1237
1342
  color of legend for hidden attribute
1238
1343
  .It Sy "color_graph_selected" No "bold"
1239
1344
  color of selected graph points
1240
1345
  .It Sy "color_graph_axis " No "bold"
1241
1346
  color for graph axis labels
1347
+ .It Sy "disp_graph_tick_x " No "\[u2575]"
1348
+ character for graph x-axis ticks
1349
+ .It Sy "disp_help " No "2"
1350
+ show help panel during input
1242
1351
  .It Sy "color_add_pending " No "green"
1243
1352
  color for rows pending add
1244
1353
  .It Sy "color_change_pending" No "reverse yellow"
1245
1354
  color for cells pending modification
1246
1355
  .It Sy "color_delete_pending" No "red"
1247
1356
  color for rows pending delete
1357
+ .It Sy "disp_sidebar " No "True"
1358
+ whether to display sidebar
1359
+ .It Sy "disp_sidebar_fmt " No "{guide}"
1360
+ format string for default sidebar
1361
+ .It Sy "disp_sidebar_width " No "0"
1362
+ max width for sidebar
1363
+ .It Sy "disp_sidebar_height" No "0"
1364
+ max height for sidebar
1365
+ .It Sy "color_sidebar " No "black on 114 blue"
1366
+ base color of sidebar
1367
+ .It Sy "color_sidebar_title" No "black on yellow"
1368
+ color of sidebar title
1369
+ .It Sy "color_match " No "red"
1370
+ color for matching chars in palette chooser
1371
+ .It Sy "color_f5log_mon_up " No "green"
1372
+ color of f5log monitor status up
1373
+ .It Sy "color_f5log_mon_down" No "red"
1374
+ color of f5log monitor status down
1375
+ .It Sy "color_f5log_mon_unknown" No "blue"
1376
+ color of f5log monitor status unknown
1377
+ .It Sy "color_f5log_mon_checking" No "magenta"
1378
+ color of monitor status checking
1379
+ .It Sy "color_f5log_mon_disabled" No "black"
1380
+ color of monitor status disabled
1381
+ .It Sy "color_f5log_logid_alarm" No "red"
1382
+ color of alarms
1383
+ .It Sy "color_f5log_logid_warn" No "yellow"
1384
+ color of warnings
1385
+ .It Sy "color_f5log_logid_notice" No "cyan"
1386
+ color of notice
1387
+ .It Sy "color_f5log_logid_info" No "green"
1388
+ color of info
1248
1389
  .It Sy "color_xword_active " No "green"
1249
1390
  color of active clue
1391
+ .It Sy "color_cmdpalette " No "black on 72"
1392
+ base color of command palette
1393
+ .It Sy "disp_cmdpal_max " No "10"
1394
+ max number of suggestions for command palette
1395
+ .It Sy "color_shellcmd " No "21 on 114 green"
1396
+
1397
+ .It Sy "color_colname " No "underline"
1398
+
1399
+ .It Sy "disp_scroll_context" No "0"
1400
+ minimum number of lines to keep visible above/below cursor when scrolling
1401
+ .It Sy "disp_sparkline " No "\[u2581]\[u2582]\[u2583]\[u2584]\[u2585]\[u2586]\[u2587]"
1402
+ characters to display sparkline
1250
1403
  .El
1251
1404
  .
1252
1405
  .Sh EXAMPLES
@@ -1277,8 +1430,8 @@ color of active clue
1277
1430
  .Dl Nm vd Cm postgres:// Ns Ar username Ns Sy "\&:" Ns Ar password Ns Sy @ Ns Ar hostname Ns Sy "\&:" Ns Ar port Ns Sy / Ns Ar database
1278
1431
  .No open a connection to the given postgres database
1279
1432
  .Pp
1280
- .Dl Nm vd Cm --play tests/pivot.vd --replay-wait 1 --output tests/pivot.tsv
1281
- .No replay tests/pivot.vd, waiting 1 second between commands, and output the final sheet to test/pivot.tsv
1433
+ .Dl Nm vd Cm --play tests/pivot.vdj --replay-wait 1 --output tests/pivot.tsv
1434
+ .No replay tests/pivot.vdj, waiting 1 second between commands, and output the final sheet to test/pivot.tsv
1282
1435
  .Pp
1283
1436
  .Dl Ic ls -l | Nm vd Cm -f fixed --skip 1 --header 0
1284
1437
  .No parse the output of ls -l into usable data