AnkiNoteTemplate/antp/__main__.py

42 lines
1.2 KiB
Python
Raw Normal View History

2021-11-27 11:54:42 +00:00
# Copyright: Ren Tatsumoto <tatsu at autistici.org>
# License: GNU GPL, version 3 or later; http://www.gnu.org/licenses/agpl.html
import sys
2021-04-20 11:14:09 +00:00
from urllib.error import URLError
2021-11-27 11:54:42 +00:00
from .common import ANTPError
from .exporter import export_note_type
from .importer import import_note_type
2021-12-25 20:17:48 +00:00
from .updater import update_note_type
def main():
2021-12-25 19:51:39 +00:00
if len(sys.argv) < 2:
return print(
"No action provided.\n\n"
f"import\tAdd one of the available note types to Anki.\n"
2021-12-25 20:17:48 +00:00
f"update\tOverwrite a previously imported note type with new data.\n"
2021-12-25 19:51:39 +00:00
f"export\tSave your note type as a template.\n"
)
try:
2021-12-25 19:51:39 +00:00
match sys.argv[1]:
case 'export':
export_note_type()
case 'import':
import_note_type()
2021-12-25 20:17:48 +00:00
case 'update':
update_note_type()
case _:
print("Unknown action.")
except URLError:
print("Couldn't connect. Make sure Anki is open and AnkiConnect is installed.")
2021-11-27 11:54:42 +00:00
except ANTPError as ex:
print(ex)
2021-12-25 20:38:41 +00:00
except KeyboardInterrupt:
print("\nAborted.")
2021-04-20 09:27:48 +00:00
if __name__ == '__main__':
main()