0

我正在使用模块docopt但需要在我的程序的主文档字符串中进行换行。为了将这个换行的文档字符串传递给 docopt,我想以一种合理且健壮的方式“解开”我的文档字符串的行,以便 docopt 可以轻松地解释它。

我拥有的文档字符串类型如下:

Usage:
    program [options]

Options:
    -h, --help                 display help message
    --version                  display version and exit
    -v, --verbose              verbose logging
    -u, --username=USERNAME    username
    -c, --configuration=FILE   file containing configuration
                               [default: 2015-02-06T1012Z_test.txt]
    -d, --data=FILE            file containing list of data files generated in
                               Run 1 of the LHC
                               [default: 2015-02-05T1012Z_data.root]

您可以看到我在右侧字段中对文本进行了一些很好的换行:长描述被换行,并且方括号中的默认值可以选择放置在新行中以清楚起见。我想处理这个文档字符串,使其变为以下内容:

Usage:
    program [options]

Options:
    -h, --help                 display help message
    --version                  display version and exit
    -v, --verbose              verbose logging
    -u, --username=USERNAME    username
    -c, --configuration=FILE   file containing configuration [default: 2015-02-06T1012Z_test.txt]
    -d, --data=FILE            file containing list of data files generated in Run 1 of the LHC [default: 2015-02-05T1012Z_data.root]

我想一种方法是检测“选项:”之后的行,这些行在一些空格之后不以“-”作为第一个字符,并将这些行拉回上一行,但我都不确定这是否是强大的方法,但不确定如何有效地实现这一点。我会欢迎一些指导。

4

0 回答 0