Add script to create zttelkasten notes

This commit is contained in:
Florestan Bredow
2024-11-18 15:00:46 +01:00
parent 5a213e4157
commit 72a592f13a

45
.local/bin/on Executable file
View File

@@ -0,0 +1,45 @@
#!/usr/bin/env python3
import os
import textwrap
import argparse
import subprocess
from datetime import date
def load_args():
"""loads cli parameters"""
parser = argparse.ArgumentParser(
description="Takes a snapshot of all pad contents"
)
parser.add_argument('all', nargs=argparse.REMAINDER)
args = parser.parse_args()
return vars(args)
def main():
args = load_args()
name = ' '.join(args['all'])
today = date.today().strftime('%Y-%m-%d')
filename = f'/home/bredow/nextcloud/perso/notes/zettelkasten/inbox/{today}_{name}.md'
content = textwrap.dedent(f"""\
---
date: {today}
tags:
-
---
""")
if not os.path.exists(filename):
with open(filename, 'w') as file:
file.write(content)
subprocess.run(['nvim', '+normal G$', '+startinsert', filename])
os._exit(0)
if __name__ == "__main__":
main()