>>>> "mb" == Martin Buchholz
<martin(a)xemacs.org> writes:
mb> Hmmm. XEmacs would have to VERY smart to do this right. <==
mb> like ignore those two spaces at the beginning of this
mb> non-sentence.
Getting columnation right in all cases is simply not possible.
Without real AI, anyway. Simply take any example, duplicate it, and
insert the semantic equivalent of "Here is what a sample text looks
like properly columnated with proportional fonts:" before one of the
segments and "Here is how terrible a sample text looks with
proportional fonts but without columnation:" before the other. You
simply won't be able to handle all such texts with regexps!
I think 100% is simply unnecessary. Everything that is true of
proportional fonts is true of code colorization, and we should treat
it the same way as we do font-lock. It may be a little harder to
implement for proportional fonts. Eg, it absolutely must involve
arbitrary[1] amounts of backtracking since `mmmm' for most fonts will
be much wider than `iiii', yet there is no guarantee that the former
will occur before the latter in a columnated list, or how far apart
they will be, a non-backtracking implementation is hosed. Nor can you
even use a heuristic like "space is always intermediate in width
between `i' and `m'." But probably font-lock will take you some ways
in creating a framework for a "column-lock" package that can be
flexibly configured to columnate various kinds of text acceptably
well.
Anyway, well-chosen screen shots will surely excite much envy from
those trying to implement "word processors" on top of an Emacs editor.
;-)
Footnotes:
[1] Well, you could restrict the amount of backtracking to a window-
full if you're willing to have columns bouncing back and forth on
every scroll.
--
University of Tsukuba Tennodai 1-1-1 Tsukuba 305-8573 JAPAN
Institute of Policy and Planning Sciences Tel/fax: +81 (298) 53-5091
_________________ _________________ _________________ _________________
What are those straight lines for? "XEmacs rules."