[PATCH] Help Viewer - mouse issues

Grigory Trenin gtrenin at gmail.com
Wed Jan 24 22:21:37 UTC 2007


Grigory Trenin wrote:

> Pavel Tsekov wrote:
>
>> On Tue, 2007-01-09 at 19:08, Grigory Trenin wrote:
>>  
>>
>>> Pavel Tsekov wrote:
>>>   
>>> I am not quite satisfied with that simple solution too.
>>> What do you think if I convert xnc.hlp to mandoc format
>>> and patch man2hlp respectively?
>>> I think it will be sufficient to add to man2hlp support
>>> of these two troff commands:
>>> 1) '.ce' (to center lines)
>>> 2) '.ti' (temporary indent - to support right indention of the
>>>   first line of the paragraph).
>>>   
>>
>>
>> Sound nice. Do you have a patch already ? :)
>>

The patch will be ready soon.
While converting xnc.hlp to mandoc format, I've found
an undocumented feature, that is used only in xnc.hlp:
A link can point not only to the node name, but anywhere
inside the node!
This is done by placing a 'bookmark', surrounded by square
brackets, inside the node.
To look at it, follow a link "WARRANTY", which is located at the
main help screen. That link will bring you to the middle of
"GNU GPL" node. The drawback of such 'bookmark' is that it is visible:
after following a link press <up> arrow, and you will see the
string "[Warranty]".
IMHO, this is not good.
My suggestion is: why don't hide such 'bookmark' by placing it between
CHAR_LINK_POINTER (^B) and CHAR_LINK_END (^C)?
I.e. replace
[Warranty]
with
^B[Warranty]^C
and it will become invisible.
That's all!  There is no need to change the code of the Help Viewer.

I think it is also nice to add to man2hlp ability to generate
such hidden bookmarks (may be with a keyword like .\"BOOKMARK"
or .\"ANCHOR").

What do you think?


>> Btw. after those
>> changes do you think that xnc.hlp will still be necessary ?
>>  
>>
> xnc.hlp contains information that is not included in the manual page
> (help's welcome screen, GNU GPL). If we merge xnc.hlp with mc.1.in,
> that information will be there. This is probably not what desired,
> so we need some means to exclude it from the manual page.
> We could put troff's .ex command in the appropriate place of mc.1.in,
> it will tell troff to stop processing. But it sometimes emits a
> "broken pipe" message.
> Or we could put some magic comment, and at a build time, when
> mc.1 is generated from mc.1.in, rip everything that follows that
> magic comment.


I would also like to know your opinion, whether it is better
to keep xnc.hlp as a separate file after converting it to mandoc
format, or merge its contents with mc.1.in (and rip it out at the
build time, perhaps by placing in mc.1.in the '.ex' command
and adding to doc/Makefile.am a command like this:
sed -i '/^\.ex$/,$d' mc.1
to rip everything from the line containing '.ex' to the end of file).


--
Regards,
  Grigory.




More information about the mc-devel mailing list