Procházet zdrojové kódy

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 před 13 roky
rodič
revize
a95e294f90

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

@@ -5,8 +5,7 @@
     <title>Zend_Markup Parser</title>
     <title>Zend_Markup Parser</title>
 
 
     <para>
     <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>
     </para>
 
 
     <sect2 id="zend.markup.parsers.theory">
     <sect2 id="zend.markup.parsers.theory">
@@ -90,133 +89,4 @@
             Standardmäßig werden alle Tags durch Verwendung des Formats '[/tagname]' geschlossen.
             Standardmäßig werden alle Tags durch Verwendung des Formats '[/tagname]' geschlossen.
         </para>
         </para>
     </sect2>
     </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>
 </sect1>

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

@@ -46,7 +46,7 @@ echo $bbcode->render('my [foo]markup[/foo]');
         <para>
         <para>
             Es gilt zu beachten das die Erstellung eigener Markups nur dann Sinn macht wenn der
             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
             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>
 
 
         <para>
         <para>

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

@@ -6,8 +6,8 @@
 
 
     <para>
     <para>
         Die Komponente <classname>Zend_Markup</classname> bietet einen erweiterbaren Weg für das
         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>
 
 
     <para>
     <para>

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

@@ -4,8 +4,7 @@
     <title>Zend_Markup Parsers</title>
     <title>Zend_Markup Parsers</title>
 
 
     <para>
     <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>
     </para>
 
 
     <sect2 id="zend.markup.parsers.theory">
     <sect2 id="zend.markup.parsers.theory">
@@ -90,131 +89,4 @@
             By default, all tags are closed by using the format '[/tagname]'.
             By default, all tags are closed by using the format '[/tagname]'.
         </para>
         </para>
     </sect2>
     </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>
 </sect1>

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

@@ -44,8 +44,7 @@ echo $bbcode->render('my [foo]markup[/foo]');
 
 
         <para>
         <para>
             Please note that creating your own markups only makes sense when your parser also
             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>
 
 
         <para>
         <para>

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

@@ -6,7 +6,7 @@
     <para>
     <para>
         The <classname>Zend_Markup</classname> component provides an extensible
         The <classname>Zend_Markup</classname> component provides an extensible
         way for parsing text and rendering lightweight markup languages like
         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>
 
 
     <para>
     <para>

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

@@ -6,7 +6,7 @@
     <para>
     <para>
         The <classname>Zend_Markup</classname> component provides an extensible
         The <classname>Zend_Markup</classname> component provides an extensible
         way for parsing text and rendering lightweight markup languages like
         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>
 
 
     <para>
     <para>

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

@@ -5,8 +5,7 @@
     <title>Analyseurs Zend_Markup (parsers)</title>
     <title>Analyseurs Zend_Markup (parsers)</title>
 
 
     <para>
     <para>
-        <classname>Zend_Markup</classname> est fourni avec deux analyseurs, BBCode et
-        Textile.
+        <classname>Zend_Markup</classname> est fourni avec un analyseur, BBCode.
     </para>
     </para>
 
 
     <sect2 id="zend.markup.parsers.theory">
     <sect2 id="zend.markup.parsers.theory">
@@ -90,138 +89,4 @@
             Par défaut, tous les tags sont fermés avec la syntaxe '[/tagname]'.
             Par défaut, tous les tags sont fermés avec la syntaxe '[/tagname]'.
         </para>
         </para>
     </sect2>
     </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>
 </sect1>

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

@@ -46,8 +46,7 @@ echo $bbcode->render('my [foo]markup[/foo]');
 
 
         <para>
         <para>
             Notez que créer vos propres markups n'est utile que si l'analyseur syntaxique en tient
             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>
 
 
         <para>
         <para>

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

@@ -7,7 +7,7 @@
     <para>
     <para>
         Le composant <classname>Zend_Markup</classname> offre des possibilités
         Le composant <classname>Zend_Markup</classname> offre des possibilités
         extensibles d'anakyse de texte et de rendu concernant les langages à balises
         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>
 
 
     <para>
     <para>

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

@@ -6,7 +6,7 @@
     <para>
     <para>
         Il componente <classname>Zend_Markup</classname> fornisce un modo estendibile
         Il componente <classname>Zend_Markup</classname> fornisce un modo estendibile
         per parsare il testo e renderizzare i markup dei linguaggi come
         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>
 
 
     <para>
     <para>

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

@@ -90,143 +90,4 @@
             標準で、 '[/tagname]' フォーマットを用いて閉じられます.
             標準で、 '[/tagname]' フォーマットを用いて閉じられます.
         </para>
         </para>
     </sect2>
     </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>
     <para>
         Компонент <classname>Zend_Markup</classname> предоставляет широкие возможности для парсинга
         Компонент <classname>Zend_Markup</classname> предоставляет широкие возможности для парсинга
-        текста и рендеринга простых языков разметки, таких как BBcode или Textile.
+        текста и рендеринга простых языков разметки, таких как BBcode.
         Компонент доступен в Zend Framework начиная с версии 1.10.
         Компонент доступен в Zend Framework начиная с версии 1.10.
     </para>
     </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/BbcodeAndHtmlTest.php';
-require_once 'Zend/Markup/TextileAndHtmlTest.php';
 require_once 'Zend/Markup/ParserIntegrityTest.php';
 require_once 'Zend/Markup/ParserIntegrityTest.php';
 require_once 'Zend/Markup/FactoryTest.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 = new PHPUnit_Framework_TestSuite('Zend Framework - Zend_Markup');
 
 
         $suite->addTestSuite('Zend_Markup_BbcodeAndHtmlTest');
         $suite->addTestSuite('Zend_Markup_BbcodeAndHtmlTest');
-        $suite->addTestSuite('Zend_Markup_TextileAndHtmlTest');
         $suite->addTestSuite('Zend_Markup_ParserIntegrityTest');
         $suite->addTestSuite('Zend_Markup_ParserIntegrityTest');
         $suite->addTestSuite('Zend_Markup_FactoryTest');
         $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();
-}