latest version stuff

This commit is contained in:
James Ravenscroft 2024-03-03 20:58:25 +00:00
parent a689ba1758
commit 749c140a16
2 changed files with 25 additions and 5 deletions

View File

@ -1,6 +1,6 @@
[project]
name = "notesync"
version = "0.1.0"
version = "0.2.0"
description = ""
authors = [
{name = "James Ravenscroft", email = "ravenscroftj@gmail.com"},

View File

@ -1,18 +1,34 @@
from unittest import skip
import frontmatter
import click
import os
import glob
import shutil
import fnmatch
@click.command()
@click.option("--input-dir", "-i", required=True)
@click.option('--output-dir','-o', required=True)
def main(input_dir: str, output_dir):
@click.option('--ignore', default=None, required=False, multiple=True)
@click.option('--dry-run/--no-dry-run', default=False)
def main(input_dir: str, output_dir, ignore=None, dry_run=False):
public_files = []
for file in glob.glob(os.path.join(input_dir,"**","*.md")):
if ignore is not None:
skip_file = False
for pattern in ignore:
if fnmatch.fnmatch(file, pattern):
skip_file = True
if skip_file:
continue
with open(file) as f:
data = frontmatter.load(f)
@ -27,8 +43,12 @@ def main(input_dir: str, output_dir):
if not os.path.exists(os.path.dirname(out_path)):
print(f"mkdir {os.path.dirname(out_path)}")
if not dry_run:
os.makedirs(os.path.dirname(out_path), exist_ok=True)
print(f"{file} => {out_path}")
if not dry_run:
shutil.copy(file, out_path)