summaryrefslogtreecommitdiff
path: root/lib/python
diff options
context:
space:
mode:
Diffstat (limited to 'lib/python')
-rw-r--r--lib/python/qmk/cli/docs.py9
-rw-r--r--lib/python/qmk/cli/generate/docs.py6
-rw-r--r--lib/python/qmk/docs.py8
3 files changed, 12 insertions, 11 deletions
diff --git a/lib/python/qmk/cli/docs.py b/lib/python/qmk/cli/docs.py
index d28dddf194..da02ebf95e 100644
--- a/lib/python/qmk/cli/docs.py
+++ b/lib/python/qmk/cli/docs.py
@@ -6,6 +6,8 @@ from qmk.docs import prepare_docs_build_area, run_docs_command
6from milc import cli 6from milc import cli
7 7
8 8
9@cli.argument('-p', '--port', default=8936, type=int, help='Port number to use.')
10@cli.argument('-b', '--browser', action='store_true', help='Open the docs in the default browser.')
9@cli.subcommand('Run a local webserver for QMK documentation.', hidden=False if cli.config.user.developer else True) 11@cli.subcommand('Run a local webserver for QMK documentation.', hidden=False if cli.config.user.developer else True)
10def docs(cli): 12def docs(cli):
11 """Spin up a local HTTP server for the QMK docs. 13 """Spin up a local HTTP server for the QMK docs.
@@ -22,6 +24,7 @@ def docs(cli):
22 if not prepare_docs_build_area(is_production=False): 24 if not prepare_docs_build_area(is_production=False):
23 return False 25 return False
24 26
25 if not cli.config.general.verbose: 27 cmd = ['docs:dev', '--port', f'{cli.args.port}']
26 cli.log.info('Serving docs at http://localhost:5173/ (Ctrl+C to stop)') 28 if cli.args.browser:
27 run_docs_command('run', 'docs:dev') 29 cmd.append('--open')
30 run_docs_command('run', cmd)
diff --git a/lib/python/qmk/cli/generate/docs.py b/lib/python/qmk/cli/generate/docs.py
index 5821d43b86..7abeca9d2a 100644
--- a/lib/python/qmk/cli/generate/docs.py
+++ b/lib/python/qmk/cli/generate/docs.py
@@ -27,10 +27,8 @@ def generate_docs(cli):
27 return False 27 return False
28 28
29 cli.log.info('Building vitepress docs') 29 cli.log.info('Building vitepress docs')
30 run_docs_command('run', 'docs:build') 30 run_docs_command('run', ['docs:build'])
31 cli.log.info('Successfully generated docs to %s.', BUILD_DOCS_PATH) 31 cli.log.info('Successfully generated docs to %s.', BUILD_DOCS_PATH)
32 32
33 if cli.args.serve: 33 if cli.args.serve:
34 if not cli.config.general.verbose: 34 run_docs_command('run', ['docs:preview'])
35 cli.log.info('Serving docs at http://localhost:4173/ (Ctrl+C to stop)')
36 run_docs_command('run', 'docs:preview')
diff --git a/lib/python/qmk/docs.py b/lib/python/qmk/docs.py
index 56694cf6ae..75d2d60bda 100644
--- a/lib/python/qmk/docs.py
+++ b/lib/python/qmk/docs.py
@@ -17,18 +17,18 @@ BUILD_DOCS_PATH = BUILD_PATH / 'docs'
17DOXYGEN_PATH = BUILD_DOCS_PATH / 'static' / 'doxygen' 17DOXYGEN_PATH = BUILD_DOCS_PATH / 'static' / 'doxygen'
18 18
19 19
20def run_docs_command(verb, cmd=None): 20def run_docs_command(verb, cmd_args=None):
21 environ['PATH'] += pathsep + str(NODE_MODULES_PATH / '.bin') 21 environ['PATH'] += pathsep + str(NODE_MODULES_PATH / '.bin')
22 22
23 args = {'capture_output': False if cli.config.general.verbose else True, 'check': True, 'stdin': DEVNULL} 23 args = {'capture_output': False, 'check': True}
24 docs_env = environ.copy() 24 docs_env = environ.copy()
25 if cli.config.general.verbose: 25 if cli.config.general.verbose:
26 docs_env['DEBUG'] = 'vitepress:*,vite:*' 26 docs_env['DEBUG'] = 'vitepress:*,vite:*'
27 args['env'] = docs_env 27 args['env'] = docs_env
28 28
29 arg_list = ['yarn', verb] 29 arg_list = ['yarn', verb]
30 if cmd: 30 if cmd_args:
31 arg_list.append(cmd) 31 arg_list.extend(cmd_args)
32 32
33 chdir(BUILDDEFS_PATH) 33 chdir(BUILDDEFS_PATH)
34 cli.run(arg_list, **args) 34 cli.run(arg_list, **args)