Ver Fonte

Merge revision 25156 to release-1.12

git-svn-id: http://framework.zend.com/svn/framework/standard/branches/release-1.12@25157 44c647ce-9c0f-0410-b52a-842ac1e357ba
rob há 13 anos atrás
pai
commit
a95e294f90

+ 1 - 131
documentation/manual/de/module_specs/Zend_Markup-Parsers.xml

@@ -5,8 +5,7 @@
     <title>Zend_Markup Parser</title>
 
     <para>
-        <classname>Zend_Markup</classname> wird aktuell mit zwei Parsern ausgeliefert, einen BBCode
-        Parser und einen Textile Parser.
+        <classname>Zend_Markup</classname> wird aktuell mit BBCode Parser.
     </para>
 
     <sect2 id="zend.markup.parsers.theory">
@@ -90,133 +89,4 @@
             Standardmäßig werden alle Tags durch Verwendung des Formats '[/tagname]' geschlossen.
         </para>
     </sect2>
-
-    <sect2 id="zend.markup.parsers.textile">
-        <title>Der Textile Parser</title>
-
-        <para>
-            Der Textile Parser ist ein <classname>Zend_Markup</classname> Parser der Textile in
-            einen Token Baum konvertiert. Weil Textile keine Tag Struktur hat ist nachfolgend eine
-            Liste von Beispiel Tags:
-        </para>
-
-        <table id="zend.markup.parsers.textile.tags">
-            <title>Liste der grundsätzlichen Textile Tags</title>
-
-            <tgroup cols="2" align="left" colsep="1" rowsep="1">
-                <thead>
-                    <row>
-                        <entry>Beispiel Eingabe</entry>
-                        <entry>Beispiel Ausgabe</entry>
-                    </row>
-                </thead>
-
-                <tbody>
-                    <row>
-                        <entry>*foo*</entry>
-                        <entry><![CDATA[<strong>foo</strong>]]></entry>
-                    </row>
-
-                    <row>
-                        <entry>_foo_</entry>
-                        <entry><![CDATA[<em>foo</em>]]></entry>
-                    </row>
-
-                    <row>
-                        <entry>??foo??</entry>
-                        <entry><![CDATA[<cite>foo</cite>]]></entry>
-                    </row>
-
-                    <row>
-                        <entry>-foo-</entry>
-                        <entry><![CDATA[<del>foo</del>]]></entry>
-                    </row>
-
-                    <row>
-                        <entry>+foo+</entry>
-                        <entry><![CDATA[<ins>foo</ins>]]></entry>
-                    </row>
-
-                    <row>
-                        <entry>^foo^</entry>
-                        <entry><![CDATA[<sup>foo</sup>]]></entry>
-                    </row>
-
-                    <row>
-                        <entry>~foo~</entry>
-                        <entry><![CDATA[<sub>foo</sub>]]></entry>
-                    </row>
-
-                    <row>
-                        <entry>%foo%</entry>
-                        <entry><![CDATA[<span>foo</span>]]></entry>
-                    </row>
-
-                    <row>
-                        <entry>PHP(PHP Hypertext Preprocessor)</entry>
-
-                        <entry>
-                            <![CDATA[<acronym title="PHP Hypertext Preprocessor">PHP</acronym>]]>
-                        </entry>
-                    </row>
-
-                    <row>
-                        <entry>"Zend Framework":http://framework.zend.com/</entry>
-
-                        <entry>
-                            <![CDATA[<a href="http://framework.zend.com/">Zend Framework</a>]]>
-                        </entry>
-                    </row>
-
-                    <row>
-                        <entry>h1. foobar</entry>
-                        <entry><![CDATA[<h1>foobar</h1>]]></entry>
-                    </row>
-
-                    <row>
-                        <entry>h6. foobar</entry>
-                        <entry><![CDATA[<h6>foobar</h6>]]></entry>
-                    </row>
-
-                    <row>
-                        <entry>!http://framework.zend.com/images/logo.gif!</entry>
-
-                        <entry>
-                            <![CDATA[<img src="http://framework.zend.com/images/logo.gif" />]]>
-                        </entry>
-                    </row>
-                </tbody>
-            </tgroup>
-        </table>
-
-        <para>
-            Auch der Textile Parser wrappt alle Tags in Paragraphen; ein Paragraph endet mit zwei
-            Leerzeilen, und wenn es mehr Tags gibt, wird ein neuer Paragraph hinzugefügt.
-        </para>
-
-        <sect3 id="zend.markup.parsers.textile.lists">
-            <title>Listen</title>
-
-            <para>
-                Der Textile Parser unterstützt auch zwei Typen von Listen. Den nummerischen Typ
-                der das "#" Zeichen verwendet und Bullet-Listen welche das "*" Zeichen verwenden.
-                Anbei ein Beispiel für beide Listen:
-            </para>
-
-            <programlisting><![CDATA[
-# Element 1
-# Element 2
-
-* Element 1
-* Element 2
-]]></programlisting>
-
-            <para>
-                Das obige erzeugt zwei Listen: Die erste nummeriert; und die zweite mit Punkten.
-                In den Listen Elementen können normale Tags wie dick (*), und hochgestellt (_)
-                verwendet werden. Tags die auf einer neuen Zeile beginnen müssen (wie 'h1' usw.)
-                können nicht innerhalb von Listen verwendet werden.
-            </para>
-        </sect3>
-    </sect2>
 </sect1>

+ 1 - 1
documentation/manual/de/module_specs/Zend_Markup-Renderers.xml

@@ -46,7 +46,7 @@ echo $bbcode->render('my [foo]markup[/foo]');
         <para>
             Es gilt zu beachten das die Erstellung eigener Markups nur dann Sinn macht wenn der
             eigene Parser diese auch in einer Markup Struktur unterstützt. Aktuell unterstützt dies
-            nur BBCode. Textile hat keine Unterstützung für eigene Markups.
+            nur BBCode.
         </para>
 
         <para>

+ 2 - 2
documentation/manual/de/module_specs/Zend_Markup.xml

@@ -6,8 +6,8 @@
 
     <para>
         Die Komponente <classname>Zend_Markup</classname> bietet einen erweiterbaren Weg für das
-        Parsen von Text und die Darstellung von leichtgewichtigen Markup Sprachen wie BBcode und
-        Textile. Sie ist ab Zend Framework Version 1.10 vorhanden.
+        Parsen von Text und die Darstellung von leichtgewichtigen Markup Sprachen wie BBcode.
+        Sie ist ab Zend Framework Version 1.10 vorhanden.
     </para>
 
     <para>

+ 1 - 129
documentation/manual/en/module_specs/Zend_Markup-Parsers.xml

@@ -4,8 +4,7 @@
     <title>Zend_Markup Parsers</title>
 
     <para>
-        <classname>Zend_Markup</classname> is currently shipped with two parsers, a BBCode parser
-        and a Textile parser.
+        <classname>Zend_Markup</classname> is currently shipped with one parser, a BBCode parser.
     </para>
 
     <sect2 id="zend.markup.parsers.theory">
@@ -90,131 +89,4 @@
             By default, all tags are closed by using the format '[/tagname]'.
         </para>
     </sect2>
-
-    <sect2 id="zend.markup.parsers.textile">
-        <title>The Textile parser</title>
-
-        <para>
-            The Textile parser is a <classname>Zend_Markup</classname> parser that converts Textile
-            to a token tree. Because Textile doesn't have a tag structure, the following is a list
-            of example tags:
-        </para>
-
-        <table id="zend.markup.parsers.textile.tags">
-            <title>List of basic Textile tags</title>
-
-            <tgroup cols="2" align="left" colsep="1" rowsep="1">
-                <thead>
-                    <row>
-                        <entry>Sample input</entry>
-                        <entry>Sample output</entry>
-                    </row>
-                </thead>
-
-                <tbody>
-                    <row>
-                        <entry>*foo*</entry>
-                        <entry><![CDATA[<strong>foo</strong>]]></entry>
-                    </row>
-
-                    <row>
-                        <entry>_foo_</entry>
-                        <entry><![CDATA[<em>foo</em>]]></entry>
-                    </row>
-
-                    <row>
-                        <entry>??foo??</entry>
-                        <entry><![CDATA[<cite>foo</cite>]]></entry>
-                    </row>
-
-                    <row>
-                        <entry>-foo-</entry>
-                        <entry><![CDATA[<del>foo</del>]]></entry>
-                    </row>
-
-                    <row>
-                        <entry>+foo+</entry>
-                        <entry><![CDATA[<ins>foo</ins>]]></entry>
-                    </row>
-
-                    <row>
-                        <entry>^foo^</entry>
-                        <entry><![CDATA[<sup>foo</sup>]]></entry>
-                    </row>
-
-                    <row>
-                        <entry>~foo~</entry>
-                        <entry><![CDATA[<sub>foo</sub>]]></entry>
-                    </row>
-
-                    <row>
-                        <entry>%foo%</entry>
-                        <entry><![CDATA[<span>foo</span>]]></entry>
-                    </row>
-
-                    <row>
-                        <entry>PHP(PHP Hypertext Preprocessor)</entry>
-
-                        <entry>
-                            <![CDATA[<acronym title="PHP Hypertext Preprocessor">PHP</acronym>]]>
-                        </entry>
-                    </row>
-
-                    <row>
-                        <entry>"Zend Framework":http://framework.zend.com/</entry>
-
-                        <entry>
-                            <![CDATA[<a href="http://framework.zend.com/">Zend Framework</a>]]>
-                        </entry>
-                    </row>
-
-                    <row>
-                        <entry>h1. foobar</entry>
-                        <entry><![CDATA[<h1>foobar</h1>]]></entry>
-                    </row>
-
-                    <row>
-                        <entry>h6. foobar</entry>
-                        <entry><![CDATA[<h6>foobar</h6>]]></entry>
-                    </row>
-
-                    <row>
-                        <entry>!http://framework.zend.com/images/logo.gif!</entry>
-
-                        <entry>
-                            <![CDATA[<img src="http://framework.zend.com/images/logo.gif" />]]>
-                        </entry>
-                    </row>
-                </tbody>
-            </tgroup>
-        </table>
-
-        <para>
-            Also, the Textile parser wraps all tags into paragraphs; a paragraph ends with two
-            newlines, and if there are more tags, a new paragraph will be added.
-        </para>
-
-        <sect3 id="zend.markup.parsers.textile.lists">
-            <title>Lists</title>
-
-            <para>
-                The Textile parser also supports two types of lists. The numeric type, using the "#"
-                character and bullit-lists using the "*" character. An example of both lists:
-            </para>
-
-            <programlisting language="text"><![CDATA[
-# Item 1
-# Item 2
-
-* Item 1
-* Item 2
-]]></programlisting>
-
-            <para>
-                The above will generate two lists: the first, numbered; and the second, bulleted.
-                Inside list items, you can use normal tags like strong (*), and emphasized (_). Tags
-                that need to start on a new line (like 'h1' etc.) cannot be used inside lists.
-            </para>
-        </sect3>
-    </sect2>
 </sect1>

+ 1 - 2
documentation/manual/en/module_specs/Zend_Markup-Renderers.xml

@@ -44,8 +44,7 @@ echo $bbcode->render('my [foo]markup[/foo]');
 
         <para>
             Please note that creating your own markups only makes sense when your parser also
-            supports it with a markup structure. Currently, only BBCode supports this. Textile
-            doesn't have support for custom markups.
+            supports it with a markup structure. Currently, only BBCode supports this.
         </para>
 
         <para>

+ 1 - 1
documentation/manual/en/module_specs/Zend_Markup.xml

@@ -6,7 +6,7 @@
     <para>
         The <classname>Zend_Markup</classname> component provides an extensible
         way for parsing text and rendering lightweight markup languages like
-        BBcode and Textile. It is available as of Zend Framework version 1.10.
+        BBcode. It is available as of Zend Framework version 1.10.
     </para>
 
     <para>

+ 1 - 1
documentation/manual/es/module_specs/Zend_Markup.xml

@@ -6,7 +6,7 @@
     <para>
         The <classname>Zend_Markup</classname> component provides an extensible
         way for parsing text and rendering lightweight markup languages like
-        BBcode and Textile. It is available as of Zend Framework version 1.10.
+        BBcode. It is available as of Zend Framework version 1.10.
     </para>
 
     <para>

+ 1 - 136
documentation/manual/fr/module_specs/Zend_Markup-Parsers.xml

@@ -5,8 +5,7 @@
     <title>Analyseurs Zend_Markup (parsers)</title>
 
     <para>
-        <classname>Zend_Markup</classname> est fourni avec deux analyseurs, BBCode et
-        Textile.
+        <classname>Zend_Markup</classname> est fourni avec un analyseur, BBCode.
     </para>
 
     <sect2 id="zend.markup.parsers.theory">
@@ -90,138 +89,4 @@
             Par défaut, tous les tags sont fermés avec la syntaxe '[/tagname]'.
         </para>
     </sect2>
-
-    <sect2 id="zend.markup.parsers.textile">
-        <title>L'analyseur Textile</title>
-
-        <para>
-            L'analyseur Textile de <classname>Zend_Markup</classname> convertit du texte au format Textile
-            en un arbre à tokens. Textile n'ayant pas de structure à base de tags, la liste suivante est un
-            exemple de tags:
-        </para>
-
-        <table id="zend.markup.parsers.textile.tags">
-            <title>Liste de tags Textile basiques</title>
-
-            <tgroup cols="2" align="left" colsep="1" rowsep="1">
-                <thead>
-                    <row>
-                        <entry>Entrée</entry>
-
-                        <entry>Sortie</entry>
-                    </row>
-                </thead>
-
-                <tbody>
-                    <row>
-                        <entry>*foo*</entry>
-
-                        <entry><![CDATA[<strong>foo</strong>]]></entry>
-                    </row>
-
-                    <row>
-                        <entry>_foo_</entry>
-
-                        <entry><![CDATA[<em>foo</em>]]></entry>
-                    </row>
-
-                    <row>
-                        <entry>??foo??</entry>
-
-                        <entry><![CDATA[<cite>foo</cite>]]></entry>
-                    </row>
-
-                    <row>
-                        <entry>-foo-</entry>
-
-                        <entry><![CDATA[<del>foo</del>]]></entry>
-                    </row>
-
-                    <row>
-                        <entry>+foo+</entry>
-
-                        <entry><![CDATA[<ins>foo</ins>]]></entry>
-                    </row>
-
-                    <row>
-                        <entry>^foo^</entry>
-
-                        <entry><![CDATA[<sup>foo</sup>]]></entry>
-                    </row>
-
-                    <row>
-                        <entry>~foo~</entry>
-
-                        <entry><![CDATA[<sub>foo</sub>]]></entry>
-                    </row>
-
-                    <row>
-                        <entry>%foo%</entry>
-
-                        <entry><![CDATA[<span>foo</span>]]></entry>
-                    </row>
-
-                    <row>
-                        <entry>PHP(PHP Hypertext Preprocessor)</entry>
-
-                        <entry><![CDATA[<acronym title="PHP Hypertext Preprocessor">PHP</acronym>]]></entry>
-                    </row>
-
-                    <row>
-                        <entry>"Zend Framework":http://framework.zend.com/</entry>
-
-                        <entry><![CDATA[<a href="http://framework.zend.com/">Zend Framework</a>]]></entry>
-                    </row>
-
-                    <row>
-                        <entry>h1. foobar</entry>
-
-                        <entry><![CDATA[<h1>foobar</h1>]]></entry>
-                    </row>
-
-                    <row>
-                        <entry>h6. foobar</entry>
-
-                        <entry><![CDATA[<h6>foobar</h6>]]></entry>
-                    </row>
-
-                    <row>
-                        <entry>!http://framework.zend.com/images/logo.gif!</entry>
-
-                        <entry><![CDATA[<img src="http://framework.zend.com/images/logo.gif" />]]></entry>
-                    </row>
-                </tbody>
-            </tgroup>
-        </table>
-
-        <para>
-            L'analyseur Textile encapsule tous les tags dans des paragraphes; un paragraphe se termine par
-            deux nouvelles lignes, et s'il y a des tags supplémentaires, un nouveau paragraphe sera ajouté.
-        </para>
-
-        <sect3 id="zend.markup.parsers.textile.lists">
-            <title>Listes</title>
-
-            <para>
-                L'analyseur Textile supporte aussi deux types de listes. Le type numérique, utilisant
-                le caractère "#" et le type anonyme qui utilise lui l'étoile "*".
-                Exemple des deux listes:
-            </para>
-
-            <programlisting><![CDATA[
-# Item 1
-# Item 2
-
-* Item 1
-* Item 2
-]]></programlisting>
-
-            <para>
-                Le code ci-dessus génèrera deux listes, la première, numérique; et la seconde, anonyme.
-                Dans les éléments des listes, vous pouvez utiliser des tags classiques comme le gras
-                (*), et l'emphase(italique) (_). Les tags ayant besoin de créer une nouvelle ligne
-                (comme 'h1' etc.) ne peuvent être utilisés au sein des listes.
-            </para>
-        </sect3>
-    </sect2>
 </sect1>

+ 1 - 2
documentation/manual/fr/module_specs/Zend_Markup-Renderers.xml

@@ -46,8 +46,7 @@ echo $bbcode->render('my [foo]markup[/foo]');
 
         <para>
             Notez que créer vos propres markups n'est utile que si l'analyseur syntaxique en tient
-            compte. Actuellement, seul BBCode supporte cela. Textile ne supporte pas les markups
-            personnalisés.
+            compte. Actuellement, seul BBCode supporte cela.
         </para>
 
         <para>

+ 1 - 1
documentation/manual/fr/module_specs/Zend_Markup.xml

@@ -7,7 +7,7 @@
     <para>
         Le composant <classname>Zend_Markup</classname> offre des possibilités
         extensibles d'anakyse de texte et de rendu concernant les langages à balises
-        comme BBcode et Textile. Il est disponible depuis Zend Framework version 1.10.
+        comme BBcode. Il est disponible depuis Zend Framework version 1.10.
     </para>
 
     <para>

+ 1 - 1
documentation/manual/it/module_specs/Zend_Markup.xml

@@ -6,7 +6,7 @@
     <para>
         Il componente <classname>Zend_Markup</classname> fornisce un modo estendibile
         per parsare il testo e renderizzare i markup dei linguaggi come
-        BBcode e Textile. E' disponibile dalla versione del FrameworkZend 1.10.
+        BBcode. E' disponibile dalla versione del FrameworkZend 1.10.
     </para>
 
     <para>

+ 1 - 140
documentation/manual/ja/module_specs/Zend_Markup-Parsers.xml

@@ -90,143 +90,4 @@
             標準で、 '[/tagname]' フォーマットを用いて閉じられます.
         </para>
     </sect2>
-
-    <sect2 id="zend.markup.parsers.textile">
-        <title>Textile パーサー</title>
-
-        <para>
-            Textile パーサーは、Textile からトークン木へと変換する <classname>Zend_Markup</classname>
-            パーサーです。 Textile はタグ構造を持っていないため、
-            以下は見本例のタグのリストです:
-        </para>
-
-        <table id="zend.markup.parsers.textile.tags">
-            <title>基本的な Textile タグのリスト</title>
-
-            <tgroup cols="2" align="left" colsep="1" rowsep="1">
-                <thead>
-                    <row>
-                        <entry>入力例</entry>
-
-                        <entry>出力例</entry>
-                    </row>
-                </thead>
-
-                <tbody>
-                    <row>
-                        <entry>*foo*</entry>
-
-                        <entry><![CDATA[<strong>foo</strong>]]></entry>
-                    </row>
-
-                    <row>
-                        <entry>_foo_</entry>
-
-                        <entry><![CDATA[<em>foo</em>]]></entry>
-                    </row>
-
-                    <row>
-                        <entry>??foo??</entry>
-
-                        <entry><![CDATA[<cite>foo</cite>]]></entry>
-                    </row>
-
-                    <row>
-                        <entry>-foo-</entry>
-
-                        <entry><![CDATA[<del>foo</del>]]></entry>
-                    </row>
-
-                    <row>
-                        <entry>+foo+</entry>
-
-                        <entry><![CDATA[<ins>foo</ins>]]></entry>
-                    </row>
-
-                    <row>
-                        <entry>^foo^</entry>
-
-                        <entry><![CDATA[<sup>foo</sup>]]></entry>
-                    </row>
-
-                    <row>
-                        <entry>~foo~</entry>
-
-                        <entry><![CDATA[<sub>foo</sub>]]></entry>
-                    </row>
-
-                    <row>
-                        <entry>%foo%</entry>
-
-                        <entry><![CDATA[<span>foo</span>]]></entry>
-                    </row>
-
-                    <row>
-                        <entry>PHP(PHP Hypertext Preprocessor)</entry>
-
-                        <entry>
-                            <![CDATA[<acronym title="PHP Hypertext Preprocessor">PHP</acronym>]]>
-                        </entry>
-                    </row>
-
-                    <row>
-                        <entry>"Zend Framework":http://framework.zend.com/</entry>
-
-                        <entry>
-                            <![CDATA[<a href="http://framework.zend.com/">Zend Framework</a>]]>
-                        </entry>
-                    </row>
-
-                    <row>
-                        <entry>h1. foobar</entry>
-
-                        <entry><![CDATA[<h1>foobar</h1>]]></entry>
-                    </row>
-
-                    <row>
-                        <entry>h6. foobar</entry>
-
-                        <entry><![CDATA[<h6>foobar</h6>]]></entry>
-                    </row>
-
-                    <row>
-                        <entry>!http://framework.zend.com/images/logo.gif!</entry>
-
-                        <entry>
-                            <![CDATA[<img src="http://framework.zend.com/images/logo.gif" />]]>
-                        </entry>
-                    </row>
-                </tbody>
-            </tgroup>
-        </table>
-
-        <para>
-            さらに、 Textile パーサーは全てのタグを段落へとラップします;
-            段落は2行の新しい行で終わり、よりタグがあった場合、新しい段落が加えられます。
-        </para>
-
-        <sect3 id="zend.markup.parsers.textile.lists">
-            <title>リスト</title>
-
-            <para>
-                Textile パーサーは2種類のリストをサポートします。"#"記号を用いた数値型と
-                "*"記号を用いた <!-- TODO : to be translated -->bullit リストです。両方のリストの例:
-            </para>
-
-            <programlisting language="text"><![CDATA[
-# Item 1
-# Item 2
-
-* Item 1
-* Item 2
-]]></programlisting>
-
-            <para>
-                上記は2つのリストを生成します: 一つは、数値型; 2つ目は、 <!-- TODO : to be translated -->bulleted 。
-                リスト内で、太 (*)、と 強調 (_)のように標準タグを用いることができます。タグは、
-                ('h1'などのように)新しい行にて始まっている必要があり、リスト内で用いることは
-                できません。
-            </para>
-        </sect3>
-    </sect2>
-</sect1>
+</sect1>

+ 1 - 1
documentation/manual/ru/module_specs/Zend_Markup.xml

@@ -6,7 +6,7 @@
 
     <para>
         Компонент <classname>Zend_Markup</classname> предоставляет широкие возможности для парсинга
-        текста и рендеринга простых языков разметки, таких как BBcode или Textile.
+        текста и рендеринга простых языков разметки, таких как BBcode.
         Компонент доступен в Zend Framework начиная с версии 1.10.
     </para>
 

+ 0 - 570
library/Zend/Markup/Parser/Textile.php

@@ -1,570 +0,0 @@
-<?php
-/**
- * Zend Framework
- *
- * LICENSE
- *
- * This source file is subject to the new BSD license that is bundled
- * with this package in the file LICENSE.txt.
- * It is also available through the world-wide-web at this URL:
- * http://framework.zend.com/license/new-bsd
- * If you did not receive a copy of the license and are unable to
- * obtain it through the world-wide-web, please send an email
- * to license@zend.com so we can send you a copy immediately.
- *
- * @category   Zend
- * @package    Zend_Markup
- * @subpackage Parser
- * @copyright  Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com)
- * @license    http://framework.zend.com/license/new-bsd     New BSD License
- * @version    $Id$
- */
-
-/**
- * @see Zend_Markup_TokenList
- */
-require_once 'Zend/Markup/TokenList.php';
-
-/**
- * @see Zend_Markup_Parser_ParserInterface
- */
-require_once 'Zend/Markup/Parser/ParserInterface.php';
-
-/**
- * @category   Zend
- * @package    Zend_Markup
- * @subpackage Parser
- * @copyright  Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com)
- * @license    http://framework.zend.com/license/new-bsd     New BSD License
- */
-class Zend_Markup_Parser_Textile implements Zend_Markup_Parser_ParserInterface
-{
-
-    const STATE_SCAN          = 0;
-    const STATE_NEW_PARAGRAPH = 1;
-    const STATE_NEWLINE       = 2;
-
-    const MATCH_ATTR_CLASSID = '\((?<attr_class>[a-zA-Z0-9_]+)?(?:\#(?<attr_id>[a-zA-Z0-9_]+))?\)';
-    const MATCH_ATTR_STYLE   = "\{(?<attr_style>[^\}\n]+)\}";
-    const MATCH_ATTR_LANG    = '\[(?<attr_lang>[a-zA-Z_]+)\]';
-    const MATCH_ATTR_ALIGN   = '(?<attr_align>\<\>?|\>|=)';
-
-
-
-    /**
-     * Token tree
-     *
-     * @var Zend_Markup_TokenList
-     */
-    protected $_tree;
-
-    /**
-     * Current token
-     *
-     * @var Zend_Markup_Token
-     */
-    protected $_current;
-
-    /**
-     * Source to tokenize
-     *
-     * @var string
-     */
-    protected $_value = '';
-
-    /**
-     * Length of the value
-     *
-     * @var int
-     */
-    protected $_valueLen = 0;
-
-    /**
-     * Current pointer
-     *
-     * @var int
-     */
-    protected $_pointer = 0;
-
-    /**
-     * The buffer
-     *
-     * @var string
-     */
-    protected $_buffer = '';
-
-    /**
-     * Simple tag translation
-     *
-     * @var array
-     */
-    protected $_simpleTags = array(
-        '*'  => 'strong',
-        '**' => 'bold',
-        '_'  => 'emphasized',
-        '__' => 'italic',
-        '??' => 'citation',
-        '-'  => 'deleted',
-        '+'  => 'insert',
-        '^'  => 'superscript',
-        '~'  => 'subscript',
-        '%'  => 'span',
-        // these are a little more complicated
-        '@'  => 'code',
-        '!'  => 'img',
-    );
-
-    /**
-     * Token array
-     *
-     * @var array
-     */
-    protected $_tokens = array();
-
-
-    /**
-     * Prepare the parsing of a Textile string, the real parsing is done in {@link _parse()}
-     *
-     * @param string $value
-     *
-     * @return array
-     */
-    public function parse($value)
-    {
-        if (!is_string($value)) {
-            /**
-             * @see Zend_Markup_Parser_Exception
-             */
-            require_once 'Zend/Markup/Parser/Exception.php';
-            throw new Zend_Markup_Parser_Exception('Value to parse should be a string.');
-        }
-        if (empty($value)) {
-            /**
-             * @see Zend_Markup_Parser_Exception
-             */
-            require_once 'Zend/Markup/Parser/Exception.php';
-            throw new Zend_Markup_Parser_Exception('Value to parse cannot be left empty.');
-        }
-
-        // first make we only have LF newlines, also trim the value
-        $this->_value = str_replace(array("\r\n", "\r"), "\n", $value);
-        $this->_value = trim($this->_value);
-
-        // initialize variables and tokenize
-        $this->_valueLen = iconv_strlen($this->_value, 'UTF-8');
-        $this->_pointer  = 0;
-        $this->_buffer   = '';
-        $this->_temp     = array();
-        $this->_tokens   = array();
-
-        $this->_tokenize();
-
-        // create the tree
-        $this->_tree     = new Zend_Markup_TokenList();
-
-        $this->_current  = new Zend_Markup_Token('', Zend_Markup_Token::TYPE_NONE, 'Zend_Markup_Root');
-        $this->_tree->addChild($this->_current);
-
-        $this->_createTree();
-
-        return $this->_tree;
-    }
-
-    /**
-     * Tokenize a textile string
-     *
-     * @return array
-     */
-    protected function _tokenize()
-    {
-        $state    = self::STATE_NEW_PARAGRAPH;
-
-        $attrsMatch = implode('|', array(
-            self::MATCH_ATTR_CLASSID,
-            self::MATCH_ATTR_STYLE,
-            self::MATCH_ATTR_LANG,
-            self::MATCH_ATTR_ALIGN
-        ));
-
-        $paragraph = '';
-
-        while ($this->_pointer < $this->_valueLen) {
-            switch ($state) {
-                case self::STATE_SCAN:
-                    $matches = array(); //[^\n*_?+~%@!-]
-                    $acronym = '(?<acronym>[A-Z]{2,})\((?<title>[^\)]+)\)';
-                    $regex   = '#\G(?<text>.*?)(?:'
-                             . "(?:(?<nl_paragraph>\n{2,})|(?<nl_break>\n))|"
-                             . '(?<tag>'
-                             . "(?<name>\*{1,2}|_{1,2}|\?{2}|\-|\+|\~|\^|%|@|!|$|{$acronym}"
-                             . '|":(?<url>[^\s]+)|")'
-                             . "(?:{$attrsMatch})*)"
-                             . ')#si';
-                    preg_match($regex, $this->_value, $matches, null, $this->_pointer);
-
-                    $this->_pointer += strlen($matches[0]);
-
-                    if (!empty($matches['text'])) {
-                        $this->_buffer .= $matches['text'];
-                    }
-
-                    // first add the buffer
-                    if (!empty($this->_buffer)) {
-                        $this->_tokens[] = array(
-                            'tag'  => $this->_buffer,
-                            'type' => Zend_Markup_Token::TYPE_NONE
-                        );
-                        $this->_buffer = '';
-                    }
-
-                    if (!empty($matches['nl_paragraph'])) {
-                        $this->_temp = array(
-                            'tag'        => $matches['nl_paragraph'],
-                            'name'       => 'p',
-                            'type'       => Zend_Markup_Token::TYPE_TAG,
-                            'attributes' => array()
-                        );
-
-                        $state = self::STATE_NEW_PARAGRAPH;
-                    } elseif (!empty($matches['nl_break'])) {
-                        $this->_tokens[] = array(
-                            'tag'        => $matches['nl_break'],
-                            'name'       => 'break',
-                            'type'       => Zend_Markup_Token::TYPE_TAG,
-                            'attributes' => array()
-                        );
-
-                        $state   = self::STATE_NEWLINE;
-                    } elseif (!empty($matches['tag'])) {
-                        if (isset($this->_simpleTags[$matches['name']])) {
-                            // now add the new token
-                            $this->_tokens[] = array(
-                                'tag'        => $matches['tag'],
-                                'type'       => Zend_Markup_Token::TYPE_TAG,
-                                'name'       => $this->_simpleTags[$matches['name']],
-                                'attributes' => $this->_extractAttributes($matches)
-                            );
-                        } else {
-                            $attributes = $this->_extractAttributes($matches);
-                            if ($matches['tag'][0] == '"') {
-                                $name = 'url';
-                                if (isset($matches['url'])) {
-                                    $attributes['url'] = $matches['url'];
-                                }
-                                $this->_tokens[] = array(
-                                    'tag'        => $matches['tag'],
-                                    'type'       => Zend_Markup_Token::TYPE_TAG,
-                                    'name'       => $name,
-                                    'attributes' => $attributes
-                                );
-                            } else {
-                                $name = 'acronym';
-                                $this->_tokens[] = array(
-                                    'tag'        => '',
-                                    'type'       => Zend_Markup_Token::TYPE_TAG,
-                                    'name'       => 'acronym',
-                                    'attributes' => array(
-                                        'title' => $matches['title']
-                                    )
-                                );
-                                $this->_tokens[] = array(
-                                    'tag'  => $matches['acronym'],
-                                    'type' => Zend_Markup_Token::TYPE_NONE
-                                );
-                                $this->_tokens[] = array(
-                                    'tag'        => '(' . $matches['title'] . ')',
-                                    'type'       => Zend_Markup_Token::TYPE_TAG,
-                                    'name'       => 'acronym',
-                                    'attributes' => array()
-                                );
-                            }
-                        }
-                        $state = self::STATE_SCAN;
-                    }
-
-                    break;
-                case self::STATE_NEW_PARAGRAPH:
-                    if (empty($this->_temp)) {
-                        $this->_temp = array(
-                            'tag'        => '',
-                            'name'       => 'p',
-                            'type'       => Zend_Markup_Token::TYPE_TAG,
-                            'attributes' => array()
-                        );
-                    } else {
-                        $this->_tokens[] = array(
-                            'tag'        => "\n",
-                            'name'       => 'p',
-                            'type'       => Zend_Markup_Token::TYPE_TAG,
-                            'attributes' => array()
-                        );
-                        $this->_temp['tag'] = substr($this->_temp['tag'], 1);
-                    }
-
-                    $matches = array(); //[^\n*_?+~%@!-] (\()? [^()]+ (?(1)\))
-                    $regex   = "#\G(?<name>(h[1-6]|p)|(?:\#|\*))(?:{$attrsMatch})*(?(2)\.\s|\s)#i";
-                    if (!preg_match($regex, $this->_value, $matches, null, $this->_pointer)) {
-                        $this->_tokens[] = $this->_temp;
-                        $state    = self::STATE_SCAN;
-                        break;
-                    }
-
-                    $this->_pointer += strlen($matches[0]);
-
-                    if ($matches['name'] == 'p') {
-                        $this->_temp['tag']       .= $matches[0];
-                        $this->_temp['attributes'] = $this->_extractAttributes($matches);
-
-                        $this->_tokens[]    = $this->_temp;
-                        $this->_temp = array();
-                    } else {
-                        $this->_tokens[] = $this->_temp;
-                        $this->_temp = array();
-
-                        $name       = $matches['name'];
-                        $attributes = $this->_extractAttributes($matches);
-
-                        if ($name == '#') {
-                            $name               = 'list';
-                            $attributes['list'] = 'decimal';
-                        } elseif ($name == '*') {
-                            $name = 'list';
-                        }
-
-                        $this->_tokens[] = array(
-                            'tag'        => $matches[0],
-                            'name'       => $name,
-                            'type'       => Zend_Markup_Token::TYPE_TAG,
-                            'attributes' => $attributes
-                        );
-                    }
-
-                    $state = self::STATE_SCAN;
-                    break;
-                case self::STATE_NEWLINE:
-                    $matches = array(); //[^\n*_?+~%@!-]
-                    $regex   = "#\G(?<name>(h[1-6])|(?:\#|\*))(?:{$attrsMatch})*(?(2)\.\s|\s)#si";
-                    if (!preg_match($regex, $this->_value, $matches, null, $this->_pointer)) {
-                        $state = self::STATE_SCAN;
-                        break;
-                    }
-
-                    $this->_pointer += strlen($matches[0]);
-
-                    $name       = $matches['name'];
-                    $attributes = $this->_extractAttributes($matches);
-
-                    if ($name == '#') {
-                        $name               = 'list';
-                        $attributes['list'] = 'decimal';
-                    } elseif ($name == '*') {
-                        $name = 'list';
-                    }
-
-                    $this->_tokens[] = array(
-                        'tag'        => $matches[0],
-                        'name'       => $name,
-                        'type'       => Zend_Markup_Token::TYPE_TAG,
-                        'attributes' => $attributes
-                    );
-                    break;
-            }
-        }
-    }
-
-    /**
-     * Create a tree from the tokenized text
-     *
-     * @return void
-     */
-    protected function _createTree()
-    {
-        $inside = true;
-
-        foreach ($this->_tokens as $key => $token) {
-            // first check if the token is a stopper
-            if ($this->_isStopper($token, $this->_current)) {
-                if ($this->_current->getName() == 'li') {
-                    // list items are handled differently
-                    if (isset($this->_tokens[$key + 1])
-                        && ($this->_tokens[$key + 1]['type'] == Zend_Markup_Token::TYPE_TAG)
-                        && ($this->_tokens[$key + 1]['name'] == 'list')
-                    ) {
-                        // the next item is a correct tag
-                        $this->_current->setStopper($token['tag']);
-
-                        $this->_current = $this->_current->getParent();
-                    } else {
-                        // close the list
-                        $this->_current->setStopper($token['tag']);
-
-                        $this->_current = $this->_current->getParent()->getParent();
-
-                        // go up in the tree until we found the end
-                        while ($this->_isStopper($token, $this->_current)) {
-                            $this->_current->setStopper($token['tag']);
-
-                            $this->_current = $this->_current->getParent();
-                        }
-                    }
-                } else {
-                    // go up in the tree until we found the end of stoppers
-                    while ($this->_isStopper($token, $this->_current)) {
-                        $this->_current->setStopper($token['tag']);
-
-                        if (!empty($token['attributes'])) {
-                            foreach ($token['attributes'] as $name => $value) {
-                                $this->_current->addAttribute($name, $value);
-                            }
-                        }
-
-                        $this->_current = $this->_current->getParent();
-                    }
-                }
-                $inside = true;
-            } elseif (($token['type'] == Zend_Markup_Token::TYPE_TAG) && $inside) {
-                if ($token['name'] == 'break') {
-                    // add the newline and continue parsing
-                    $this->_current->addChild(new Zend_Markup_Token(
-                        $token['tag'],
-                        Zend_Markup_Token::TYPE_NONE,
-                        '',
-                        array(),
-                        $this->_current
-                    ));
-                } else {
-                    // handle a list item
-                    if ($token['name'] == 'list') {
-                        $attributes = array();
-                        if (isset($token['attributes']['list'])) {
-                            $attributes['list'] = $token['attributes']['list'];
-                            unset($token['attributes']['list']);
-                        }
-
-                        if ($this->_current->getName() != 'list') {
-                            // the list isn't started yet, create it
-                            $child = new Zend_Markup_Token(
-                                '',
-                                Zend_Markup_Token::TYPE_TAG,
-                                'list',
-                                $attributes,
-                                $this->_current
-                            );
-
-                            $this->_current->addChild($child);
-
-                            $this->_current = $child;
-                        }
-                        $token['name'] = 'li';
-                    } elseif (($token['name'] == 'img') || ($token['name'] == 'url')) {
-                        $inside = false;
-                    }
-
-                    // add the token
-                    $child = new Zend_Markup_Token(
-                        $token['tag'],
-                        Zend_Markup_Token::TYPE_TAG,
-                        $token['name'],
-                        $token['attributes'],
-                        $this->_current
-                    );
-
-                    $this->_current->addChild($child);
-
-                    $this->_current = $child;
-                }
-            } else {
-                // simply add the token as text
-                $this->_current->addChild(new Zend_Markup_Token(
-                    $token['tag'],
-                    Zend_Markup_Token::TYPE_NONE,
-                    '',
-                    array(),
-                    $this->_current
-                ));
-            }
-        }
-    }
-
-    /**
-     * Check if a tag is a stopper
-     *
-     * @param array $token
-     * @param Zend_Markup_Token $current
-     *
-     * @return bool
-     */
-    protected function _isStopper(array $token, Zend_Markup_Token $current)
-    {
-        switch ($current->getName()) {
-            case 'h1':
-            case 'h2':
-            case 'h3':
-            case 'h4':
-            case 'h5':
-            case 'h6':
-            case 'list':
-            case 'li':
-                if (($token['type'] == Zend_Markup_Token::TYPE_TAG)
-                    && (($token['name'] == 'break') || ($token['name'] == 'p'))
-                ) {
-                    return true;
-                }
-                break;
-            case 'break':
-                return false;
-                break;
-            default:
-                if (($token['type'] == Zend_Markup_Token::TYPE_TAG) && ($token['name'] == $current->getName())) {
-                    return true;
-                }
-                break;
-        }
-        return false;
-    }
-
-    /**
-     * Extract the attributes
-     *
-     * @param array $matches
-     *
-     * @return array
-     */
-    protected function _extractAttributes(array $matches)
-    {
-        $attributes = array();
-
-        if (!empty($matches['attr_class'])) {
-            $attributes['class'] = $matches['attr_class'];
-        }
-        if (!empty($matches['attr_id'])) {
-            $attributes['id'] = $matches['attr_id'];
-        }
-        if (!empty($matches['attr_style'])) {
-            $attributes['style'] = $matches['attr_style'];
-        }
-        if (!empty($matches['attr_lang'])) {
-            $attributes['lang'] = $matches['attr_lang'];
-        }
-        if (!empty($matches['attr_align'])) {
-            switch ($matches['attr_align']) {
-                case '=':
-                    $attributes['align'] = 'center';
-                    break;
-                case '>':
-                    $attributes['align'] = 'right';
-                    break;
-                case '<>':
-                    $attributes['align'] = 'justify';
-                    break;
-                default:
-                case '<':
-                    $attributes['align'] = 'left';
-                    break;
-            }
-        }
-
-        return $attributes;
-    }
-
-}

+ 0 - 2
tests/Zend/Markup/AllTests.php

@@ -25,7 +25,6 @@ if (!defined('PHPUnit_MAIN_METHOD')) {
 }
 
 require_once 'Zend/Markup/BbcodeAndHtmlTest.php';
-require_once 'Zend/Markup/TextileAndHtmlTest.php';
 require_once 'Zend/Markup/ParserIntegrityTest.php';
 require_once 'Zend/Markup/FactoryTest.php';
 
@@ -55,7 +54,6 @@ class Zend_Markup_AllTests
         $suite = new PHPUnit_Framework_TestSuite('Zend Framework - Zend_Markup');
 
         $suite->addTestSuite('Zend_Markup_BbcodeAndHtmlTest');
-        $suite->addTestSuite('Zend_Markup_TextileAndHtmlTest');
         $suite->addTestSuite('Zend_Markup_ParserIntegrityTest');
         $suite->addTestSuite('Zend_Markup_FactoryTest');
 

+ 0 - 192
tests/Zend/Markup/TextileAndHtmlTest.php

@@ -1,192 +0,0 @@
-<?php
-/**
- * Zend Framework
- *
- * LICENSE
- *
- * This source file is subject to the new BSD license that is bundled
- * with this package in the file LICENSE.txt.
- * It is also available through the world-wide-web at this URL:
- * http://framework.zend.com/license/new-bsd
- * If you did not receive a copy of the license and are unable to
- * obtain it through the world-wide-web, please send an email
- * to license@zend.com so we can send you a copy immediately.
- *
- * @category   Zend
- * @package    Zend_Markup
- * @subpackage UnitTests
- * @copyright  Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com)
- * @license    http://framework.zend.com/license/new-bsd     New BSD License
- * @version    $Id$
- */
-
-if (!defined("PHPUnit_MAIN_METHOD")) {
-    define("PHPUnit_MAIN_METHOD", "Zend_Markup_TextileAndHtmlTest::main");
-}
-
-require_once 'Zend/Markup.php';
-
-/**
- * Test class for Zend_Markup_Renderer_Html and Zend_Markup_Parser_Textile
- *
- * @category   Zend
- * @package    Zend_Markup
- * @subpackage UnitTests
- * @group      Zend_Markup
- * @copyright  Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com)
- * @license    http://framework.zend.com/license/new-bsd     New BSD License
- */
-class Zend_Markup_TextileAndHtmlTest extends PHPUnit_Framework_TestCase
-{
-
-    /**
-     * Zend_Markup_Renderer_RendererAbstract instance
-     *
-     * @var Zend_Markup_Renderer_RendererAbstract
-     */
-    protected $_markup;
-
-
-    /**
-     * Runs the test methods of this class.
-     *
-     * @return void
-     */
-    public static function main()
-    {
-
-        $suite  = new PHPUnit_Framework_TestSuite("Zend_Markup_MarkupTest");
-        $result = PHPUnit_TextUI_TestRunner::run($suite);
-    }
-
-    /**
-     * Sets up the fixture
-     * This method is called before a test is executed.
-     *
-     * @return void
-     */
-    public function setUp()
-    {
-        $this->_markup = Zend_Markup::factory('Textile', 'html');
-    }
-
-    /**
-     * Tears down the fixture
-     * This method is called after a test is executed.
-     *
-     * @return void
-     */
-    public function tearDown()
-    {
-        unset($this->_markup);
-    }
-
-
-    public function testHtmlTags()
-    {
-    	$m = $this->_markup;
-
-        $this->assertEquals('<p><strong>foo</strong></p>', $m->render('*foo*'));
-        $this->assertEquals('<p><strong>foo</strong> bar</p>', $m->render('**foo** bar'));
-        $this->assertEquals('<p><em>foo</em></p>', $m->render('_foo_'));
-        $this->assertEquals('<p><em>foo</em></p>', $m->render('__foo__'));
-        $this->assertEquals('<p><cite>foo</cite></p>', $m->render('??foo??'));
-        $this->assertEquals('<p><del>foo</del></p>', $m->render('-foo-'));
-        $this->assertEquals('<p><ins>foo</ins></p>', $m->render('+foo+'));
-        $this->assertEquals('<p><sup>foo</sup></p>', $m->render('^foo^'));
-        $this->assertEquals('<p><sub>foo</sub></p>', $m->render('~foo~'));
-        $this->assertEquals('<p><span>foo</span></p>', $m->render('%foo%'));
-        $this->assertEquals('<p><acronym title="Teh Zend Framework">TZF</acronym></p>',
-                            $m->render('TZF(Teh Zend Framework)'));
-        $this->assertEquals('<p><a href="http://framework.zend.com/">Zend Framework</a></p>',
-                            $m->render('"Zend Framework":http://framework.zend.com/'));
-        $this->assertEquals('<p><h1>foobar</h1></p>',
-                            $m->render('h1. foobar'));
-        $this->assertEquals('<p><img src="http://framework.zend.com/images/logo.gif" alt="logo" /></p>',
-                            $m->render('!http://framework.zend.com/images/logo.gif!'));
-
-        $value    = "# Zend Framework\n# Unit Tests";
-        $expected = '<p><ol style="list-style-type: decimal"><li>Zend Framework</li><li>Unit Tests</li></ol></p>';
-        $this->assertEquals($expected, $m->render($value));
-
-        $value    = "* Zend Framework\n* Foo Bar";
-        $expected = '<p><ul><li>Zend Framework</li><li>Foo Bar</li></ul></p>';
-        $this->assertEquals($expected, $m->render($value));
-    }
-
-    public function testSimpleAttributes()
-    {
-        $m = $this->_markup;
-
-        $this->assertEquals('<p><strong class="zend">foo</strong></p>', $m->render('*(zend)foo*'));
-        $this->assertEquals('<p><strong id="zend">foo</strong></p>', $m->render('*(#zend)foo*'));
-        $this->assertEquals('<p><strong id="framework" class="zend">foo</strong></p>',
-                            $m->render('*(zend#framework)foo*'));
-
-        $this->assertEquals('<p><strong style="color:green;">foo</strong></p>', $m->render('*{color:green;}foo*'));
-        $this->assertEquals('<p><strong lang="en">foo</strong></p>', $m->render('*[en]foo*'));
-    }
-
-    public function testBlockAttributes()
-    {
-        $m = $this->_markup;
-
-        $this->assertEquals('<p class="zend">foo</p>', $m->render('p(zend). foo'));
-        $this->assertEquals('<p id="zend">foo</p>', $m->render('p(#zend). foo'));
-        $this->assertEquals('<p id="framework" class="zend">foo</p>', $m->render('p(zend#framework). foo'));
-
-        $this->assertEquals('<p style="color:green;">foo</p>', $m->render('p{color:green;}. foo'));
-        $this->assertEquals('<p lang="en">foo</p>', $m->render('p[en]. foo'));
-
-        $this->assertEquals('<p style="text-align: right;">foo</p>', $m->render('p>. foo'));
-        $this->assertEquals('<p style="text-align: left;">foo</p>', $m->render('p<. foo'));
-        $this->assertEquals('<p style="text-align: justify;">foo</p>', $m->render('p<>. foo'));
-        $this->assertEquals('<p style="text-align: center;">foo</p>', $m->render('p=. foo'));
-    }
-
-    public function testNewlines()
-    {
-        $this->assertEquals("<p>foo</p><p>bar<br />\nbaz</p>", $this->_markup->render("foo\n\nbar\nbaz"));
-        $this->assertEquals("<p>foo</p><p style=\"color:green;\">bar<br />\nbaz</p>",
-                            $this->_markup->render("foo\n\np{color:green}. bar\nbaz"));
-        $this->assertEquals("<p>foo</p><p>pahbarbaz</p>",
-                            $this->_markup->render("foo\n\npahbarbaz"));
-    }
-
-    public function testAttributeNotEndingDoesNotThrowNotice()
-    {
-        $m = $this->_markup;
-
-        $this->assertEquals("<p><strong>[</strong></p>", $m->render('*['));
-        $this->assertEquals("<p><strong>{</strong></p>", $m->render('*{'));
-        $this->assertEquals("<p><strong>(</strong></p>", $m->render('*('));
-    }
-
-    public function testTagOnEofDoesNotThrowNotice()
-    {
-        $m = $this->_markup;
-        $this->assertEquals("<p></p>", $m->render('!'));
-        $this->assertEquals("<p></p>", $m->render('*'));
-    }
-
-    public function testAcronymOnEofDoesNotThrowNotice()
-    {
-        $this->assertEquals('<p>ZFC(</p>', $this->_markup->render('ZFC('));
-    }
-
-    public function testListCombinedWithText()
-    {
-        $text = <<<TESTLIST
-* foo
-* bar
-baz
-
-TESTLIST;
-        $this->assertEquals('<p><ul><li>foo</li><li>bar</li></ul>baz</p>', $this->_markup->render($text));
-    }
-}
-
-// Call Zend_Markup_BbcodeTest::main() if this source file is executed directly.
-if (PHPUnit_MAIN_METHOD == "Zend_Markup_TextileAndHtmlTest::main") {
-    Zend_Markup_TextileAndHtmlTest::main();
-}