qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH 09/11] qapi2texi: Simplify representation of sec


From: Marc-André Lureau
Subject: Re: [Qemu-devel] [PATCH 09/11] qapi2texi: Simplify representation of section text
Date: Wed, 4 Oct 2017 12:29:52 +0200

On Mon, Oct 2, 2017 at 4:13 PM, Markus Armbruster <address@hidden> wrote:
> Use a string instead of a list of strings.  While there, generate
> fewer superfluous blank lines.
>
> Signed-off-by: Markus Armbruster <address@hidden>

Reviewed-by: Marc-André Lureau <address@hidden>


> ---
>  scripts/qapi2texi.py            | 33 ++++++++++++++++-----------------
>  tests/qapi-schema/doc-good.texi | 10 ----------
>  2 files changed, 16 insertions(+), 27 deletions(-)
>
> diff --git a/scripts/qapi2texi.py b/scripts/qapi2texi.py
> index 379d27643d..58add26c11 100755
> --- a/scripts/qapi2texi.py
> +++ b/scripts/qapi2texi.py
> @@ -13,7 +13,6 @@ MSG_FMT = """
>  @deftypefn {type} {{}} {name}
>
>  {body}
> -
>  @end deftypefn
>
>  """.format
> @@ -22,7 +21,6 @@ TYPE_FMT = """
>  @deftp {{{type}}} {name}
>
>  {body}
> -
>  @end deftp
>
>  """.format
> @@ -74,7 +72,7 @@ def texi_format(doc):
>      - 1. or 1): generates an @enumerate @item
>      - */-: generates an @itemize list
>      """
> -    lines = []
> +    ret = ''
>      doc = subst_braces(doc)
>      doc = subst_vars(doc)
>      doc = subst_emph(doc)
> @@ -100,32 +98,32 @@ def texi_format(doc):
>              line = '@subsection ' + line[3:]
>          elif re.match(r'^([0-9]*\.) ', line):
>              if not inlist:
> -                lines.append('@enumerate')
> +                ret += '@enumerate\n'
>                  inlist = 'enumerate'
> +            ret += '@item\n'
>              line = line[line.find(' ')+1:]
> -            lines.append('@item')
>          elif re.match(r'^[*-] ', line):
>              if not inlist:
> -                lines.append('@itemize %s' % {'*': '@bullet',
> -                                              '-': '@minus'}[line[0]])
> +                ret += '@itemize %s\n' % {'*': '@bullet',
> +                                          '-': '@minus'}[line[0]]
>                  inlist = 'itemize'
> -            lines.append('@item')
> +            ret += '@item\n'
>              line = line[2:]
>          elif lastempty and inlist:
> -            lines.append('@end %s\n' % inlist)
> +            ret += '@end %s\n\n' % inlist
>              inlist = ''
>
>          lastempty = empty
> -        lines.append(line)
> +        ret += line + '\n'
>
>      if inlist:
> -        lines.append('@end %s\n' % inlist)
> -    return '\n'.join(lines)
> +        ret += '@end %s\n\n' % inlist
> +    return ret
>
>
>  def texi_body(doc):
>      """Format the main documentation body"""
> -    return texi_format(doc.body.text) + '\n'
> +    return texi_format(doc.body.text)
>
>
>  def texi_enum_value(value):
> @@ -154,10 +152,11 @@ def texi_members(doc, what, base, variants, 
> member_func):
>          elif (variants and variants.tag_member == section.member
>                and not section.member.type.doc_type()):
>              values = section.member.type.member_names()
> -            desc = 'One of ' + ', '.join(['@t{"%s"}' % v for v in values])
> +            members_text = ', '.join(['@t{"%s"}' % v for v in values])
> +            desc = 'One of ' + members_text + '\n'
>          else:
> -            desc = 'Not documented'
> -        items += member_func(section.member) + desc + '\n'
> +            desc = 'Not documented\n'
> +        items += member_func(section.member) + desc
>      if base:
>          items += '@item The members of @code{%s}\n' % base.doc_type()
>      if variants:
> @@ -182,7 +181,7 @@ def texi_sections(doc):
>      for section in doc.sections:
>          if section.name:
>              # prefer @b over @strong, so txt doesn't translate it to *Foo:*
> -            body += 'address@hidden:}\n' % section.name
> +            body += 'address@hidden:}\n' % section.name
>          if section.name and section.name.startswith('Example'):
>              body += texi_example(section.text)
>          else:
> diff --git a/tests/qapi-schema/doc-good.texi b/tests/qapi-schema/doc-good.texi
> index c032f23fc1..1778312581 100644
> --- a/tests/qapi-schema/doc-good.texi
> +++ b/tests/qapi-schema/doc-good.texi
> @@ -101,7 +101,6 @@ Not documented
>  the first member
>  @end table
>
> -
>  @end deftp
>
>
> @@ -118,7 +117,6 @@ Another paragraph (but no @code{var}: line)
>  Not documented
>  @end table
>
> -
>  @end deftp
>
>
> @@ -127,7 +125,6 @@ Not documented
>
>
>
> -
>  @end deftp
>
>
> @@ -143,7 +140,6 @@ Not documented
>  @item The members of @code{Variant2} when @code{base1} is @t{"two"}
>  @end table
>
> -
>  @end deftp
>
>
> @@ -160,7 +156,6 @@ One of @t{"one"}, @t{"two"}
>  @item @code{data: Variant2} when @code{type} is @t{"two"}
>  @end table
>
> -
>  @end deftp
>
>
> @@ -182,7 +177,6 @@ argument
>  Not documented
>  @end table
>
> -
>  @b{Note:}
>  @code{arg3} is undocumented
>
> @@ -209,14 +203,12 @@ Duis aute irure dolor
>  <- out
>  @end example
>
> -
>  @b{Examples:}
>  @example
>  - *verbatim*
>  - @address@hidden
>  @end example
>
> -
>  @b{Since:}
>  2.10
>
> @@ -230,7 +222,6 @@ If you're bored enough to read this, go see a video of 
> boxed cats
>
>  @b{Arguments:} the members of @code{Object}
>
> -
>  @b{Example:}
>  @example
>  -> in
> @@ -238,7 +229,6 @@ If you're bored enough to read this, go see a video of 
> boxed cats
>  <- out
>  @end example
>
> -
>  @end deftypefn
>
>
> --
> 2.13.6
>
>



-- 
Marc-André Lureau



reply via email to

[Prev in Thread] Current Thread [Next in Thread]