diff --git a/scripts/make_dev_link.py b/scripts/make_dev_link.py index 07b720c..0f24086 100644 --- a/scripts/make_dev_link.py +++ b/scripts/make_dev_link.py @@ -1,12 +1,25 @@ import os +import sys import json -from argparse import ArgumentParser + +# check path, must be in root folder +if not os.path.exists('plugin.json'): + os.chdir('..') + if not os.path.exists('plugin.json'): + print('plugin.json not found, exit') + sys.exit() # 1. Read plugin_dir -parser = ArgumentParser() -parser.add_argument('plugin_dir') -args = parser.parse_args() -plugin_dir = args.plugin_dir +plugin_dir = '' +if len(sys.argv) > 1: + plugin_dir = sys.argv[1] +while not os.path.exists(plugin_dir): + plugin_dir = input('Please input the directory of siyuan/data/plugins: ') + if plugin_dir == 'exit' or plugin_dir == 'quit' or plugin_dir == 'q': + sys.exit() + if not os.path.exists(plugin_dir): + print('plugin_dir not found!') + continue # 2. Read name in plugin.json with open('plugin.json', 'r', encoding='utf-8') as f: @@ -16,7 +29,7 @@ name = content.get('name') # ...error if name not found if not name or name == '': print('"name" in plugin.json not found, exit') - exit() + sys.exit() dev_dir = os.path.abspath('dev') if not os.path.exists(dev_dir): @@ -29,4 +42,4 @@ if not os.path.exists(os.path.join(plugin_dir, name)): print('Symlink created:', link) else: print('Folder already exists, exit') - exit() + sys.exit()