Rendering of README.md inline with inner tree view dirs
Andy Green
andy at warmcat.com
Mon Jun 11 10:05:38 CEST 2018
On 06/11/2018 03:53 PM, Christian Hesse wrote:
> Andy Green <andy at warmcat.com> on Mon, 2018/06/11 15:38:
>> On 06/11/2018 03:31 PM, Christian Hesse wrote:
>>> Andy Green <andy at warmcat.com> on Mon, 2018/06/11 15:08:
>>>> Hi -
>>>>
>>>> I have been using cgit for many years.
>>>>
>>>> Currently I am detaching my (LGPL) project from github.
>>>>
>>>> One noticeable problem diverting people from github to cgit is although
>>>> it renders very well the toplevel "about" README.md
>>>>
>>>> https://libwebsockets.org/git/libwebsockets/about/
>>>>
>>>> It doesn't seem to have a way to render inline inner dir README.md as
>>>> github does. This is quite a small thing but very useful, eg
>>>>
>>>> https://github.com/warmcat/libwebsockets/tree/master/minimal-examples
>>>>
>>>> vs
>>>>
>>>> https://libwebsockets.org/git/libwebsockets/tree/minimal-examples
>>>>
>>>> Is there a way to do it already in the main cgit project? For nonpublic
>>>> projects, I screenscraped some patches from John Keeping from 2016 that
>>>> do the same thing, but poking around, these don't seem to have made it
>>>> in.
>>>>
>>>> If there's no existing way to do it and those patches are shivering in
>>>> the cold, all alone, can I suggest they would perhaps be extremely
>>>> useful to people in a similar position, needing to decouple users from
>>>> github but needing to generally present the same tree in a similar way?
>>>
>>> This is what you want?
>>>
>>> https://libwebsockets.org/git/libwebsockets/about/minimal-examples/README.md
>>
>> Yeah.
>>
>> But inline after the tree view, a la github.
>>
>> This enables a scheme where inner dirs give their own overview without
>> interrupting navigation. Eg, a couple of levels down...
>>
>> https://github.com/warmcat/libwebsockets/tree/master/lib/roles
>
> I think this is not possible with current code. What patches from John did
> you apply?
Author: John Keeping <john at keeping.me.uk>
Date: Wed Dec 14 20:35:47 2016 +0800
Use string list strdup_strings for mimetypes
This allows applying filters to files in the repository, for example to
render Markdown or AsciiDoc as HTML.
Signed-off-by: John Keeping <john at keeping.me.uk>
Author: John Keeping <john at keeping.me.uk>
Date: Wed Dec 14 20:35:47 2016 +0800
ui-tree: split out buffer printing
Signed-off-by: John Keeping <john at keeping.me.uk>
Author: John Keeping <john at keeping.me.uk>
Date: Wed Dec 14 20:41:11 2016 +0800
Parse render filters from the config
Render filters will be used to present rendered content in the tree
view, for example to display Markdown source rendered as HTML.
We will add support for using these from the tree view in the following
commits.
Signed-off-by: John Keeping <john at keeping.me.uk>
Author: John Keeping <john at keeping.me.uk>
Date: Wed Dec 14 20:36:51 2016 +0800
Add source page
We are about to introduce rendering of content for the tree view. This
source page will allow bypassing the renderer and accessing the content
of the current tree view.
Signed-off-by: John Keeping <john at keeping.me.uk>
Author: John Keeping <john at keeping.me.uk>
Date: Wed Dec 14 20:35:47 2016 +0800
Use string list strdup_strings for mimetypes
There's no need to do this manually with the string list API will do it
for us.
Signed-off-by: John Keeping <john at keeping.me.uk>
It's quite possible they aren't what I am asking for, and / or already
applied. They were "good enough" for what I needed to do a couple of
years ago. But now I am explicitly replacing github, so comparing the
rendering is in scope for me when it just needed to be able to render
anything at all back then.
> BTW, linking withing formatted pages works, so this could be a step forward:
>
> diff --git a/README.md b/README.md
> index c6222b75..fee7dcae 100644
> --- a/README.md
> +++ b/README.md
> @@ -9,7 +9,7 @@ News
>
> ## v3.0.0 released
>
> -See the changelog for info https://libwebsockets.org/git/libwebsockets/tree/changelog?h=v3.0-stable
> +See the [changelog](changelog?h=v3.0-stable) for info.
>
> ## Major CI improvements for QA
>
> @@ -56,7 +56,7 @@ but the other browsers will catch up soon.
>
> ## New "minimal examples"
>
> -https://libwebsockets.org/git/libwebsockets/tree/minimal-examples
> +[minimal-examples](minimal-examples/README.md)
>
> These are like the test apps, but focus on doing one thing, the best way, with the minimum amount of code. For example the minimal-http-server serves the cwd on http/1 or http/2 in 50 LOC. Same thing with tls is just three more lines.
>
I think what github did comes into its own when you are in the mode of
coming new to a project and trying to understand what you are even
looking at from the project layout in the filespace. So they may well
be clicking around in the tree view, it's perfect if any project
documentation in that dir just magically appears after the already
expected navigation context explaining it.
Basically any available docs follow along contextually.
I think it's desirable under all circumstances, since it's only coming
if someone bothered to put relevant docs right there... if no way to do
it right now and no better ideas, I will try to understand how cgit
works for this tomorrow and see if any ideas.
-Andy
More information about the CGit
mailing list