Hi Abel, Romero Perez, Abel wrote on Mon, Jun 15, 2020 at 03:06:26AM +0200: > Romero Perez, Abel wrote:
>> I tried to view the manuals in HTML format with lynx, but I couldn't I assume what you mean is that you could, but the "-O tag" option had no effect. >> because lynx and links can't accept the /tmp/man.XXXXXX... file as >> an URL... In "-T html" output mode, the tag file isn't even written in the first place. Only the terminal formatter writes a tag file. >> then I decided to add a new parameter (-U) Absolutely not. Adding new options to man(1) is completely out of the question. Option space is almost full and very messy already: https://mandoc.bsd.lv/man/man.options.1.html It hardly matters that -U is already taken: https://mandoc.bsd.lv/man/man.options.1.html#U You certainly can't take an option that is still free for this purpose, either. >> to pass the pager a formal file URL scheme as follows: >> file:///tmp/man.XXXXXXX#tag >> Then man spawns the pager (lynx for my case): >> lynx -force_html file:///tmp/man.XXXXXXX#tag That's an interesting idea. It needs to be done by default when -T html -O tag is given, just like tagging is enabled by default when the pager is less(1). >> The testing command is: >> PAGER="" MANPAGER="lynx -force_html" ./man -U -T html -O tag=k pfctl The PAGER="" variable has no effect when MANPAGER is set, see the man(1) manual. So the goal is to make this work: MANPAGER="lynx -force_html" ./man -T html -O tag=k pfctl > Sorry, I didn't reviewed the code well. The first diff has some bugs. > As follows the stable diff (please, review): I didn't review the diff closely, yet. Obviously, using strncpy(3) or strncat(3) is not permitted, but those should be easy to replace, perhaps with mandoc_asprintf(), not sure yet. It looks like you will have to pass outst into run_pager() and spawn_pager() rather than outst.tag_files, such that you can check for outst.outtype == OUTT_HTML inside spawn_pager(). In any case, thanks for the nice idea! Yours, Ingo
