xbr plugin

xbr plugin by Christopher Smith
replacement renderer, preserves line breaks present in raw wiki data

Last updated on 2008-11-11. Provides Render.
Compatible with DokuWiki 2008-05-05.

Similar to linebreak.

Tagged with !experimental, typography.

    Description

    experimental

    This plugin enables the preservation of line breaks from the raw wiki text through to the html output. It is a replacement for the standard DokuWiki XHTML renderer, as such to use it you must set the renderer_xhtml setting to the plugin's name, 'xbr'. For simplicity's sake the plugin uses all of the standard renderers routines with the exception of plain character output, where it uses its own routine to replace new lines with the HTML element, <br />.

    Note, the plugin does not preserve multiple consecutive line breaks, but it will preserve single line breaks.

    Also see the linebreak plugin.

    Download and Installation

    Plugin source code is also available below, refer to plugins on how to install plugins manually. After installation set the renderer_xhtml configuration setting (via your wiki's admin panel) to 'xbr'.

    Revision History

    • 2008-11-11 — installable packages and darcs versions prepared. No changes.
    • 2008-08-13 — released

    Source

    file: lib/plugins/xbr/renderer.php

    <?php
    /**
     * Render Plugin for XHTML output with preserved linebreaks
     *
     * @author Chris Smith <chris@jalakai.co.uk>
     */
     
    if(!defined('DOKU_INC')) die();
    if(!defined('DOKU_PLUGIN')) define('DOKU_PLUGIN',DOKU_INC.'lib/plugins/');
     
    require_once DOKU_INC . 'inc/parser/xhtml.php';
     
    /**
     * The Renderer
     */
    class renderer_plugin_xbr extends Doku_Renderer_xhtml {
     
        /**
         * return some info
         */
        function getInfo(){
          return array(
            'author' => 'Christopher Smith',
            'email'  => 'chris@jalakai.co.uk',
            'date'   => '2008-11-11',
            'name'   => 'XBR',
            'desc'   => 'XHTML renderer with line break preservation.',
            'url'    => 'http://www.dokuwiki.org/plugin:xbr',
          );
        }
     
        function canRender($format) {
          return ($format=='xhtml');
        }
     
        function reset() {
           $this->doc = '';
           $this->footnotes = array();
           $this->lastsec = 0;
           $this->store = '';
           $this->_counter = array();
        }
     
        function cdata($text) {
            $this->doc .= str_replace("\n",'<br />',$this->_xmlEntities($text));
        }
     
    }
     
    //Setup VIM: ex: et ts=4 enc=utf-8 :

    Bugs

    To Do (feature requests)

    Discussion / Requests for help

     
    plugin/xbr.txt · Last modified: 2009/10/10 23:41 by ach
     
    Except where otherwise noted, content on this wiki is licensed under the following license:CC Attribution-Noncommercial-Share Alike 3.0 Unported
    Imprint Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki
    WikiForumIRCBugsGitXRefTranslate