fix: --export-template correctly exports all notes

This commit is contained in:
Nathaniel Landau
2023-03-21 23:16:23 -04:00
parent 98fa996462
commit 4bf1acb775
3 changed files with 19 additions and 14 deletions

View File

@@ -151,7 +151,7 @@ def main(
raise typer.Exit(code=0) raise typer.Exit(code=0)
if export_template is not None: if export_template is not None:
path = Path(export_template).expanduser().resolve() path = Path(export_template).expanduser().resolve()
application.noninteractive_export_csv(path) application.noninteractive_export_template(path)
raise typer.Exit(code=0) raise typer.Exit(code=0)
application.application_main() application.application_main()

View File

@@ -560,6 +560,16 @@ class Application:
self.vault.export_metadata(export_format="json", path=str(path)) self.vault.export_metadata(export_format="json", path=str(path))
alerts.success(f"Exported metadata to {path}") alerts.success(f"Exported metadata to {path}")
def noninteractive_export_template(self, path: Path) -> None:
"""Export the vault metadata to CSV."""
self._load_vault()
with console.status(
"Preparing export... [dim](Can take a while for large vaults)[/]",
spinner="bouncingBall",
):
self.vault.export_notes_to_csv(path=str(path))
alerts.success(f"Exported metadata to {path}")
def rename_key(self) -> None: def rename_key(self) -> None:
"""Rename a key in the vault.""" """Rename a key in the vault."""
original_key = self.questions.ask_existing_key( original_key = self.questions.ask_existing_key(

View File

@@ -11,7 +11,6 @@ from typing import Any
import rich.repr import rich.repr
import typer import typer
from rich import box from rich import box
from rich.progress import Progress, SpinnerColumn, TextColumn
from rich.prompt import Confirm from rich.prompt import Confirm
from rich.table import Table from rich.table import Table
@@ -64,12 +63,10 @@ class Vault:
self.filters = filters self.filters = filters
self.all_note_paths = self._find_markdown_notes() self.all_note_paths = self._find_markdown_notes()
with Progress( with console.status(
SpinnerColumn(), "Processing notes... [dim](Can take a while for a large vault)[/]",
TextColumn("[progress.description]{task.description}"), spinner="bouncingBall",
transient=True, ):
) as progress:
progress.add_task(description="Processing notes...", total=None)
self.all_notes: list[Note] = [ self.all_notes: list[Note] = [
Note(note_path=p, dry_run=self.dry_run) for p in self.all_note_paths Note(note_path=p, dry_run=self.dry_run) for p in self.all_note_paths
] ]
@@ -172,12 +169,10 @@ class Vault:
def _rebuild_vault_metadata(self) -> None: def _rebuild_vault_metadata(self) -> None:
"""Rebuild vault metadata.""" """Rebuild vault metadata."""
self.metadata = VaultMetadata() self.metadata = VaultMetadata()
with Progress( with console.status(
SpinnerColumn(), "Processing notes... [dim](Can take a while for a large vault)[/]",
TextColumn("[progress.description]{task.description}"), spinner="bouncingBall",
transient=True, ):
) as progress:
progress.add_task(description="Processing notes...", total=None)
for _note in self.notes_in_scope: for _note in self.notes_in_scope:
self.metadata.index_metadata( self.metadata.index_metadata(
area=MetadataType.FRONTMATTER, metadata=_note.frontmatter.dict area=MetadataType.FRONTMATTER, metadata=_note.frontmatter.dict