|
21 | 21 | import shutil |
22 | 22 | import sys |
23 | 23 | import sphinx |
| 24 | +import argparse |
| 25 | +import jinja2 |
24 | 26 |
|
25 | 27 | os.environ['PYTHONPATH'] = '..' |
26 | 28 |
|
@@ -77,7 +79,7 @@ def build_pandas(): |
77 | 79 | os.system('python setup.py clean') |
78 | 80 | os.system('python setup.py build_ext --inplace') |
79 | 81 | os.chdir('doc') |
80 | | - |
| 82 | + |
81 | 83 | def build_prev(ver): |
82 | 84 | if os.system('git checkout v%s' % ver) != 1: |
83 | 85 | os.chdir('..') |
@@ -267,22 +269,54 @@ def _get_config(): |
267 | 269 | # current_dir = os.getcwd() |
268 | 270 | # os.chdir(os.path.dirname(os.path.join(current_dir, __file__))) |
269 | 271 |
|
270 | | -if len(sys.argv) > 2: |
271 | | - ftype = sys.argv[1] |
272 | | - ver = sys.argv[2] |
273 | | - |
274 | | - if ftype == 'build_previous': |
275 | | - build_prev(ver) |
276 | | - if ftype == 'upload_previous': |
277 | | - upload_prev(ver) |
278 | | -elif len(sys.argv) > 1: |
279 | | - for arg in sys.argv[1:]: |
280 | | - func = funcd.get(arg) |
281 | | - if func is None: |
282 | | - raise SystemExit('Do not know how to handle %s; valid args are %s' % ( |
283 | | - arg, list(funcd.keys()))) |
284 | | - func() |
285 | | -else: |
286 | | - small_docs = False |
287 | | - all() |
| 272 | +import argparse |
| 273 | +argparser = argparse.ArgumentParser(description=""" |
| 274 | +Pandas documentation builder |
| 275 | +""".strip()) |
| 276 | + |
| 277 | +# argparser.add_argument('-arg_name', '--arg_name', |
| 278 | +# metavar='label for arg help', |
| 279 | +# type=str|etc, |
| 280 | +# nargs='N|*|?|+|argparse.REMAINDER', |
| 281 | +# required=False, |
| 282 | +# #choices='abc', |
| 283 | +# help='help string', |
| 284 | +# action='store|store_true') |
| 285 | + |
| 286 | +# args = argparser.parse_args() |
| 287 | + |
| 288 | +#print args.accumulate(args.integers) |
| 289 | + |
| 290 | +def generate_index(api=True, single=False, **kwds): |
| 291 | + from jinja2 import Template |
| 292 | + with open("source/index.rst.template") as f: |
| 293 | + t = Template(f.read()) |
| 294 | + |
| 295 | + with open("source/index.rst","wb") as f: |
| 296 | + f.write(t.render(api=api,single=single,**kwds)) |
| 297 | + |
| 298 | +def main(): |
| 299 | + generate_index(api=False, single='indexing') |
| 300 | + if len(sys.argv) > 2: |
| 301 | + ftype = sys.argv[1] |
| 302 | + ver = sys.argv[2] |
| 303 | + |
| 304 | + if ftype == 'build_previous': |
| 305 | + build_prev(ver) |
| 306 | + if ftype == 'upload_previous': |
| 307 | + upload_prev(ver) |
| 308 | + elif len(sys.argv) == 2: |
| 309 | + for arg in sys.argv[1:]: |
| 310 | + func = funcd.get(arg) |
| 311 | + if func is None: |
| 312 | + raise SystemExit('Do not know how to handle %s; valid args are %s' % ( |
| 313 | + arg, list(funcd.keys()))) |
| 314 | + func() |
| 315 | + else: |
| 316 | + small_docs = False |
| 317 | + all() |
288 | 318 | # os.chdir(current_dir) |
| 319 | + |
| 320 | +if __name__ == '__main__': |
| 321 | + import sys |
| 322 | + sys.exit(main()) |
0 commit comments