bug-texinfo
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Column widths in <table>


From: Gavin Smith
Subject: Column widths in <table>
Date: Thu, 30 Dec 2021 10:23:04 +0000
User-agent: Mutt/1.9.4 (2018-02-28)

On Mon, Dec 20, 2021 at 07:36:17PM -0600, Jacob Bachmeyer wrote:
> Gavin Smith wrote:
> > [...]
> > 
> > The width specifications seem to be the most appropriate for printed
> > output. Often when specifying a @multitable the user wouldn't care
> > about the column widths. Maybe the browser can do a good job at the
> > layout without them. However, it could matter in some cases. I would
> > say there is no rush to replace this. We should check the effects on
> > various Texinfo documents before making any change.
> > 
> > If the column width specifications are not optional in the Texinfo
> > language (I didn't check, but I suspect they aren't), then making them
> > optional would be a first step. Then we could see how often users
> > actually wanted to specify the widths.
> 
> If I understand correctly, TeX requires table column widths to be specified
> somehow, but HTML does not, so simply ignoring the specified widths and
> letting the HTML renderer handle it may be appropriate here.  I think we
> would have to see what effects removing this has on various manuals.
> 
> Otherwise, the CSS "width" attribute should be sufficient on the first row
> of the table, provided no cells in that row use "colspan" attributes.

I have a lot of Texinfo manuals saved on my hard disk.  I searched them
for @columnfractions and attached is an excerpt from the first one I looked at,
"idlwave.texi" (the IDLWAVE User Manual, version 6.1, from April 2007).

When built with

./texi2any.pl --html --no-split tmp.texi -o widths.html --force

you see that the columns of the second table align with those of
the first.

When adapted to omit the width attributes, the file 'nowidths.html'
results, and you can see the vertical alignment is broken.

Arguably, it doesn't matter in this case as the two tables are
being used for different things (if you read the text, the
first column in the first table is for "categories" and in the
second table it is text in a help buffer).

However, you can imagine that you might have two similarly formatted,
semantically linked tables with intervening text when aligning
the columns of the two tables would be felicitous.

Another thought I had is that the <img> tag still has non-deprecated
height and width attributes.

Attachment: tmp.texi
Description: TeXInfo document

Test

If a definition of this routine exists in several files accessible to IDLWAVE, several ‘Source’ lines will point to the different files. This may indicate that your routine is shadowing a system library routine, which may or may not be what you want (see ‘Load-Path Shadows’). The information about the calling sequence and keywords is derived from the first source listed. Library routines are available only if you have scanned your local IDL directories or are using pre-scanned libraries (see ‘Catalogs’). The source entry consists of a source category, a set of flags and the path to the source file. The following default categories exist:

SystemA system routine of unknown origin. When the system library has been scanned as part of a catalog (see ‘Catalogs’), this category will automatically split into the next two.
BuiltinA builtin system routine with no source code available.
SystemLibA library system routine in the official lib directory !DIR/lib.
ObsoleteA library routine in the official lib directory !DIR/lib/obsolete.
LibraryA routine in a file on IDL’s search path !PATH.
OtherAny other routine with a file not known to be on the search path.
UnresolvedAn otherwise unknown routine the shell lists as unresolved (referenced, but not compiled).

Any routines discovered in library catalogs (see ‘Library Catalogs’), will display the category assigned during creation, e.g., ‘NasaLib’. For routines not discovered in this way, you can create additional categories based on the routine’s filename using the variable idlwave-special-lib-alist.

The flags [LCSB] indicate the source of the information IDLWAVE has regarding the file: from a library catalog ([L---]), from a user catalog ([-C--], from the IDL Shell ([--S-]) or from an Emacs buffer ([---B]). Combinations are possible (a compiled library routine visited in a buffer might read [L-SB]). If a file contains multiple definitions of the same routine, the file name will be prefixed with ‘(Nx)’ where ‘N’ is the number of definitions.

Some of the text in the *Help* routine info buffer will be active (it is highlighted when the mouse moves over it). Typically, clicking with the right mouse button invokes online help lookup, and clicking with the middle mouse button inserts keywords or visits files:

UsageIf online help is installed, a click with the right mouse button on the Usage: line will access the help for the routine (see ‘Online Help’).
KeywordOnline help about keywords is also available with the right mouse button. Clicking on a keyword with the middle mouse button will insert this keyword in the buffer from where idlwave-routine-info was called. Holding down SHIFT while clicking also adds the initial ‘/’.
SourceClicking with the middle mouse button on a ‘Source’ line finds the source file of the routine and visits it in another window. Another click on the same line switches back to the buffer from which C-c ? was called. If you use the right mouse button, the source will not be visited by a buffer, but displayed in the online help window.
ClassesThe Classes line is only included in the routine info window if the current class inherits from other classes. You can click with the middle mouse button to display routine info about the current method in other classes on the inheritance chain, if such a method exists there.

Test

If a definition of this routine exists in several files accessible to IDLWAVE, several ‘Source’ lines will point to the different files. This may indicate that your routine is shadowing a system library routine, which may or may not be what you want (see ‘Load-Path Shadows’). The information about the calling sequence and keywords is derived from the first source listed. Library routines are available only if you have scanned your local IDL directories or are using pre-scanned libraries (see ‘Catalogs’). The source entry consists of a source category, a set of flags and the path to the source file. The following default categories exist:

SystemA system routine of unknown origin. When the system library has been scanned as part of a catalog (see ‘Catalogs’), this category will automatically split into the next two.
BuiltinA builtin system routine with no source code available.
SystemLibA library system routine in the official lib directory !DIR/lib.
ObsoleteA library routine in the official lib directory !DIR/lib/obsolete.
LibraryA routine in a file on IDL’s search path !PATH.
OtherAny other routine with a file not known to be on the search path.
UnresolvedAn otherwise unknown routine the shell lists as unresolved (referenced, but not compiled).

Any routines discovered in library catalogs (see ‘Library Catalogs’), will display the category assigned during creation, e.g., ‘NasaLib’. For routines not discovered in this way, you can create additional categories based on the routine’s filename using the variable idlwave-special-lib-alist.

The flags [LCSB] indicate the source of the information IDLWAVE has regarding the file: from a library catalog ([L---]), from a user catalog ([-C--], from the IDL Shell ([--S-]) or from an Emacs buffer ([---B]). Combinations are possible (a compiled library routine visited in a buffer might read [L-SB]). If a file contains multiple definitions of the same routine, the file name will be prefixed with ‘(Nx)’ where ‘N’ is the number of definitions.

Some of the text in the *Help* routine info buffer will be active (it is highlighted when the mouse moves over it). Typically, clicking with the right mouse button invokes online help lookup, and clicking with the middle mouse button inserts keywords or visits files:

UsageIf online help is installed, a click with the right mouse button on the Usage: line will access the help for the routine (see ‘Online Help’).
KeywordOnline help about keywords is also available with the right mouse button. Clicking on a keyword with the middle mouse button will insert this keyword in the buffer from where idlwave-routine-info was called. Holding down SHIFT while clicking also adds the initial ‘/’.
SourceClicking with the middle mouse button on a ‘Source’ line finds the source file of the routine and visits it in another window. Another click on the same line switches back to the buffer from which C-c ? was called. If you use the right mouse button, the source will not be visited by a buffer, but displayed in the online help window.
ClassesThe Classes line is only included in the routine info window if the current class inherits from other classes. You can click with the middle mouse button to display routine info about the current method in other classes on the inheritance chain, if such a method exists there.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]