[pmwiki-users] PmWiki DocumentationGuidelines
Patrick R. Michaud
pmichaud at pobox.com
Sat Mar 11 17:34:48 CST 2006
On Sat, Mar 11, 2006 at 03:13:08PM -0700, H. Fox wrote:
> Side question: Is there a way to get monospaced text with normal
> word wrapping?
Short answer 1: @@...@@ is inline text, monospaced, and word wraps. But it doesn't honor line breaks in the markup.
Short answer 2: Not reliably with current browser technology and CSS
CSS 2.1 defines a "white-space: pre-wrap" property, but none of the
major browsers support it yet.
If one is willing to go outside of the CSS standard, Mozilla and
Opera reportedly support "-moz-pre-wrap" and "-o-pre-wrap" values
for the "white-space" property, and IE 5.5 introduced a "word-wrap: pre"
property. I haven't tried any of these.
I suppose that instead of generating a <pre>...</pre> block
we could instead generate <code>...</code> blocks with <br />
tags at the line breaks, but that seems to be the wrong approach.
Another approach that has been tried is to have PmWiki directly
word-wrap any <pre> text at a fixed width (the (:markup:) directive
does this), the downside being that the width of lines has to be
fixed so that it shows line breaks even when more room is available.
I also hear from a number of people who are consistently confused
by the automatically inserted linebreaks in (:markup:), which
makes me reluctant to do it in the more general case of <pre>
> Despite the fact that more than half (more like three quarters) of
> the world seems to be using a 1024x768 or smaller display, PmWiki is
> oriented toward a larger display area.
I disagree; I've always tended to test and design PmWiki for 800x600
screens. Some of the *documentation* may have been written in such
a way that it doesn't display well on 800x600, but AFAICT that's not
PmWiki's (or my) doing.
> I've been doing a lot of template testing lately and it's frustrating
> that the default skin moves the edit form's buttons below the bottom
> of the browser's viewport when the browser window is resized to
We can easily fix the number of rows in the text area so that this
> Even the default skin is affected by this. Size your browser down to
> 800x600 (yes, 20% still use this resolution) and view a page with a
> very wide line in it. Since the content area is a table cell, all of
> the normal text will stretch out to the width of the longest long
> line, rendering some pages very difficult to read in a small browser
I've tried for years to find a solution to this problem -- until
browsers (notably IE) provide us with a nice way to keep long <pre>
lines from messing up the overall page width, or CSS evolves to be
able to better handle alignments of dynamic content, I don't have
a good solution.
> While I'm at it, is there a way (say in skin.php) to limit the width
> of (:markup:) blocks? The default is just a bit too wide. I'd like
> to avoid this effect:
> Note that the (new?) default width is also too wide to fit in the
> viewport of an 800x600 browser window using the default skin.
I increased the width of (:markup:) to 80 chars this past week;
obviously that's too much, so I'll take it back down to 70.
More information about the pmwiki-users