Skip to content

Commit

Permalink
Add Sub-/Superscript rules
Browse files Browse the repository at this point in the history
git-svn-id: https://svn.php.net/repository/pear/packages/Text_Wiki/trunk@216387 c90b9560-bf6c-de11-be94-00142212c4b1
  • Loading branch information
Moritz Venn committed Jul 14, 2006
1 parent dac6006 commit 57560c6
Show file tree
Hide file tree
Showing 3 changed files with 136 additions and 2 deletions.
4 changes: 2 additions & 2 deletions Text/Wiki/Mediawiki.php
Expand Up @@ -70,8 +70,8 @@ class Text_Wiki_Mediawiki extends Text_Wiki {
// 'Italic',
// 'Underline',
'Tt',
// 'Superscript',
// 'Subscript',
'Superscript',
'Subscript',
// 'Specialchar',
// 'Revise',
// 'Interwiki', // done by Wikilink but still possible to disable/configure
Expand Down
67 changes: 67 additions & 0 deletions Text/Wiki/Parse/Mediawiki/Subscript.php
@@ -0,0 +1,67 @@
<?php

/**
*
* Parses for subscripted text.
*
* @category Text
* @package Text_Wiki
* @author Paul M. Jones <pmjones@php.net>
* @author Moritz Venn <ritzmo@php.net>
* @license LGPL
* @version $Id$
*/

/**
*
* Parses for subscripted text.
*
* @category Text
* @package Text_Wiki
* @author Paul M. Jones <pmjones@php.net>
* @author Moritz Venn <ritzmo@php.net>
*/

class Text_Wiki_Parse_Subscript extends Text_Wiki_Parse {


/**
*
* The regular expression used to parse the source text and find
* matches conforming to this rule. Used by the parse() method.
*
* @access public
* @var string
* @see parse()
*/

var $regex = "/<sub>(.*)<\/sub>/s";


/**
*
* Generates a replacement for the matched text. Token options are:
*
* 'type' => ['start'|'end'] The starting or ending point of the
* emphasized text. The text itself is left in the source.
*
* @access public
* @param array &$matches The array of matches from parse().
* @return A pair of delimited tokens to be used as a placeholder in
* the source text surrounding the text to be emphasized.
*/

function process(&$matches)
{
$start = $this->wiki->addToken(
$this->rule, array('type' => 'start')
);

$end = $this->wiki->addToken(
$this->rule, array('type' => 'end')
);

return $start . $matches[1] . $end;
}
}
?>
67 changes: 67 additions & 0 deletions Text/Wiki/Parse/Mediawiki/Superscript.php
@@ -0,0 +1,67 @@
<?php

/**
*
* Parses for superscripted text.
*
* @category Text
* @package Text_Wiki
* @author Paul M. Jones <pmjones@php.net>
* @author Moritz Venn <ritzmo@php.net>
* @license LGPL
* @version $Id$
*/

/**
*
* Parses for superscripted text.
*
* @category Text
* @package Text_Wiki
* @author Paul M. Jones <pmjones@php.net>
* @author Moritz Venn <ritzmo@php.net>
*/

class Text_Wiki_Parse_Superscript extends Text_Wiki_Parse {


/**
*
* The regular expression used to parse the source text and find
* matches conforming to this rule. Used by the parse() method.
*
* @access public
* @var string
* @see parse()
*/

var $regex = "/<sup>(.*)<\/sup>/s";


/**
*
* Generates a replacement for the matched text. Token options are:
*
* 'type' => ['start'|'end'] The starting or ending point of the
* emphasized text. The text itself is left in the source.
*
* @access public
* @param array &$matches The array of matches from parse().
* @return A pair of delimited tokens to be used as a placeholder in
* the source text surrounding the text to be emphasized.
*/

function process(&$matches)
{
$start = $this->wiki->addToken(
$this->rule, array('type' => 'start')
);

$end = $this->wiki->addToken(
$this->rule, array('type' => 'end')
);

return $start . $matches[1] . $end;
}
}
?>

0 comments on commit 57560c6

Please sign in to comment.