I guess a really elegant solution would be that the corresponding div in the html would be grayed out and have a „editing of this part is not possible in Rich-Text“. I imagine it looking like a missing flash-plugin div.
Martin On 29.03.2011, at 19:26, Peter Bowers wrote: > On Tue, Mar 29, 2011 at 3:04 PM, Petko Yotov <[email protected]> wrote: >> It is exactly the opposite: there are just too many possibilities in wiki >> markup that produce HTML that can never be reverted back to its source wiki >> markup. For example dynamic PageLists, WikiTrails, PageVariables, Includes, >> picture galleries... :-) > > Ah, yes, of course... > >> The only way I can think of combinig the strength of the PmWiki markups and >> the ease of use for newcomers is to only RichEdit sections of the page that >> will not contain any wiki markup. But yes, in this case, it would be possible >> to convert the HTML of the section to wiki markup. :-) > > What would happen if you tapped into the list of markup rules and got > rid of (i.e., "HTMLKeep()" them) all markup that wasn't round-trip > formatable. So any formatting that WTF handles (bold, italics, > tables, bullets, etc.) would be removed from the array of rules. The > remaining rules would be processed to remove them from MarkupToHTML() > consideration until the very last step, thus leaving the markup in > place that WTF can't handle. > > This isn't coming out very clearly. Maybe some pseudo-code would help: > > function HTMLKeep($arg) > { > Keep the text in a special name-space > } > > function HTMLUnKeep() > { > Replace all Keep's in that special name-space with your special > <pre>block</pre> syntax or whatever > } > > Before MarkupToHTML() run a function like this: > > function ProtectMarkup($text) > { > global $MarkupRules; // I haven't looked up how this is stored, > bear with the pseudo-code > global $UnprotectedRules; // this will hold a list of any rules > that you *want* to be used prior to WTF editing to make HTML > foreach ($MarkupRules as $rulename->$pat) { > if (!in_array($rulename, $UnprotectedRules)) > $text = preg_replace($pat.'e', > HTMLKeep("<markup_pre>$0</markup_pre>")); > } > return $text; > } > > Then at the very end (when converting the HTML back to markup) as the > final step in HTMLToMarkup() (from ConvertHTML recipe?) you would just > get rid of the <markup_pre>...</markup_pre> leaving only what was in > between. > > The idea is to store pure markup and still allow people to > ?action=edit a page if they know markup. If they don't know markup > then they could ?action=wysiwtf the page and they would see any > non-translatable markup using the same pre-blocks you have now. The > advantage is theoretically "expert" users and "novice" users could > both comfortably edit the same page... > > I've obviously glossed over some of the difficulties in the > pseudo-code, but as a concept does it seem to work? > > -Peter > > _______________________________________________ > pmwiki-users mailing list > [email protected] > http://www.pmichaud.com/mailman/listinfo/pmwiki-users _______________________________________________ pmwiki-users mailing list [email protected] http://www.pmichaud.com/mailman/listinfo/pmwiki-users
