Tcl Source Code

View Ticket
Login
Ticket UUID: 1034983
Title: man2help: .AS macro not supported
Type: Bug Version: obsolete: 8.5a1
Submitter: wildcard_25 Created on: 2004-09-26 12:34:18
Subsystem: 53. Configuration and Build Tools Assigned To: patthoyts
Priority: 5 Medium Severity:
Status: Open Last Modified: 2012-07-03 15:22:11
Resolution: None Closed By:
    Closed on:
Description:
Tk: v8.5a2
OS: WinXPsp2
Built with makefile.vc using VC7

Currently the .AS macro doesn't actually do anything 
in the conversion process as it relies on the \w 
macro working.

This patch enables .AS support, it requires the \w 
patch to have been applied.

This will affect the layout of current helpfile 
conversions as most .AS macros are currently wrong. A 
patch to the man pages will be forthcoming as soon as 
I get time.
User Comments: dkf added on 2012-07-03 15:22:11:
What's the current status of this with 8.6? (I can't run Windows-specific tools.)

wildcard_25 added on 2004-10-18 14:05:19:

File Deleted - 105399: 



File Added - 105513: helpfile.zip

Logged In: YES 
user_id=596509

update to tcl.makefile.vc.patch
    dependancy on 'shell' causes unnecessary rebuilds of
        documents. Changed to '$(TCLSH)'.

wildcard_25 added on 2004-10-17 13:05:57:

File Deleted - 103553: 

Logged In: YES 
user_id=596509

I was going to break this down into seperate patches 
again, but after the recent discussion seen on tkchat 
about docs, I thought I'd just post the whole patch, 
instead of working through it bit by bit :)

The main aim of the patch is to activate more links (~400 
extra links, not including inter-file jumps) in the 
helpfile for windows, secondary is to make the helpfile 
look a little better.
The 'docs-major.patch' changes some .TH macros that need 
to be tested on *nix (can't find anything to say they 
won't work, but don't have a *nix system to test on).

chkman.tcl
    now works on a file basis rather than line by line
    now generates .AS with 3 args

man2help.patch
    supresses duplicate keywords more effectively.
    links across sections (increases links by ~300).
    adds Alinks so that when Tk helpfile is installed
        links will bring up relavent help page
        (requires ':Link' to be added to .cnt file, this
        is done in the tk.makefile.patch).
    changes browse sequences to not cross section boundary.
    adds \w macro support.
    adds .AS macro support (updated - now accounts for
        variable number of args correctly).
    updated .AP macro - no longer adds extra line after
        section heading.
    Adds .BS & .BE support (doesn't box the section, only
        adds a ruled line at start and end of box. This
        just makes printed output look better more than
        anything).
    Adds .VS & .VE support - adds ruled line at right hand
        edge of page to identify version changes.
    Changes position of bitmap, in non-scrolling region,
        to be inline with text rather than below it.

tcl.makefile.vc.patch
    adds compile log output.
    change title to just Tcl, if Tk is installed this will
        change to Tcl/Tk.
    adds copyright notice- just shows Tcl version of
        helpfile in about dialog.
    removes unnecessary directory changing.
    changes buttons to more 'modern' style.
    adds dependancy to 'shell' for building.

tk.makefile.vc.patch
    adds indexing of keywords when combined with Tcl help.
    adds Alink jumps when combined with Tcl help.
    adds compile log output.
    change title to just Tk, if installed into Tcl this
        will change to Tcl/Tk.
    adds copyright notice- just shows Tk version of
        helpfile in about dialog.
    removes unnecessary directory changing.
    changes buttons to more 'modern' style.
    changes non-scrolling colour to match bitmap
        background colour.
    adds check for tclsh before building.

interp.n.patch
    changes the formatting so that more links are
        activated.

docs-minor.patch
    mostly adds page type to 'see also' section.
    a couple of name corrections to 'SEE ALSO' section
        (this activates a few more links).

docs-major.patch
    this changes some .TH Headers and associated links in
        'SEE ALSO' sections (activates even more links).

nobody added on 2004-10-17 13:02:12:

File Added - 105399: helpfile.zip

wildcard_25 added on 2004-10-07 23:31:45:
Logged In: YES 
user_id=596509

Unfortunately winhelp doesn't support a mixture of fixed 
and variable cell widths in a table. If only variable 
widths are used, then when the window is expanded an 
excessive amount of white space will appear in the first 
couple of columns as they are all adjusted 
proportionately. If fixed width is used then the last cell 
won't expand with the window. So the best way for this 
output (unfortunately) is a hanging paragraph.
I do agree that the current patch is a bit of a kludge 
tho :)
It really should check for the number of arguments and 
adjust accordingly. As it stands, if only one argument is 
passed the second tabstop will be horrendous.

dkf added on 2004-10-07 21:54:22:
Logged In: YES 
user_id=79902

The .AS macro is a kludge. If you can do what I suggested
with a table, you'll come up with something better. :^)

wildcard_25 added on 2004-10-07 21:50:18:
Logged In: YES 
user_id=596509

The way that man2help.tcl currently does this is by 
setting hard coded tabs, although this works in a lot of 
cases, there are quite a few nasty ones that really throw 
out the column alignment. This patch fixes that as long as 
the .AS macro has been set correctly, otherwise the 
results are pretty similar to existing behaviour. The main 
difference being that, if the .AS macro is not declared at 
all the the default tab stops are used not the originally 
hard coded ones.

dkf added on 2004-10-07 15:11:37:
Logged In: YES 
user_id=79902

The .AS macro should start a borderless table with four
columns (and about a space's worth of space between the
columns).
The first three columns should basically be as narrow as
possible without wrapping (the args to .AS are what is
believed to be the widest text for the first two columns,
and the last column is always from a small set of values).
The last column should occupy all remaining space on the
line and will contain a single text paragraph which should
wrap within the column as much as is necessary.

Now you know what is meant to happen, you can make it
actually happen in any way you wish. :^)

davygrvy added on 2004-10-07 05:24:34:
Logged In: YES 
user_id=7549

I'll look these over.

wildcard_25 added on 2004-10-02 17:31:47:

File Added - 103553: chkman.tcl

Logged In: YES 
user_id=596509

Attached script will fix .AS macros in the man pages, as 
well as fix a couple of common mistakes in the .AP macros 
(ie. removes unneeded quotes and parentheses).
The script was written to be extendable, but these are the 
only things implemented so far.

wildcard_25 added on 2004-09-26 19:34:19:

File Added - 102837: AS macro.patch

Attachments: