visidata 2.11.1__tar.gz → 3.0__tar.gz

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 (297) hide show
  1. visidata-3.0/MANIFEST.in +13 -0
  2. {visidata-2.11.1/visidata.egg-info → visidata-3.0}/PKG-INFO +9 -6
  3. {visidata-2.11.1 → visidata-3.0}/README.md +7 -4
  4. visidata-3.0/bin/vd2to3.vdx +9 -0
  5. visidata-3.0/setup.py +95 -0
  6. visidata-3.0/visidata/__init__.py +157 -0
  7. {visidata-2.11.1 → visidata-3.0}/visidata/_input.py +259 -42
  8. {visidata-2.11.1 → visidata-3.0}/visidata/_open.py +84 -29
  9. {visidata-2.11.1 → visidata-3.0}/visidata/_types.py +21 -3
  10. {visidata-2.11.1 → visidata-3.0}/visidata/_urlcache.py +17 -4
  11. {visidata-2.11.1 → visidata-3.0}/visidata/aggregators.py +65 -25
  12. visidata-3.0/visidata/apps/vdsql/__about__.py +8 -0
  13. visidata-3.0/visidata/apps/vdsql/__init__.py +5 -0
  14. visidata-3.0/visidata/apps/vdsql/__main__.py +27 -0
  15. visidata-3.0/visidata/apps/vdsql/_ibis.py +748 -0
  16. visidata-3.0/visidata/apps/vdsql/bigquery.py +61 -0
  17. visidata-3.0/visidata/apps/vdsql/clickhouse.py +53 -0
  18. visidata-3.0/visidata/apps/vdsql/setup.py +40 -0
  19. visidata-3.0/visidata/apps/vdsql/snowflake.py +67 -0
  20. visidata-3.0/visidata/apps/vgit/__init__.py +13 -0
  21. visidata-3.0/visidata/apps/vgit/__main__.py +3 -0
  22. visidata-3.0/visidata/apps/vgit/abort.py +23 -0
  23. visidata-3.0/visidata/apps/vgit/blame.py +76 -0
  24. visidata-3.0/visidata/apps/vgit/branch.py +153 -0
  25. visidata-3.0/visidata/apps/vgit/config.py +95 -0
  26. visidata-3.0/visidata/apps/vgit/diff.py +169 -0
  27. visidata-3.0/visidata/apps/vgit/gitsheet.py +161 -0
  28. visidata-3.0/visidata/apps/vgit/grep.py +37 -0
  29. visidata-3.0/visidata/apps/vgit/log.py +81 -0
  30. visidata-3.0/visidata/apps/vgit/main.py +55 -0
  31. visidata-3.0/visidata/apps/vgit/remote.py +57 -0
  32. visidata-3.0/visidata/apps/vgit/repos.py +71 -0
  33. visidata-3.0/visidata/apps/vgit/setup.py +37 -0
  34. visidata-3.0/visidata/apps/vgit/stash.py +69 -0
  35. visidata-3.0/visidata/apps/vgit/status.py +204 -0
  36. visidata-3.0/visidata/apps/vgit/statusbar.py +34 -0
  37. {visidata-2.11.1 → visidata-3.0}/visidata/basesheet.py +59 -50
  38. {visidata-2.11.1 → visidata-3.0}/visidata/canvas.py +208 -93
  39. {visidata-2.11.1 → visidata-3.0}/visidata/choose.py +6 -6
  40. visidata-3.0/visidata/clean_names.py +29 -0
  41. {visidata-2.11.1 → visidata-3.0}/visidata/clipboard.py +73 -17
  42. visidata-3.0/visidata/cliptext.py +357 -0
  43. {visidata-2.11.1 → visidata-3.0}/visidata/cmdlog.py +88 -114
  44. visidata-3.0/visidata/color.py +245 -0
  45. {visidata-2.11.1 → visidata-3.0}/visidata/column.py +121 -129
  46. visidata-3.0/visidata/ddw/input.ddw +82 -0
  47. visidata-3.0/visidata/ddw/regex.ddw +57 -0
  48. {visidata-2.11.1 → visidata-3.0}/visidata/ddwplay.py +33 -14
  49. {visidata-2.11.1 → visidata-3.0}/visidata/deprecated.py +77 -3
  50. visidata-3.0/visidata/desktop/visidata.desktop +7 -0
  51. {visidata-2.11.1 → visidata-3.0}/visidata/editor.py +12 -6
  52. {visidata-2.11.1 → visidata-3.0}/visidata/errors.py +5 -1
  53. visidata-3.0/visidata/experimental/diff_sheet.py +29 -0
  54. visidata-3.0/visidata/experimental/digit_autoedit.py +6 -0
  55. visidata-3.0/visidata/experimental/gdrive.py +89 -0
  56. visidata-3.0/visidata/experimental/google.py +37 -0
  57. visidata-3.0/visidata/experimental/gsheets.py +79 -0
  58. visidata-3.0/visidata/experimental/live_search.py +37 -0
  59. visidata-3.0/visidata/experimental/liveupdate.py +45 -0
  60. visidata-3.0/visidata/experimental/mark.py +133 -0
  61. visidata-3.0/visidata/experimental/noahs_tapestry/__init__.py +1 -0
  62. visidata-3.0/visidata/experimental/noahs_tapestry/clues.json +1 -0
  63. visidata-3.0/visidata/experimental/noahs_tapestry/flame.ddw +324 -0
  64. visidata-3.0/visidata/experimental/noahs_tapestry/menorah.ddw +838 -0
  65. visidata-3.0/visidata/experimental/noahs_tapestry/noahs.sqlite +0 -0
  66. visidata-3.0/visidata/experimental/noahs_tapestry/puzzle0.md +25 -0
  67. visidata-3.0/visidata/experimental/noahs_tapestry/puzzle1.md +13 -0
  68. visidata-3.0/visidata/experimental/noahs_tapestry/puzzle2.md +13 -0
  69. visidata-3.0/visidata/experimental/noahs_tapestry/puzzle3.md +13 -0
  70. visidata-3.0/visidata/experimental/noahs_tapestry/puzzle4.md +15 -0
  71. visidata-3.0/visidata/experimental/noahs_tapestry/puzzle5.md +11 -0
  72. visidata-3.0/visidata/experimental/noahs_tapestry/puzzle6.md +11 -0
  73. visidata-3.0/visidata/experimental/noahs_tapestry/puzzle7.md +13 -0
  74. visidata-3.0/visidata/experimental/noahs_tapestry/puzzle8.md +11 -0
  75. visidata-3.0/visidata/experimental/noahs_tapestry/solutions.json +1 -0
  76. visidata-3.0/visidata/experimental/noahs_tapestry/tapestry.ddw +2151 -0
  77. visidata-3.0/visidata/experimental/noahs_tapestry/tapestry.py +147 -0
  78. visidata-3.0/visidata/experimental/rownum.py +73 -0
  79. visidata-3.0/visidata/experimental/slide_cells.py +26 -0
  80. {visidata-2.11.1 → visidata-3.0}/visidata/expr.py +8 -4
  81. {visidata-2.11.1 → visidata-3.0}/visidata/extensible.py +30 -5
  82. visidata-3.0/visidata/features/__init__.py +0 -0
  83. visidata-3.0/visidata/features/addcol_audiometadata.py +42 -0
  84. visidata-3.0/visidata/features/addcol_histogram.py +34 -0
  85. visidata-3.0/visidata/features/canvas_save_svg.py +69 -0
  86. visidata-3.0/visidata/features/change_precision.py +46 -0
  87. visidata-3.0/visidata/features/cmdpalette.py +163 -0
  88. visidata-3.0/visidata/features/colorbrewer.py +363 -0
  89. {visidata-2.11.1/visidata → visidata-3.0/visidata/features}/colorsheet.py +17 -16
  90. visidata-3.0/visidata/features/command_server.py +105 -0
  91. visidata-3.0/visidata/features/currency_to_usd.py +70 -0
  92. {visidata-2.11.1/visidata → visidata-3.0/visidata/features}/customdate.py +2 -0
  93. visidata-3.0/visidata/features/dedupe.py +132 -0
  94. {visidata-2.11.1/visidata → visidata-3.0/visidata/features}/describe.py +17 -15
  95. visidata-3.0/visidata/features/errors_guide.py +26 -0
  96. visidata-3.0/visidata/features/expand_cols.py +202 -0
  97. {visidata-2.11.1/visidata → visidata-3.0/visidata/features}/fill.py +3 -1
  98. {visidata-2.11.1/visidata → visidata-3.0/visidata/features}/freeze.py +11 -6
  99. visidata-3.0/visidata/features/graph_seaborn.py +79 -0
  100. visidata-3.0/visidata/features/helloworld.py +10 -0
  101. visidata-3.0/visidata/features/hint_types.py +17 -0
  102. {visidata-2.11.1/visidata → visidata-3.0/visidata/features}/incr.py +5 -0
  103. {visidata-2.11.1/visidata → visidata-3.0/visidata/features}/join.py +107 -53
  104. visidata-3.0/visidata/features/known_cols.py +21 -0
  105. visidata-3.0/visidata/features/layout.py +62 -0
  106. {visidata-2.11.1/visidata → visidata-3.0/visidata/features}/melt.py +32 -21
  107. visidata-3.0/visidata/features/normcol.py +118 -0
  108. visidata-3.0/visidata/features/open_config.py +7 -0
  109. visidata-3.0/visidata/features/open_syspaste.py +18 -0
  110. visidata-3.0/visidata/features/ping.py +157 -0
  111. visidata-3.0/visidata/features/procmgr.py +208 -0
  112. visidata-3.0/visidata/features/random_sample.py +6 -0
  113. {visidata-2.11.1/visidata → visidata-3.0/visidata/features}/regex.py +47 -31
  114. visidata-3.0/visidata/features/reload_every.py +55 -0
  115. visidata-3.0/visidata/features/rename_col_cascade.py +30 -0
  116. visidata-3.0/visidata/features/scroll_context.py +60 -0
  117. visidata-3.0/visidata/features/select_equal_selected.py +11 -0
  118. visidata-3.0/visidata/features/setcol_fake.py +65 -0
  119. {visidata-2.11.1/visidata → visidata-3.0/visidata/features}/slide.py +75 -21
  120. visidata-3.0/visidata/features/sparkline.py +48 -0
  121. visidata-3.0/visidata/features/status_source.py +20 -0
  122. {visidata-2.11.1/visidata → visidata-3.0/visidata/features}/sysedit.py +2 -1
  123. visidata-3.0/visidata/features/sysopen_mailcap.py +46 -0
  124. visidata-3.0/visidata/features/term_extras.py +13 -0
  125. {visidata-2.11.1/visidata → visidata-3.0/visidata/features}/transpose.py +5 -4
  126. visidata-3.0/visidata/features/type_ipaddr.py +73 -0
  127. visidata-3.0/visidata/features/type_url.py +11 -0
  128. {visidata-2.11.1/visidata → visidata-3.0/visidata/features}/unfurl.py +9 -9
  129. {visidata-2.11.1/visidata → visidata-3.0/visidata/features}/window.py +2 -2
  130. {visidata-2.11.1 → visidata-3.0}/visidata/form.py +50 -21
  131. visidata-3.0/visidata/freqtbl.py +164 -0
  132. visidata-3.0/visidata/fuzzymatch.py +414 -0
  133. {visidata-2.11.1 → visidata-3.0}/visidata/graph.py +105 -33
  134. visidata-3.0/visidata/guide.py +180 -0
  135. {visidata-2.11.1 → visidata-3.0}/visidata/help.py +75 -44
  136. visidata-3.0/visidata/hint.py +39 -0
  137. visidata-3.0/visidata/indexsheet.py +109 -0
  138. visidata-3.0/visidata/input_history.py +55 -0
  139. visidata-3.0/visidata/interface.py +58 -0
  140. {visidata-2.11.1 → visidata-3.0}/visidata/keys.py +17 -16
  141. visidata-3.0/visidata/loaders/__init__.py +9 -0
  142. {visidata-2.11.1 → visidata-3.0}/visidata/loaders/_pandas.py +61 -21
  143. visidata-3.0/visidata/loaders/api_airtable.py +70 -0
  144. visidata-3.0/visidata/loaders/api_matrix.py +148 -0
  145. visidata-3.0/visidata/loaders/api_reddit.py +306 -0
  146. visidata-3.0/visidata/loaders/api_zulip.py +249 -0
  147. {visidata-2.11.1 → visidata-3.0}/visidata/loaders/archive.py +41 -7
  148. {visidata-2.11.1 → visidata-3.0}/visidata/loaders/arrow.py +7 -7
  149. visidata-3.0/visidata/loaders/conll.py +49 -0
  150. {visidata-2.11.1 → visidata-3.0}/visidata/loaders/csv.py +25 -7
  151. {visidata-2.11.1 → visidata-3.0}/visidata/loaders/eml.py +3 -4
  152. visidata-3.0/visidata/loaders/f5log.py +1204 -0
  153. visidata-3.0/visidata/loaders/fec.py +325 -0
  154. {visidata-2.11.1 → visidata-3.0}/visidata/loaders/fixed_width.py +2 -4
  155. {visidata-2.11.1 → visidata-3.0}/visidata/loaders/frictionless.py +3 -3
  156. {visidata-2.11.1 → visidata-3.0}/visidata/loaders/geojson.py +8 -5
  157. visidata-3.0/visidata/loaders/google.py +48 -0
  158. {visidata-2.11.1 → visidata-3.0}/visidata/loaders/graphviz.py +4 -4
  159. {visidata-2.11.1 → visidata-3.0}/visidata/loaders/hdf5.py +4 -4
  160. {visidata-2.11.1 → visidata-3.0}/visidata/loaders/html.py +48 -10
  161. visidata-3.0/visidata/loaders/http.py +125 -0
  162. {visidata-2.11.1 → visidata-3.0}/visidata/loaders/imap.py +20 -10
  163. visidata-3.0/visidata/loaders/jrnl.py +52 -0
  164. {visidata-2.11.1 → visidata-3.0}/visidata/loaders/json.py +83 -29
  165. visidata-3.0/visidata/loaders/jsonla.py +74 -0
  166. {visidata-2.11.1 → visidata-3.0}/visidata/loaders/lsv.py +15 -11
  167. visidata-3.0/visidata/loaders/mailbox.py +40 -0
  168. {visidata-2.11.1 → visidata-3.0}/visidata/loaders/markdown.py +1 -3
  169. {visidata-2.11.1 → visidata-3.0}/visidata/loaders/mbtiles.py +4 -5
  170. {visidata-2.11.1 → visidata-3.0}/visidata/loaders/mysql.py +11 -13
  171. {visidata-2.11.1 → visidata-3.0}/visidata/loaders/npy.py +7 -7
  172. {visidata-2.11.1 → visidata-3.0}/visidata/loaders/odf.py +4 -1
  173. visidata-3.0/visidata/loaders/orgmode.py +428 -0
  174. {visidata-2.11.1 → visidata-3.0}/visidata/loaders/pandas_freqtbl.py +14 -20
  175. visidata-3.0/visidata/loaders/parquet.py +84 -0
  176. {visidata-2.11.1 → visidata-3.0}/visidata/loaders/pcap.py +3 -3
  177. {visidata-2.11.1 → visidata-3.0}/visidata/loaders/pdf.py +4 -3
  178. {visidata-2.11.1 → visidata-3.0}/visidata/loaders/png.py +19 -13
  179. {visidata-2.11.1 → visidata-3.0}/visidata/loaders/postgres.py +9 -8
  180. {visidata-2.11.1 → visidata-3.0}/visidata/loaders/rec.py +7 -3
  181. visidata-3.0/visidata/loaders/s3.py +342 -0
  182. {visidata-2.11.1 → visidata-3.0}/visidata/loaders/sas.py +5 -5
  183. visidata-3.0/visidata/loaders/scrape.py +186 -0
  184. {visidata-2.11.1 → visidata-3.0}/visidata/loaders/shp.py +6 -5
  185. {visidata-2.11.1 → visidata-3.0}/visidata/loaders/spss.py +5 -6
  186. {visidata-2.11.1 → visidata-3.0}/visidata/loaders/sqlite.py +68 -28
  187. {visidata-2.11.1 → visidata-3.0}/visidata/loaders/texttables.py +1 -1
  188. visidata-3.0/visidata/loaders/toml.py +60 -0
  189. {visidata-2.11.1 → visidata-3.0}/visidata/loaders/tsv.py +61 -19
  190. {visidata-2.11.1 → visidata-3.0}/visidata/loaders/ttf.py +19 -7
  191. {visidata-2.11.1 → visidata-3.0}/visidata/loaders/unzip_http.py +6 -5
  192. {visidata-2.11.1 → visidata-3.0}/visidata/loaders/usv.py +1 -1
  193. visidata-3.0/visidata/loaders/vcf.py +41 -0
  194. {visidata-2.11.1 → visidata-3.0}/visidata/loaders/vds.py +10 -7
  195. {visidata-2.11.1 → visidata-3.0}/visidata/loaders/vdx.py +30 -5
  196. {visidata-2.11.1 → visidata-3.0}/visidata/loaders/xlsb.py +8 -1
  197. visidata-3.0/visidata/loaders/xlsx.py +298 -0
  198. {visidata-2.11.1 → visidata-3.0}/visidata/loaders/xml.py +6 -3
  199. {visidata-2.11.1 → visidata-3.0}/visidata/loaders/xword.py +4 -4
  200. {visidata-2.11.1 → visidata-3.0}/visidata/loaders/yaml.py +15 -5
  201. visidata-3.0/visidata/macros.py +178 -0
  202. {visidata-2.11.1 → visidata-3.0}/visidata/main.py +119 -94
  203. visidata-3.0/visidata/mainloop.py +333 -0
  204. {visidata-2.11.1 → visidata-3.0}/visidata/man/parse_options.py +2 -2
  205. {visidata-2.11.1 → visidata-3.0}/visidata/man/vd.1 +301 -148
  206. {visidata-2.11.1 → visidata-3.0}/visidata/man/vd.txt +290 -153
  207. {visidata-2.11.1 → visidata-3.0}/visidata/man/visidata.1 +301 -148
  208. {visidata-2.11.1 → visidata-3.0}/visidata/memory.py +3 -3
  209. visidata-3.0/visidata/menu.py +506 -0
  210. visidata-3.0/visidata/metasheets.py +166 -0
  211. {visidata-2.11.1 → visidata-3.0}/visidata/modify.py +78 -23
  212. {visidata-2.11.1 → visidata-3.0}/visidata/motd.py +3 -3
  213. visidata-3.0/visidata/mouse.py +137 -0
  214. {visidata-2.11.1 → visidata-3.0}/visidata/movement.py +43 -35
  215. visidata-3.0/visidata/optionssheet.py +99 -0
  216. {visidata-2.11.1 → visidata-3.0}/visidata/path.py +113 -32
  217. {visidata-2.11.1 → visidata-3.0}/visidata/pivot.py +73 -47
  218. visidata-3.0/visidata/plugins.py +102 -0
  219. {visidata-2.11.1 → visidata-3.0}/visidata/pyobj.py +50 -201
  220. visidata-3.0/visidata/rename_col.py +20 -0
  221. {visidata-2.11.1 → visidata-3.0}/visidata/save.py +37 -20
  222. visidata-3.0/visidata/search.py +127 -0
  223. {visidata-2.11.1 → visidata-3.0}/visidata/selection.py +84 -5
  224. {visidata-2.11.1 → visidata-3.0}/visidata/settings.py +162 -25
  225. {visidata-2.11.1 → visidata-3.0}/visidata/sheets.py +229 -257
  226. {visidata-2.11.1 → visidata-3.0}/visidata/shell.py +51 -21
  227. visidata-3.0/visidata/sidebar.py +162 -0
  228. {visidata-2.11.1 → visidata-3.0}/visidata/sort.py +11 -4
  229. visidata-3.0/visidata/statusbar.py +245 -0
  230. visidata-3.0/visidata/stored_list.py +43 -0
  231. visidata-3.0/visidata/tests/__init__.py +0 -0
  232. {visidata-2.11.1 → visidata-3.0}/visidata/tests/conftest.py +3 -3
  233. visidata-3.0/visidata/tests/test_cliptext.py +39 -0
  234. {visidata-2.11.1 → visidata-3.0}/visidata/tests/test_commands.py +62 -7
  235. {visidata-2.11.1 → visidata-3.0}/visidata/tests/test_edittext.py +2 -2
  236. visidata-3.0/visidata/tests/test_features.py +17 -0
  237. visidata-3.0/visidata/tests/test_menu.py +14 -0
  238. {visidata-2.11.1 → visidata-3.0}/visidata/tests/test_path.py +13 -4
  239. visidata-3.0/visidata/text_source.py +53 -0
  240. {visidata-2.11.1 → visidata-3.0}/visidata/textsheet.py +10 -3
  241. visidata-3.0/visidata/theme.py +44 -0
  242. visidata-3.0/visidata/themes/__init__.py +0 -0
  243. visidata-3.0/visidata/themes/ascii8.py +84 -0
  244. visidata-3.0/visidata/themes/asciimono.py +84 -0
  245. visidata-3.0/visidata/themes/light.py +17 -0
  246. {visidata-2.11.1 → visidata-3.0}/visidata/threads.py +87 -39
  247. visidata-3.0/visidata/tuiwin.py +22 -0
  248. visidata-3.0/visidata/type_currency.py +35 -0
  249. {visidata-2.11.1 → visidata-3.0}/visidata/type_date.py +31 -9
  250. {visidata-2.11.1 → visidata-3.0}/visidata/type_floatsi.py +5 -1
  251. {visidata-2.11.1 → visidata-3.0}/visidata/undo.py +17 -5
  252. visidata-3.0/visidata/utils.py +211 -0
  253. {visidata-2.11.1 → visidata-3.0}/visidata/vdobj.py +28 -17
  254. visidata-3.0/visidata/windows.py +10 -0
  255. {visidata-2.11.1 → visidata-3.0}/visidata/wrappers.py +9 -3
  256. {visidata-2.11.1 → visidata-3.0/visidata.egg-info}/PKG-INFO +9 -6
  257. visidata-3.0/visidata.egg-info/SOURCES.txt +272 -0
  258. {visidata-2.11.1 → visidata-3.0}/visidata.egg-info/requires.txt +4 -1
  259. visidata-2.11.1/MANIFEST.in +0 -7
  260. visidata-2.11.1/setup.py +0 -52
  261. visidata-2.11.1/visidata/__init__.py +0 -176
  262. visidata-2.11.1/visidata/cliptext.py +0 -183
  263. visidata-2.11.1/visidata/color.py +0 -159
  264. visidata-2.11.1/visidata/ddw/input.ddw +0 -87
  265. visidata-2.11.1/visidata/freqtbl.py +0 -116
  266. visidata-2.11.1/visidata/layout.py +0 -44
  267. visidata-2.11.1/visidata/loaders/http.py +0 -71
  268. visidata-2.11.1/visidata/loaders/parquet.py +0 -28
  269. visidata-2.11.1/visidata/loaders/vcf.py +0 -41
  270. visidata-2.11.1/visidata/loaders/xlsx.py +0 -178
  271. visidata-2.11.1/visidata/macros.py +0 -91
  272. visidata-2.11.1/visidata/mainloop.py +0 -387
  273. visidata-2.11.1/visidata/menu.py +0 -825
  274. visidata-2.11.1/visidata/metasheets.py +0 -248
  275. visidata-2.11.1/visidata/misc.py +0 -5
  276. visidata-2.11.1/visidata/plugins.py +0 -229
  277. visidata-2.11.1/visidata/search.py +0 -83
  278. visidata-2.11.1/visidata/statusbar.py +0 -236
  279. visidata-2.11.1/visidata/type_currency.py +0 -16
  280. visidata-2.11.1/visidata/utils.py +0 -128
  281. visidata-2.11.1/visidata.egg-info/SOURCES.txt +0 -145
  282. {visidata-2.11.1 → visidata-3.0}/LICENSE.gpl3 +0 -0
  283. {visidata-2.11.1 → visidata-3.0}/bin/vd +0 -0
  284. {visidata-2.11.1 → visidata-3.0}/setup.cfg +0 -0
  285. {visidata-2.11.1 → visidata-3.0}/visidata/__main__.py +0 -0
  286. {visidata-2.11.1/visidata/loaders → visidata-3.0/visidata/apps}/__init__.py +0 -0
  287. {visidata-2.11.1 → visidata-3.0}/visidata/bezier.py +0 -0
  288. {visidata-2.11.1 → visidata-3.0}/visidata/canvas_text.py +0 -0
  289. {visidata-2.11.1/visidata/tests → visidata-3.0/visidata/experimental}/__init__.py +0 -0
  290. {visidata-2.11.1/visidata → visidata-3.0/visidata/features}/repeat.py +0 -0
  291. {visidata-2.11.1 → visidata-3.0}/visidata/macos.py +0 -0
  292. {visidata-2.11.1 → visidata-3.0}/visidata/tests/sample.tsv +0 -0
  293. {visidata-2.11.1 → visidata-3.0}/visidata/tests/test_date.py +0 -0
  294. {visidata-2.11.1 → visidata-3.0}/visidata/vendor/appdirs.py +0 -0
  295. {visidata-2.11.1 → visidata-3.0}/visidata.egg-info/dependency_links.txt +0 -0
  296. {visidata-2.11.1 → visidata-3.0}/visidata.egg-info/entry_points.txt +0 -0
  297. {visidata-2.11.1 → visidata-3.0}/visidata.egg-info/top_level.txt +0 -0
@@ -0,0 +1,13 @@
1
+ include README.md
2
+ include LICENSE.gpl3
3
+ include visidata/man/vd.1
4
+ include visidata/man/vd.txt
5
+ include visidata/man/visidata.1
6
+ include visidata/ddw/input.ddw
7
+ include visidata/ddw/regex.ddw
8
+ include visidata/tests/sample.tsv
9
+ include visidata/desktop/visidata.desktop
10
+ include visidata/experimental/noahs_tapestry/*.json
11
+ include visidata/experimental/noahs_tapestry/*.md
12
+ include visidata/experimental/noahs_tapestry/*.ddw
13
+ include visidata/experimental/noahs_tapestry/*.sqlite
@@ -1,9 +1,9 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: visidata
3
- Version: 2.11.1
3
+ Version: 3.0
4
4
  Summary: terminal interface for exploring and arranging tabular data
5
5
  Home-page: https://visidata.org
6
- Download-URL: https://github.com/saulpw/visidata/tarball/2.11.1
6
+ Download-URL: https://github.com/saulpw/visidata/tarball/3.0
7
7
  Author: Saul Pwanson
8
8
  Author-email: visidata@saul.pw
9
9
  License: GPLv3
@@ -26,13 +26,14 @@ Requires-Python: >=3.7
26
26
  Description-Content-Type: text/markdown
27
27
  License-File: LICENSE.gpl3
28
28
 
29
+ # VisiData v3.0
29
30
 
30
- # VisiData v2.11.1
31
-
32
- [![twitter @VisiData][1.1]][1]
33
31
  [![Tests](https://github.com/saulpw/visidata/workflows/visidata-ci-build/badge.svg)](https://github.com/saulpw/visidata/actions/workflows/main.yml)
34
32
  [![Gitpod ready-to-code](https://img.shields.io/badge/Gitpod-ready--to--code-blue?logo=gitpod)](https://gitpod.io/#https://github.com/saulpw/visidata)
33
+
35
34
  [![discord](https://img.shields.io/discord/880915750007750737?label=discord)](https://visidata.org/chat)
35
+ [![mastodon @visidata@fosstodon.org][2.1]][2]
36
+ [![twitter @VisiData][1.1]][1]
36
37
 
37
38
  A terminal interface for exploring and arranging tabular data.
38
39
 
@@ -43,7 +44,7 @@ VisiData supports tsv, csv, sqlite, json, xlsx (Excel), hdf5, and [many other fo
43
44
  ## Platform requirements
44
45
 
45
46
  - Linux, OS/X, or Windows (with WSL)
46
- - Python 3.7+
47
+ - Python 3.8+
47
48
  - additional Python modules are required for certain formats and sources
48
49
 
49
50
  ## Install
@@ -94,5 +95,7 @@ Many thanks to numerous other [contributors](https://visidata.org/credits/), and
94
95
 
95
96
  [1.1]: http://i.imgur.com/tXSoThF.png
96
97
  [1]: http://www.twitter.com/VisiData
98
+ [2.1]: https://raw.githubusercontent.com/mastodon/mastodon/main/app/javascript/images/logo.svg
99
+ [2]: https://fosstodon.org/@visidata
97
100
 
98
101
  <!-- Please don't remove this: Grab your social icons from https://github.com/carlsednaoui/gitsocial -->
@@ -1,10 +1,11 @@
1
+ # VisiData v3.0
1
2
 
2
- # VisiData v2.11.1
3
-
4
- [![twitter @VisiData][1.1]][1]
5
3
  [![Tests](https://github.com/saulpw/visidata/workflows/visidata-ci-build/badge.svg)](https://github.com/saulpw/visidata/actions/workflows/main.yml)
6
4
  [![Gitpod ready-to-code](https://img.shields.io/badge/Gitpod-ready--to--code-blue?logo=gitpod)](https://gitpod.io/#https://github.com/saulpw/visidata)
5
+
7
6
  [![discord](https://img.shields.io/discord/880915750007750737?label=discord)](https://visidata.org/chat)
7
+ [![mastodon @visidata@fosstodon.org][2.1]][2]
8
+ [![twitter @VisiData][1.1]][1]
8
9
 
9
10
  A terminal interface for exploring and arranging tabular data.
10
11
 
@@ -15,7 +16,7 @@ VisiData supports tsv, csv, sqlite, json, xlsx (Excel), hdf5, and [many other fo
15
16
  ## Platform requirements
16
17
 
17
18
  - Linux, OS/X, or Windows (with WSL)
18
- - Python 3.7+
19
+ - Python 3.8+
19
20
  - additional Python modules are required for certain formats and sources
20
21
 
21
22
  ## Install
@@ -66,5 +67,7 @@ Many thanks to numerous other [contributors](https://visidata.org/credits/), and
66
67
 
67
68
  [1.1]: http://i.imgur.com/tXSoThF.png
68
69
  [1]: http://www.twitter.com/VisiData
70
+ [2.1]: https://raw.githubusercontent.com/mastodon/mastodon/main/app/javascript/images/logo.svg
71
+ [2]: https://fosstodon.org/@visidata
69
72
 
70
73
  <!-- Please don't remove this: Grab your social icons from https://github.com/carlsednaoui/gitsocial -->
@@ -0,0 +1,9 @@
1
+ #!/usr/bin/env -S vd -p
2
+ # VisiData v3.0dev
3
+ open-file ~/.visidata/macros.tsv
4
+ col command
5
+ rename-col binding
6
+ col filename
7
+ rename-col source
8
+ save-sheet ~/.visidata/macros.jsonl
9
+ quit-all
visidata-3.0/setup.py ADDED
@@ -0,0 +1,95 @@
1
+ #!/usr/bin/env python3
2
+
3
+ from setuptools import setup
4
+
5
+ # tox can't actually run python3 setup.py: https://github.com/tox-dev/tox/issues/96
6
+ # from visidata import __version__
7
+ __version__ = "3.0"
8
+
9
+ setup(
10
+ name="visidata",
11
+ version=__version__,
12
+ description="terminal interface for exploring and arranging tabular data",
13
+ long_description=open("README.md").read(),
14
+ long_description_content_type="text/markdown",
15
+ author="Saul Pwanson",
16
+ python_requires=">=3.7",
17
+ author_email="visidata@saul.pw",
18
+ url="https://visidata.org",
19
+ download_url="https://github.com/saulpw/visidata/tarball/" + __version__,
20
+ scripts=["bin/vd", "bin/vd2to3.vdx"],
21
+ entry_points={
22
+ "console_scripts": ["visidata=visidata.main:vd_cli"],
23
+ },
24
+ py_modules=["visidata"],
25
+ install_requires=[
26
+ "python-dateutil",
27
+ 'windows-curses != 2.3.1; platform_system == "Windows"', # 1841
28
+ "importlib-metadata >= 3.6",
29
+ 'importlib_resources; python_version<"3.9"',
30
+ ],
31
+ packages=[
32
+ "visidata",
33
+ "visidata.loaders",
34
+ "visidata.vendor",
35
+ "visidata.tests",
36
+ "visidata.ddw",
37
+ "visidata.man",
38
+ "visidata.themes",
39
+ "visidata.features",
40
+ "visidata.experimental",
41
+ "visidata.experimental.noahs_tapestry",
42
+ "visidata.apps",
43
+ "visidata.apps.vgit",
44
+ "visidata.apps.vdsql",
45
+ "visidata.desktop",
46
+ ],
47
+ data_files=[
48
+ ("share/man/man1", ["visidata/man/vd.1", "visidata/man/visidata.1"]),
49
+ ("share/applications", ["visidata/desktop/visidata.desktop"]),
50
+ ],
51
+ package_data={
52
+ "visidata.man": ["vd.1", "vd.txt"],
53
+ "visidata.ddw": ["input.ddw", "regex.ddw"],
54
+ "visidata.tests": ["sample.tsv"],
55
+ "visidata.desktop": ["visidata.desktop"],
56
+ "visidata.experimenta.noahs_tapestry": [
57
+ "clues.json",
58
+ "flames.ddw",
59
+ "menorah.ddw",
60
+ "noahs.sqlite",
61
+ "puzzle0.md",
62
+ "puzzle1.md",
63
+ "puzzle2.md",
64
+ "puzzle3.md",
65
+ "puzzle4.md",
66
+ "puzzle5.md",
67
+ "puzzle6.md",
68
+ "puzzle7.md",
69
+ "puzzle8.md",
70
+ "solutions.json",
71
+ "tapestry.ddw",
72
+ ],
73
+ },
74
+ license="GPLv3",
75
+ classifiers=[
76
+ "Development Status :: 5 - Production/Stable",
77
+ "Environment :: Console",
78
+ "Environment :: Console :: Curses",
79
+ "Intended Audience :: Developers",
80
+ "Intended Audience :: Science/Research",
81
+ "Intended Audience :: System Administrators",
82
+ "License :: OSI Approved :: GNU General Public License v3 (GPLv3)",
83
+ "Operating System :: OS Independent",
84
+ "Programming Language :: Python :: 3",
85
+ "Topic :: Database :: Front-Ends",
86
+ "Topic :: Scientific/Engineering",
87
+ "Topic :: Office/Business :: Financial :: Spreadsheet",
88
+ "Topic :: Scientific/Engineering :: Visualization",
89
+ "Topic :: Utilities",
90
+ ],
91
+ keywords=(
92
+ "console tabular data spreadsheet terminal viewer textpunk"
93
+ "curses csv hdf5 h5 xlsx excel tsv"
94
+ ),
95
+ )
@@ -0,0 +1,157 @@
1
+ 'VisiData: a curses interface for exploring and arranging tabular data'
2
+
3
+ __version__ = '3.0'
4
+ __version_info__ = 'VisiData v' + __version__
5
+ __author__ = 'Saul Pwanson <vd@saul.pw>'
6
+ __status__ = 'Production/Stable'
7
+ __copyright__ = 'Copyright (c) 2016-2021 ' + __author__
8
+
9
+
10
+ class EscapeException(BaseException):
11
+ 'Inherits from BaseException to avoid "except Exception" clauses. Do not use a blanket "except:" or the task will be uncancelable.'
12
+ pass
13
+
14
+
15
+ def addGlobals(*args, **kwargs):
16
+ '''Update the VisiData globals dict with items from *args* and *kwargs*, which are mappings of names to functions.
17
+ Importers can call ``addGlobals(globals())`` to have their globals accessible to execstrings.
18
+
19
+ Dunder methods are ignored, to prevent accidentally overwriting housekeeping methods.'''
20
+ drop_dunder = lambda d: {k: v for k, v in d.items() if not k.startswith("__")}
21
+ for g in args:
22
+ globals().update(drop_dunder(g))
23
+ globals().update(drop_dunder(kwargs))
24
+
25
+
26
+ def getGlobals():
27
+ 'Return the VisiData globals dict.'
28
+ return globals()
29
+
30
+ from .utils import *
31
+
32
+ from .extensible import *
33
+ from .vdobj import *
34
+ vd = VisiData()
35
+
36
+ vd.version = __version__
37
+
38
+ vd.addGlobals = addGlobals
39
+ vd.getGlobals = getGlobals
40
+
41
+ import visidata.keys
42
+
43
+ from .basesheet import *
44
+
45
+ import visidata.settings
46
+
47
+ # importModule tracks where commands/options/etc are coming from (via vd.importingModule)
48
+ core_imports = '''
49
+ import visidata.errors
50
+ import visidata.editor
51
+ import visidata.color
52
+ import visidata.cliptext
53
+ import visidata.mainloop
54
+
55
+ import visidata.menu
56
+ import visidata.wrappers
57
+ import visidata.undo
58
+ import visidata._types
59
+ import visidata.column
60
+
61
+ import visidata.interface
62
+ import visidata.sheets
63
+ import visidata.rename_col
64
+ import visidata.indexsheet
65
+
66
+ import visidata.statusbar
67
+
68
+ import visidata.textsheet
69
+ import visidata.threads
70
+ import visidata.path
71
+ import visidata.guide
72
+
73
+ import visidata.stored_list
74
+ import visidata._input
75
+ import visidata.tuiwin
76
+ import visidata.mouse
77
+ import visidata.movement
78
+
79
+ import visidata.type_date
80
+
81
+ import visidata._urlcache
82
+ import visidata.selection
83
+ import visidata.text_source
84
+ import visidata.loaders
85
+ import visidata.loaders.tsv
86
+ import visidata.pyobj
87
+ import visidata.loaders.json
88
+ import visidata._open
89
+ import visidata.save
90
+ import visidata.search
91
+
92
+ import visidata.expr
93
+ import visidata.metasheets
94
+ import visidata.input_history
95
+ import visidata.optionssheet
96
+ import visidata.type_currency
97
+ import visidata.type_floatsi
98
+ import visidata.clean_names
99
+ import visidata.cmdlog
100
+ import visidata.clipboard
101
+ import visidata.choose
102
+ import visidata.aggregators
103
+ import visidata.pivot
104
+ import visidata.freqtbl
105
+ import visidata.canvas
106
+ import visidata.canvas_text
107
+ import visidata.graph
108
+ import visidata.motd
109
+ import visidata.shell
110
+ import visidata.main
111
+ import visidata.help
112
+ import visidata.modify
113
+ import visidata.sort
114
+ import visidata.memory
115
+ import visidata.macros
116
+
117
+ import visidata.macos
118
+ import visidata.windows
119
+
120
+ import visidata.form
121
+ import visidata.sidebar
122
+
123
+ import visidata.ddwplay
124
+ import visidata.plugins
125
+
126
+ import visidata.theme
127
+ import visidata.apps
128
+ import visidata.fuzzymatch
129
+ import visidata.hint
130
+ '''
131
+
132
+ for line in core_imports.splitlines():
133
+ if not line: continue
134
+ module = line[len('import '):]
135
+ vd.importModule(module)
136
+
137
+ vd.importSubmodules('visidata.loaders')
138
+
139
+ def importFeatures():
140
+ vd.importSubmodules('visidata.features')
141
+ vd.importSubmodules('visidata.themes')
142
+
143
+ vd.importStar('visidata.deprecated')
144
+
145
+ vd.importStar('builtins')
146
+ vd.importStar('copy')
147
+ vd.importStar('math')
148
+ vd.importStar('random')
149
+ vd.importStar('itertools')
150
+
151
+ import visidata.experimental # import nothing by default but make package accessible
152
+
153
+ vd.finalInit() # call all VisiData.init() from modules
154
+
155
+ importFeatures()
156
+
157
+ vd.addGlobals(globals())