Skip to content

Commit

Permalink
[index perf-] bulk reload sheets itself async
Browse files Browse the repository at this point in the history
  • Loading branch information
saulpw committed Aug 9, 2021
1 parent 1bed112 commit d5eb1ad
Showing 1 changed file with 6 additions and 1 deletion.
7 changes: 6 additions & 1 deletion visidata/sheets.py
Expand Up @@ -975,6 +975,11 @@ def addRow(self, sheet, **kwargs):
if not self.options.load_lazy:
sheet.ensureLoaded()

@asyncthread
def reloadSheets(self, sheets):
for vs in vd.Progress(sheets):
vs.reload()


class SheetsSheet(IndexSheet):
columns = [
Expand Down Expand Up @@ -1155,7 +1160,7 @@ def splitPane(sheet, pct=None):
Sheet.addCommand('', 'type-floatlocale', 'cursorCol.type = floatlocale', 'set type of current column to float using system locale set in LC_NUMERIC')

# when diving into a sheet, remove the index unless it is precious
IndexSheet.addCommand('g^R', 'reload-selected', 'for vs in selectedRows or rows: vs.reload()', 'reload all selected sheets')
IndexSheet.addCommand('g^R', 'reload-selected', 'reloadSheets(selectedRows or rows)', 'reload all selected sheets')
SheetsSheet.addCommand('gC', 'columns-selected', 'vd.push(ColumnsSheet("all_columns", source=selectedRows))', 'open Columns Sheet with all visible columns from selected sheets')
SheetsSheet.addCommand('gI', 'describe-selected', 'vd.push(DescribeSheet("describe_all", source=selectedRows))', 'open Describe Sheet with all visble columns from selected sheets')
SheetsSheet.addCommand('z^C', 'cancel-row', 'cancelThread(*cursorRow.currentThreads)', 'abort async thread for current sheet')
Expand Down

0 comments on commit d5eb1ad

Please sign in to comment.