From: Mauro Carvalho Chehab <mchehab@kernel.org>
To: Jonathan Corbet <corbet@lwn.net>
Cc: Jani Nikula <jani.nikula@linux.intel.com>,
linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org,
Matthew Wilcox <willy@infradead.org>
Subject: Re: [PATCH 1/2] Docs: An initial automarkup extension for sphinx
Date: Fri, 26 Apr 2019 14:54:24 -0300 [thread overview]
Message-ID: <20190426145424.268da5df@coco.lan> (raw)
In-Reply-To: <20190426105209.1e414eae@lwn.net>
Em Fri, 26 Apr 2019 10:52:09 -0600
Jonathan Corbet <corbet@lwn.net> escreveu:
> On Fri, 26 Apr 2019 12:06:42 +0300
> Jani Nikula <jani.nikula@linux.intel.com> wrote:
>
> > It's more involved, but I think the better place to do this (as well as
> > the kernel-doc transformations) would be in the doctree-read event,
> > after the rst parsing is done. You can traverse the doctree and find the
> > places which weren't special for Sphinx, and replace the plain text
> > nodes in-place. I've toyed with this in the past, but alas I didn't have
> > (and still don't) have the time to finish the job.
>
> I had thought about this; indeed, there's a comment in the posted patch to
> that effect. The tradeoff comes down to this, I think:
>
> - The fragility and inelegance of embedding a bit of redundant RST
> parsing into this extension v. that of adding a late parsing stage as a
> transform, trying to enumerate every node type that you might want to
> change, and digging into the C domain code to emulate its reference
> generation.
>
> - The time required to implement a solution; I'm having a bit of a hard
> time keeping up with docs at the moment as it is.
>
> - Regexes. This solution has more of them, but we're not going to get
> away from them regardless.
>
> I am not at all opposed to a more proper solution that might, in the
> long term, produce more deterministic results. I can even try to work in
> that direction. But this is something that can be done now that, IMO,
> doesn't in any way close off a better implementation in the future. If we
> agree that we should automatically generate references for occurrences of
> "function()", we can change how that is actually done later.
>
> I'll look into this further, but my inclination is to go forward with what
> I have now. It's simple and easy to understand, and doesn't seem to screw
> up anywhere in the current body of kernel docs as far as I can tell.
>
> > If you decide to go with regex anyway, I'd at least consider pulling the
> > transformations/highlights from kernel-doc the script to the Sphinx
> > extension, and use the exact same transformations for stuff in source
> > code comments and rst files.
>
> Pulling all RST manipulation out of kerneldoc has a great deal of appeal;
> assuming this goes forward that should indeed be high on the todo list.
While I didn't review the python code yet, and while I agree with
Jani and Markus that it would be better only parse functions on texts
after the Sphinx parser, I agree with Jon on that: if the current code works
well enough with the current documentation, I would proceed and apply it.
Later, the script can be improved.
Thanks,
Mauro
next prev parent reply other threads:[~2019-04-26 17:54 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-04-25 20:01 [PATCH 0/2] RFC: Automatic :c:func: annotation in the sphinx build Jonathan Corbet
2019-04-25 20:01 ` [PATCH 1/2] Docs: An initial automarkup extension for sphinx Jonathan Corbet
2019-04-26 9:06 ` Jani Nikula
2019-04-26 11:31 ` Markus Heiser
2019-04-26 16:52 ` Jonathan Corbet
2019-04-26 17:54 ` Mauro Carvalho Chehab [this message]
2019-04-26 18:58 ` Jani Nikula
2019-04-26 18:32 ` Mauro Carvalho Chehab
2019-04-26 19:16 ` Mauro Carvalho Chehab
2019-04-26 19:37 ` Jonathan Corbet
2019-04-26 20:51 ` Mauro Carvalho Chehab
2019-04-25 20:01 ` [PATCH 2/2] docs: remove :c:func: annotations from xarray.rst Jonathan Corbet
2019-04-25 20:43 ` Matthew Wilcox
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=20190426145424.268da5df@coco.lan \
--to=mchehab@kernel.org \
--cc=corbet@lwn.net \
--cc=jani.nikula@linux.intel.com \
--cc=linux-doc@vger.kernel.org \
--cc=linux-kernel@vger.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