"JRA" == Jay R Ashworth <jra@baylink.com> writes:
JRA> Well, no, but you can swim in the Object Orientation, or you
JRA> can tiptoe through it, and the code I've looked at doesn't
JRA> look to horribly deep to me.
Python's very cool that way. It makes OOP about as simple as it can possibly be. In fact, I think Python would make a wonderful first or OOP teaching language. Jeez, at least much better than C++ or Java.
JRA> Except make_whatever in Utils; how do you get a hard newline
JRA> in that damned routine?
You mean Utils.maketext()? You could set raw=1 which says not to pass the text to wrap(), and then your template would have to be properly wrapped already (if it's a plaintext file), or you'd include <p>'s and <br>'s if it's html.
The rules for wrap() are pretty simple. Paragraphs are always filled unless the line begins with whitespace. Blank lines separate paragraphs. That's it.
But I'll admit that wrap() is a bear of an algorithm, and I fear, too fragile to muck with. Still it does the job. Usable, human-friendly "structured" plaintext is a /hard/ problem, as anybody who's played with Wiki's StructuredText stuff will attest too.
JRA> The template stuff is one of the weak spots in system
JRA> operator documentation... and the templates could us a touch
JRA> of work, too -- no offence to whomever's writing that is...
I completely agree.
-Barry