mirror of
https://github.com/sphinx-doc/sphinx.git
synced 2025-02-25 18:55:22 -06:00
add various options to sphinx-quickstart.
This commit is contained in:
parent
7984f81a5e
commit
c761740cfc
@ -13,6 +13,7 @@ from __future__ import print_function
|
|||||||
import re
|
import re
|
||||||
import os
|
import os
|
||||||
import sys
|
import sys
|
||||||
|
import optparse
|
||||||
import time
|
import time
|
||||||
from os import path
|
from os import path
|
||||||
from io import open
|
from io import open
|
||||||
@ -1344,16 +1345,117 @@ where "builder" is one of the supported builders, e.g. html, latex or linkcheck.
|
|||||||
''')
|
''')
|
||||||
|
|
||||||
|
|
||||||
|
def usage(argv, msg=None):
|
||||||
|
if msg:
|
||||||
|
print(msg, file=sys.stderr)
|
||||||
|
print(file=sys.stderr)
|
||||||
|
|
||||||
|
USAGE = """\
|
||||||
|
Sphinx v%s
|
||||||
|
Usage: %%prog [options] folder
|
||||||
|
""" % __version__
|
||||||
|
|
||||||
|
EPILOG = """\
|
||||||
|
For more information, visit <http://sphinx-doc.org/>.
|
||||||
|
"""
|
||||||
|
|
||||||
|
|
||||||
|
class MyFormatter(optparse.IndentedHelpFormatter):
|
||||||
|
def format_usage(self, usage):
|
||||||
|
return usage
|
||||||
|
|
||||||
|
def format_help(self, formatter):
|
||||||
|
result = []
|
||||||
|
if self.description:
|
||||||
|
result.append(self.format_description(formatter))
|
||||||
|
if self.option_list:
|
||||||
|
result.append(self.format_option_help(formatter))
|
||||||
|
return "\n".join(result)
|
||||||
|
|
||||||
|
|
||||||
def main(argv=sys.argv):
|
def main(argv=sys.argv):
|
||||||
if not color_terminal():
|
if not color_terminal():
|
||||||
nocolor()
|
nocolor()
|
||||||
|
|
||||||
d = {}
|
parser = optparse.OptionParser(USAGE, epilog=EPILOG,
|
||||||
if len(argv) > 3:
|
formatter=MyFormatter())
|
||||||
print('Usage: sphinx-quickstart [root]')
|
parser.add_option('--version', action='store_true', dest='version',
|
||||||
sys.exit(1)
|
help='show version information and exit')
|
||||||
elif len(argv) == 2:
|
parser.add_option('-q', action='store_true', dest='quiet',
|
||||||
d['path'] = argv[1]
|
default=False,
|
||||||
|
help='quiet mode')
|
||||||
|
|
||||||
|
group = parser.add_option_group('Structure options')
|
||||||
|
group.add_option('--sep', action='store_true', dest='sep',
|
||||||
|
help='if specified, separate source and build dirs')
|
||||||
|
group.add_option('--dot', metavar='DOT', dest='dot',
|
||||||
|
help='replacement for dot in _templates etc.')
|
||||||
|
|
||||||
|
group = parser.add_option_group('Project basic options')
|
||||||
|
group.add_option('-p', metavar='PROJECT', dest='project',
|
||||||
|
help='project name')
|
||||||
|
group.add_option('-a', metavar='AUTHOR', dest='author',
|
||||||
|
help='author names')
|
||||||
|
group.add_option('-v', metavar='VERSION', dest='version',
|
||||||
|
help='version of project')
|
||||||
|
group.add_option('-r', metavar='RELEASE', dest='version',
|
||||||
|
help='release of project')
|
||||||
|
group.add_option('-l', metavar='LANGUAGE', dest='language',
|
||||||
|
help='document language')
|
||||||
|
group.add_option('--suffix', metavar='SUFFIX', dest='suffix',
|
||||||
|
help='source file suffix')
|
||||||
|
group.add_option('--master', metavar='MASTER', dest='master',
|
||||||
|
help='master document name')
|
||||||
|
group.add_option('--epub', action='store_true', dest='epub',
|
||||||
|
default=False,
|
||||||
|
help='use epub')
|
||||||
|
|
||||||
|
group = parser.add_option_group('Extensions')
|
||||||
|
group.add_option('--ext_autodoc', action='store_true', dest='ext_autodoc',
|
||||||
|
default=None,
|
||||||
|
help='add autodoc extention')
|
||||||
|
group.add_option('--ext_doctest', action='store_true', dest='ext_doctest',
|
||||||
|
default=False,
|
||||||
|
help='add doctest extention')
|
||||||
|
group.add_option('--ext_intersphinx', action='store_true', dest='ext_intersphinx',
|
||||||
|
default=False,
|
||||||
|
help='add intersphinx extention')
|
||||||
|
group.add_option('--ext_todo', action='store_true', dest='ext_todo',
|
||||||
|
default=False,
|
||||||
|
help='add todo extention')
|
||||||
|
group.add_option('--ext_coverage', action='store_true', dest='ext_coverage',
|
||||||
|
default=False,
|
||||||
|
help='add coverage extention')
|
||||||
|
group.add_option('--ext_pngmath', action='store_true', dest='ext_pngmath',
|
||||||
|
default=False,
|
||||||
|
help='add pngmath extention')
|
||||||
|
group.add_option('--ext_mathjax', action='store_true', dest='ext_mathjax',
|
||||||
|
default=False,
|
||||||
|
help='add mathjax extention')
|
||||||
|
|
||||||
|
group = parser.add_option_group('Makefile and Batchfile creation')
|
||||||
|
group.add_option('--makefile', action='store_true', dest='makefile',
|
||||||
|
default=False,
|
||||||
|
help='makefile')
|
||||||
|
group.add_option('--batchfile', action='store_true', dest='batchfile',
|
||||||
|
default=False,
|
||||||
|
help='create batchfile')
|
||||||
|
|
||||||
|
# parse options
|
||||||
|
try:
|
||||||
|
opts, args = parser.parse_args()
|
||||||
|
except SystemExit as err:
|
||||||
|
return err.code
|
||||||
|
|
||||||
|
if len(args) > 0:
|
||||||
|
opts.ensure_value('path', args[0])
|
||||||
|
|
||||||
|
d = vars(opts)
|
||||||
|
for k, v in d.items():
|
||||||
|
# delete None or False value
|
||||||
|
if v is None or v is False:
|
||||||
|
del d[k]
|
||||||
|
|
||||||
try:
|
try:
|
||||||
ask_user(d)
|
ask_user(d)
|
||||||
except (KeyboardInterrupt, EOFError):
|
except (KeyboardInterrupt, EOFError):
|
||||||
@ -1362,6 +1464,5 @@ def main(argv=sys.argv):
|
|||||||
return
|
return
|
||||||
generate(d)
|
generate(d)
|
||||||
|
|
||||||
|
|
||||||
if __name__ == '__main__':
|
if __name__ == '__main__':
|
||||||
sys.exit(main(sys.argv))
|
sys.exit(main(sys.argv))
|
||||||
|
Loading…
Reference in New Issue
Block a user