unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
* Refilling overrides texinfo commands
@ 2003-06-25 13:21 Luc Teirlinck
  2003-06-26  0:58 ` Kim F. Storm
  0 siblings, 1 reply; 15+ messages in thread
From: Luc Teirlinck @ 2003-06-25 13:21 UTC (permalink / raw)
  Cc: karl

There are problems with refilling as currently implemented and it
seems impossible to get around these problems, unless Emacs would
start operating directly on the Texinfo source files rather than on
the info files.  (Or if Emacs would give up on its refilling
attempts.)

The problem is that refilling seems to completely undo the
functionality described in (texinfo)Breaks.

Example:

===File ~/refillbug.texi====================================
\input texinfo    @c -*-texinfo-*-
@comment %**start of header
@setfilename refillbug.info
@settitle Refilling Bug
@comment %**end of header

@node Top
@top Only Node

@xref{makeinfo advantages,,,texinfo}, where is written:@*
@code{makeinfo} is a C program that is independent of Emacs.

@bye
============================================================

Which yields the following Info file:

===File ~/refillbug.info====================================
This is refillbug.info, produced by makeinfo version 4.6 from
/home/teirllm/info/refillbug.texi.

\x1f
File: refillbug.info,  Node: Top,  Up: (dir)

Only Node
*********

*Note makeinfo advantages: (texinfo)makeinfo advantages, where is
written:
`makeinfo' is a C program that is independent of Emacs.


\x1f
Tag Table:
Node: Top\x7f98
\x1f
End Tag Table
============================================================

THe stand-alone Info reader respects the @*, the current Emacs CVS
does not.

Sincerely,

Luc.

^ permalink raw reply	[flat|nested] 15+ messages in thread
* Re: Refilling overrides texinfo commands
@ 2003-06-25 13:33 Karl Berry
  0 siblings, 0 replies; 15+ messages in thread
From: Karl Berry @ 2003-06-25 13:33 UTC (permalink / raw)
  Cc: emacs-devel

    unless Emacs would
    start operating directly on the Texinfo source files 

That isn't a viable alternative, because then the Texinfo language
couldn't change independent of Emacs.  That's more or less the whole
reason that Info format exists.

    (Or if Emacs would give up on its refilling attempts.)

Although I appreciate the desire to refill the info files according to
the window size (I assume that's the point), there isn't enough
information in the Info files to do this, as you say.

If you want to completely rewrite the output, Emacs could (in theory)
use the xml or docbook output.  In practice, I doubt it is ready for
such critical use, nor do I think it's a good idea, all I'm saying is
that that's the extent to which we'd have to go to do it right.

^ permalink raw reply	[flat|nested] 15+ messages in thread
* Re: Refilling overrides texinfo commands
@ 2003-06-26 22:44 Karl Berry
  0 siblings, 0 replies; 15+ messages in thread
From: Karl Berry @ 2003-06-26 22:44 UTC (permalink / raw)
  Cc: emacs-devel

    > 1. Change the standalone info to hide the same text as Emacs info does.

    > 2. Change Makeinfo to recognize when filling that that text will be
    >    hidden.

I suppose, although one of the whole purposes of Info format was to make
as simple to display as possible.  If any info reader now has to
magically know which text to hide, that makes the format that much less
transparent.

Also, this will be the first time regular paragraphs will be treated
differently in Info and in plain text.  I guess that's not exactly a
problem, but it seems somewhat strange.

Finally, and most importantly, isn't the whole hiding feature optional?
In that case, if the user turns off hiding, they will have lines that
are too long.  What then?  They lose because they want to use Info as
originally designed?  Doesn't seem right.  Likewise, old info readers
won't know they're now supposed to hide text, so their display of new
info files will be suboptimal, although still usable.


Thinking more generally, it seems to me that a number of these new Emacs
Info features, including this one, are trying to intuit document
structure/information out of the plain text output, and that way lies
madness.

For example, what if next month someone decides they want to display
code fragments in a monospaced font and regular text in a variable-width
font?  (Heck, for all I know, maybe you already put in other magic
variables to try to do that.)  Or, what if someone resizes their window
to be wider or narrower, wouldn't it be nice if Emacs refilled all the
text to the new window size?  I'm sure we could dream up many other
features along these lines, based on analogous features in web browsers.

These are very reasonable things to want to do, but Info format just was
never designed to support any of this stuff, and grafting it on now
seems wrong to me.  As I said before, parsing the XML or docbook output
from makeinfo seems like a much more viable approach, since those
formats preserve the document structure.  (In theory, anyway, I'm sure
the implementation is not 100% correct at present.)

And, following that path, we might as well abandon the original Info
format entirely, instead of trying to add this or that feature to it.
We could leave Emacs Info and standalone Info basically alone, and
implement fancy new features in some new Emacs module that isn't
hampered by compatibility constraints.


One thing that would help is if the people who are working on these new
features could give a brief summary of where they want Info to go.  Kim,
anyone?  That way, we (I) won't be surprised after the fact when it
turns out makeinfo or standalone info need changes, etc.

Sorry this is so long.

k

^ permalink raw reply	[flat|nested] 15+ messages in thread

end of thread, other threads:[~2003-07-07  3:39 UTC | newest]

Thread overview: 15+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2003-06-25 13:21 Refilling overrides texinfo commands Luc Teirlinck
2003-06-26  0:58 ` Kim F. Storm
2003-06-25 23:58   ` Luc Teirlinck
2003-06-26 20:21   ` Richard Stallman
2003-06-26 23:53     ` Luc Teirlinck
2003-06-27  0:43       ` Luc Teirlinck
2003-06-27 16:23       ` Richard Stallman
2003-07-06 12:14         ` Kim F. Storm
2003-07-06 11:36           ` Robert J. Chassell
2003-07-06 23:50             ` Kim F. Storm
2003-07-07  3:39             ` Richard Stallman
2003-07-07  3:39           ` Richard Stallman
2003-06-27  0:12     ` Kim F. Storm
  -- strict thread matches above, loose matches on Subject: below --
2003-06-25 13:33 Karl Berry
2003-06-26 22:44 Karl Berry

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).