Monday, July 29, 2013

Re: vim: how to produce the html pages like the vim help html?


On Jul 29, 2013 4:59 PM, "Ben Fritz" <fritzophrenic@gmail.com> wrote:
>
> On Tuesday, July 23, 2013 10:11:56 PM UTC-5, ZyX wrote:
> > On Jul 24, 2013 1:00 AM, "Charles Campbell" <Charles.E...@nasa.gov> wrote:
> >
> > >
> >
> > > ping song wrote:
> >
> > >>
> >
> > >> any help?
> >
> > >>
> >
> > >>
> >
> > >>
> >
> > >> On Mon, Jul 22, 2013 at 9:03 AM, ping <songpi...@gmail.com <mailto:songpi...@gmail.com>> wrote:
> >
> > >>
> >
> > >>     this looks real nice!
> >
> > >>
> >
> > >>     http://vimdoc.sourceforge.net/htmldoc/
> >
> > >>
> >
> > >>     the thing that I like it , is that it looks exactly what it is in
> >
> > >>     vim , compacted pure text but still URL-able, like those code
> >
> > >>     cross reference pages generated by LXR
> >
> > >>     (http://lxr.linux.no/linux+v3.10.2/kernel/cpu/idle.c),  sth I
> >
> > >>     can't simply archieve in vimwiki.
> >
> > >>
> >
> > >>     what options of tools do we have (in vim or external) to generate
> >
> > >>     those beautiful pages?
> >
> > >>
> >
> > > I have no idea what was used for the online vim man pages.  You do know about TOhtml, though?
> >
> > At least one of the maintainers uses self-written python script; he wrote about this in the announce. Maybe there a link to the script in the announce, I do not remember.
> >
>
> I think there is also a perl script distributed with Vim, in the runtime directory, called vim2html.pl. I'm not at all sure what it does.
>
> > TOhtml does not have support for links yet, though AFAIR it was promised. There is a plugin that adds them though.
> >
>
> I don't know about "promised" but it would be a nice feature.
>
> How should it work? I haven't put any effort into such a thing because I'm not sure how it ought to work.
>
> I could just find any occurrence of each tag as found by the ctags interface and wrap it in a link, but to which file? TOhtml only gives you an unsaved buffer with a default file name, which the user could save anywhere with any name at all. I could just use href='./other_file.ext.html' but then the user must be sure all linked files are accessible from the same directory.
>
> How does formatvim handle this? Maybe consistency is the name of the game here. Or does anyone have thoughts on how they would LIKE it to work?

I link to the relative path and use perl script to postprocess. As I know for sure that angle brackets in text are escaped *always* and links format is the same all over the resulting text it is easy and safe to use regexes. Generally all this stuff is left to specification authors, but built-in HTML specification itself is not configurable. In-file links are converted to just #... as there is no need to specify file in this case. You can say whether you need links for all tags, none or just in-file ones.

Note that for help files I had to create start/end tag regex options in order to limit the number of cases when tag matches (these define regexes that would be wrapped into group with zero-width look-ahead/-behind modifier).

> --
> --
> You received this message from the "vim_use" maillist.
> Do not top-post! Type your reply below the text you are replying to.
> For more information, visit http://www.vim.org/maillist.php
>
> ---
> You received this message because you are subscribed to the Google Groups "vim_use" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to vim_use+unsubscribe@googlegroups.com.
> For more options, visit https://groups.google.com/groups/opt_out.
>
>

--
--
You received this message from the "vim_use" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php
 
---
You received this message because you are subscribed to the Google Groups "vim_use" group.
To unsubscribe from this group and stop receiving emails from it, send an email to vim_use+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.
 
 

No comments:

Post a Comment