linux-doc.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Jani Nikula <jani.nikula@linux.intel.com>
To: peter@bikeshed.quignogs.org.uk,
	Matthew Wilcox <willy@infradead.org>,
	linux-kernel@vger.kernel.org
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	"Rafael J. Wysocki" <rafael@kernel.org>,
	linux-doc@vger.kernel.org, Jonathan Corbet <corbet@lwn.net>,
	Peter Lister <peter@bikeshed.quignogs.org.uk>
Subject: Re: [PATCH v3 0/1] Compactly make code examples into literal blocks
Date: Fri, 27 Mar 2020 13:28:54 +0200	[thread overview]
Message-ID: <87imiqghop.fsf@intel.com> (raw)
In-Reply-To: <20200326195156.11858-1-peter@bikeshed.quignogs.org.uk>

On Thu, 26 Mar 2020, peter@bikeshed.quignogs.org.uk wrote:
> From: Peter Lister <peter@bikeshed.quignogs.org.uk>
>
> [ A couple of typos corrected. Thanks, Matthew ]
>
> In a previous patch, I fixed a couple of doc build warnings due to a
> section heading "Example:" which didn't have the intended effect of
> inserting a heading and literal quoting the following code snippet. I
> added an explicit double colon to fix warnings and produce nice ReST.
>
> Jon suggested that I could have used a minimal form "Example::".
> Unfortunately not - kernel-doc munges the output so that the formatted
> output ends up as a stray colon and no literal block.
>
> Looking around in the source tree, it seems that parameter definitions
> can be more complex than the original authors of kernel-doc allowed
> for. Return values often need lists and examples often should be
> literal blocks. Many comments in the source are "ASCII formatted" but
> kernel-doc can make a mess of them and generate doc build warnings
> along the way.
>
> It seems useful to support some terse idioms which serve as compact
> source annotation and also generate well formed ReST.
>
> Here is a first try to let a heading directly introduce a literal
> block - the "Example::" form for code snippets and an update to
> platform.c to use it, just as Jon suggested.

IMHO the real problem is kernel-doc doing too much preprocessing on the
input, preventing us from doing what would be the sensible thing in
rst. The more we try to fix the problem by adding more kernel-doc
processing, the further we dig ourselves into this hole.

If kernel-doc didn't have its own notion of section headers, such as
"example:", we wouldn't have this problem to begin with. We could just
use the usual rst construct; "example::" followed by an indented block.

I'm not going to stand in the way of the patch, but I'm telling you,
this is going to get harder, not easier, on this path.


BR,
Jani.


-- 
Jani Nikula, Intel Open Source Graphics Center

  parent reply	other threads:[~2020-03-27 11:29 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-03-11 19:22 [PATCH 0/1] Format kerneldoc code snippets as literal block peter
2020-03-11 19:22 ` [PATCH 1/1] Added double colons and blank lines within kerneldoc to format code snippets as ReST literal blocks peter
2020-03-11 19:30   ` Jonathan Corbet
2020-03-26 19:16     ` [PATCH v2 0/1] Compactly make code examples into " peter
2020-03-26 19:16       ` [PATCH v2 1/1] A compact idiom to add code examples in kerneldoc comments peter
2020-03-26 19:29         ` Matthew Wilcox
2020-03-26 19:36           ` Peter Lister
2020-03-26 19:51           ` [PATCH v3 0/1] Compactly make code examples into literal blocks peter
2020-03-26 19:51             ` [PATCH v3 1/1] A compact idiom to add code examples in kerneldoc comments peter
2020-03-26 19:54               ` Matthew Wilcox
2020-03-27  6:32               ` Greg Kroah-Hartman
2020-03-27 11:28             ` Jani Nikula [this message]
2020-03-27 16:41               ` [PATCH v3 0/1] Compactly make code examples into literal blocks Jonathan Corbet
2020-03-27 16:50                 ` Matthew Wilcox
2020-03-27 17:11                   ` Jonathan Corbet
2020-03-27 17:35                     ` Matthew Wilcox
2020-03-31 11:22                       ` Jani Nikula
2020-03-31 10:50                   ` Jani Nikula
2020-03-30 22:29                 ` Peter Lister
2020-03-30 22:32                   ` Jonathan Corbet
2020-03-31 11:54                   ` Jani Nikula

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87imiqghop.fsf@intel.com \
    --to=jani.nikula@linux.intel.com \
    --cc=corbet@lwn.net \
    --cc=gregkh@linuxfoundation.org \
    --cc=linux-doc@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=peter@bikeshed.quignogs.org.uk \
    --cc=rafael@kernel.org \
    --cc=willy@infradead.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).