view release on metacpan or search on metacpan
tidy-html5.c view on Meta::CPAN
<br/>.
- Entities, tags, attributes, etc., should be enclosed in <code></code>.
- Option values should be enclosed in <var></var>.
- It's very important that <br/> be self-closing!
- The strings "Tidy" and "HTML Tidy" are the program name and must not
be translated. */
TidyCSSPrefix, 0,
"Diese Option setzt den Präfix, den Tidy für Style-Regeln verwendet. "
"<br/>"
"StandardmäÃig wird <var>c</var> verwendet. "
},
{/* Important notes for translators:
- Use only <code></code>, <var></var>, <em></em>, <strong></strong>, and
<br/>.
- Entities, tags, attributes, etc., should be enclosed in <code></code>.
- Option values should be enclosed in <var></var>.
- It's very important that <br/> be self-closing!
- The strings "Tidy" and "HTML Tidy" are the program name and must not
be translated. */
TidyDecorateInferredUL, 0,
"Diese Option legt fest, ob Tidy hergeleitete <code><ul></code> "
"Elemente mit CSS-Auszeichnungen ausstatten soll, um Einrückungen nach "
"rechts zu verhindern. "
},
{/* Important notes for translators:
- Use only <code></code>, <var></var>, <em></em>, <strong></strong>, and
<br/>.
- Entities, tags, attributes, etc., should be enclosed in <code></code>.
- Option values should be enclosed in <var></var>.
- It's very important that <br/> be self-closing!
- The strings "Tidy" and "HTML Tidy" are the program name and must not
be translated. */
TidyDoctype, 0,
"Diese Option setzt die DOCTYPE Deklaration, die von Tidy generiert wird. "
"<br/>"
"Wenn hier <var>omit</var> eingestellt ist, enthält die Ausgabe keine "
"DOCTYPE Deklaration. Beachten Sie, dass damit auch <code>numeric-entities</code> "
"auf <var>yes</var> eingestellt wird. "
"<br/>"
"Mit dem Wert <var>html5</var> wird der DOCTYPE auf "
"<code><!DOCTYPE html></code> festgelegt."
"<br/>"
"Wird statt dessen <var>auto</var> (der Standard) verwendet, wird Tidy versuchen, "
"einen aufgrund des Dokumentinhalts vermuteten DOCTYPE zu verwenden. "
"Beachten Sie, dass auf diese Weise der DOCTYPE des aktuellen Dokuments "
"<em>nicht</em> geändert wird. "
"<br/>"
"Der Wert <var>strict</var> veranlasst Tidy, den DOCTYPE auf HTML4 oder "
"XHTML1 strict DTD einzustellen. "
"<br/>"
"Mit dem Wert <var>loose</var> wird der DOCTYPE HTML4 oder "
"XHTML1 loose (transitional) DTD eingestellt. "
"<br/>"
"Alternatif können Sie eine Zeichenkette für den Formal Public Identifier (FPI) "
"angeben."
"<br/>"
"Zum Beispiel: "
"<br/>"
"<code>doctype: \"-//ACME//DTD HTML 3.14159//EN\"</code>"
"<br/>"
"Wenn Sie den FPI für ein XHTML Dokument angeben, erzeugt Tidy eine "
"leere Zeichenkette für den System Identifyer. In HTML-Dokumenten "
"fügt Tidy einen System Identifier nur dann ein, wenn er schon vorher "
"vorhanden war, im Hinblick auf die Verarbeitungsmodi einiger Browser. "
"Tidy lässt den DOCTYPE generischer XML-Dokumente unangetastet."
"<br/>"
"Die Option bedingt keinerlei Ãberprüfung der Dokumentkonformität. "
},
{/* Important notes for translators:
- Use only <code></code>, <var></var>, <em></em>, <strong></strong>, and
<br/>.
- Entities, tags, attributes, etc., should be enclosed in <code></code>.
- Option values should be enclosed in <var></var>.
- It's very important that <br/> be self-closing!
- The strings "Tidy" and "HTML Tidy" are the program name and must not
be translated. */
TidyDropEmptyElems, 0,
"Diese Option legt fest, ob Tidy leere Elemente verwerfen soll. "
},
{/* Important notes for translators:
- Use only <code></code>, <var></var>, <em></em>, <strong></strong>, and
<br/>.
- Entities, tags, attributes, etc., should be enclosed in <code></code>.
- Option values should be enclosed in <var></var>.
- It's very important that <br/> be self-closing!
- The strings "Tidy" and "HTML Tidy" are the program name and must not
be translated. */
TidyDropEmptyParas, 0,
"Diese Option legt fest, ob Tidy leere Absätze verwerfen soll. "
},
{/* Important notes for translators:
- Use only <code></code>, <var></var>, <em></em>, <strong></strong>, and
<br/>.
- Entities, tags, attributes, etc., should be enclosed in <code></code>.
- Option values should be enclosed in <var></var>.
- It's very important that <br/> be self-closing!
- The strings "Tidy" and "HTML Tidy" are the program name and must not
be translated. */
TidyDropPropAttrs, 0,
"Mit dieser Option wird bestimmt, ob Tidy proprietäre Attribute "
"entfernen soll, wie Microsoft data binding Attribute. AuÃerdem "
"werden solche Attribute, die in der ausgegebenen Version des HTML-"
"Codes nicht erlaubt sind, verworfen, wenn gleichzeitig <code>strict-tags-attributes</code> "
"gesetzt wurde. "
},
{/* Important notes for translators:
- Use only <code></code>, <var></var>, <em></em>, <strong></strong>, and
<br/>.
- Entities, tags, attributes, etc., should be enclosed in <code></code>.
- Option values should be enclosed in <var></var>.
- It's very important that <br/> be self-closing!
- The strings "Tidy" and "HTML Tidy" are the program name and must not
be translated. */
TidyDuplicateAttrs, 0,
"Mit dieser Option wird festgelegt, ob Tidy das erste oder das letzte "
"Vorkommen eines wiederholten Attributs übernehmen soll, z.B. bei "
"aufeinanderfolgenden <code>align</code> Attributen im selben Tag. "
},
{/* Important notes for translators:
- Use only <code></code>, <var></var>, <em></em>, <strong></strong>, and
<br/>.
tidy-html5.c view on Meta::CPAN
"Normalerweise werden Fehler und Warnungen auf <code>stderr</code> "
"ausgegeben. "
},
{/* Important notes for translators:
- Use only <code></code>, <var></var>, <em></em>, <strong></strong>, and
<br/>.
- Entities, tags, attributes, etc., should be enclosed in <code></code>.
- Option values should be enclosed in <var></var>.
- It's very important that <br/> be self-closing!
- The strings "Tidy" and "HTML Tidy" are the program name and must not
be translated. */
TidyEscapeCdata, 0,
"Mit dieser Option bestimmen Sie, ob Tidy "
"<code><![CDATA[]]></code> Abschnitte in normlen Text umwandeln "
"soll. "
},
{/* Important notes for translators:
- Use only <code></code>, <var></var>, <em></em>, <strong></strong>, and
<br/>.
- Entities, tags, attributes, etc., should be enclosed in <code></code>.
- Option values should be enclosed in <var></var>.
- It's very important that <br/> be self-closing!
- The strings "Tidy" and "HTML Tidy" are the program name and must not
be translated. */
TidyEscapeScripts, 0,
"Diese Option bewirkt, dass Zeichen oder Zeichenketten, die wie "
"schlieÃende Tags aussehen, wie "
"<code></g</code> mit backslashes maskiert werden, wie in "
"<code><\\/g</code>. Setzen Sie en Wert <var>no</var>, um dies zu "
"verhindern. "
},
{/* Important notes for translators:
- Use only <code></code>, <var></var>, <em></em>, <strong></strong>, and
<br/>.
- Entities, tags, attributes, etc., should be enclosed in <code></code>.
- Option values should be enclosed in <var></var>.
- It's very important that <br/> be self-closing!
- The strings "Tidy" and "HTML Tidy" are the program name and must not
be translated. */
TidyFixBackslash, 0,
"Diese Option bestimmt, ob Tidy Backslashes <code>\\</code> in URLs "
"durch normale Schrägstriche <code>/</code> ersetzen soll. "
},
{/* Important notes for translators:
- Use only <code></code>, <var></var>, <em></em>, <strong></strong>, and
<br/>.
- Entities, tags, attributes, etc., should be enclosed in <code></code>.
- Option values should be enclosed in <var></var>.
- It's very important that <br/> be self-closing!
- The strings "Tidy" and "HTML Tidy" are the program name and must not
be translated. */
TidyFixComments, 0,
"Diese Option bestimmt, ob Tidy unerwartete Bindestriche durch "
"<code>=</code> Zeichen ersetzen soll, wenn Bindestriche aufeinanderfolgen. "
"<br/>"
"Der Standard ist <var>auto</var>, was für HTML5 Dokumente das gleiche wie "
"<var>no</var> bedeutet, für alle anderen aber <var>yes</var>. "
"<br/>"
"Die SGML Kommentarsyntax wurde für HTML aufgegeben, alle Versionen von HTML "
"erlauben aufeinanderfolgende Bindestriche, auch wenn das nicht für XML "
"und XHTML gilt. Wenn Sie ältere Browser unterstützen wollen, die SGML "
"Syntax verlangen, sollten Sie hier den Wert <var>yes</var> setzen."
},
{/* Important notes for translators:
- Use only <code></code>, <var></var>, <em></em>, <strong></strong>, and
<br/>.
- Entities, tags, attributes, etc., should be enclosed in <code></code>.
- Option values should be enclosed in <var></var>.
- It's very important that <br/> be self-closing!
- The strings "Tidy" and "HTML Tidy" are the program name and must not
be translated. */
TidyFixUri, 0,
"Diese Option legt fest, ob Tidy Attributwerte mit URIs auf ungültige "
"Zeichen überprüft und sie, wenn solche gefunden werden, maskiert, wie "
"von HTML4 empfohlen. "
},
{/* Important notes for translators:
- Use only <code></code>, <var></var>, <em></em>, <strong></strong>, and
<br/>.
- Entities, tags, attributes, etc., should be enclosed in <code></code>.
- Option values should be enclosed in <var></var>.
- It's very important that <br/> be self-closing!
- The strings "Tidy" and "HTML Tidy" are the program name and must not
be translated. */
TidyForceOutput, 0,
"Diese Option legt fest, ob Tidy auch dann eine Ausgabe erzeugt, "
"wenn Fehler auftreten. "
"<br/>"
"Verwenden Sie diese Einstellung mit Vorsicht; wenn Tidy einen Fehler "
"meldet, heiÃt das, dass Tidy nicht (oder nicht sicher) in der Lage "
"ist, den Fehler zu beheben. Die erzeugte Ausgabe kann darum Ihren "
"Erwartungen widersprechen. "
},
{/* Important notes for translators:
- Use only <code></code>, <var></var>, <em></em>, <strong></strong>, and
<br/>.
- Entities, tags, attributes, etc., should be enclosed in <code></code>.
- Option values should be enclosed in <var></var>.
- It's very important that <br/> be self-closing!
- The strings "Tidy" and "HTML Tidy" are the program name and must not
be translated. */
TidyGDocClean, 0,
"Diese Option bestimmt, ob sich Tidy beim Bereinigen von HTML-Code, "
"der aus Google Docs exportiert wurde, speziell verhalten soll. "
},
{/* Important notes for translators:
- Use only <code></code>, <var></var>, <em></em>, <strong></strong>, and
<br/>.
- Entities, tags, attributes, etc., should be enclosed in <code></code>.
- Option values should be enclosed in <var></var>.
- It's very important that <br/> be self-closing!
- The strings "Tidy" and "HTML Tidy" are the program name and must not
be translated. */
TidyHideComments, 0,
"Mit dieser Option bestimmen Sie, ob Tidy Kommentare aus der Ausgabe "
"entfernt. "
},
{/* Important notes for translators:
- Use only <code></code>, <var></var>, <em></em>, <strong></strong>, and
<br/>.
- Entities, tags, attributes, etc., should be enclosed in <code></code>.
tidy-html5.c view on Meta::CPAN
- Entities, tags, attributes, etc., should be enclosed in <code></code>.
- Option values should be enclosed in <var></var>.
- It's very important that <br/> be self-closing!
- The strings "Tidy" and "HTML Tidy" are the program name and must not
be translated. */
TidyQuiet, 0,
"Wenn diese Option aktiv is, beschränkt Tidy andere Ausgaben als die des bereinigten Dokuments "
"auf Fehler- und Warnmeldungen. "
},
{/* Important notes for translators:
- Use only <code></code>, <var></var>, <em></em>, <strong></strong>, and
<br/>.
- Entities, tags, attributes, etc., should be enclosed in <code></code>.
- Option values should be enclosed in <var></var>.
- It's very important that <br/> be self-closing!
- The strings "Tidy" and "HTML Tidy" are the program name and must not
be translated. */
TidyQuoteAmpersand, 0,
"Diese Option bestimmt, ob Tidy alleinstehende <code>&</code> "
"als <code>&amp;</code> ausgeben soll. "
},
{/* Important notes for translators:
- Use only <code></code>, <var></var>, <em></em>, <strong></strong>, and
<br/>.
- Entities, tags, attributes, etc., should be enclosed in <code></code>.
- Option values should be enclosed in <var></var>.
- It's very important that <br/> be self-closing!
- The strings "Tidy" and "HTML Tidy" are the program name and must not
be translated. */
TidyQuoteMarks, 0,
"Diese Option bestimmt, ob Tidy <code>"</code> Zeichen als "
"<code>&quot;</code> ausgeben soll, wie es manche Redaktionssysteme "
"bevorzugen. "
"<br/>"
"Das Auslassungszeichen <code>'</code> wird als <code>&#39;</code> "
"ausgegeben, weil viele Web-Browser <code>&apo;</code> noch nicht "
"unterstützen. "
},
{/* Important notes for translators:
- Use only <code></code>, <var></var>, <em></em>, <strong></strong>, and
<br/>.
- Entities, tags, attributes, etc., should be enclosed in <code></code>.
- Option values should be enclosed in <var></var>.
- It's very important that <br/> be self-closing!
- The strings "Tidy" and "HTML Tidy" are the program name and must not
be translated. */
TidyQuoteNbsp, 0,
"Diese Option bestimmt, ob Tidy geschützte Leerzeichen als Entities "
"und nicht als Unicode-Zeichen 160 (dezimal) ausgeben soll. "
},
{/* Important notes for translators:
- Use only <code></code>, <var></var>, <em></em>, <strong></strong>, and
<br/>.
- Entities, tags, attributes, etc., should be enclosed in <code></code>.
- Option values should be enclosed in <var></var>.
- It's very important that <br/> be self-closing!
- The strings "Tidy" and "HTML Tidy" are the program name and must not
be translated. */
TidyReplaceColor, 0,
"Mit dieser Option können Sie Tidy auffordern, numerische Werte in "
"Farb-Attributen durch HTML/XHTML Farbnamen zu ersetzen, so weit "
"sie definiert sind. Zum Beispiel würde <code>#ffffff</code> zu "
"<code>white</code>. "
},
{/* Important notes for translators:
- Use only <code></code>, <var></var>, <em></em>, <strong></strong>, and
<br/>.
- Entities, tags, attributes, etc., should be enclosed in <code></code>.
- Option values should be enclosed in <var></var>.
- It's very important that <br/> be self-closing!
- The strings "Tidy" and "HTML Tidy" are the program name and must not
be translated. */
TidyShowErrors, 0,
"Mit dem Wert dieser Option wird gesteuert, ob Tidy weitere Fehler "
"meldet. Wenn der Wert <var>0</var> ist, werden gar keine Fehler "
"gemeldet. "
},
{/* Important notes for translators:
- Use only <code></code>, <var></var>, <em></em>, <strong></strong>, and
<br/>.
- Entities, tags, attributes, etc., should be enclosed in <code></code>.
- Option values should be enclosed in <var></var>.
- It's very important that <br/> be self-closing!
- The strings "Tidy" and "HTML Tidy" are the program name and must not
be translated. */
TidyShowFilename, 0,
"Diese Option legt fest, ob Tidy den Dateinamen in Meldungen anzeigt. z.B.: "
"<br/>"
" tidy -q -e --show-filename yes index.html<br/>"
" index.html: line 43 column 3 - Warning: replacing invalid UTF-8 bytes (char. code U+00A9) "
},
{/* Important notes for translators:
- Use only <code></code>, <var></var>, <em></em>, <strong></strong>, and
<br/>.
- Entities, tags, attributes, etc., should be enclosed in <code></code>.
- Option values should be enclosed in <var></var>.
- It's very important that <br/> be self-closing!
- The strings "Tidy" and "HTML Tidy" are the program name and must not
be translated. */
TidyShowInfo, 0,
"Mit dieser Option wird festgelegt, ob Tidy Protokollmeldungen auf dem "
"Niveau INFO anzeigen soll."
},
{/* Important notes for translators:
- Use only <code></code>, <var></var>, <em></em>, <strong></strong>, and
<br/>.
- Entities, tags, attributes, etc., should be enclosed in <code></code>.
- Option values should be enclosed in <var></var>.
- It's very important that <br/> be self-closing!
- The strings "Tidy" and "HTML Tidy" are the program name and must not
be translated. */
/* option-name: markup*/
TidyShowMarkup, 0,
"Mit dieser Option kann Tidy aufgefordert werden, eine formatierte Version "
"der bereinigten Seite zu generieren. Beachten Sie, dass Tidy keine solche "
"Formatierung vornimmt, wenn schwerwiegende Fehler gefunden werden "
"(siehe auch: <code>force-output</code>). "
},
{/* Important notes for translators:
- Use only <code></code>, <var></var>, <em></em>, <strong></strong>, and
tidy-html5.c view on Meta::CPAN
be translated. */
TidyWrapPhp, 0,
"Diese Option legt fest, ob Tidy nach PHP Pseudoelementen, "
"wie <code><?php ... ?></code> einen Zeilenumbruch einfügen soll. "
},
{/* Important notes for translators:
- Use only <code></code>, <var></var>, <em></em>, <strong></strong>, and
<br/>.
- Entities, tags, attributes, etc., should be enclosed in <code></code>.
- Option values should be enclosed in <var></var>.
- It's very important that <br/> be self-closing!
- The strings "Tidy" and "HTML Tidy" are the program name and must not
be translated. */
TidyWrapScriptlets, 0,
/* option-name: wrap-script-literals */
"Mit dieser Option wird bestimmt, ob Tidy Literale, die in Skript-Attributen "
"auftauchen, umbrechen soll. "
},
{/* Important notes for translators:
- Use only <code></code>, <var></var>, <em></em>, <strong></strong>, and
<br/>.
- Entities, tags, attributes, etc., should be enclosed in <code></code>.
- Option values should be enclosed in <var></var>.
- It's very important that <br/> be self-closing!
- The strings "Tidy" and "HTML Tidy" are the program name and must not
be translated. */
/* option-name: wrap-sections
*
* ATTN. A section-tag exists in maybe-HTML. (5)
*
*/
TidyWrapSection, 0,
"Diese Option legt fest, ob Tidy Text in Datenbereichen wie "
"<code><![ ... ]></code> umbrechen soll. "
},
{/* Important notes for translators:
- Use only <code></code>, <var></var>, <em></em>, <strong></strong>, and
<br/>.
- Entities, tags, attributes, etc., should be enclosed in <code></code>.
- Option values should be enclosed in <var></var>.
- It's very important that <br/> be self-closing!
- The strings "Tidy" and "HTML Tidy" are the program name and must not
be translated. */
TidyWriteBack, 0,
"Mit dieser Option wird bestimmt, ob Tidy den bereinigten Auszeichnungscode "
"in die selbe Datei schreiben soll, aus der er gelesen worden ist. "
"<br/>"
"Sie sollten Kopien wichtiger Dateien anlegen, bevor Sie sie bereinigen, da, "
"in Ausnahmefällen, das Ergebnis nicht Ihren Erwartungen entsprechen kann. "
},
{/* Important notes for translators:
- Use only <code></code>, <var></var>, <em></em>, <strong></strong>, and
<br/>.
- Entities, tags, attributes, etc., should be enclosed in <code></code>.
- Option values should be enclosed in <var></var>.
- It's very important that <br/> be self-closing!
- The strings "Tidy" and "HTML Tidy" are the program name and must not
be translated. */
/* option-name: output-xhtml */
TidyXhtmlOut, 0,
"Diese Option legt fest, ob Tidy die formatierte Ausgabe als XHTML schreiben "
"soll. "
"<br/>"
"Damit setzt Tidy den zu XHTML passenden DOCTYPE und Namensraum und wird "
"eine korrigierte Ausgabe liefern, unabhängig von anderen Eingaben. "
"<br/>"
"In XHTML können Entities benannt oder nummerisch sein, unabhängig von der "
"Einstellung von <code>numeric-entities</code>. "
"<br/>"
"Die GroÃ- und Kleinschreibung von Tags und Attributen im Eingangsdokument "
"wird beibehalten, unabhängig von den Werten anderer Optionen. "
},
{/* Important notes for translators:
- Use only <code></code>, <var></var>, <em></em>, <strong></strong>, and
<br/>.
- Entities, tags, attributes, etc., should be enclosed in <code></code>.
- Option values should be enclosed in <var></var>.
- It's very important that <br/> be self-closing!
- The strings "Tidy" and "HTML Tidy" are the program name and must not
be translated. */
/* option-name: add-xml-decl */
TidyXmlDecl, 0,
"Diese Option bestimmt, ob Tidy eine XML-Deklaration einfügen soll, "
"wenn XML oder XHTML ausgegeben wird. "
"<br/>"
"Beachten Sie, dass die Option ignoriert wird, wenn in der Eingabe bereits eine "
"solche Deklaration <code><?xml ... ?></code> enthalten ist. "
"<br/>"
"Sollte die Zeichenkodierung für die Ausgabe eine andere sein als "
"<var>ascii</var>, keine aus der <var>utf*</var> Familie und auch nicht "
"<var>raw</var>, wird die Deklaration ohnehin immer eingefügt, wie vom "
"XML Standard gefordert. "
},
{/* Important notes for translators:
- Use only <code></code>, <var></var>, <em></em>, <strong></strong>, and
<br/>.
- Entities, tags, attributes, etc., should be enclosed in <code></code>.
- Option values should be enclosed in <var></var>.
- It's very important that <br/> be self-closing!
- The strings "Tidy" and "HTML Tidy" are the program name and must not
be translated. */
/* option-name: output-xml */
TidyXmlOut, 0,
"Diese Option bestimmt, ob Tidy eine formatierte Ausgabe als XML schreiben "
"soll. "
"<br/>"
"Alle Entitäten, die in XML 1.0 nicht definiert sind, werden numerisch geschrieben, "
"damit sie von einem XML Parser interpretiert werden können. "
"<br/>"
"Die GroÃ- und Kleinschreibung von Tags und Attributen wird aus der Eingabe "
"übernommen, unabhängig von anderen Einstellungen."
},
{/* Important notes for translators:
- Use only <code></code>, <var></var>, <em></em>, <strong></strong>, and
<br/>.
- Entities, tags, attributes, etc., should be enclosed in <code></code>.
- Option values should be enclosed in <var></var>.
- It's very important that <br/> be self-closing!
- The strings "Tidy" and "HTML Tidy" are the program name and must not
be translated. */
/* option-name: assume-xml-procins */
TidyXmlPIs, 0,
"Diese Option bestimmt, ob Tidy bei der Auswertung von Verarbeitungsanweisungen "
"auf <code>?></code> als Endezeichen bestehen soll, anstelle von <code>></code>. "
"<br/>"
"Diese Option wird automatisch gesetzt, wenn es sich bei der Eingabe um XML handelt. "
},
{/* Important notes for translators:
- Use only <code></code>, <var></var>, <em></em>, <strong></strong>, and
<br/>.
- Entities, tags, attributes, etc., should be enclosed in <code></code>.
- Option values should be enclosed in <var></var>.
- It's very important that <br/> be self-closing!
- The strings "Tidy" and "HTML Tidy" are the program name and must not
be translated. */
/* option-name: add-xml-space */
TidyXmlSpace, 0,
"Diese Option bestimmt, ob Tidy beim Generieren von XML <code>xml:space=\"preserve\"</code> "
"in Elementen wie <code><pre></code>, <code><style></code> und "
"<code><script></code> einfügen soll. "
"<br/>"
"Dies ist notwendig, wenn ohne Zugriff auf die DTD, Leerzeichen in solchen Elementen richtig interpretiert werden soll. "
},
{/* Important notes for translators:
tidy-html5.c view on Meta::CPAN
{/* This console output should be limited to 78 characters per line. */
TEXT_USING_BODY, 0,
"Es wird empfohlen, CSS zur Festlegung der Farben von Seiten und\n"
"Links zu verwenden.\n"
},
/********************************************
** Miscellaneous Dialogue Strings
** @remark enum source TidyStrings
** @rename enum generator FOREACH_DIALOG_MSG
********************************************/
{ STRING_CONTENT_LOOKS, 0, "Dokumentinhalt scheint %s zu sein" },
{ STRING_DOCTYPE_GIVEN, 0, "angegebener Doctype ist \"%s\"" },
{/* The strings "Tidy" and "HTML Tidy" are the program name and must not be translated. */
STRING_ERROR_COUNT, 0, "Tidy hat %u %s und %u %s gefunden!\n"
},
{/* This console output should be limited to 78 characters per line.
- The strings "Tidy" and "HTML Tidy" are the program name and must not be translated. */
STRING_NEEDS_INTERVENTION, 0,
"Dieses Dokument hat Fehler, die korrigiert werden müssen,\n"
"bevor HTML Tidy eine bereinigte Version generieren kann.\n"
},
{ STRING_NO_ERRORS, 0, "Es wurden keine Warnungen oder Fehler gefunden.\n" },
{ STRING_NO_SYSID, 0, "Kein System-Identifikator im übermittelten doctype" },
{ STRING_NOT_ALL_SHOWN, 0, "Tidy hat %u %s und %u %s gefunden! \n"
"Nicht alle Warnungen oder Fehler wurden angezeigt.\n" },
{/* This console output should be limited to 78 characters per line.
- The strings "Tidy" and "HTML Tidy" are the program name and must not be translated. */
TEXT_GENERAL_INFO, 0,
"Ãber HTML Tidy: https://github.com/htacg/tidy-html5\n"
"Fehlerberichte und Kommentare (in English):\n"
"\thttps://github.com/htacg/tidy-html5/issues\n"
"Offizielle Mailing-Liste:\n"
"\thttps://lists.w3.org/Archives/Public/public-htacg/\n"
"Neueste HTML Spezifikation:\n"
"\thttp://dev.w3.org/html5/spec-author-view/\n"
"Validieren Sie Ihre HTML-Dokumente:\n"
"\tttp://validator.w3.org/nu/\n"
"Setzen Sie sich für den Eintritt Ihrer Firma ins W3C ein:\n"
"\thttp://www.w3.org/Consortium\n"
},
{/* This console output should be limited to 78 characters per line.
- The strings "Tidy" and "HTML Tidy" are the program name and must not be translated.
- Don't terminate the last line with a newline. */
TEXT_GENERAL_INFO_PLEA, 0,
"Sprechen Sie eine andere Sprache als Englisch oder eine andere Variante\n"
"von Englisch? Ãberlegen Sie, ob Sie uns helfen möchten, HTML Tidy zu\n"
"übersetzen. Details finden Sie auf\n"
"https://github.com/htacg/tidy-html5/blob/master/README/LOCALIZE.md"
},
/********************************************
** Report Output
** @remark enum source TidyStrings
** @rename enum generator FOREACH_REPORT_MSG
********************************************/
{ ADDED_MISSING_CHARSET, 0, "Fehlendes <meta charset=...> wurde in %s hinzugefügt" },
{ ANCHOR_NOT_UNIQUE, 0, "%s Verweisanker \"%s\" ist bereits definiert" },
{ ANCHOR_DUPLICATED, 0, "impliziter %s Anker \"%s\" von Tidy dupliziert." },
{ APOS_UNDEFINED, 0, "benannte Entität ' nur in XML/XHTML definiert" },
{ ATTR_VALUE_NOT_LCASE, 0, "%s Attributwert \"%s\" muss für XHTML klein geschrieben sein" },
{ ATTRIBUTE_IS_NOT_ALLOWED, 0, "%s Attribut \"is\" nicht in autonomen, benutzerdefnierten Tags erlaubt." },
{ ATTRIBUTE_VALUE_REPLACED, 0, "%s Attribut \"%s\", falscher Wert \"%s\" ersetzt" },
{ BACKSLASH_IN_URI, 0, "%s URI Referenz enthält Backslash. Eingabefehler?" },
{ BAD_ATTRIBUTE_VALUE_REPLACED, 0, "%s Attribut \"%s\" hatte den ungültigen Wert \"%s\" und wurde ersetzt" },
{ BAD_ATTRIBUTE_VALUE, 0, "%s Attribut \"%s\" hat den ungültigen Wert \"%s\"" },
{ BAD_CDATA_CONTENT, 0, "'<' + '/' + Zeichen hier nicht erlaubt" },
{ BAD_SUMMARY_HTML5, 0, "Das summary Attribute im Element %s ist in HTML5 obsolet" },
{ BAD_SURROGATE_LEAD, 0, "Vorderes (niederes) Surrogat-Paar U+%04X, ohne vordere (obere) Entität, durch U+FFFD ersetzt." },
{ BAD_SURROGATE_PAIR, 0, "Unzulässiges Surrogat-Paar U+%04X:U+%04X wurde durch U+FFFD ersetzt." },
{ BAD_SURROGATE_TAIL, 0, "Vorangestelltes (oberes) Surrogat-Paar U+%04X, ohne anschlieÃennde (niedere) Entität, durch U+FFFD ersetzt." },
{ CANT_BE_NESTED, 0, "%s kann nicht verschachtelt sein" },
{ COERCE_TO_ENDTAG, 0, "<%s> ist wahrscheinlich als </%s> gedacht" },
{ CONTENT_AFTER_BODY, 0, "Inhalt nach dem Ende von body" },
{ CUSTOM_TAG_DETECTED, 0, "Habe autonomes, benutzerdefiniertes Tag %s gefunden; Behandele als %s" },
{ DISCARDING_UNEXPECTED, 0, "Unerwartetes %s verworfen" },
{ DOCTYPE_AFTER_TAGS, 0, "<!DOCTYPE> ist nach Elementen nicht erlaubt" },
{ DUPLICATE_FRAMESET, 0, "Wiederholung des FRAMESET Elements" },
{ ELEMENT_NOT_EMPTY, 0, "%s Element nicht leer oder nicht geschlossen" },
{ ELEMENT_VERS_MISMATCH_ERROR, 0, "%s Element steht in %s nicht zur Verfügung" },
{ ELEMENT_VERS_MISMATCH_WARN, 0, "%s Element steht in %s nicht zur Verfügung" },
{ ENCODING_MISMATCH, 0, "genannte Eingabe-Kodierung (%s) stimmt nicht mit der vorgefundenen Kodierung überein (%s)" },
{ ESCAPED_ILLEGAL_URI, 0, "%s maskiere falsch formatierten URI Verweis" },
{ FILE_CANT_OPEN, 0, "Kann \"%s\" nicht öffnen\n" },
{ FILE_CANT_OPEN_CFG, 0, "Kann die Konfigurationsdatei \"%s\" nicht öffnen\n" },
{ FILE_NOT_FILE, 0, "\"%s\" ist keine Datei!\n" },
{ FIXED_BACKSLASH, 0, "%s Konvertiere einen Backslash im URI in Schrägstrich" },
{ FOUND_STYLE_IN_BODY, 0, "<style> Tag in <body>! fix-style-tags: yes, um es zu verschieben" },
{ ID_NAME_MISMATCH, 0, "%s id und name Attribute unterscheiden sich im Wert" },
{ ILLEGAL_NESTING, 0, "%s sollten nicht verschachtelt sein" },
{ ILLEGAL_URI_CODEPOINT, 0, "%s unerlaubte Zeichen im URI" },
{ ILLEGAL_URI_REFERENCE, 0, "%s inkorrekt maskierter URI Verweis" },
{ INSERTING_AUTO_ATTRIBUTE, 0, "%s füge \"%s\" Attribut mit Wert \"%s\" ein" },
{ INSERTING_TAG, 0, "füge implizites <%s> ein" },
{ INVALID_ATTRIBUTE, 0, "%s Attributname \"%s\" (wert=\"%s\") ist ungültig" },
{ INVALID_NCR, 0, "%s ungültiger, numeriascher Zeichencode %s" },
{ INVALID_SGML_CHARS, 0, "%s ungültiger Zeichencode %s" },
{ INVALID_UTF8, 0, "%s ungültige UTF-8 Bytes (Zeichencode %s)" },
{ INVALID_UTF16, 0, "%s Ungültiges UTF-16 Ersetzungspaar (Zeichencode %s)" },
{ INVALID_XML_ID, 0, "%s Kann Attribut name nicht in id kopieren" },
{ JOINING_ATTRIBUTE, 0, "%s Konsolidiere Werte des wiederholten Attributs \"%s\"" },
{ MALFORMED_COMMENT, 0, "Tidy hat aufeinanderfolgende \"-\" durch \"=\" ersetzt" },
{ MALFORMED_COMMENT_DROPPING, 0, "Verwerfe eventuellen Kommentar, weil ein Bindestrich fehlt" },
{ MALFORMED_COMMENT_EOS, 0, "Das Ende des Dokuments wurde vor dem Ende des Kommentars erreicht" },
{ MALFORMED_COMMENT_WARN, 0, "Aufeinanderfolgende Bindestriche im Kommentar; erwägen Sie fix-bad-comments zu setzen" },
{ MALFORMED_DOCTYPE, 0, "Verwerfe fehlformatierten <!DOCTYPE>" },
{ MISMATCHED_ATTRIBUTE_ERROR, 0, "%s Attribut \"%s\" in %s nicht erlaubt" },
{ MISMATCHED_ATTRIBUTE_WARN, 0, "%s Attribut \"%s\" in %s nicht erlaubt" },
{ MISSING_ATTR_VALUE, 0, "%s Attribut \"%s\" ohne Wert" },
{ MISSING_ATTRIBUTE, 0, "%s Attribut \"%s\" fehlt" },
{ MISSING_DOCTYPE, 0, "fehlende <!DOCTYPE> Deklaration" },
{ MISSING_ENDTAG_BEFORE, 0, "fehlendes </%s> vor %s" },
{ MISSING_ENDTAG_FOR, 0, "fehlendes </%s>" },
{ MISSING_ENDTAG_OPTIONAL, 0, "fehlendes, optionales Abschlusstag </%s>" },
{ MISSING_IMAGEMAP, 0, "%s sollte client-seitige Image Map verwenden" },
{ MISSING_QUOTEMARK, 0, "%s Attribut mit fehlendem, abschlieÃenden GänsefüÃchen" },
{ MISSING_QUOTEMARK_OPEN, 0, "im Wert des Attributs \"%s\" fehlen GänsefüÃchen" },
{ MISSING_SEMICOLON_NCR, 0, "numerische Zeichenreferenz \"%s\" endet nicht mit ';'" },
{ MISSING_SEMICOLON, 0, "Entität \"%s\" endet nicht mit ';'" },
{ MISSING_STARTTAG, 0, "fehlendes <%s>" },
{ MISSING_TITLE_ELEMENT, 0, "füge fehlendes 'title' Element ein" },
tidy-html5.c view on Meta::CPAN
{ REMOVE_BLINK_MARQUEE, 0, "[7.2.1.1]: blink/marquee entfernen." },
{ REMOVE_AUTO_REFRESH, 0, "[7.4.1.1]: auto-refresh entfernen." },
{ REMOVE_AUTO_REDIRECT, 0, "[7.5.1.1]: auto-redirect entfernen." },
{ ENSURE_PROGRAMMATIC_OBJECTS_ACCESSIBLE_SCRIPT, 0, "[8.1.1.1]: sicherstellen, dass programmatische objekte zugänglich sind (script)." },
{ ENSURE_PROGRAMMATIC_OBJECTS_ACCESSIBLE_OBJECT, 0, "[8.1.1.2]: sicherstellen, dass programmatische objekte zugänglich sind (object)." },
{ ENSURE_PROGRAMMATIC_OBJECTS_ACCESSIBLE_APPLET, 0, "[8.1.1.3]: sicherstellen, dass programmatische objekte zugänglich sind (applet)." },
{ ENSURE_PROGRAMMATIC_OBJECTS_ACCESSIBLE_EMBED, 0, "[8.1.1.4]: sicherstellen, dass programmatische objekte zugänglich sind (embed)." },
{ IMAGE_MAP_SERVER_SIDE_REQUIRES_CONVERSION, 0, "[9.1.1.1]: (serverseitige) image map muss umgewandelt werden." },
{ SCRIPT_NOT_KEYBOARD_ACCESSIBLE_ON_MOUSE_DOWN, 0, "[9.3.1.1]: <script> für Tastatur ungeeignet (onMouseDown)." },
{ SCRIPT_NOT_KEYBOARD_ACCESSIBLE_ON_MOUSE_UP, 0, "[9.3.1.2]: <script> für Tastatur ungeeignet (onMouseUp)." },
{ SCRIPT_NOT_KEYBOARD_ACCESSIBLE_ON_CLICK, 0, "[9.3.1.3]: <script> für Tastatur ungeeignet (onClick)." },
{ SCRIPT_NOT_KEYBOARD_ACCESSIBLE_ON_MOUSE_OVER, 0, "[9.3.1.4]: <script> für Tastatur ungeeignet (onMouseOver)." },
{ SCRIPT_NOT_KEYBOARD_ACCESSIBLE_ON_MOUSE_OUT, 0, "[9.3.1.5]: <script> für Tastatur ungeeignet (onMouseOut)." },
{ SCRIPT_NOT_KEYBOARD_ACCESSIBLE_ON_MOUSE_MOVE, 0, "[9.3.1.6]: <script> für Tastatur ungeeignet (onMouseMove)." },
{ NEW_WINDOWS_REQUIRE_WARNING_NEW, 0, "[10.1.1.1]: neue Fenster benötigen Warnhinweis (_new)." },
{ NEW_WINDOWS_REQUIRE_WARNING_BLANK, 0, "[10.1.1.2]: neue Fenster benötigen Warnhinweis (_blank)." },
{ REPLACE_DEPRECATED_HTML_APPLET, 0, "[11.2.1.1]: ersetze veraltetes html <applet>." },
{ REPLACE_DEPRECATED_HTML_BASEFONT, 0, "[11.2.1.2]: ersetze veraltetes html <basefont>." },
{ REPLACE_DEPRECATED_HTML_CENTER, 0, "[11.2.1.3]: ersetze veraltetes html <center>." },
{ REPLACE_DEPRECATED_HTML_DIR, 0, "[11.2.1.4]: ersetze veraltetes html <dir>." },
{ REPLACE_DEPRECATED_HTML_FONT, 0, "[11.2.1.5]: ersetze veraltetes html <font>." },
{ REPLACE_DEPRECATED_HTML_ISINDEX, 0, "[11.2.1.6]: ersetze veraltetes html <isindex>." },
{ REPLACE_DEPRECATED_HTML_MENU, 0, "[11.2.1.7]: ersetze veraltetes html <menu>." },
{ REPLACE_DEPRECATED_HTML_S, 0, "[11.2.1.8]: ersetze veraltetes html <s>." },
{ REPLACE_DEPRECATED_HTML_STRIKE, 0, "[11.2.1.9]: ersetze veraltetes html <strike>." },
{ REPLACE_DEPRECATED_HTML_U, 0, "[11.2.1.10]: ersetze veraltetes html <u>." },
{ FRAME_MISSING_TITLE, 0, "[12.1.1.1]: <frame> ohne Titel." },
{ FRAME_TITLE_INVALID_NULL, 0, "[12.1.1.2]: <frame> Titel ungültig (null)." },
{ FRAME_TITLE_INVALID_SPACES, 0, "[12.1.1.3]: <frame> Titel ungültig (spaces)." },
{ ASSOCIATE_LABELS_EXPLICITLY, 0, "[12.4.1.1]: ordne Beschriftungen explizit Formularelementen zu." },
{ ASSOCIATE_LABELS_EXPLICITLY_FOR, 0, "[12.4.1.2]: ordne Beschriftungen explizit Formularelementen zu (for)." },
{ ASSOCIATE_LABELS_EXPLICITLY_ID, 0, "[12.4.1.3]: ordne Beschriftungen explizit Formularelementen zu (id)." },
{ LINK_TEXT_NOT_MEANINGFUL, 0, "[13.1.1.1]: Link Text nicht aussagekräftig." },
{ LINK_TEXT_MISSING, 0, "[13.1.1.2]: Link Text fehlt." },
{ LINK_TEXT_TOO_LONG, 0, "[13.1.1.3]: Link Text zu lang." },
{ LINK_TEXT_NOT_MEANINGFUL_CLICK_HERE, 0, "[13.1.1.4]: Link Text nicht aussagekräftig (hier klicken)." },
{ METADATA_MISSING, 0, "[13.2.1.1]: Metadaten fehlen." },
{ METADATA_MISSING_REDIRECT_AUTOREFRESH, 0, "[13.2.1.3]: Metadaten fehlen (redirect/auto-refresh)." },
{ SKIPOVER_ASCII_ART, 0, "[13.10.1.1]: Ignoriere Ascii Art." },
#if SUPPORT_CONSOLE_APP
/********************************************************
** Console Application
** Although these strings are not used within LibTidy
** and only for the console application, they are
** provided as part of LibTidy for convenience to
** developers.
********************************************************/
{ TC_LABEL_COL, 0, "Spalte" },
{ TC_LABEL_FILE, 0, "Datei" },
{ TC_LABEL_LANG, 0, "Sprache" },
{ TC_LABEL_LEVL, 0, "Niveau" },
{ TC_LABEL_OPT, 0, "Option" },
{ TC_MAIN_ERROR_LOAD_CONFIG, 0, "Problem beim laden der Konfigurationsdatei \"%s\", Fehler = %d" },
{ TC_OPT_ACCESS, 0,
"Führe zusätzliche Prüfungen der Barrierefreiheit durch (<Niveau> = 0, 1, 2, 3). 0 wird "
"angenommen, wenn <Niveau> fehlt."
},
{ TC_OPT_ASCII, 0, "verwende ISO-8859-1 für Eingaben, US-ASCII für Ausgaben" },
{ TC_OPT_ASHTML, 0, "erzwinge Umwandlung von XHTML in wohlgeformtes HTML" },
{ TC_OPT_ASXML, 0, "konvertiere HTML zu wohlgeformtem XHTML" },
{ TC_OPT_BARE, 0, "entferne typografische Anführungsstriche, Geviertstriche, etc." },
{ TC_OPT_BIG5, 0, "verwende Big5 für Ein- und Ausgaben" },
{ TC_OPT_CLEAN, 0, "ersetze FONT, NOBR und CENTER Tags durch CSS" },
{ TC_OPT_CONFIG, 0, "setze Konfigurationseinstellungen aus der genannten <Datei>" },
{ TC_OPT_ERRORS, 0, "nur Fehler und Warnungen anzeigen" },
{ TC_OPT_FILE, 0, "schreibe Fehler und Warnungen in die genannte <Datei>" },
{ TC_OPT_GDOC, 0, "erzeuge saubere Version des aus Google Docs exportierten HTML" },
{ TC_OPT_HELP, 0, "liste Kommandozeilenoptionen" },
{ TC_OPT_HELPCFG, 0, "alle Konfigurationseinstellungen auflisten" },
{ TC_OPT_HELPENV, 0, "Informationen zu Umgebung und Laufzeiteinstellungen anzeigen" },
{ TC_OPT_HELPOPT, 0, "zeige eine Beschreibung der <Option>" },
{ TC_OPT_IBM858, 0, "verwende IBM-858 (CP850+Euro) für Eingaben, US-ASCII für Ausgaben" },
{ TC_OPT_INDENT, 0, "Element Inhalt einrücken" },
{ TC_OPT_ISO2022, 0, "Verwende ISO-2022 für Ein- und Ausgaben" },
{/* The strings "Tidy" and "HTML Tidy" are the program name and must not be translated. */
TC_OPT_LANGUAGE, 0,
"Sprache für Ausgaben von Tidy auf <Sprache> einstellen. Für weitere Hinweise geben Sie '-language help' ein. "
"Verwendung vor Argumenten, die Ausgaben erzeugen, damit die Spracheinstellung beachtet wird, z.B.,"
"`tidy -lang es -lang help`."
},
{ TC_OPT_LATIN0, 0, "verwende ISO-8859-15 für Eingaben, US-ASCII für Ausgaben" },
{ TC_OPT_LATIN1, 0, "verwende ISO-8859-1 für Ein- und Ausgaben" },
{ TC_OPT_MAC, 0, "verwende MacRoman für Eingaben, US-ASCII für Ausgaben" },
{ TC_OPT_MODIFY, 0, "originale Eingabedateien verändern" },
{ TC_OPT_NUMERIC, 0, "eher numerische- als benannte Entities ausgeben" },
{ TC_OPT_OMIT, 0, "optionale Start- und End-Tags weglassen" },
{ TC_OPT_OUTPUT, 0, "Ausgaben in die genannte <Datei> schreiben" },
{ TC_OPT_QUIET, 0, "unwesentliche Ausgaben unterdrücken" },
{ TC_OPT_RAW, 0, "Werte über 127 ausgeben, ohne Konvertierung zu Entities" },
{ TC_OPT_SHIFTJIS, 0, "verwende Shift_JIS für Ein- und Ausgaben" },
{ TC_OPT_SHOWCFG, 0, "Aktuelle Konfigurationseinstellungen auflisten" },
{ TC_OPT_EXP_CFG, 0, "Aktuelle Konfigurationseinstellungen so auflisten, wie sie für eine Konfigurationsdatei geeignet sind" },
{ TC_OPT_EXP_DEF, 0, "Standard Konfigurationseinstellungen so auflisten, wie sie für eine Konfigurationsdatei geeignet sind" },
{ TC_OPT_UPPER, 0, "erzwinge GroÃschreibung für Tags" },
{ TC_OPT_UTF16, 0, "verwende UTF-16 für Ein- und Ausgaben" },
{ TC_OPT_UTF16BE, 0, "verwende UTF-16BE für Ein- und Ausgaben" },
{ TC_OPT_UTF16LE, 0, "verwende UTF-16LE für Ein- und Ausgaben" },
{ TC_OPT_UTF8, 0, "verwende UTF-8 für Ein- und Ausgaben" },
{/* The strings "Tidy" and "HTML Tidy" are the program name and must not be translated. */
TC_OPT_VERSION, 0, "Tidy-Version anzeigen"
},
{ TC_OPT_WIN1252, 0, "verwende Windows-1252 für Eingaben, US-ASCII für Ausgaben" },
{ TC_OPT_WRAP, 0,
"Text an der genannten <Spalte> umbrechen. 0 wird angenommen, wenn <Spalte> fehlt. "
"Wenn diese Option fehlt, gilt der Standard für die Option 'wrap'."
},
{ TC_OPT_XML, 0, "bestimmen, dass die Eingabe wohlgeformtes XML ist" },
{ TC_OPT_XMLCFG, 0, "alle Konfigurationsoptionen im XML Format auflisten" },
{ TC_OPT_XMLHELP, 0, "Kommandozeilenparameter im XML Format auflisten" },
{/* The strings "Tidy" and "HTML Tidy" are the program name and must not be translated. */
TC_OPT_XMLSTRG, 0, "Alle Zeichenketten als XML ausgeben"
},
{ TC_OPT_XMLERRS, 0, "Fehlerkonstanten und Zeichenketten im XML-Format ausgeben" },
tidy-html5.c view on Meta::CPAN
- Use only <code></code>, <var></var>, <em></em>, <strong></strong>, and
<br/>.
- Entities, tags, attributes, etc., should be enclosed in <code></code>.
- Option values should be enclosed in <var></var>.
- It's very important that <br/> be self-closing!
- The strings "Tidy" and "HTML Tidy" are the program name and must not
be translated. */
TidyCSSPrefix, 0,
"This option specifies the prefix that Tidy uses for styles rules. "
"<br/>"
"By default, <var>c</var> will be used. "
},
{/* Important notes for translators:
- Use only <code></code>, <var></var>, <em></em>, <strong></strong>, and
<br/>.
- Entities, tags, attributes, etc., should be enclosed in <code></code>.
- Option values should be enclosed in <var></var>.
- It's very important that <br/> be self-closing!
- The strings "Tidy" and "HTML Tidy" are the program name and must not
be translated. */
TidyDecorateInferredUL, 0,
"This option specifies if Tidy should decorate inferred "
"<code><ul></code> elements with some CSS markup to avoid indentation "
"to the right. "
},
{/* Important notes for translators:
- Use only <code></code>, <var></var>, <em></em>, <strong></strong>, and
<br/>.
- Entities, tags, attributes, etc., should be enclosed in <code></code>.
- Option values should be enclosed in <var></var>.
- It's very important that <br/> be self-closing!
- The strings "Tidy" and "HTML Tidy" are the program name and must not
be translated. */
TidyDoctype, 0,
"This option specifies the DOCTYPE declaration generated by Tidy. "
"<br/>"
"If set to <var>omit</var> the output won't contain a DOCTYPE "
"declaration. Note this this also implies <code>numeric-entities</code> is "
"set to <var>yes</var>."
"<br/>"
"If set to <var>html5</var> the DOCTYPE is set to "
"<code><!DOCTYPE html></code>."
"<br/>"
"If set to <var>auto</var> (the default) Tidy will use an educated guess "
"based upon the contents of the document. Note that selecting this option "
"will <em>not</em> change the current document's DOCTYPE on output. "
"<br/>"
"If set to <var>strict</var>, Tidy will set the DOCTYPE to the HTML4 or "
"XHTML1 strict DTD."
"<br/>"
"If set to <var>loose</var>, the DOCTYPE is set to the HTML4 or XHTML1 "
"loose (transitional) DTD."
"<br/>"
"Alternatively, you can supply a string for the formal public identifier "
"(FPI)."
"<br/>"
"For example: "
"<br/>"
"<code>doctype: \"-//ACME//DTD HTML 3.14159//EN\"</code>"
"<br/>"
"If you specify the FPI for an XHTML document, Tidy will set the "
"system identifier to an empty string. For an HTML document, Tidy adds a "
"system identifier only if one was already present in order to preserve "
"the processing mode of some browsers. Tidy leaves the DOCTYPE for "
"generic XML documents unchanged. "
"<br/>"
"This option does not offer a validation of document conformance. "
},
{/* Important notes for translators:
- Use only <code></code>, <var></var>, <em></em>, <strong></strong>, and
<br/>.
- Entities, tags, attributes, etc., should be enclosed in <code></code>.
- Option values should be enclosed in <var></var>.
- It's very important that <br/> be self-closing!
- The strings "Tidy" and "HTML Tidy" are the program name and must not
be translated. */
TidyDropEmptyElems, 0,
"This option specifies if Tidy should discard empty elements. "
},
{/* Important notes for translators:
- Use only <code></code>, <var></var>, <em></em>, <strong></strong>, and
<br/>.
- Entities, tags, attributes, etc., should be enclosed in <code></code>.
- Option values should be enclosed in <var></var>.
- It's very important that <br/> be self-closing!
- The strings "Tidy" and "HTML Tidy" are the program name and must not
be translated. */
TidyDropEmptyParas, 0,
"This option specifies if Tidy should discard empty paragraphs. "
},
{/* Important notes for translators:
- Use only <code></code>, <var></var>, <em></em>, <strong></strong>, and
<br/>.
- Entities, tags, attributes, etc., should be enclosed in <code></code>.
- Option values should be enclosed in <var></var>.
- It's very important that <br/> be self-closing!
- The strings "Tidy" and "HTML Tidy" are the program name and must not
be translated. */
TidyDropPropAttrs, 0,
"This option specifies if Tidy should strip out proprietary attributes, "
"such as Microsoft data binding attributes. Additionally attributes "
"that aren't permitted in the output version of HTML will be dropped "
"if used with <code>strict-tags-attributes</code>. "
},
{/* Important notes for translators:
- Use only <code></code>, <var></var>, <em></em>, <strong></strong>, and
<br/>.
- Entities, tags, attributes, etc., should be enclosed in <code></code>.
- Option values should be enclosed in <var></var>.
- It's very important that <br/> be self-closing!
- The strings "Tidy" and "HTML Tidy" are the program name and must not
be translated. */
TidyDuplicateAttrs, 0,
"This option specifies if Tidy should keep the first or last attribute, if "
"an attribute is repeated, e.g. has two <code>align</code> attributes. "
},
{/* Important notes for translators:
- Use only <code></code>, <var></var>, <em></em>, <strong></strong>, and
<br/>.
- Entities, tags, attributes, etc., should be enclosed in <code></code>.
- Option values should be enclosed in <var></var>.
tidy-html5.c view on Meta::CPAN
- The strings "Tidy" and "HTML Tidy" are the program name and must not
be translated. */
TidyErrFile, 0,
"This option specifies the error file Tidy uses for errors and warnings. "
"Normally errors and warnings are output to <code>stderr</code>. "
},
{/* Important notes for translators:
- Use only <code></code>, <var></var>, <em></em>, <strong></strong>, and
<br/>.
- Entities, tags, attributes, etc., should be enclosed in <code></code>.
- Option values should be enclosed in <var></var>.
- It's very important that <br/> be self-closing!
- The strings "Tidy" and "HTML Tidy" are the program name and must not
be translated. */
TidyEscapeCdata, 0,
"This option specifies if Tidy should convert "
"<code><![CDATA[]]></code> sections to normal text. "
},
{/* Important notes for translators:
- Use only <code></code>, <var></var>, <em></em>, <strong></strong>, and
<br/>.
- Entities, tags, attributes, etc., should be enclosed in <code></code>.
- Option values should be enclosed in <var></var>.
- It's very important that <br/> be self-closing!
- The strings "Tidy" and "HTML Tidy" are the program name and must not
be translated. */
TidyEscapeScripts, 0,
"This option causes items that look like closing tags, like "
"<code></g</code> to be escaped to <code><\\/g</code>. Set "
"this option to <var>no</var> if you do not want this."
},
{/* Important notes for translators:
- Use only <code></code>, <var></var>, <em></em>, <strong></strong>, and
<br/>.
- Entities, tags, attributes, etc., should be enclosed in <code></code>.
- Option values should be enclosed in <var></var>.
- It's very important that <br/> be self-closing!
- The strings "Tidy" and "HTML Tidy" are the program name and must not
be translated. */
TidyFixBackslash, 0,
"This option specifies if Tidy should replace backslash characters "
"<code>\\</code> in URLs with forward slashes <code>/</code>. "
},
{/* Important notes for translators:
- Use only <code></code>, <var></var>, <em></em>, <strong></strong>, and
<br/>.
- Entities, tags, attributes, etc., should be enclosed in <code></code>.
- Option values should be enclosed in <var></var>.
- It's very important that <br/> be self-closing!
- The strings "Tidy" and "HTML Tidy" are the program name and must not
be translated. */
TidyFixComments, 0,
"This option specifies if Tidy should replace unexpected hyphens with "
"<code>=</code> characters when it comes across adjacent hyphens. "
"<br/>"
"The default is <var>auto</var> will which will act as <var>no</var> "
"for HTML5 document types, and <var>yes</var> for all other document "
"types. "
"<br/>"
"HTML has abandoned SGML comment syntax, and allows adjacent hyphens "
"for all versions of HTML, although XML and XHTML do not. If you plan "
"to support older browsers that require SGML comment syntax, then "
"consider setting this value to <var>yes</var>."
},
{/* Important notes for translators:
- Use only <code></code>, <var></var>, <em></em>, <strong></strong>, and
<br/>.
- Entities, tags, attributes, etc., should be enclosed in <code></code>.
- Option values should be enclosed in <var></var>.
- It's very important that <br/> be self-closing!
- The strings "Tidy" and "HTML Tidy" are the program name and must not
be translated. */
TidyFixUri, 0,
"This option specifies if Tidy should check attribute values that carry "
"URIs for illegal characters and if such are found, escape them as HTML4 "
"recommends. "
},
{/* Important notes for translators:
- Use only <code></code>, <var></var>, <em></em>, <strong></strong>, and
<br/>.
- Entities, tags, attributes, etc., should be enclosed in <code></code>.
- Option values should be enclosed in <var></var>.
- It's very important that <br/> be self-closing!
- The strings "Tidy" and "HTML Tidy" are the program name and must not
be translated. */
TidyForceOutput, 0,
"This option specifies if Tidy should produce output even if errors are "
"encountered. "
"<br/>"
"Use this option with care; if Tidy reports an error, this "
"means Tidy was not able to (or is not sure how to) fix the error, so the "
"resulting output may not reflect your intention. "
},
{/* Important notes for translators:
- Use only <code></code>, <var></var>, <em></em>, <strong></strong>, and
<br/>.
- Entities, tags, attributes, etc., should be enclosed in <code></code>.
- Option values should be enclosed in <var></var>.
- It's very important that <br/> be self-closing!
- The strings "Tidy" and "HTML Tidy" are the program name and must not
be translated. */
TidyGDocClean, 0,
"This option specifies if Tidy should enable specific behavior for "
"cleaning up HTML exported from Google Docs. "
},
{/* Important notes for translators:
- Use only <code></code>, <var></var>, <em></em>, <strong></strong>, and
<br/>.
- Entities, tags, attributes, etc., should be enclosed in <code></code>.
- Option values should be enclosed in <var></var>.
- It's very important that <br/> be self-closing!
- The strings "Tidy" and "HTML Tidy" are the program name and must not
be translated. */
TidyHideComments, 0,
"This option specifies if Tidy should not print out comments. "
},
{/* Important notes for translators:
- Use only <code></code>, <var></var>, <em></em>, <strong></strong>, and
<br/>.
- Entities, tags, attributes, etc., should be enclosed in <code></code>.
- Option values should be enclosed in <var></var>.
tidy-html5.c view on Meta::CPAN
"With the default <var>no</var> Tidy will replace all source tabs with spaces, "
"controlled by the option <code>tab-size</code>, and the current line offset. "
"Of course, except in the special blocks/elements enumerated below, this will later "
"be reduced to just one space. "
"<br/>"
"If set <var>yes</var> this option specifies Tidy should keep certain tabs "
"found in the source, but only "
"in preformatted blocks like <code><pre></code>, and other CDATA elements like "
"<code><script></code>, <code><style></code>, and other pseudo elements like "
"<code><?php ... ?></code>. As always, all other tabs, or sequences of tabs, in "
"the source will continue to be replaced with a space. "
},
{/* Important notes for translators:
- Use only <code></code>, <var></var>, <em></em>, <strong></strong>, and
<br/>.
- Entities, tags, attributes, etc., should be enclosed in <code></code>.
- Option values should be enclosed in <var></var>.
- It's very important that <br/> be self-closing!
- The strings "Tidy" and "HTML Tidy" are the program name and must not
be translated. */
TidyLiteralAttribs, 0,
"This option specifies how Tidy deals with whitespace characters within "
"attribute values. "
"<br/>"
"If the value is <var>no</var> Tidy normalizes attribute values by "
"replacing any newline or tab with a single space, and further by replacing "
"any contiguous whitespace with a single space. "
"<br/>"
"To force Tidy to preserve the original, literal values of all attributes "
"and ensure that whitespace within attribute values is passed "
"through unchanged, set this option to <var>yes</var>. "
},
{/* Important notes for translators:
- Use only <code></code>, <var></var>, <em></em>, <strong></strong>, and
<br/>.
- Entities, tags, attributes, etc., should be enclosed in <code></code>.
- Option values should be enclosed in <var></var>.
- It's very important that <br/> be self-closing!
- The strings "Tidy" and "HTML Tidy" are the program name and must not
be translated. */
TidyLogicalEmphasis, 0,
"This option specifies if Tidy should replace any occurrence of "
"<code><i></code> with <code><em></code> and any occurrence of "
"<code><b></code> with <code><strong></code>. Any attributes "
"are preserved unchanged. "
"<br/>"
"This option can be set independently of the <code>clean</code> option. "
},
{/* Important notes for translators:
- Use only <code></code>, <var></var>, <em></em>, <strong></strong>, and
<br/>.
- Entities, tags, attributes, etc., should be enclosed in <code></code>.
- Option values should be enclosed in <var></var>.
- It's very important that <br/> be self-closing!
- The strings "Tidy" and "HTML Tidy" are the program name and must not
be translated. */
TidyLowerLiterals, 0,
"This option specifies if Tidy should convert the value of an attribute "
"that takes a list of predefined values to lower case. "
"<br/>"
"This is required for XHTML documents. "
},
{/* Important notes for translators:
- Use only <code></code>, <var></var>, <em></em>, <strong></strong>, and
<br/>.
- Entities, tags, attributes, etc., should be enclosed in <code></code>.
- Option values should be enclosed in <var></var>.
- It's very important that <br/> be self-closing!
- The strings "Tidy" and "HTML Tidy" are the program name and must not
be translated. */
TidyMakeBare, 0,
"This option specifies if Tidy should replace smart quotes and em dashes with "
"ASCII, and output spaces rather than non-breaking "
"spaces, where they exist in the input. "
},
{/* Important notes for translators:
- Use only <code></code>, <var></var>, <em></em>, <strong></strong>, and
<br/>.
- Entities, tags, attributes, etc., should be enclosed in <code></code>.
- Option values should be enclosed in <var></var>.
- It's very important that <br/> be self-closing!
- The strings "Tidy" and "HTML Tidy" are the program name and must not
be translated. */
TidyMakeClean, 0,
"This option specifies if Tidy should perform cleaning of some legacy "
"presentational tags (currently <code><i></code>, "
"<code><b></code>, <code><center></code> when enclosed "
"within appropriate inline tags, and <code><font></code>). If "
"set to <var>yes</var>, then the legacy tags will be replaced with CSS "
"<code><style></code> tags and structural markup as appropriate. "
},
{/* Important notes for translators:
- Use only <code></code>, <var></var>, <em></em>, <strong></strong>, and
<br/>.
- Entities, tags, attributes, etc., should be enclosed in <code></code>.
- Option values should be enclosed in <var></var>.
- It's very important that <br/> be self-closing!
- The strings "Tidy" and "HTML Tidy" are the program name and must not
be translated. */
TidyMark, 0,
"This option specifies if Tidy should add a <code>meta</code> element to "
"the document head to indicate that the document has been tidied. "
"<br/>"
"Tidy won't add a meta element if one is already present. "
},
{/* Important notes for translators:
- Use only <code></code>, <var></var>, <em></em>, <strong></strong>, and
<br/>.
- Entities, tags, attributes, etc., should be enclosed in <code></code>.
- Option values should be enclosed in <var></var>.
- It's very important that <br/> be self-closing!
- The strings "Tidy" and "HTML Tidy" are the program name and must not
be translated. */
TidyMergeDivs, 0,
"This option can be used to modify the behavior of <code>clean</code> when "
"set to <var>yes</var>."
"<br/>"
"This option specifies if Tidy should merge nested <code><div></code> "
"such as <code><div><div>...</div></div></code>. "
"<br/>"
"If set to <var>auto</var> the attributes of the inner "
tidy-html5.c view on Meta::CPAN
- It's very important that <br/> be self-closing!
- The strings "Tidy" and "HTML Tidy" are the program name and must not
be translated. */
TidyOutCharEncoding, 0,
"This option specifies the character encoding Tidy uses for "
"output. Some of the output encodings affect whether or not "
"some characters are translated to entities, although in all "
"cases, some entities will be written according to other Tidy "
"configuration options. "
"<br/>"
"For <var>ascii</var>, <var>mac</var>, and <var>win1252</var> "
"output encodings, entities will be used for all characters "
"with values over 127. "
"<br/>"
"For <var>raw</var> output, Tidy will write values above 127 "
"without translating them to entities. "
"<br/>"
"Output using <var>latin1</var> will cause Tidy to write "
"character values higher than 255 as entities. "
"<br/>"
"The UTF family such as <var>utf8</var> will write output "
"in the respective UTF encoding. "
"<br/>"
"Asian output encodings such as <var>iso2022</var> will write "
"output in the specified encoding, assuming a corresponding "
"<code>input-encoding</code> was specified. "
"<br/>"
"Tidy is not an encoding converter. Although the Latin and UTF "
"encodings can be mixed freely, it is not possible to convert Asian "
"encodings to Latin encodings with Tidy. "
},
{/* Important notes for translators:
- Use only <code></code>, <var></var>, <em></em>, <strong></strong>, and
<br/>.
- Entities, tags, attributes, etc., should be enclosed in <code></code>.
- Option values should be enclosed in <var></var>.
- It's very important that <br/> be self-closing!
- The strings "Tidy" and "HTML Tidy" are the program name and must not
be translated. */
TidyOutFile, 0,
"This option specifies the output file Tidy uses for markup. Normally "
"markup is written to <code>stdout</code>. "
},
{/* Important notes for translators:
- Use only <code></code>, <var></var>, <em></em>, <strong></strong>, and
<br/>.
- Entities, tags, attributes, etc., should be enclosed in <code></code>.
- Option values should be enclosed in <var></var>.
- It's very important that <br/> be self-closing!
- The strings "Tidy" and "HTML Tidy" are the program name and must not
be translated. */
TidyOutputBOM, 0,
"This option specifies if Tidy should write a Unicode Byte Order Mark "
"character (BOM; also known as Zero Width No-Break Space; has value of "
"U+FEFF) to the beginning of the output, and only applies to UTF-8 and "
"UTF-16 output encodings. "
"<br/>"
"If set to <var>auto</var> this option causes Tidy to write a BOM to "
"the output only if a BOM was present at the beginning of the input. "
"<br/>"
"A BOM is always written for XML/XHTML output using UTF-16 output "
"encodings. "
},
{/* Important notes for translators:
- Use only <code></code>, <var></var>, <em></em>, <strong></strong>, and
<br/>.
- Entities, tags, attributes, etc., should be enclosed in <code></code>.
- Option values should be enclosed in <var></var>.
- It's very important that <br/> be self-closing!
- The strings "Tidy" and "HTML Tidy" are the program name and must not
be translated. */
TidyPPrintTabs, 0,
"This option specifies if Tidy should indent with tabs instead of spaces, "
"assuming <code>indent</code> is <var>yes</var>. "
"<br/>"
"Set it to <var>yes</var> to indent using tabs instead of the default "
"spaces. "
"<br/>"
"Use the option <code>indent-spaces</code> to control the number of tabs "
"output per level of indent. Note that when <code>indent-with-tabs</code> "
"is enabled the default value of <code>indent-spaces</code> is reset to "
"<var>1</var>. "
"<br/>"
"Note <code>tab-size</code> controls converting input tabs to spaces. Set "
"it to zero to retain input tabs. "
},
{/* Important notes for translators:
- Use only <code></code>, <var></var>, <em></em>, <strong></strong>, and
<br/>.
- Entities, tags, attributes, etc., should be enclosed in <code></code>.
- Option values should be enclosed in <var></var>.
- It's very important that <br/> be self-closing!
- The strings "Tidy" and "HTML Tidy" are the program name and must not
be translated. */
TidyPreserveEntities, 0,
"This option specifies if Tidy should preserve well-formed entities "
"as found in the input. "
},
{/* Important notes for translators:
- Use only <code></code>, <var></var>, <em></em>, <strong></strong>, and
<br/>.
- Entities, tags, attributes, etc., should be enclosed in <code></code>.
- Option values should be enclosed in <var></var>.
- It's very important that <br/> be self-closing!
- The strings "Tidy" and "HTML Tidy" are the program name and must not
be translated. */
TidyPreTags, 0,
"This option specifies new tags that are to be processed in exactly the "
"same way as HTML's <code><pre></code> element. This option takes a "
"space or comma separated list of tag names. "
"<br/>"
"Unless you declare new tags, Tidy will refuse to generate a tidied file if "
"the input includes previously unknown tags. "
"<br/>"
"Note you cannot as yet add new CDATA elements. "
"<br/>"
"This option is ignored in XML mode. "
},
{/* Important notes for translators:
- Use only <code></code>, <var></var>, <em></em>, <strong></strong>, and
<br/>.
tidy-html5.c view on Meta::CPAN
<br/>.
- Entities, tags, attributes, etc., should be enclosed in <code></code>.
- Option values should be enclosed in <var></var>.
- It's very important that <br/> be self-closing!
- The strings "Tidy" and "HTML Tidy" are the program name and must not
be translated. */
TidyQuiet, 0,
"When enabled, this option limits Tidy's non-document output to report "
"only document warnings and errors. "
},
{/* Important notes for translators:
- Use only <code></code>, <var></var>, <em></em>, <strong></strong>, and
<br/>.
- Entities, tags, attributes, etc., should be enclosed in <code></code>.
- Option values should be enclosed in <var></var>.
- It's very important that <br/> be self-closing!
- The strings "Tidy" and "HTML Tidy" are the program name and must not
be translated. */
TidyQuoteAmpersand, 0,
"This option specifies if Tidy should output unadorned <code>&</code> "
"characters as <code>&amp;</code>, in legacy doctypes only. "
},
{/* Important notes for translators:
- Use only <code></code>, <var></var>, <em></em>, <strong></strong>, and
<br/>.
- Entities, tags, attributes, etc., should be enclosed in <code></code>.
- Option values should be enclosed in <var></var>.
- It's very important that <br/> be self-closing!
- The strings "Tidy" and "HTML Tidy" are the program name and must not
be translated. */
TidyQuoteMarks, 0,
"This option specifies if Tidy should output <code>"</code> characters "
"as <code>&quot;</code> as is preferred by some editing environments. "
"<br/>"
"The apostrophe character <code>'</code> is written out as "
"<code>&#39;</code> since many web browsers don't yet support "
"<code>&apos;</code>. "
},
{/* Important notes for translators:
- Use only <code></code>, <var></var>, <em></em>, <strong></strong>, and
<br/>.
- Entities, tags, attributes, etc., should be enclosed in <code></code>.
- Option values should be enclosed in <var></var>.
- It's very important that <br/> be self-closing!
- The strings "Tidy" and "HTML Tidy" are the program name and must not
be translated. */
TidyQuoteNbsp, 0,
"This option specifies if Tidy should output non-breaking space characters "
"as entities, rather than as the Unicode character value 160 (decimal). "
},
{/* Important notes for translators:
- Use only <code></code>, <var></var>, <em></em>, <strong></strong>, and
<br/>.
- Entities, tags, attributes, etc., should be enclosed in <code></code>.
- Option values should be enclosed in <var></var>.
- It's very important that <br/> be self-closing!
- The strings "Tidy" and "HTML Tidy" are the program name and must not
be translated. */
TidyReplaceColor, 0,
"This option specifies if Tidy should replace numeric values in color "
"attributes with HTML/XHTML color names where defined, e.g. replace "
"<code>#ffffff</code> with <code>white</code>. "
},
{/* Important notes for translators:
- Use only <code></code>, <var></var>, <em></em>, <strong></strong>, and
<br/>.
- Entities, tags, attributes, etc., should be enclosed in <code></code>.
- Option values should be enclosed in <var></var>.
- It's very important that <br/> be self-closing!
- The strings "Tidy" and "HTML Tidy" are the program name and must not
be translated. */
TidyShowErrors, 0,
"This option specifies the number Tidy uses to determine if further errors "
"should be shown. If set to <var>0</var>, then no errors are shown. "
},
{/* Important notes for translators:
- Use only <code></code>, <var></var>, <em></em>, <strong></strong>, and
<br/>.
- Entities, tags, attributes, etc., should be enclosed in <code></code>.
- Option values should be enclosed in <var></var>.
- It's very important that <br/> be self-closing!
- The strings "Tidy" and "HTML Tidy" are the program name and must not
be translated. */
TidyShowFilename, 0,
"This option specifies if Tidy should show the filename in messages. eg: "
"<br/>"
" tidy -q -e --show-filename yes index.html<br/>"
" index.html: line 43 column 3 - Warning: replacing invalid UTF-8 bytes (char. code U+00A9) "
},
{/* Important notes for translators:
- Use only <code></code>, <var></var>, <em></em>, <strong></strong>, and
<br/>.
- Entities, tags, attributes, etc., should be enclosed in <code></code>.
- Option values should be enclosed in <var></var>.
- It's very important that <br/> be self-closing!
- The strings "Tidy" and "HTML Tidy" are the program name and must not
be translated. */
TidyShowInfo, 0,
"This option specifies if Tidy should display info-level messages. "
},
{/* Important notes for translators:
- Use only <code></code>, <var></var>, <em></em>, <strong></strong>, and
<br/>.
- Entities, tags, attributes, etc., should be enclosed in <code></code>.
- Option values should be enclosed in <var></var>.
- It's very important that <br/> be self-closing!
- The strings "Tidy" and "HTML Tidy" are the program name and must not
be translated. */
TidyShowMarkup, 0,
"This option specifies if Tidy should generate a pretty printed version "
"of the markup. Note that Tidy won't generate a pretty printed version if "
"it finds significant errors (see <code>force-output</code>). "
},
{/* Important notes for translators:
- Use only <code></code>, <var></var>, <em></em>, <strong></strong>, and
<br/>.
- Entities, tags, attributes, etc., should be enclosed in <code></code>.
- Option values should be enclosed in <var></var>.
- It's very important that <br/> be self-closing!
- The strings "Tidy" and "HTML Tidy" are the program name and must not
tidy-html5.c view on Meta::CPAN
{ REMOVE_BLINK_MARQUEE, 0, "[7.2.1.1]: remove blink/marquee." },
{ REMOVE_AUTO_REFRESH, 0, "[7.4.1.1]: remove auto-refresh." },
{ REMOVE_AUTO_REDIRECT, 0, "[7.5.1.1]: remove auto-redirect." },
{ ENSURE_PROGRAMMATIC_OBJECTS_ACCESSIBLE_SCRIPT, 0, "[8.1.1.1]: ensure programmatic objects are accessible (script)." },
{ ENSURE_PROGRAMMATIC_OBJECTS_ACCESSIBLE_OBJECT, 0, "[8.1.1.2]: ensure programmatic objects are accessible (object)." },
{ ENSURE_PROGRAMMATIC_OBJECTS_ACCESSIBLE_APPLET, 0, "[8.1.1.3]: ensure programmatic objects are accessible (applet)." },
{ ENSURE_PROGRAMMATIC_OBJECTS_ACCESSIBLE_EMBED, 0, "[8.1.1.4]: ensure programmatic objects are accessible (embed)." },
{ IMAGE_MAP_SERVER_SIDE_REQUIRES_CONVERSION, 0, "[9.1.1.1]: image map (server-side) requires conversion." },
{ SCRIPT_NOT_KEYBOARD_ACCESSIBLE_ON_MOUSE_DOWN, 0, "[9.3.1.1]: <script> not keyboard accessible (onMouseDown)." },
{ SCRIPT_NOT_KEYBOARD_ACCESSIBLE_ON_MOUSE_UP, 0, "[9.3.1.2]: <script> not keyboard accessible (onMouseUp)." },
{ SCRIPT_NOT_KEYBOARD_ACCESSIBLE_ON_CLICK, 0, "[9.3.1.3]: <script> not keyboard accessible (onClick)." },
{ SCRIPT_NOT_KEYBOARD_ACCESSIBLE_ON_MOUSE_OVER, 0, "[9.3.1.4]: <script> not keyboard accessible (onMouseOver)." },
{ SCRIPT_NOT_KEYBOARD_ACCESSIBLE_ON_MOUSE_OUT, 0, "[9.3.1.5]: <script> not keyboard accessible (onMouseOut)." },
{ SCRIPT_NOT_KEYBOARD_ACCESSIBLE_ON_MOUSE_MOVE, 0, "[9.3.1.6]: <script> not keyboard accessible (onMouseMove)." },
{ NEW_WINDOWS_REQUIRE_WARNING_NEW, 0, "[10.1.1.1]: new windows require warning (_new)." },
{ NEW_WINDOWS_REQUIRE_WARNING_BLANK, 0, "[10.1.1.2]: new windows require warning (_blank)." },
{ REPLACE_DEPRECATED_HTML_APPLET, 0, "[11.2.1.1]: replace deprecated html <applet>." },
{ REPLACE_DEPRECATED_HTML_BASEFONT, 0, "[11.2.1.2]: replace deprecated html <basefont>." },
{ REPLACE_DEPRECATED_HTML_CENTER, 0, "[11.2.1.3]: replace deprecated html <center>." },
{ REPLACE_DEPRECATED_HTML_DIR, 0, "[11.2.1.4]: replace deprecated html <dir>." },
{ REPLACE_DEPRECATED_HTML_FONT, 0, "[11.2.1.5]: replace deprecated html <font>." },
{ REPLACE_DEPRECATED_HTML_ISINDEX, 0, "[11.2.1.6]: replace deprecated html <isindex>." },
{ REPLACE_DEPRECATED_HTML_MENU, 0, "[11.2.1.7]: replace deprecated html <menu>." },
{ REPLACE_DEPRECATED_HTML_S, 0, "[11.2.1.8]: replace deprecated html <s>." },
{ REPLACE_DEPRECATED_HTML_STRIKE, 0, "[11.2.1.9]: replace deprecated html <strike>." },
{ REPLACE_DEPRECATED_HTML_U, 0, "[11.2.1.10]: replace deprecated html <u>." },
{ FRAME_MISSING_TITLE, 0, "[12.1.1.1]: <frame> missing title." },
{ FRAME_TITLE_INVALID_NULL, 0, "[12.1.1.2]: <frame> title invalid (null)." },
{ FRAME_TITLE_INVALID_SPACES, 0, "[12.1.1.3]: <frame> title invalid (spaces)." },
{ ASSOCIATE_LABELS_EXPLICITLY, 0, "[12.4.1.1]: associate labels explicitly with form controls." },
{ ASSOCIATE_LABELS_EXPLICITLY_FOR, 0, "[12.4.1.2]: associate labels explicitly with form controls (for)." },
{ ASSOCIATE_LABELS_EXPLICITLY_ID, 0, "[12.4.1.3]: associate labels explicitly with form controls (id)." },
{ LINK_TEXT_NOT_MEANINGFUL, 0, "[13.1.1.1]: link text not meaningful." },
{ LINK_TEXT_MISSING, 0, "[13.1.1.2]: link text missing." },
{ LINK_TEXT_TOO_LONG, 0, "[13.1.1.3]: link text too long." },
{ LINK_TEXT_NOT_MEANINGFUL_CLICK_HERE, 0, "[13.1.1.4]: link text not meaningful (click here)." },
{ METADATA_MISSING, 0, "[13.2.1.1]: Metadata missing." },
{ METADATA_MISSING_REDIRECT_AUTOREFRESH, 0, "[13.2.1.3]: Metadata missing (redirect/auto-refresh)." },
{ SKIPOVER_ASCII_ART, 0, "[13.10.1.1]: skip over ascii art." },
#if SUPPORT_CONSOLE_APP
/********************************************************
** Console Application
** Although these strings are not used within LibTidy
** and only for the console application, they are
** provided as part of LibTidy for convenience to
** developers.
********************************************************/
{ TC_LABEL_COL, 0, "column" },
{ TC_LABEL_FILE, 0, "file" },
{ TC_LABEL_LANG, 0, "lang" },
{ TC_LABEL_LEVL, 0, "level" },
{ TC_LABEL_OPT, 0, "option" },
{ TC_MAIN_ERROR_LOAD_CONFIG, 0, "Loading config file \"%s\" problems, err = %d" },
{ TC_OPT_ACCESS, 0,
"do additional accessibility checks (<level> = 0, 1, 2, 3). 0 is "
"assumed if <level> is missing."
},
{ TC_OPT_ASCII, 0, "use ISO-8859-1 for input, US-ASCII for output" },
{ TC_OPT_ASHTML, 0, "force XHTML to well formed HTML" },
{ TC_OPT_ASXML, 0, "convert HTML to well formed XHTML" },
{ TC_OPT_BARE, 0, "strip out smart quotes and em dashes, etc." },
{ TC_OPT_BIG5, 0, "use Big5 for both input and output" },
{ TC_OPT_CLEAN, 0, "replace FONT, NOBR and CENTER tags with CSS" },
{ TC_OPT_CONFIG, 0, "set configuration options from the specified <file>" },
{ TC_OPT_ERRORS, 0, "show only errors and warnings" },
{ TC_OPT_FILE, 0, "write errors and warnings to the specified <file>" },
{ TC_OPT_GDOC, 0, "produce clean version of html exported by Google Docs" },
{ TC_OPT_HELP, 0, "list the command line options" },
{ TC_OPT_HELPCFG, 0, "list all configuration options" },
{ TC_OPT_HELPENV, 0, "show information about the environment and runtime configuration" },
{ TC_OPT_HELPOPT, 0, "show a description of the <option>" },
{ TC_OPT_IBM858, 0, "use IBM-858 (CP850+Euro) for input, US-ASCII for output" },
{ TC_OPT_INDENT, 0, "indent element content" },
{ TC_OPT_ISO2022, 0, "use ISO-2022 for both input and output" },
{/* The strings "Tidy" and "HTML Tidy" are the program name and must not be translated. */
TC_OPT_LANGUAGE, 0,
"set Tidy's output language to <lang>. Specify '-language help' for more help. "
"Use before output-causing arguments to ensure the language takes effect, e.g.,"
"`tidy -lang es -lang help`."
},
{ TC_OPT_LATIN0, 0, "use ISO-8859-15 for input, US-ASCII for output" },
{ TC_OPT_LATIN1, 0, "use ISO-8859-1 for both input and output" },
{ TC_OPT_MAC, 0, "use MacRoman for input, US-ASCII for output" },
{ TC_OPT_MODIFY, 0, "modify the original input files" },
{ TC_OPT_NUMERIC, 0, "output numeric rather than named entities" },
{ TC_OPT_OMIT, 0, "omit optional start tags and end tags" },
{ TC_OPT_OUTPUT, 0, "write output to the specified <file>" },
{ TC_OPT_QUIET, 0, "suppress nonessential output" },
{ TC_OPT_RAW, 0, "output values above 127 without conversion to entities" },
{ TC_OPT_SHIFTJIS, 0, "use Shift_JIS for both input and output" },
{ TC_OPT_SHOWCFG, 0, "list the current configuration settings" },
{ TC_OPT_EXP_CFG, 0, "list the current configuration settings, suitable for a config file" },
{ TC_OPT_EXP_DEF, 0, "list the default configuration settings, suitable for a config file" },
{ TC_OPT_UPPER, 0, "force tags to upper case" },
{ TC_OPT_UTF16, 0, "use UTF-16 for both input and output" },
{ TC_OPT_UTF16BE, 0, "use UTF-16BE for both input and output" },
{ TC_OPT_UTF16LE, 0, "use UTF-16LE for both input and output" },
{ TC_OPT_UTF8, 0, "use UTF-8 for both input and output" },
{/* The strings "Tidy" and "HTML Tidy" are the program name and must not be translated. */
TC_OPT_VERSION, 0, "show the version of Tidy"
},
{ TC_OPT_WIN1252, 0, "use Windows-1252 for input, US-ASCII for output" },
{ TC_OPT_WRAP, 0,
"wrap text at the specified <column>. 0 is assumed if <column> is "
"missing. When this option is omitted, the default of the "
"configuration option 'wrap' applies."
},
{ TC_OPT_XML, 0, "specify the input is well formed XML" },
{ TC_OPT_XMLCFG, 0, "list all configuration options in XML format" },
{ TC_OPT_XMLHELP, 0, "list the command line options in XML format" },
{/* The strings "Tidy" and "HTML Tidy" are the program name and must not be translated. */
TC_OPT_XMLSTRG, 0, "output all of Tidy's strings in XML format"
},
tidy-html5.c view on Meta::CPAN
*/
static languageDefinition language_en_gb = { whichPluralForm_en_gb, {
/***************************************
** This MUST be present and first.
** Specify the code for this language.
***************************************/
{/* Specify the ll or ll_cc language code here. */
TIDY_LANGUAGE, 0, "en_gb"
},
{ TidyAsciiChars, 0,
"Can be used to modify behaviour of the <code>clean</code> option when set "
"to <var>yes</var>. "
"<br/>"
"If set to <var>yes</var> when using <code>clean</code>, "
"<code>&emdash;</code>, <code>&rdquo;</code>, and other named "
"character entities are downgraded to their closest ASCII equivalents. "
},
{ TidyGDocClean, 0,
"This option specifies if Tidy should enable specific behaviour for "
"cleaning up HTML exported from Google Docs. "
},
{ TidyLiteralAttribs, 0,
"This option specifies how Tidy deals with whitespace characters within "
"attribute values. "
"<br/>"
"If the value is <var>no</var> Tidy normalises attribute values by "
"replacing any newline or tab with a single space, and further by replacing "
"any contiguous whitespace with a single space. "
"<br/>"
"To force Tidy to preserve the original, literal values of all attributes "
"and ensure that whitespace within attribute values is passed "
"through unchanged, set this option to <var>yes</var>. "
},
{ TidyMergeDivs, 0,
"This option can be used to modify the behaviour of <code>clean</code> when "
"set to <code>yes</code>."
"<br/>"
"This option specifies if Tidy should merge nested <code><div></code> "
"such as <code><div><div>...</div></div></code>. "
"<br/>"
"If set to <code>auto</code> the attributes of the inner "
"<code><div></code> are moved to the outer one. Nested "
"<code><div></code> with <code>id</code> attributes are <em>not</em> "
"merged. "
"<br/>"
"If set to <code>yes</code> the attributes of the inner "
"<code><div></code> are discarded with the exception of "
"<code>class</code> and <code>style</code>. "
},
{ TidyMergeSpans, 0,
"This option can be used to modify the behaviour of <code>clean</code> when "
"set to <code>yes</code>."
"<br/>"
"This option specifies if Tidy should merge nested <code><span></code> "
"such as <code><span><span>...</span></span></code>. "
"<br/>"
"The algorithm is identical to the one used by <code>merge-divs</code>. "
},
{ TidyReplaceColor, 0,
"This option specifies if Tidy should replace numeric values in colour "
"attributes with HTML/XHTML colour names where defined, e.g. replace "
"<code>#ffffff</code> with <code>white</code>. "
},
{ TidyUseCustomTags, 0,
"This option enables the use of tags for autonomous custom elements, "
"e.g. <flag-icon> with Tidy. Custom tags are disabled if this "
"value is <var>no</var>. Other settings - <var>blocklevel</var>, "
"<var>empty</var>, <var>inline</var>, and <var>pre</var> will treat "
"<em>all</em> detected custom tags accordingly. "
"<br/>"
"The use of <code>new-blocklevel-tags</code>, "
"<code>new-empty-tags</code>, <code>new-inline-tags</code>, or "
"<code>new-pre-tags</code> will override the treatment of custom tags "
"by this configuration option. This may be useful if you have "
"different types of custom tags."
"<br/>"
"When enabled these tags are determined during the processing of your "
"document using opening tags; matching closing tags will be recognised "
"accordingly, and unknown closing tags will be discarded. "
},
{ TEXT_USING_FONT, 0,
"You are recommended to use CSS to specify the font and\n"
"properties such as its size and colour. This will reduce\n"
"the size of HTML files and make them easier to maintain\n"
"compared with using <FONT> elements.\n\n"
},
{ TEXT_USING_BODY, 0, "You are recommended to use CSS to specify page and link colours\n" },
{ TEXT_GENERAL_INFO_PLEA, 0,
"\n"
"Would you like to see Tidy in proper, British English? Please consider \n"
"helping us to localise HTML Tidy. For details please see \n"
"https://github.com/htacg/tidy-html5/blob/master/README/LOCALIZE.md\n"
},
{ UNKNOWN_ELEMENT_LOOKS_CUSTOM, 0, "%s is not recognised! Did you mean to enable the custom-tags option?" },
{ UNKNOWN_ELEMENT, 0, "%s is not recognised!" },
{ MULTIMEDIA_REQUIRES_TEXT, 0, "[1.4.1.1]: multimedia requires synchronised text equivalents." },
{ INFORMATION_NOT_CONVEYED_IMAGE, 0, "[2.1.1.1]: ensure information not conveyed through colour alone (image)." },
{ INFORMATION_NOT_CONVEYED_APPLET, 0, "[2.1.1.2]: ensure information not conveyed through colour alone (applet)." },
{ INFORMATION_NOT_CONVEYED_OBJECT, 0, "[2.1.1.3]: ensure information not conveyed through colour alone (object)." },
{ INFORMATION_NOT_CONVEYED_SCRIPT, 0, "[2.1.1.4]: ensure information not conveyed through colour alone (script)." },
{ INFORMATION_NOT_CONVEYED_INPUT, 0, "[2.1.1.5]: ensure information not conveyed through colour alone (input)." },
{ COLOR_CONTRAST_TEXT, 0, "[2.2.1.1]: poor colour contrast (text)." },
{ COLOR_CONTRAST_LINK, 0, "[2.2.1.2]: poor colour contrast (link)." },
{ COLOR_CONTRAST_ACTIVE_LINK, 0, "[2.2.1.3]: poor colour contrast (active link)." },
{ COLOR_CONTRAST_VISITED_LINK, 0, "[2.2.1.4]: poor colour contrast (visited link)." },
{ LAYOUT_TABLES_LINEARIZE_PROPERLY, 0, "[5.3.1.1]: verify layout tables linearise properly." },
#if SUPPORT_CONSOLE_APP
{ TC_TXT_HELP_LANG_2, 0,
"\n"
"The following languages are currently installed in Tidy. Please \n"
"note that there's no guarantee that they are complete; only that \n"
"one developer or another started to add the language indicated. \n"
"\n"
"Incomplete localisations will default to \"en\" when necessary. \n"
"Please report instances of incorrect strings to the Tidy team. \n"
"\n"
},
#endif /* SUPPORT_CONSOLE_APP */
{/* This MUST be present and last. */
tidy-html5.c view on Meta::CPAN
"supprimé, si un attribut <code>id</code> existe ou a été ajouté. "
},
{ TidyAsciiChars, 0,
"Peut être utilisé pour modifier le comportement de l'option <code>clean</code> si sa valeur est "
"<var>yes</var>. <br/> Lorsque la valeur de <code>clean</code> vaut <var>yes</var>, <code>&"
"emdash;</code>, <code>&rdquo;</code>, et d'autres entités nommées sont déclassées vers leurs "
"plus proches équivalents ASCII."
},
{ TidyBlockTags, 0,
"Cette option définit de nouvelles balises de type bloc. Elle prend une liste de noms de balises "
"séparés par un espace ou une virgule. <br/>à moins que vous ne déclariez de nouvelles balises, Tidy "
"refusera de produire une sortie si l'entrée introduit préalablement des balises inconnues. <br/"
">Notez qu'il est impossible de modifier le modèle de contenu pour des éléments comme <code><"
"table></code>, <code><ul></code>, <code><ol></code> et <code><dl></code>. <br/"
">Cette option est ignorée avec le mode XML. "
},
{ TidyBodyOnly, 0,
"Cette option précise si Tidy doit seulement afficher les contenus de la balise <code><body></"
"code> en tant que fragment HTML. <br/>Si sa valeur est <var>auto</var>, ceci est effectué seulement "
"si la balise <code><body></code> a été déduite. <br/>L'intérêt est de pouvoir incorporer "
"entièrement des pages existantes en tant que partie d'une autre page. <br/>Cette option n'a pas "
"d'effet si la sortie XML a été demandée. "
},
{ TidyBreakBeforeBR, 0,
"Cette option précise si Tidy doit ajouter un saut de ligne avant chaque élément <code><br></"
"code>."
},
{ TidyCharEncoding, 0,
"Cette option permet de préciser l'encodage des caractères qui sera utilisé par Tidy pour l'entrée "
"et la sortie. <br/>Pour l'<var>ascii</var> Tidy acceptera les valeurs de caractère Latin-1 "
"(ISO-8859-1), mais utilisera les entités pour tous les caractères de valeur >127. <br/>Pour la "
"valeur <var>raw</var>, Tidy produira des valeurs au dessus de 127, sans les traduires en entités. "
"<br/>Pour <var>latin1</var>, les caractères au dessus de 255 seront écrits en entités. <br/>Pour "
"<var>utf8</var>, Tidy suppose qu'aussi bien l'entrée que la sortie sont encodés en UTF-8. <br/>Vous "
"pouvez utiliser <var>iso2022</var> pour les fichiers utilisant la famille d'encodage ISO-2022, par "
"exemple ISO-2022-JP. <br/>Pour <var>mac</var> et <var>win1252</var>, Tidy acceptera les valeurs de "
"caractères spécifiques de l'éditeur, mais utilisera les entités pour tous les caractères de valeur "
">127. <br/>Pour les encodages non supportés, utilisez un utilitaire tiers pour convertir depuis "
"et vers l'UTF-8. "
},
{ TidyCoerceEndTags, 0,
"Cette option précise si Tidy doit forcer la fermeture d'une balise d'ouverture, dans les cas où il "
"semble qu'une balise de fin soit attendue; Dans cet exemple,<br/><code><span>foo <b>"
"bar<b> baz</span></code> <br/>Tidy va produire <br/><code><span>foo <b>"
"bar</b> baz</span></code> "
},
{ TidyCSSPrefix, 0,
"Cette option précise le préfixe que Tidy utilise pour les règles de styles. <br/> Par défaut, "
"<var>c</var> sera utilisé."
},
{ TidyDecorateInferredUL, 0,
"Cette option précise si Tidy doit décorer le code déduit des éléments <code><ul></code> avec "
"du balisage CSS pour éviter un décalage d'indentation vers la droite. "
},
{ TidyDoctype, 0,
"Cette option spécifie la déclaration DOCTYPE générée par Tidy. <br/> Si <var>omit</var>, la sortie "
"ne contiendra pas de déclaration DOCTYPE. Notez que cela implique aussi que <code>numeric-entities</"
"code> soit réglé sur <var>yes</var>. <br/> Si <code>html5</code>, la déclaration DOCTYPE est réglée "
"sur <code><! DOCTYPE html></code>. <br/> Si <var>auto</var> (par défaut), Tidy tentera de "
"déduire la déclaration DOCTYPE à partir du contenu du document. <br/> Si elle est définie "
"<var>strict</var>, Tidy utilisera la déclaration DOCTYPE HTML4 ou XHTML 1 DTD strict. <br/> Si "
"<var>loose</var>, la déclaration DOCTYPE est réglée sur HTML4 ou XHTML1 loose (transitional) DTD. "
"<br/> En alternative, vous pouvez fournir une chaîne pour l'identificateur public formel (FPI).<br/"
"> Par exemple: <br/> <code>doctype: \"- // ACME // DTD HTML. 3,14159 //EN\"</code> <br/> Si vous "
"spécifiez le FPI pour un document XHTML, Tidy établira l'identifiant système à une chaîne vide. "
"Pour un document HTML, Tidy ajoute un identifiant système seulement s'il était déjà présent, dans "
"le but de préserver le mode de rendu de certains navigateurs. Tidy ne tient pas compte de la "
"déclaration DOCTYPE pour les documents XML génériques inchangés. <br/> Cette option ne permet pas "
"une validation de la conformité du document."
},
{ TidyDropEmptyElems, 0, "Cette option précise si Tidy doit rejeter les éléments vides." },
{ TidyDropEmptyParas, 0, "Cette option précise si Tidy doit rejeter les paragraphes vides." },
{ TidyDropPropAttrs, 0,
"Cette option précise si Tidy doit enlever les attributs propriétaires, comme les attributs de "
"liaison de données Microsoft. Les attributs supplémentaires qui ne sont pas autorisés dans la "
"version HTML en sortie, seront supprimés avec l'utilisation conjointe de l'option <code>strict-tags-"
"attributes</code>."
},
{ TidyDuplicateAttrs, 0,
"Cette option précise quel attribut, du premier ou du dernier, Tidy doit garder s'il est répété, par "
"exemple dans le cas de deux attributs <code>align</code>."
},
{ TidyEmacs, 0,
"Cette option précise si Tidy doit adopter un format de rapports d'erreurs et d'avertissements plus "
"facilement exploitable par GNU Emacs."
},
{ TidyEmptyTags, 0,
"Cette option précise les nouvelles balises inline. Cette option prend une liste de noms de balises "
"séparés par un espace ou une virgule. <br/>Tant que vous n'avez pas déclaré de nouvelles balises, "
"Tidy refusera de générer un fichier nettoyé si l'entrée contient des balises inconnues. <br/> "
"pensez aussi à déclarer les balises vides, soit inline, soit bloc. <br/>Cette option est ignorée "
"par le mode XML."
},
{ TidyEncloseBlockText, 0,
"Cette option précise si Tidy doit insérer un élément <code><p></code> pour encadrer un "
"quelconque texte trouvé, dans n'importe quel élément qui permet de mélanger du contenu pour "
"<var>HTML transitional</var> mais pas HTML strict. "
},
{ TidyEncloseBodyText, 0,
"Cette option précise si Tidy doit encadrer les textes trouvés dans l'élément <code>body</code>, par "
"un élément <code><p></code>. <br/>Elle peut être utile lorsque vous voulez modifier du HTML "
"existant au moyen d'une feuille de style. "
},
{ TidyErrFile, 0,
"Cette option précise le fichier d'erreur que Tidy utilise pour les erreurs et avertissements. En "
"principe les erreurs et avertissements sont envoyés vers la sortie <code>stderr</code>."
},
{ TidyEscapeCdata, 0,
"Cette option précise si Tidy doit convertir les sections <code><![CDATA[]]></code> en texte "
"normal. "
},
{ TidyEscapeScripts, 0,
"Cette option entraîne l'échappement des items qui semblent être des balises de fermeture, ainsi "
"<code></g</code> sera échappée en <code><\\/g</code>. Positionner cette option à <var>no</"
"var> si vous ne voulez pas cette fonctionnalité."
},
{ TidyFixBackslash, 0,
"Cette option précise si Tidy doit remplacer les caractères de barre oblique inversée (anti-slash, "
"<code>\\</code>) dans les URLs avec des barres obliques (slash, <code>/</code>). "
},
{ TidyFixComments, 0,
tidy-html5.c view on Meta::CPAN
},
{ TidyMergeDivs, 0,
"Cette option peut être utilisée pour modifier le comportement de l'option <code>clean</code>, "
"lorsqu'elle vaut <var>yes</var>. <br/>Cette option précise si Tidy doit concaténer les éléments "
"<code><div></code> imbriqués, comme <code><div><div>...</div></div></"
"code>. <br/>Si la valeur vaut <var>auto</var>, les attributs internes du <code><div></code> "
"sont déplacés vers son div externe. Les <code><div></code> imbriqués avec des attributs "
"<code>id</code> ne sont <em>pas</em> concaténés. <br/>Si la valeur vaut <var>yes</var>, les "
"attributs du <code><div></code> interne ne sont pas pris en compte, Ã l'exception de "
"<code>class</code> et de <code>style</code>. "
},
{ TidyMergeEmphasis, 0,
"Cette option précise si Tidy doit concaténer les éléments <code><b></code> et <code><i>"
"</code>; par exemple, pour le cas <br/><code><b class=\"rtop-2\">foo <b class=\"r2-2\">"
"bar</b> baz</b></code>, <br/>Tidy produira la sortie <code><b class=\"rtop-2\">"
"foo bar baz</b></code>. "
},
{ TidyMergeSpans, 0,
"Cette option peut être utlisée pour modifier le comportement de <code>clean</code>, si elle vaut "
"<var>yes</var>.<br/>Cette option précise si Tidy doit concaténer les <code><span></code> "
"imbriqués, comme suit : <code><span><span>...</span></span></code>. <br/"
">L'algorithme est le même que celui de <code>merge-divs</code>. "
},
{ TidyNCR, 0, "Cette option précise si Tidy doit autoriser les références numériques de caractères. " },
{ TidyNewline, 0,
"La valeur par défaut est appropriée à la plateforme d'exécution de Tidy. <br/>Généralement "
"<var>CRLF</var> sur PC-DOS, Windows et OS/2; <var>'\r'</var> sur Classic Mac OS; et <var>'\n'</var> "
"partout ailleurs (Linux, Mac OS X, et Unix). "
},
{ TidyNumEntities, 0,
"Cette option précise si Tidy doit afficher les entités autres que les entités HTML intégrées "
"(<code>&amp;</code>, <code>&lt;</code>, <code>&gt;</code>, et <code>&quot;</code>) "
"dans la forme numérique plutôt que dans la forme nommée. <br/>Seules les entités compatibles avec "
"la déclaration DOCTYPE générée sont utilisées. <br/>Les entités qui peuvent être représentées dans "
"l'encodage de sortie sont traduites avec leur correspondance. "
},
{ TidyOmitOptionalTags, 0,
"Cette option précise si Tidy doit omettre les balises optionnelles ouvrantes et fermantes, "
"lorsqu'il produit une sortie. <br/>Activer cette option entraîne l'omission en sortie de toutes les "
"balises correspondantes aux éléments <code><html></code>, <code><head></code>, and "
"<code><body></code>, de même que les balises de fermeture comme <code></p></code>, "
"<code></li></code>, <code></dt></code>, <code></dd></code>, <code></option>"
"</code>, <code></tr></code>, <code></td></code>, et <code></th></code>. <br/"
">Cette option est ignorée pour la sortie XML. "
},
{ TidyOutCharEncoding, 0,
"Cette option précise l'encodage de caractère utilisé par Tidy pour la sortie. <br/>Notez que cela "
"peut être différent de <code>input-encoding</code> seulement pour les encodages latins (<var>ascii</"
"var>, <var>latin0</var>, <var>latin1</var>, <var>mac</var>, <var>win1252</var>, <var>ibm858</var>)."
"<br/>Voir <code>char-encoding</code> pour plus d'informations."
},
{ TidyOutFile, 0,
"Cette option précise le fichier de sortie que Tidy utilise pour la structure de balises. En "
"principe la structure est écrite vers <code>stdout</code>. "
},
{ TidyOutputBOM, 0,
"Cette option précise si Tidy doit écrire un caractère indicateur d'ordre des octets (Unicode Byte "
"Order Mark ou BOM; connu aussi sous Zero Width No-Break Space; a la valeur de U+FEFF) au début de "
"la sortie, ce qui ne s'applique qu'aux sorties encodées en UTF-8 et UTF-16. <br/>Si l'option vaut "
"<var>auto</var>, Tidy écrira un BOM vers la sortie seulement si un BOM était présent au début de "
"l'entrée. <br/>Un BOM est toujours écrit pour la sortie XML/XHTML des sorties encodées en UTF-16. "
},
{ TidyPPrintTabs, 0,
"Cette option précise si tidy doit indenter avec des tabulations plutôt que des espaces, en "
"supposant que <code>indent</code> vaut <var>yes</var>. <br/>Définir cette option à <var>yes</var> "
"indente avec des tabulations plutôt que des espaces, valeur par défaut. <br />Utilisez l'option "
"<code>indent-spaces</code> pour redéfinir le nombre de tabulations en sortie par niveau "
"d'indentation. Notez que lorsque <code>indent-with-tabs</code> est activé, la valeur par défaut de "
"<code>indent-spaces</code> est réinitialisée à <var>1</var>. <br/>Notez que <code>tab-size</code> "
"contrôle la conversion des tabulations d'entrée en des espaces de sortie. Définissez-la à zéro pour "
"conserver les tabulations en entrée."
},
{ TidyPreserveEntities, 0, "Cette option précise si Tidy doit préserver les entités bien formées telles que trouvées en entrée. " },
{ TidyPreTags, 0,
"Cette option précise les nouvelles balises qui doivent être traitées exactement de la même façon "
"que l'élément HTML <code><pre></code>. Cette option prend une liste de nom de balises "
"séparées par un espace ou une virgule. <br/>Sauf si vous déclarez de nouvelles balises, Tidy "
"refusera de générer un fichier Tidy en sortie si l'entrée inclut préalablement des balises "
"inconnues. <br/>Notez que vous ne pouvez encore ajouter de nouveaux éléments CDATA. <br/>Cette "
"option est ignorée avec le mode XML. "
},
{ TidyPunctWrap, 0,
"Cette option précise si Tidy doit passer à la ligne après certains caractères de ponctuation "
"Unicode ou chinois."
},
{ TidyQuiet, 0,
"Cette option précise si Tidy doit afficher le résumé du nombre des erreurs et avertissements, ou "
"les messages de bienvenue et d'information."
},
{ TidyQuoteAmpersand, 0,
"Cette option précise si Tidy doit afficher en sortie les caractères <code>&</code> en les "
"écrivant <code>&amp;</code>. "
},
{ TidyQuoteMarks, 0,
"Cette option précise si Tidy doit afficher les caractères <code>"</code> comme <code>&quot;"
"</code> comme préféré par certains environnements d'édition. <br/>Le caractère apostrophe <code>'</"
"code> est écrit <code>&#39;</code> car de nombreux navigateurs webs ne supportent pas encore "
"l'écriture <code>&apos;</code>. "
},
{ TidyQuoteNbsp, 0,
"Cette option précise si Tidy doit afficher les espaces insécables en tant qu'entités, plutôt qu'en "
"utilisant la valeur de caractère unicode 160 (décimale). "
},
{ TidyReplaceColor, 0,
"Cette option précise si Tidy doit remplacer les valeurs numériques dans les attributs de couleur "
"par les noms de couleurs HTML/XHTML lorsque définies, par exemple en remplaçant <code>#ffffff</"
"code> par <code>white</code>. "
},
{ TidyShowErrors, 0,
"Cette option précise le nombre utilisé par Tidy pour déterminer si les erreurs suivantes doivent "
"être montrées. Si la valeur est <var>0</var>, aucune erreur n'est affichée. "
},
{ TidyShowInfo, 0, "Cette option précise si Tidy doit afficher les messages de niveau info-level." },
{ TidyShowMarkup, 0,
"Cette option précise si Tidy doit générer un affichage embelli de la structure de balises. Notez "
"que Tidy ne générera pas un affichage embelli s'il trouve des erreurs significatives (voir "
"<code>force-output</code>). "
},
{ TidyShowWarnings, 0,
"Cette option précise si Tidy doit supprimer les avertissements. Cela peut être utile lorsque "
"quelques erreurs sont cachées dans une masse d'avertissements. "
},
{ TidySkipNested, 0,
"Cette option précise que Tidy doit ignorer les balises imbriquées lors de l'analyse des données de "
"script et de style."
},
{ TidySortAttributes, 0,
"Cette option précise que Tidy doit classer les attributs d'un élément en utilisant un algorithme de "
"classement. Si la valeur est <var>alpha</var>, l'algorithme est un classement alphabétique "
"ascendant. "
},
{ TidyStrictTagsAttr, 0,
"Ces options garantissent que les balises et attributs sont valides pour la version HTML en sortie "
"de Tidy. Si la valeur est <var>yes</var> (par défaut) et que le type de document en sortie est une "
"déclaration doctype stricte, alors Tidy rapportera les erreurs. Si le type de document en sortie "
"est une déclaration doctype loose ou transitional, alors Tidy rapportera les avertissements. <br/"
">En complément, si l'option <code>drop-proprietary-attributes</code> est activée, alors les "
"attributs non valables seront aussi supprimés. <br/>Si la valeur est <var>no</var>, ces contrôles "
"ne sont pas effectués. "
},
{ TidyTabSize, 0,
"Cette option précise le nombre de colonnes que Tidy utilise entre deux tabulations successives. "
"Ceci est utilisé pour lier les tabulations aux espaces pendant la lecture de l'entrée."
},
{ TidyUpperCaseAttrs, 0,
"Cette option précise si Tidy doit afficher les noms d'attributs en majuscules. <br/>La valeur par "
"défaut est <var>no</var>, ce qui produit un affichage des attributs en minuscules, excepté pour une "
"entrée XML, pour laquelle la casse originale est préservée. "
},
{ TidyUpperCaseTags, 0,
"Cette option précise si Tidy doit afficher les noms de balises en majuscules. <br/>La valeur par "
"défaut est <var>no</var>, ce qui produit un affichage des balises en minuscules, excepté pour une "
"entrée XML, pour laquelle la casse originale est préservée. "
},
{ TidyUseCustomTags, 0,
"Cette option active dans Tidy l'utilisation de balises pour les éléments personnalisés autonomes, "
"par exemple <flag-icon>. Les balises personnalisées sont désactivées si cette valeur est "
"<var>no</var>. Autres configurations - <var>blocklevel</var>, <var>empty</var>, <var>inline</var>, "
"et <var>pre</var> seront <em>all</em> traités en conséquence comme des balises personnalisées "
"détectées. <br/>L'usage de <code>new-blocklevel-tags</code>, <code>new-empty-tags</code>, <code>new-"
"inline-tags</code>, ou <code>new-pre-tags</code> surchargera le traitement des balises "
"personnalisées par cette option de configuration. Ceci peut être utile si vous avez différents "
"types de balises personnalisées. <br/>Lorsque l'option est activée, ces balises sont déterminées "
"pendant la phase de traitement de votre document, par la balise d'ouverture; les balises de "
"fermeture correspondantes seront reconnues en conséquence, et les balises de fermeture inconnues "
"seront ignorées. "
tidy-html5.c view on Meta::CPAN
{ NOFRAMES_INVALID_NO_VALUE, 0, "[6.5.1.2]: <noframes> section non valide (pas de valeur)." },
{ NOFRAMES_INVALID_CONTENT, 0, "[6.5.1.3]: <noframes> section non valide (contenu)." },
{ NOFRAMES_INVALID_LINK, 0, "[6.5.1.4]: <noframes> section non valide (lien)." },
{ REMOVE_FLICKER_SCRIPT, 0, "[7.1.1.1]: suppression de scintillement (script)." },
{ REMOVE_FLICKER_OBJECT, 0, "[7.1.1.2]: suppression de scintillement (object)." },
{ REMOVE_FLICKER_EMBED, 0, "[7.1.1.1]: suppression de scintillement (embed)." },
{ REMOVE_FLICKER_APPLET, 0, "[7.1.1.1]: suppression de scintillement (applet)." },
{ REMOVE_FLICKER_ANIMATED_GIF, 0, "[7.1.1.1]: suppression de scintillement (gif animé)." },
{ REMOVE_BLINK_MARQUEE, 0, "[7.2.1.1]: suppression de blink/marquee." },
{ REMOVE_AUTO_REFRESH, 0, "[7.4.1.1]: suppression de auto-refresh." },
{ REMOVE_AUTO_REDIRECT, 0, "[7.5.1.1]: suppression de auto-redirect." },
{ ENSURE_PROGRAMMATIC_OBJECTS_ACCESSIBLE_SCRIPT, 0, "[8.1.1.1]: garantir que les objets programmatiques sont accessibles (script)." },
{ ENSURE_PROGRAMMATIC_OBJECTS_ACCESSIBLE_OBJECT, 0, "[8.1.1.2]: garantir que les objets programmatiques sont accessibles (object)." },
{ ENSURE_PROGRAMMATIC_OBJECTS_ACCESSIBLE_APPLET, 0, "[8.1.1.3]: garantir que les objets programmatiques sont accessibles (applet)." },
{ ENSURE_PROGRAMMATIC_OBJECTS_ACCESSIBLE_EMBED, 0, "[8.1.1.4]: garantir que les objets programmatiques sont accessibles (embed)." },
{ IMAGE_MAP_SERVER_SIDE_REQUIRES_CONVERSION, 0, "[9.1.1.1]: image map (côté serveur) nécessite une conversion." },
{ SCRIPT_NOT_KEYBOARD_ACCESSIBLE_ON_MOUSE_DOWN, 0, "[9.3.1.1]: <script> non accessible par le clavier (onMouseDown)." },
{ SCRIPT_NOT_KEYBOARD_ACCESSIBLE_ON_MOUSE_UP, 0, "[9.3.1.2]: <script> non accessible par le clavier (onMouseUp)." },
{ SCRIPT_NOT_KEYBOARD_ACCESSIBLE_ON_CLICK, 0, "[9.3.1.3]: <script> non accessible par le clavier (onClick)." },
{ SCRIPT_NOT_KEYBOARD_ACCESSIBLE_ON_MOUSE_OVER, 0, "[9.3.1.4]: <script> non accessible par le clavier (onMouseOver)." },
{ SCRIPT_NOT_KEYBOARD_ACCESSIBLE_ON_MOUSE_OUT, 0, "[9.3.1.5]: <script> non accessible par le clavier (onMouseOut)." },
{ SCRIPT_NOT_KEYBOARD_ACCESSIBLE_ON_MOUSE_MOVE, 0, "[9.3.1.6]: <script> non accessible par le clavier (onMouseMove)." },
{ NEW_WINDOWS_REQUIRE_WARNING_NEW, 0, "[10.1.1.1]: les nouvelles fenêtres nécessitent un avertissement (_new)." },
{ NEW_WINDOWS_REQUIRE_WARNING_BLANK, 0, "[10.1.1.2]: les nouvelles fenêtres nécessitent un avertissement (_blank)." },
{ REPLACE_DEPRECATED_HTML_APPLET, 0, "[11.2.1.1]: remplacer l'élément HTML déprécié <applet>." },
{ REPLACE_DEPRECATED_HTML_BASEFONT, 0, "[11.2.1.2]: remplacer l'élément HTML déprécié <basefont>." },
{ REPLACE_DEPRECATED_HTML_CENTER, 0, "[11.2.1.3]: remplacer l'élément HTML déprécié <center>." },
{ REPLACE_DEPRECATED_HTML_DIR, 0, "[11.2.1.4]: remplacer l'élément HTML déprécié <dir>." },
{ REPLACE_DEPRECATED_HTML_FONT, 0, "[11.2.1.5]: remplacer l'élément HTML déprécié <font>." },
{ REPLACE_DEPRECATED_HTML_ISINDEX, 0, "[11.2.1.6]: remplacer l'élément HTML déprécié <isindex>." },
{ REPLACE_DEPRECATED_HTML_MENU, 0, "[11.2.1.7]: remplacer l'élément HTML déprécié <menu>." },
{ REPLACE_DEPRECATED_HTML_S, 0, "[11.2.1.8]: remplacer l'élément HTML déprécié <s>." },
{ REPLACE_DEPRECATED_HTML_STRIKE, 0, "[11.2.1.9]: remplacer l'élément HTML déprécié <strike>." },
{ REPLACE_DEPRECATED_HTML_U, 0, "[11.2.1.10]: remplacer l'élément HTML déprécié <u>." },
{ FRAME_MISSING_TITLE, 0, "[12.1.1.1]: <frame> absence de titre." },
{ FRAME_TITLE_INVALID_NULL, 0, "[12.1.1.2]: <frame> titre non valide (null)." },
{ FRAME_TITLE_INVALID_SPACES, 0, "[12.1.1.3]: <frame> titre non valide (espaces)." },
{ ASSOCIATE_LABELS_EXPLICITLY, 0, "[12.4.1.1]: associer explicitement les étiquettes avec les contrôles de formulaire." },
{ ASSOCIATE_LABELS_EXPLICITLY_FOR, 0, "[12.4.1.2]: associer explicitement les étiquettes avec les contrôles de formulaire (for)." },
{ ASSOCIATE_LABELS_EXPLICITLY_ID, 0, "[12.4.1.3]: associer explicitement les étiquettes avec les contrôles de formulaire (id)." },
{ LINK_TEXT_NOT_MEANINGFUL, 0, "[13.1.1.1]: texte du lien peu significatif." },
{ LINK_TEXT_MISSING, 0, "[13.1.1.2]: texte du lien manquant." },
{ LINK_TEXT_TOO_LONG, 0, "[13.1.1.3]: texte du lien trop long." },
{ LINK_TEXT_NOT_MEANINGFUL_CLICK_HERE, 0, "[13.1.1.4]: texte du lien peu significatif (click here)." },
{ METADATA_MISSING, 0, "[13.2.1.1]: Métadonnées manquantes." },
{ METADATA_MISSING_REDIRECT_AUTOREFRESH, 0, "[13.2.1.3]: Métadonnées manquantes (redirect/auto-refresh)." },
{ SKIPOVER_ASCII_ART, 0, "[13.10.1.1]: ignore l'ascii art." },
#if SUPPORT_CONSOLE_APP
{ TC_LABEL_COL, 0, "colonne" },
{ TC_LABEL_FILE, 0, "fichier" },
{ TC_LABEL_LANG, 0, "langue" },
{ TC_LABEL_LEVL, 0, "niveau" },
{ TC_LABEL_OPT, 0, "option" },
{ TC_MAIN_ERROR_LOAD_CONFIG, 0, "Le chargement du fichier de configuration \"%s\" a échoué, err = %d" },
{ TC_OPT_ACCESS, 0,
"faire des vérifications d'accessibilité supplémentaires (<niveau> = 0, 1, 2, 3). implicitement 0 si "
"<niveau> est manquant."
},
{ TC_OPT_ASCII, 0, "utilise ISO-8859-1 pour l'entrée, US-ASCII pour la sortie" },
{ TC_OPT_ASHTML, 0, "force le XHTML en HTML bien structuré" },
{ TC_OPT_ASXML, 0, "converti le HTML en XHTML bien structuré" },
{ TC_OPT_BARE, 0, "enlève les guillemets à double chevron et les tirets longs." },
{ TC_OPT_BIG5, 0, "utilise Big5 pour l'entrée et la sortie" },
{ TC_OPT_CLEAN, 0, "remplace les balises FONT, NOBR et CENTER par du CSS" },
{ TC_OPT_CONFIG, 0, "détermine les options de configuration à partir du <fichier> spécifié " },
{ TC_OPT_ERRORS, 0, "affiche seulement les erreurs et avertissements" },
{ TC_OPT_FILE, 0, "écrit les erreurs et avertissements vers le <fichier> précisé " },
{ TC_OPT_GDOC, 0, "produit une version nettoyée du html exporté par Google Docs" },
{ TC_OPT_HELP, 0, "liste toutes les options de ligne de commande" },
{ TC_OPT_HELPCFG, 0, "liste toutes les options de configuration" },
{ TC_OPT_HELPOPT, 0, "Affiche une description de l'<option>" },
{ TC_OPT_IBM858, 0, "utilise IBM-858 (CP850+Euro) pour l'entrée, US-ASCII pour la sortie" },
{ TC_OPT_INDENT, 0, "indente le contenu d'un élément" },
{ TC_OPT_ISO2022, 0, "utilise ISO-2022 pour l'entrée et la sortie" },
{ TC_OPT_LANGUAGE, 0,
"Précise le langage de sortie de Tidy pour <lang>. Ajouter '-language help' pour plus d'aide. "
"Utiliser avant les arguments produisant des sorties pour garantir que le langage sera pris en "
"compte, par exemple `tidy -lang fr -lang help`."
},
{ TC_OPT_LATIN0, 0, "utilise ISO-8859-15 pour l'entrée, US-ASCII pour la sortie" },
{ TC_OPT_LATIN1, 0, "utilise ISO-8859-1 pour l'entrée et la sortie" },
{ TC_OPT_MAC, 0, "utilise MacRoman pour l'entrée, US-ASCII pour la sortie" },
{ TC_OPT_MODIFY, 0, "modifie le fichier original en entrée" },
{ TC_OPT_NUMERIC, 0, "sortie numérique plutôt qu'entités nommées" },
{ TC_OPT_OMIT, 0, "Omettre les tags optionnels d'ouverture et de fermeture" },
{ TC_OPT_OUTPUT, 0, "écrit la sortie vers le fichier <file>" },
{ TC_OPT_QUIET, 0, "supprime les sorties non-essentielles" },
{ TC_OPT_RAW, 0, "Valeurs de sortie supérieures à 127 sans conversion en entités" },
{ TC_OPT_SHIFTJIS, 0, "utilise Shift_JIS à la fois pour l'entrée et la sortie" },
{ TC_OPT_SHOWCFG, 0, "liste les options de configuration" },
{ TC_OPT_UPPER, 0, "force les balises en lettres majuscules" },
{ TC_OPT_UTF16, 0, "utilise UTF-16 à la fois pour l'entrée et la sortie" },
{ TC_OPT_UTF16BE, 0, "utilise UTF-16BE à la fois pour l'entrée et la sortie" },
{ TC_OPT_UTF16LE, 0, "utilise UTF-16LE à la fois pour l'entrée et la sortie" },
{ TC_OPT_UTF8, 0, "utilise UTF-8 à la fois pour l'entrée et la sortie" },
{ TC_OPT_VERSION, 0, "affiche la version de Tidy" },
{ TC_OPT_WIN1252, 0, "utilise Windows-1252 pour l'entrée, US-ASCII pour la sortie" },
{ TC_OPT_WRAP, 0,
"coupe le texte à la colonne <column>. 0 est supposé si <column> est manquante. Si cette option "
"n'est pas précisée, la valeur par défaut de l'option 'wrap' s'applique."
},
{ TC_OPT_XML, 0, "précise que l'entrée est un XML bien structuré" },
{ TC_OPT_XMLCFG, 0, "liste toutes les options de configuration au format XML" },
{ TC_OPT_XMLHELP, 0, "liste les options de ligne de commande au format XML" },
{ TC_OPT_XMLSTRG, 0, "sortie de toutes les chaînes Tidy au format XML" },
{ TC_OPT_XMLERRS, 0, "constantes et chaînes de sortie d'erreur au format XML" },
{ TC_OPT_XMLOPTS, 0, "descriptions des options de sortie au format XML" },
{ TC_STRING_CONF_HEADER, 0, "Fichier de configuration:" },
{ TC_STRING_CONF_NAME, 0, "Nom" },
{ TC_STRING_CONF_TYPE, 0, "Type" },
{ TC_STRING_CONF_VALUE, 0, "Valeur courante" },
{ TC_STRING_OPT_NOT_DOCUMENTED, 0, "Attention: l'option `%s' n'est pas documentée." },
{ TC_STRING_OUT_OF_MEMORY, 0, "Mémoire insuffisante. Abandon." },
{ TC_STRING_FATAL_ERROR, 0, "Erreur fatale: valeur impossible pour id='%d'." },
{ TC_STRING_FILE_MANIP, 0, "Manipulation de fichier" },
{ TC_STRING_PROCESS_DIRECTIVES, 0, "Directives de traitement" },
{ TC_STRING_CHAR_ENCODING, 0, "Encodages de caractère" },
{ TC_STRING_LANG_MUST_SPECIFY, 0, "Une locale POSIX ou Windows doit être précisée." },
{ TC_STRING_LANG_NOT_FOUND, 0, "Tidy n'a pas la langue '%s', '%s' sera utilisé à la place." },
{ TC_STRING_MISC, 0, "Divers" },
{ TC_STRING_XML, 0, "XML" },
tidy-html5.c view on Meta::CPAN
},
{ TidyMergeEmphasis, 0,
"Esta opção especifica se o Tidy deve mesclar elementos <code><b></code>"
" e <code><i></code> aninhados; por exemplo, para o caso de "
"<br/><code><b class=\"rtop-2\">foo <b class=\"r2-2\""
">bar</b> baz</b></code>, <br/>Tidy vai emitir <code><b "
"class=\"rtop-2\">foo bar baz</b></code>. "
},
{ TidyMergeSpans, 0,
"Esta opção pode ser usada para modificar o comportamento de "
"<code>clean</code> quando configurado para <var>yes</var>. <br/>Esta opção "
"especifica se o Tidy deve mesclar <code><span></code> aninhados como "
"<code><span><span>...</span></span></code>. <br/>O "
"algoritmo é idêntico àquele usado por <code>merge-divs</code>. "
},
{ TidyNCR, 0,
"Esta opção especifica se o Tidy deve permitir referências de caracteres "
"numéricos. "
},
{ TidyNewline, 0,
"O padrão é apropriado para a plataforma atual. <br/>Geralmente, CRLF no PC-"
"DOS, Windows e OS/2; '\r' no Mac OS Clássico; e '\n' nos demais (Linux, Mac OS X "
"e Unix). "
},
{ TidyNumEntities, 0,
"Esta opção especifica se o Tidy deve produzir entidades diferentes das "
"entidades HTML integradas (<code>&amp;</code>, <code>&lt;</code>, "
"<code>&gt;</code> e <code>&quot;</code>) no formulário numérico em "
"vez do formulário nomeado. <br/>Somente são usadas entidades compatÃveis com "
"a declaração DOCTYPE gerada. <br/>As entidades que podem ser representadas "
"na codificação de saÃda são traduzidas correspondentemente. "
},
{ TidyOmitOptionalTags, 0,
"Esta opção especifica se o Tidy deve omitir tags de inÃcio e de fim "
"opcionais ao gerar saÃda. <br/>Configurar essa opção causa todas as tags "
"para os elementos <code><html></code>, <code><head></code> e "
"<code><body></code> serem omitidos da saÃda, assim como tags de saÃda "
"como <code></p></code>, <code></li></code>, "
"<code></dt></code>, <code></dd></code>, "
"<code></option></code>, <code></tr></code>, "
"<code></td></code> e <code></th></code>. <br/>Essa opção é "
"ignorada para saÃda XML. "
},
{ TidyOutCharEncoding, 0,
"Esta opção especifica a codificação de caracteres que o Tidy usa para a saÃda. <br/>Note que "
"isso só pode ser diferente de <code>input-encoding</code> para codificações latinas "
"(<var>ascii</var>, <var>latin0</var>, <var>latin1</var>, <var>mac</var>, <var>win1252</var>, "
"<var>ibm858</var>). <br/>Veja <code>char-encoding</code> para mais informações"
},
{ TidyOutFile, 0,
"Essa opção especifica o arquivo de saÃda que o Tidy usa para marcação. "
"Normalmente, a marcação é escrita para <code>stdout</code>. "
},
{ TidyOutputBOM, 0,
"Esta opção especifica se o Tidy deve escrever um caractere Unicode de marca "
"de ordem de byte (BOM, também conhecido como Zero Width No Break Break, tem "
"valor de U+FEFF) no inÃcio da saÃda, e aplica-se apenas a codificações de "
"saÃda UTF-8 e UTF-16. <br/>Se configurado para <var>auto</var>, esta opção "
"faz com que Tidy escreva um BOM para a saÃda somente se um BOM estiver "
"presente no inÃcio da entrada. <br/>Um BOM está sempre escrita para saÃda "
"XML/XHTML usando codificações de saÃda UTF-16. "
},
{ TidyPPrintTabs, 0,
"Esta opção especifica se o Tidy deve aplicar recuo com tabulações em vez de "
"espaços, presumindo que <code>indent</code> seja <var>yes</var>. <br/>Defina-"
"o para <var>yes</var> para recuar usando tabulações em vez dos espaços "
"padrão. <br/>Use a opção <code>indent-spaces</code> para controlar o número "
"de saÃdas de tabulação por nÃvel de recuo. Note que quando <code>indent-with-"
"tabs</code> está habilitado, o valor padrão de <code>indent-spaces</code> é "
"reiniciado para <var>1</var>. <br/>Note que <code>tab-size</code> controla a "
"conversão de tabulações de entrada em espaços. Coloque-o em zero para reter "
"as tabulações de entrada. "
},
{ TidyPreserveEntities, 0,
"Esta opção especifica se o Tidy deve preservar entidades bem-formadas como "
"localizado na entrada. "
},
{ TidyPreTags, 0,
"Esta opção especifica novas tags que devem ser processadas exatamente da "
"mesma forma que o elemento <code><pre></code> de HTML. Esta opção "
"possui uma lista separada por vÃrgulas ou espaços de nomes de tag. <br/>A "
"menos que você declare novas tags, o Tidy se recusará a gerar um arquivo "
"arrumado se a entrada incluir tags anteriormente desconhecidas. <br/>Note "
"que você ainda não pode adicionar novos elementos CDATA. <br/>Esta opção é "
"ignorada no modo XML. "
},
{ TidyPunctWrap, 0,
"Essa opção especifica se o Tidy deve quebrar linha após alguns Unicode ou "
"caracteres de pontuação chineses. "
},
{ TidyQuiet, 0,
"Essa opção especifica se o Tidy deve emitir o resumo dos números de erros e "
"avisos, ou as mensagens de boas-vidas ou informacionais. "
},
{ TidyQuoteAmpersand, 0,
"Essa opção especifica se o Tidy deve emitir caracteres <code>&</code> "
"sem adornos como <code>&amp;</code>. "
},
{ TidyQuoteMarks, 0,
"Esta opção especifica se o Tidy deve enviar caracteres <code>"</code> "
"como <code>"</code> como é preferido por alguns ambientes de edição. "
"<br/>O caractere do apóstrofe <code>'</code> é escrito como "
"<code>&#39;</code> porque muitos navegadores web ainda não oferecem "
"suporte a <code>&apos;</code>. "
},
{ TidyQuoteNbsp, 0,
"Esta opção especifica se o Tidy deve produzir caracteres de espaço rÃgido "
"como entidades, em vez de como o caractere Unicode de valor 160 (decimal). "
},
{ TidyReplaceColor, 0,
"Esta opção especifica se o Tidy deve substituir os valores numéricos nos atributos de cor com "
"nomes de cor HTML/XHTML onde definido, p.ex. substituir <code>#ffffff</code> com <code>white</"
"code>. "
},
{ TidyShowErrors, 0,
"Esta opção especifica o número que o Tidy usa para determinar se outros "
"erros devem ser exibidos. Se configurado para <var>0</var>, nenhum erro será "
"mostrado. "
},
{ TidyShowInfo, 0,
"Esta opção especifica se o Tidy deve exibir mensagens de nÃvel "
"informacional. "
},
{ TidyShowMarkup, 0,
"Esta opção especifica se o Tidy deve gerar uma versão de impressão amigável "
"da marcação. Note que o Tidy não gerará uma versão de impressão amigável se "
"encontrar erros significativos (veja <code>force-output</code>). "
},
{ TidyShowWarnings, 0,
"Esta opção especifica se o Tidy deve suprimir avisos. Isso pode ser útil "
"quando alguns erros estão ocultos em uma agitação de avisos. "
},
{ TidySkipNested, 0,
"Esta opção especifica que o Tidy deve pular tags aninhadas ao analisar "
"script e dados de estilo. "
},
{ TidySortAttributes, 0,
"Esta opção especifica que o Tidy deve ordenar atributos dentro de um "
"elemento usando o algoritmo de ordenação especificado. Se configurado para "
"<var>alpha</var>, o algoritmo é uma ordenação alfabética ascendente. "
},
{ TidyStrictTagsAttr, 0,
"Esta opção garante que tags e atributos sejam aplicáveis à versão do HTML "
"que o Tidy emite. Quando definido para <var>yes</var> e o tipo de documento "
"de saÃda é um doctype estrito, então o Tidy informará os erros. Se o tipo de "
"documento de saÃda for um tipo de documento loose ou transicional, o Tidy "
"informará os avisos. <br/>Além disso, se <code>drop-proprietary-"
"attributes</code> estiver habilitado, os atributos não aplicáveis também "
"serão descartados. <br/>Quando configurado para <var>no</var>, essas "
"verificações não são executadas. "
},
{ TidyTabSize, 0,
"Esta opção especifica o número de colunas que o Tidy usa entre paradas de "
"tabulação sucessivas. Ela é usada para mapear tabulações para espaços ao ler "
"a entrada. "
},
{ TidyUpperCaseAttrs, 0,
"Esta opção especifica se o Tidy deve produzir nomes de atributo em "
"maiúsculo. <br/>Quando configurado para <var>no</var>, os nomes dos "
"atributos serão escritos em minúsculas. Especificar <var>yes</var> exibirá "
"nomes de atributos em maiúsculas e <var>preserve</var> pode ser usado para "
"deixar nomes de atributos intactos. <br/>Ao usar a entrada XML, o "
"maiusculização original é sempre preservada. "
},
{ TidyUpperCaseTags, 0,
"Esta opção especifica se o Tidy deve emitir nomes de tags em maiúsculo. <br/>"
"O padrão é <var>no</var>, o que resulta em nomes de tags minúsculos, exceto "
"para entrada XML na qual a maiusculização original é preservada. "
},
{ TidyUseCustomTags, 0,
"Esta opção permite o uso de tags para elementos personalizados autônomos, "
"p.ex. <flag-icon> com Tidy. As tags personalizadas são desativadas se "
tidy-html5.c view on Meta::CPAN
"quase todos os caracteres de nova linha."
},
{ TidyWarnPropAttrs, 0, "Essa opção especifica se o Tidy deve avisar sobre atributos proprietários." },
{ TidyWord2000, 0,
"Esta opção especifica se o Tidy deve se esforçar duro para tirar todas as "
"coisas excedentes que o Microsoft Word 2000 insere quando você salva os "
"documentos do Word como \"páginas web\". Não manipula imagens embutidas ou "
"VML. <br/>Você deve considerar usar o Word \"Salvar Como: Página da Web, "
"Filtrada\". "
},
{ TidyWrapAsp, 0,
"Essa opção especifica se o Tidy deve quebrar linha de textos contidos em "
"pseudoelementos do ASP, que se parecem com: <code><% ... %></code>. "
},
{ TidyWrapAttVals, 0,
"Esta opção especifica se Tidy deve incluir valores de atributos de linha, o "
"que significa que, se o valor de um atributo faz com que uma linha exceda a "
"largura especificada por <code>wrap</code>, Tidy irá adicionar uma ou mais "
"quebras de linha ao valor, fazendo com que ele seja embrulhado em várias "
"linhas. <br/>Note que esta opção pode ser definida independentemente de <code"
">wrap-script-literals</code>. Por padrão, o Tidy substitui qualquer nova "
"linha ou tabulação com um único espaço e substitui qualquer sequência de "
"espaços em branco com um único espaço. <br/>Para forçar a Tidy a preservar "
"os valores literais originais de todos os atributos e garantir que os "
"caracteres de espaço em branco nos valores de atributos sejam passados "
"através de alterações, configure <code>literal-attributes</code> para "
"<var>yes</var>. "
},
{ TidyWrapJste, 0,
"Essa opção especifica se o Tidy deve quebrar linha de textos contidos em "
"pseudoelementos do JSTE, que se parecem com: <code><# ... #></code>. "
},
{ TidyWrapLen, 0,
"Esta opção especifica a margem direita que o Tidy usa para quebra de linha. "
"<br/>Tidy tenta quebrar linhas para que não excedam esse comprimento. <br/>"
"Defina <code>wrap</code> para <var>0</var> (zero) se desejar desativar a "
"quebra de linha. "
},
{ TidyWrapPhp, 0,
"Essa opção especifica se o Tidy deve quebrar linha de textos contidos em "
"pseudoelementos do PHP, que se parecem com: <code><?php ... ?></code>. "
},
{ TidyWrapScriptlets, 0,
"Esta opção especifica se Tidy deve efetuar quebra de linha em string "
"literais que aparecem em atributos de script."
},
{ TidyWrapSection, 0,
"Essa opção especifica se o Tidy deve efetuar quebra de linha de textos "
"contidos em tags de seção <code><![ ... ]></code>. "
},
{ TidyWriteBack, 0,
"Esta opção especifica se o Tidy deve escrever novamente a marcação arrumada "
"para o mesmo arquivo que lê. <br/> à aconselhável manter cópias de arquivos "
"importantes antes de ordená-los, como em ocasiões raras, o resultado pode "
"não ser o que você espera. "
},
{ TidyXhtmlOut, 0,
"Esta opção especifica se o Tidy deve gerar uma impressão amigável, "
"escrevendo como HTML extensÃvel. <br/>Esta opção faz com que o Tidy "
"configure o DOCTYPE e o espaço de nomes padrão conforme apropriado para "
"XHTML e use o valor corrigido no resultado, independentemente de outras "
"fontes. <br/> Para XHTML, as entidades podem ser escritas como entidades "
"nomeadas ou numéricas de acordo com a configuração de <code>numeric-"
"entities</code>. <br/>A maiusculização original de tags e atributos será "
"preservada, independentemente de outras opções. "
},
{ TidyXmlDecl, 0,
"Esta opção especifica se o Tidy deve adicionar a declaração XML ao enviar "
"XML ou XHTML. <br/>Note que, se a entrada já incluir uma declaração "
"<code><?xml ... ?></code>, esta opção será ignorada. <br/>Se a "
"codificação para a saÃda for diferente de <var>ascii</var>, uma das "
"codificações <var>utf*</var> ou de <var>raw</var>, então a declaração é "
"sempre adicionado conforme exigido pelo padrão XML. "
},
{ TidyXmlOut, 0,
"Esta opção especifica se o Tidy deve emitir impressão amigável, escrevendo-o "
"como XML bem formado. <br/>Todas as entidades não definidas no XML 1.0 serão "
"escritas como entidades numéricas para permitir que elas sejam analisadas "
"por um analisador XML. <br/>A maiusculização original de tags e atributos "
"será preservada, independentemente de outras opções. "
},
{ TidyXmlPIs, 0,
"Esta opção especifica se o Tidy deve alterar a análise das instruções de "
"processamento para exigir <code>?></code> como o terminador, em vez de "
"<code>></code>. <br/>Esta opção é configurada automaticamente se a "
"entrada for um XML. "
},
{ TidyXmlSpace, 0,
"Esta opção especifica se o Tidy deve adicionar <code>xml:space=\"preserve\"</code> para "
"elementos tais como <code><pre></code>, <code><style></code> e <code><script>"
"</code> ao gerar o XML. <br/>Isso é necessário se o espaço em branco em tais elementos deve ser "
"analisado apropriadamente sem ter acesso ao DTD. "
},
{ TidyXmlTags, 0,
"Esta opção especifica se o Tidy deve usar o analisador XML em vez do "
"analisador HTML de correção de erro. "
},
{ TidyMetaCharset, 0,
"Esta opção, quando ativada, adiciona um elemento <code><meta></code> e "
"define o atributo <code>charset</code> para a codificação do documento. "
"Configure esta opção para <var>yes</var> para habilitá-lo. "
},
{ TidyShowMetaChange, 0,
"Esta opção habilita uma mensagem sempre que o Tidy alterar o atributo "
"<code>content</code> de uma declaração de meta conjunto de caracteres para "
"coincidir com a codificação do documento. Defina esta opção para "
"<var>yes</var> para habilitá-lo. "
},
{ TidyStyleTags, 0,
"Esta opção especifica se o Tidy deve mover todas as tags de estilo para o "
"cabeçalho do documento. "
},
{ TidyWarning, 0, "Acesso: " },
{ TidyAccess, 0, "Acesso: " },
{ TidyError, 0, "Erro: " },
{ TidyBadDocument, 0, "Documento: " },
{ TidyFatal, 0, "Pânico: " },
{ TidyDialogueSummary, 0, "Resumo: " },
{ TidyDialogueInfo, 0, "Informação: " },
{ TidyDialogueFootnote, 0, "Nota de rodapé: " },
{ LINE_COLUMN_STRING, 0, "linha %d coluna %d - " },
tidy-html5.c view on Meta::CPAN
{ REMOVE_FLICKER_SCRIPT, 0, "[7.1.1.1]: remoção de cintilação (script)." },
{ REMOVE_FLICKER_OBJECT, 0, "[7.1.1.2]: remoção de cintilação (object)." },
{ REMOVE_FLICKER_EMBED, 0, "[7.1.1.3]: remoção de cintilação (embed)." },
{ REMOVE_FLICKER_APPLET, 0, "[7.1.1.4]: remoção de cintilação (applet)." },
{ REMOVE_FLICKER_ANIMATED_GIF, 0, "[7.1.1.5]: remoção de cintilação (gif animado)." },
{ REMOVE_BLINK_MARQUEE, 0, "[7.2.1.1]: remoção de blink/marquee." },
{ REMOVE_AUTO_REFRESH, 0, "[7.4.1.1]: remoção de autorrenovação." },
{ REMOVE_AUTO_REDIRECT, 0, "[7.5.1.1]: remoção de autorredirecionamento." },
{ ENSURE_PROGRAMMATIC_OBJECTS_ACCESSIBLE_SCRIPT, 0, "[8.1.1.1]: certifique-se que objetos programáticos sejam acessÃveis (script)." },
{ ENSURE_PROGRAMMATIC_OBJECTS_ACCESSIBLE_OBJECT, 0, "[8.1.1.2]: certifique-se que objetos programáticos sejam acessÃveis (object)." },
{ ENSURE_PROGRAMMATIC_OBJECTS_ACCESSIBLE_APPLET, 0, "[8.1.1.3]: certifique-se que objetos programáticos sejam acessÃveis (applet)." },
{ ENSURE_PROGRAMMATIC_OBJECTS_ACCESSIBLE_EMBED, 0, "[8.1.1.43]: certifique-se que objetos programáticos sejam acessÃveis (embed)." },
{ IMAGE_MAP_SERVER_SIDE_REQUIRES_CONVERSION, 0, "[9.1.1.1]: mapa de imagem (lado do servidor) exige conversão." },
{ SCRIPT_NOT_KEYBOARD_ACCESSIBLE_ON_MOUSE_DOWN, 0, "[9.3.1.1]: <script> não é acessÃvel por teclado (onMouseDown)." },
{ SCRIPT_NOT_KEYBOARD_ACCESSIBLE_ON_MOUSE_UP, 0, "[9.3.1.2]: <script> não é acessÃvel por teclado (onMouseUp)." },
{ SCRIPT_NOT_KEYBOARD_ACCESSIBLE_ON_CLICK, 0, "[9.3.1.3]: <script> não é acessÃvel por teclado (onClick)." },
{ SCRIPT_NOT_KEYBOARD_ACCESSIBLE_ON_MOUSE_OVER, 0, "[9.3.1.4]: <script> não é acessÃvel por teclado (onMouseOver)." },
{ SCRIPT_NOT_KEYBOARD_ACCESSIBLE_ON_MOUSE_OUT, 0, "[9.3.1.5]: <script> não é acessÃvel por teclado (onMouseOut)." },
{ SCRIPT_NOT_KEYBOARD_ACCESSIBLE_ON_MOUSE_MOVE, 0, "[9.3.1.6]: <script> não é acessÃvel por teclado (onMouseMove)." },
{ NEW_WINDOWS_REQUIRE_WARNING_NEW, 0, "[10.1.1.1]: novas janelas exigem aviso (_new)." },
{ NEW_WINDOWS_REQUIRE_WARNING_BLANK, 0, "[10.1.1.2]: novas janelas exigem aviso (_blank)." },
{ REPLACE_DEPRECATED_HTML_APPLET, 0, "[11.2.1.1]: substituir o elemento html obsoleto <applet>." },
{ REPLACE_DEPRECATED_HTML_BASEFONT, 0, "[11.2.1.2]: substituir o elemento html obsoleto <basefont>." },
{ REPLACE_DEPRECATED_HTML_CENTER, 0, "[11.2.1.3]: substituir o elemento html obsoleto <center>." },
{ REPLACE_DEPRECATED_HTML_DIR, 0, "[11.2.1.4]: substituir o elemento html obsoleto <dir>." },
{ REPLACE_DEPRECATED_HTML_FONT, 0, "[11.2.1.5]: substituir o elemento html obsoleto <font>." },
{ REPLACE_DEPRECATED_HTML_ISINDEX, 0, "[11.2.1.6]: substituir o elemento html obsoleto <isindex>." },
{ REPLACE_DEPRECATED_HTML_MENU, 0, "[11.2.1.7]: substituir o elemento html obsoleto <menu>." },
{ REPLACE_DEPRECATED_HTML_S, 0, "[11.2.1.8]: substituir o elemento html obsoleto <s>." },
{ REPLACE_DEPRECATED_HTML_STRIKE, 0, "[11.2.1.9]: substituir o elemento html obsoleto <strike>." },
{ REPLACE_DEPRECATED_HTML_U, 0, "[11.2.1.10]: substituir o elemento html obsoleto <u>." },
{ FRAME_MISSING_TITLE, 0, "[12.1.1.1]: <frame> carece de tÃtulo." },
{ FRAME_TITLE_INVALID_NULL, 0, "[12.1.1.2]: tÃtulo de <frame> inválido (nulo)." },
{ FRAME_TITLE_INVALID_SPACES, 0, "[12.1.1.3]: tÃtulo de <frame> inválido (espaços)." },
{ ASSOCIATE_LABELS_EXPLICITLY, 0, "[12.4.1.1]: associar rótulos explicitamente com controles de formulário." },
{ ASSOCIATE_LABELS_EXPLICITLY_FOR, 0,
"[12.4.1.2]: associar rótulos explicitamente com controles de formulário "
"(for)."
},
{ ASSOCIATE_LABELS_EXPLICITLY_ID, 0, "[12.4.1.3]: associar rótulos explicitamente com controles de formulário (id)." },
{ LINK_TEXT_NOT_MEANINGFUL, 0, "[13.1.1.1]: texto de link não significativo." },
{ LINK_TEXT_MISSING, 0, "[13.1.1.2]: faltando texto de link." },
{ LINK_TEXT_TOO_LONG, 0, "[13.1.1.3]: texto de link longo demais." },
{ LINK_TEXT_NOT_MEANINGFUL_CLICK_HERE, 0, "[13.1.1.4]: texto de link não significativo (clique aqui)." },
{ METADATA_MISSING, 0, "[13.2.1.1]: faltando metadados." },
{ METADATA_MISSING_REDIRECT_AUTOREFRESH, 0, "[13.2.1.3]: faltando metadados (redirecionamento/autorrenovação)." },
{ SKIPOVER_ASCII_ART, 0, "[13.10.1.1]: pular arte em ascii." },
#if SUPPORT_CONSOLE_APP
{ TC_LABEL_COL, 0, "coluna" },
{ TC_LABEL_FILE, 0, "arquivo" },
{ TC_LABEL_LANG, 0, "idioma" },
{ TC_LABEL_LEVL, 0, "nÃvel" },
{ TC_LABEL_OPT, 0, "opção" },
{ TC_MAIN_ERROR_LOAD_CONFIG, 0, "Falha ao carregar o arquivo de config \"%s\", err = %d" },
{ TC_OPT_ACCESS, 0,
" faz verificações adicionais de acessibilidade (<nÃvel> = 0, 1, 2, 3). 0 é "
"presumido se <nÃvel> estiver faltando."
},
{ TC_OPT_ASCII, 0, "usa ISO-8859-1 para entrada, US-ASCII para saÃda" },
{ TC_OPT_ASHTML, 0, "força XHTML para HTML bem formatado" },
{ TC_OPT_ASXML, 0, "converte HTML para XHTML bem formatado" },
{ TC_OPT_BARE, 0, "retira aspas inteligentes, travessões etc." },
{ TC_OPT_BIG5, 0, "usa Big5 para tanto entrada quanto saÃda" },
{ TC_OPT_CLEAN, 0, "substitui tags FONT, NOBR e CENTER com CSS" },
{ TC_OPT_CONFIG, 0, "define opções de configuração a partir do <arquivo> especificado" },
{ TC_OPT_ERRORS, 0, "mostra apenas erros e avisos" },
{ TC_OPT_FILE, 0, "escreve erros e avisos para o <arquivo> especificado" },
{ TC_OPT_GDOC, 0, "produz versão limpa do html exportado pelo Google Docs" },
{ TC_OPT_HELP, 0, "lista as opções de linha de comando" },
{ TC_OPT_HELPCFG, 0, "lista todas as opções de configuração" },
{ TC_OPT_HELPOPT, 0, " mostra uma descrição da <opção>" },
{ TC_OPT_IBM858, 0, "usa IBM-858 (CP850+Euro) para entrada, US-ASCII para saÃda" },
{ TC_OPT_INDENT, 0, "recua o conteúdo do elemento" },
{ TC_OPT_ISO2022, 0, "usa ISO-2022 para tanto entrada quanto saÃda" },
{ TC_OPT_LANGUAGE, 0,
"define o idioma de saÃda do Tidy para <idioma>. Especifique '-language help' "
"para mais ajuda. Use antes de argumentos que gerem saÃda para garantir que o "
"idioma surta efeitos, p.ex.:\n"
"`tidy -lang es -lang help`."
},
{ TC_OPT_LATIN0, 0, "usa ISO-8859-15 para entrada, US-ASCII para saÃda" },
{ TC_OPT_LATIN1, 0, "usa ISO-8859-1 para tanto entrada quanto saÃda" },
{ TC_OPT_MAC, 0, "usa MacRoman para entrada, US-ASCII para saÃda" },
{ TC_OPT_MODIFY, 0, "modifica os arquivos de entrada originais" },
{ TC_OPT_NUMERIC, 0, "emite entidades numéricas em vez de nomeadas" },
{ TC_OPT_OMIT, 0, "omite tags opcionais de inÃcio e de fim" },
{ TC_OPT_OUTPUT, 0, "escreve a saÃda para o <arquivo> especificado" },
{ TC_OPT_QUIET, 0, "suprime saÃda não essencial" },
{ TC_OPT_RAW, 0, "emite valores acima de 127 sem conversão para entidades" },
{ TC_OPT_SHIFTJIS, 0, "usa Shift_JIS para tanto entrada quanto saÃda" },
{ TC_OPT_SHOWCFG, 0, "lista as definições da configuração atual" },
{ TC_OPT_UPPER, 0, "força tags para maiúsculo" },
{ TC_OPT_UTF16, 0, "usa UTF-16 para tanto entrada quanto saÃda" },
{ TC_OPT_UTF16BE, 0, "usa UTF-16BE para tanto entrada quanto saÃda" },
{ TC_OPT_UTF16LE, 0, "usa UTF-16LE para tanto entrada quanto saÃda" },
{ TC_OPT_UTF8, 0, "usa UTF-8 para tanto entrada quanto saÃda" },
{ TC_OPT_VERSION, 0, "mostra a versão do Tidy" },
{ TC_OPT_WIN1252, 0, "usa Windows--1252 para entrada, US-ASCII para saÃda" },
{ TC_OPT_WRAP, 0,
"efetua quebra de texto na <coluna> especificada, 0 é presumido se <coluna> "
"estiver faltando. Quando esta opção é omitida, o padrão da opção da "
"configuração 'wrap' é aplicado."
},
{ TC_OPT_XML, 0, "especifica a entrada é XML bem formatado" },
{ TC_OPT_XMLCFG, 0, "lista todas as opções de configuração no formato XML" },
{ TC_OPT_XMLHELP, 0, "lista as opções de linha de comando no formato XML" },
{ TC_OPT_XMLSTRG, 0, "emite todas as strings do Tidy no formato XML" },
{ TC_OPT_XMLERRS, 0, "emite constantes de erro e strings no formato XML" },
{ TC_OPT_XMLOPTS, 0, "emite descrições de opção no formato XML" },
{ TC_STRING_CONF_HEADER, 0, "Definições do arquivo de configuração:" },
{ TC_STRING_CONF_NAME, 0, "Nome" },
{ TC_STRING_CONF_TYPE, 0, "Tipo" },
{ TC_STRING_CONF_VALUE, 0, "Valor atual" },
{ TC_STRING_OPT_NOT_DOCUMENTED, 0, "Aviso: a opção '%s' não está documentada." },
{ TC_STRING_OUT_OF_MEMORY, 0, "Memória insuficiente. Saindo." },
{ TC_STRING_FATAL_ERROR, 0, "Erro fatal: valor impossÃvel para id='%d'." },
{ TC_STRING_FILE_MANIP, 0, "Manipulação de arquivo" },
{ TC_STRING_PROCESS_DIRECTIVES, 0, "Diretivas de processamento" },
{ TC_STRING_CHAR_ENCODING, 0, "Codificações de caracteres" },
{ TC_STRING_LANG_MUST_SPECIFY, 0, "Uma localidade POSIX ou Windows deve ser especificada." },
{ TC_STRING_LANG_NOT_FOUND, 0, "Tidy não possui o idioma '%s'; em vez desta, usará '%s'." },
tidy-html5.c view on Meta::CPAN
/* Elements with no content. Map to HTML specification. */
#define CM_EMPTY (1 << 0)
/* Elements that appear outside of "BODY". */
#define CM_HTML (1 << 1)
/* Elements that can appear within HEAD. */
#define CM_HEAD (1 << 2)
/* HTML "block" elements. */
#define CM_BLOCK (1 << 3)
/* HTML "inline" elements. */
#define CM_INLINE (1 << 4)
/* Elements that mark list item ("LI"). */
#define CM_LIST (1 << 5)
/* Elements that mark definition list item ("DL", "DT"). */
#define CM_DEFLIST (1 << 6)
/* Elements that can appear inside TABLE. */
#define CM_TABLE (1 << 7)
/* Used for "THEAD", "TFOOT" or "TBODY". */
#define CM_ROWGRP (1 << 8)
/* Used for "TD", "TH" */
#define CM_ROW (1 << 9)
/* Elements whose content must be protected against white space movement.
Includes some elements that can found in forms. */
#define CM_FIELD (1 << 10)
/* Used to avoid propagating inline emphasis inside some elements
such as OBJECT or APPLET. */
#define CM_OBJECT (1 << 11)
/* Elements that allows "PARAM". */
#define CM_PARAM (1 << 12)
/* "FRAME", "FRAMESET", "NOFRAMES". Used in ParseFrameSet. */
#define CM_FRAMES (1 << 13)
/* Heading elements (h1, h2, ...). */
#define CM_HEADING (1 << 14)
/* Elements with an optional end tag. */
#define CM_OPT (1 << 15)
/* Elements that use "align" attribute for vertical position. */
#define CM_IMG (1 << 16)
/* Elements with inline and block model. Used to avoid calling InlineDup. */
#define CM_MIXED (1 << 17)
/* Elements whose content needs to be indented only if containing one
CM_BLOCK element. */
#define CM_NO_INDENT (1 << 18)
/* Elements that are obsolete (such as "dir", "menu"). */
#define CM_OBSOLETE (1 << 19)
/* User defined elements. Used to determine how attributes wihout value
should be printed. */
#define CM_NEW (1 << 20)
/* Elements that cannot be omitted. */
#define CM_OMITST (1 << 21)
/* If the document uses just HTML 2.0 tags and attributes described
** it as HTML 2.0 Similarly for HTML 3.2 and the 3 flavors of HTML 4.0.
** If there are proprietary tags and attributes then describe it as
** HTML Proprietary. If it includes the xml-lang or xmlns attributes
** but is otherwise HTML 2.0, 3.2 or 4.0 then describe it as one of the
** flavors of Voyager (strict, loose or frameset).
*/
/* unknown */
#define xxxx 0u
/* W3C defined HTML/XHTML family document types */
#define HT20 1u
#define HT32 2u
#define H40S 4u
#define H40T 8u
#define H40F 16u
#define H41S 32u
#define H41T 64u
#define H41F 128u
#define X10S 256u
#define X10T 512u
#define X10F 1024u
#define XH11 2048u
#define XB10 4096u
/* proprietary stuff */
#define VERS_SUN 8192u
#define VERS_NETSCAPE 16384u
#define VERS_MICROSOFT 32768u
/* special flag */
#define VERS_XML 65536u
/* HTML5 */
#define HT50 131072u
#define XH50 262144u
/* compatibility symbols */
#define VERS_UNKNOWN (xxxx)
#define VERS_HTML20 (HT20)
#define VERS_HTML32 (HT32)
#define VERS_HTML40_STRICT (H40S|H41S|X10S)
#define VERS_HTML40_LOOSE (H40T|H41T|X10T)
#define VERS_FRAMESET (H40F|H41F|X10F)
#define VERS_XHTML11 (XH11)
#define VERS_BASIC (XB10)
/* HTML5 */
#define VERS_HTML5 (HT50|XH50)
/* meta symbols */
#define VERS_HTML40 (VERS_HTML40_STRICT|VERS_HTML40_LOOSE|VERS_FRAMESET)
#define VERS_IFRAME (VERS_HTML40_LOOSE|VERS_FRAMESET)
#define VERS_LOOSE (VERS_HTML20|VERS_HTML32|VERS_IFRAME)
#define VERS_EVENTS (VERS_HTML40|VERS_XHTML11)
#define VERS_FROM32 (VERS_HTML32|VERS_HTML40|HT50)
#define VERS_FROM40 (VERS_HTML40|VERS_XHTML11|VERS_BASIC|VERS_HTML5)
#define VERS_XHTML (X10S|X10T|X10F|XH11|XB10|XH50)
/* strict */
#define VERS_STRICT (VERS_HTML5|VERS_HTML40_STRICT)
/* all W3C defined document types */
#define VERS_ALL (VERS_HTML20|VERS_HTML32|VERS_FROM40|XH50|HT50)
/* all proprietary types */
#define VERS_PROPRIETARY (VERS_NETSCAPE|VERS_MICROSOFT|VERS_SUN)
/* Linked list of class names and styles
*/
struct _Style;
typedef struct _Style TagStyle;
struct _Style
{
tmbstr tag;
tmbstr tag_class;
tmbstr properties;
TagStyle *next;
};
/* Linked list of style properties
*/
struct _StyleProp;
typedef struct _StyleProp StyleProp;
struct _StyleProp
{
tmbstr name;
tmbstr value;
StyleProp *next;
};
/* Attribute/Value linked list node
*/
struct _AttVal
{
AttVal* next;
const Attribute* dict;
Node* asp;
Node* php;
int delim;
tmbstr attribute;
tmbstr value;
};
/*
Mosaic handles inlines via a separate stack from other elements
We duplicate this to recover from inline markup errors such as:
<i>italic text
tidy-html5.c view on Meta::CPAN
if ( !ValidLang )
TY_(ReportAccessError)( doc, node, LANGUAGE_NOT_IDENTIFIED );
}
}
/********************************************************
* CheckBlink
*
* Document must not contain the BLINK element.
* It is invalid HTML/XHTML.
*********************************************************/
static void CheckBlink( TidyDocImpl* doc, Node* node )
{
if (Level2_Enabled( doc ))
{
/* Checks to see if text is found within the BLINK element. */
if ( TY_(nodeIsText)(node->content) )
{
ctmbstr word = textFromOneNode( doc, node->content );
if ( !IsWhitespace(word) )
{
TY_(ReportAccessError)( doc, node, REMOVE_BLINK_MARQUEE );
}
}
}
}
/********************************************************
* CheckMarquee
*
* Document must not contain the MARQUEE element.
* It is invalid HTML/XHTML.
********************************************************/
static void CheckMarquee( TidyDocImpl* doc, Node* node )
{
if (Level2_Enabled( doc ))
{
/* Checks to see if there is text in between the MARQUEE element */
if ( TY_(nodeIsText)(node) )
{
ctmbstr word = textFromOneNode( doc, node->content);
if ( !IsWhitespace(word) )
{
TY_(ReportAccessError)( doc, node, REMOVE_BLINK_MARQUEE );
}
}
}
}
/**********************************************************
* CheckLink
*
* 'REL' attribute within the LINK element must not contain
* 'stylesheet'. HTML/XHTML document is unreadable when
* style sheets are applied. -- CPR huh?
**********************************************************/
static void CheckLink( TidyDocImpl* doc, Node* node )
{
Bool HasRel = no;
Bool HasType = no;
if (Level1_Enabled( doc ))
{
AttVal* av;
/* Check for valid 'REL' and 'TYPE' attribute */
for (av = node->attributes; av != NULL; av = av->next)
{
if ( attrIsREL(av) && hasValue(av) )
{
if (AttrContains(av, "stylesheet"))
HasRel = yes;
}
if ( attrIsTYPE(av) && hasValue(av) )
{
HasType = yes;
}
}
if (HasRel && HasType)
TY_(ReportAccessError)( doc, node, STYLESHEETS_REQUIRE_TESTING_LINK );
}
}
/*******************************************************
* CheckStyle
*
* Document must not contain STYLE element. HTML/XHTML
* document is unreadable when style sheets are applied.
*******************************************************/
static void CheckStyle( TidyDocImpl* doc, Node* node )
{
if (Level1_Enabled( doc ))
{
TY_(ReportAccessError)( doc, node, STYLESHEETS_REQUIRE_TESTING_STYLE_ELEMENT );
}
}
/*************************************************************
* DynamicContent
*
* Verify that equivalents of dynamic content are updated and
* available as often as the dynamic content.
*************************************************************/
static void DynamicContent( TidyDocImpl* doc, Node* node )
{
if (Level1_Enabled( doc ))
{
unsigned int msgcode = 0;
if ( nodeIsAPPLET(node) )
msgcode = TEXT_EQUIVALENTS_REQUIRE_UPDATING_APPLET;
else if ( nodeIsSCRIPT(node) )
msgcode = TEXT_EQUIVALENTS_REQUIRE_UPDATING_SCRIPT;
else if ( nodeIsOBJECT(node) )
msgcode = TEXT_EQUIVALENTS_REQUIRE_UPDATING_OBJECT;
if ( msgcode )
TY_(ReportAccessError)( doc, node, msgcode );
}
}
/*************************************************************
* ProgrammaticObjects
*
* Verify that the page is usable when programmatic objects
* are disabled.
*************************************************************/
static void ProgrammaticObjects( TidyDocImpl* doc, Node* node )
{
if (Level1_Enabled( doc ))
{
int msgcode = 0;
if ( nodeIsSCRIPT(node) )
msgcode = PROGRAMMATIC_OBJECTS_REQUIRE_TESTING_SCRIPT;
else if ( nodeIsOBJECT(node) )
msgcode = PROGRAMMATIC_OBJECTS_REQUIRE_TESTING_OBJECT;
else if ( nodeIsEMBED(node) )
msgcode = PROGRAMMATIC_OBJECTS_REQUIRE_TESTING_EMBED;
else if ( nodeIsAPPLET(node) )
msgcode = PROGRAMMATIC_OBJECTS_REQUIRE_TESTING_APPLET;
if ( msgcode )
tidy-html5.c view on Meta::CPAN
TY_(ReportAccessError)( doc, node, METADATA_MISSING_REDIRECT_AUTOREFRESH);
}
else
{
if ( ContainsAttr && !HasContent && !HasHttpEquiv )
HasMetaData = yes;
}
}
if ( !HasMetaData &&
nodeIsADDRESS(node) &&
nodeIsA(node->content) )
{
HasMetaData = yes;
}
if ( !HasMetaData &&
!nodeIsTITLE(node) &&
TY_(nodeIsText)(node->content) )
{
ctmbstr word = textFromOneNode( doc, node->content );
if ( !IsWhitespace(word) )
HasMetaData = yes;
}
if( !HasMetaData && nodeIsLINK(node) )
{
AttVal* av = attrGetREL(node);
if( !AttrContains(av, "stylesheet") )
HasMetaData = yes;
}
/* Check for MetaData */
for ( node = node->content; node; node = node->next )
{
HasMetaData = CheckMetaData( doc, node, HasMetaData );
}
}
return HasMetaData;
}
/*******************************************************
* MetaDataPresent
*
* Determines if MetaData is present in document
*******************************************************/
static void MetaDataPresent( TidyDocImpl* doc, Node* node )
{
if (Level2_Enabled( doc ))
{
TY_(ReportAccessError)( doc, node, METADATA_MISSING );
}
}
/*****************************************************
* CheckDocType
*
* Checks that every HTML/XHTML document contains a
* '!DOCTYPE' before the root node. ie. <HTML>
*****************************************************/
static void CheckDocType( TidyDocImpl* doc )
{
if (Level2_Enabled( doc ))
{
Node* DTnode = TY_(FindDocType)(doc);
/* If the doctype has been added by tidy, DTnode->end will be 0. */
if (DTnode && DTnode->end != 0)
{
ctmbstr word = textFromOneNode( doc, DTnode);
if (TY_(IsHTML5Mode)(doc))
{
if ((strstr(word, "HTML") == NULL) &&
(strstr(word, "html") == NULL))
DTnode = NULL;
}
else {
if ((strstr(word, "HTML PUBLIC") == NULL) &&
(strstr(word, "html PUBLIC") == NULL))
DTnode = NULL;
}
}
if (!DTnode)
TY_(ReportAccessError)( doc, &doc->root, DOCTYPE_MISSING);
}
}
/********************************************************
* CheckMapLinks
*
* Checks to see if an HREF for A element matches HREF
* for AREA element. There must be an HREF attribute
* of an A element for every HREF of an AREA element.
********************************************************/
static Bool urlMatch( ctmbstr url1, ctmbstr url2 )
{
/* TODO: Make host part case-insensitive and
** remainder case-sensitive.
*/
return ( TY_(tmbstrcmp)( url1, url2 ) == 0 );
}
static Bool FindLinkA( TidyDocImpl* doc, Node* node, ctmbstr url )
{
Bool found = no;
for ( node = node->content; !found && node; node = node->next )
{
if ( nodeIsA(node) )
{
AttVal* href = attrGetHREF( node );
found = ( hasValue(href) && urlMatch(url, href->value) );
}
else
found = FindLinkA( doc, node, url );
tidy-html5.c view on Meta::CPAN
break;
}
}
p = TY_(PutUTF8)(p, c);
}
node->end = p - lexer->lexbuf;
}
if (node->content)
TY_(DowngradeTypography)(doc, node->content);
node = next;
}
}
void TY_(ReplacePreformattedSpaces)(TidyDocImpl* doc, Node* node)
{
Node* next;
while (node)
{
next = node->next;
if (node->tag && node->tag->parser == TY_(ParsePre))
{
TY_(NormalizeSpaces)(doc->lexer, node->content);
node = next;
continue;
}
if (node->content)
TY_(ReplacePreformattedSpaces)(doc, node->content);
node = next;
}
}
void TY_(ConvertCDATANodes)(TidyDocImpl* doc, Node* node)
{
Node* next;
while (node)
{
next = node->next;
if (node->type == CDATATag)
node->type = TextNode;
if (node->content)
TY_(ConvertCDATANodes)(doc, node->content);
node = next;
}
}
/*
FixLanguageInformation ensures that the document contains (only)
the attributes for language information desired by the output
document type. For example, for XHTML 1.0 documents both
'xml:lang' and 'lang' are desired, for XHTML 1.1 only 'xml:lang'
is desired and for HTML 4.01 only 'lang' is desired.
*/
void TY_(FixLanguageInformation)(TidyDocImpl* doc, Node* node, Bool wantXmlLang, Bool wantLang)
{
Node* next;
while (node)
{
next = node->next;
/* todo: report modifications made here to the report system */
if (TY_(nodeIsElement)(node))
{
AttVal* lang = TY_(AttrGetById)(node, TidyAttr_LANG);
AttVal* xmlLang = TY_(AttrGetById)(node, TidyAttr_XML_LANG);
if (lang && xmlLang)
{
/*
todo: check whether both attributes are in sync,
here or elsewhere, where elsewhere is probably
preferable.
AD - March 2005: not mandatory according the standards.
*/
}
else if (lang && wantXmlLang)
{
if (TY_(NodeAttributeVersions)( node, TidyAttr_XML_LANG )
& doc->lexer->versionEmitted)
TY_(RepairAttrValue)(doc, node, "xml:lang", lang->value);
}
else if (xmlLang && wantLang)
{
if (TY_(NodeAttributeVersions)( node, TidyAttr_LANG )
& doc->lexer->versionEmitted)
TY_(RepairAttrValue)(doc, node, "lang", xmlLang->value);
}
if (lang && !wantLang)
TY_(RemoveAttribute)(doc, node, lang);
if (xmlLang && !wantXmlLang)
TY_(RemoveAttribute)(doc, node, xmlLang);
}
if (node->content)
TY_(FixLanguageInformation)(doc, node->content, wantXmlLang, wantLang);
node = next;
}
}
/*
Set/fix/remove <html xmlns='...'>
*/
void TY_(FixXhtmlNamespace)(TidyDocImpl* doc, Bool wantXmlns)
{
Node* html = TY_(FindHTML)(doc);
AttVal* xmlns;
tidy-html5.c view on Meta::CPAN
outenc = ASCII;
break;
case ASCII:
inenc = LATIN1;
outenc = ASCII;
break;
case LATIN0:
inenc = LATIN0;
outenc = ASCII;
break;
case RAW:
case LATIN1:
case UTF8:
#ifndef NO_NATIVE_ISO2022_SUPPORT
case ISO2022:
#endif
case UTF16LE:
case UTF16BE:
case UTF16:
case SHIFTJIS:
case BIG5:
inenc = outenc = encoding;
break;
}
if ( inenc >= 0 )
{
TY_(SetOptionInt)( doc, TidyCharEncoding, encoding );
TY_(SetOptionInt)( doc, TidyInCharEncoding, inenc );
TY_(SetOptionInt)( doc, TidyOutCharEncoding, outenc );
return yes;
}
return no;
}
/* ensure that config is self consistent */
void TY_(AdjustConfig)( TidyDocImpl* doc )
{
if ( cfgBool(doc, TidyEncloseBlockText) )
TY_(SetOptionBool)( doc, TidyEncloseBodyText, yes );
if ( cfgAutoBool(doc, TidyIndentContent) == TidyNoState )
TY_(SetOptionInt)( doc, TidyIndentSpaces, 0 );
/* disable wrapping */
if ( cfg(doc, TidyWrapLen) == 0 )
TY_(SetOptionInt)( doc, TidyWrapLen, 0x7FFFFFFF );
/* Word 2000 needs o:p to be declared as inline */
if ( cfgBool(doc, TidyWord2000) )
{
doc->config.defined_tags |= tagtype_inline;
TY_(DefineTag)( doc, tagtype_inline, "o:p" );
}
/* #480701 disable XHTML output flag if both output-xhtml and xml input are set */
if ( cfgBool(doc, TidyXmlTags) )
TY_(SetOptionBool)( doc, TidyXhtmlOut, no );
/* XHTML is written in lower case */
if ( cfgBool(doc, TidyXhtmlOut) )
{
TY_(SetOptionBool)( doc, TidyXmlOut, yes );
TY_(SetOptionBool)( doc, TidyUpperCaseTags, no );
TY_(SetOptionInt)( doc, TidyUpperCaseAttrs, no );
/* TY_(SetOptionBool)( doc, TidyXmlPIs, yes ); */
}
/* if XML in, then XML out */
if ( cfgBool(doc, TidyXmlTags) )
{
TY_(SetOptionBool)( doc, TidyXmlOut, yes );
TY_(SetOptionBool)( doc, TidyXmlPIs, yes );
}
/* #427837 - fix by Dave Raggett 02 Jun 01
** generate <?xml version="1.0" encoding="iso-8859-1"?>
** if the output character encoding is Latin-1 etc.
*/
if ( cfg(doc, TidyOutCharEncoding) != ASCII &&
cfg(doc, TidyOutCharEncoding) != UTF8 &&
cfg(doc, TidyOutCharEncoding) != UTF16 &&
cfg(doc, TidyOutCharEncoding) != UTF16BE &&
cfg(doc, TidyOutCharEncoding) != UTF16LE &&
cfg(doc, TidyOutCharEncoding) != RAW &&
cfgBool(doc, TidyXmlOut) )
{
TY_(SetOptionBool)( doc, TidyXmlDecl, yes );
}
/* XML requires end tags */
if ( cfgBool(doc, TidyXmlOut) )
{
/* XML requires a BOM on output if using UTF-16 encoding */
unsigned int enc = cfg( doc, TidyOutCharEncoding );
if ( enc == UTF16LE || enc == UTF16BE || enc == UTF16 )
TY_(SetOptionInt)( doc, TidyOutputBOM, yes );
TY_(SetOptionBool)( doc, TidyQuoteAmpersand, yes );
TY_(SetOptionBool)( doc, TidyOmitOptionalTags, no );
}
}
/* A service to ParseList(), keeps option values nicely formatted and
coordinates additions to the internal lists. Within Tidy, this function
might be used to programmatically add individual values to items that use
this service.
*/
void TY_(DeclareListItem)( TidyDocImpl* doc, const TidyOptionImpl* opt, ctmbstr name )
{
ctmbstr prvval = cfgStr( doc, opt->id );
tmbstr catval = NULL;
ctmbstr theval = name;
if ( prvval )
{
unsigned int len = TY_(tmbstrlen)(name) + TY_(tmbstrlen)(prvval) + 3;
catval = TY_(tmbstrndup)( doc->allocator, prvval, len );
TY_(tmbstrcat)( catval, ", " );
TY_(tmbstrcat)( catval, name );
tidy-html5.c view on Meta::CPAN
}
}
}
SPRTF("> %s\n", src);
} else {
SPRTF("Returning %s node %p <%s>... %s\n", msg, node,
name, src );
}
}
}
#define GTDBG(a,b,c) Show_Node(a,b,c)
#else /* ENABLE_DEBUG_LOG */
#define GTDBG(a,b,c)
#endif /* defined(ENABLE_DEBUG_LOG) */
/* Forward references
*/
/* swallows closing '>' */
static AttVal *ParseAttrs( TidyDocImpl* doc, Bool *isempty );
static tmbstr ParseAttribute( TidyDocImpl* doc, Bool* isempty,
Node **asp, Node **php );
static tmbstr ParseValue( TidyDocImpl* doc, ctmbstr name, Bool foldCase,
Bool *isempty, int *pdelim );
static Node *ParseDocTypeDecl(TidyDocImpl* doc);
static void AddAttrToList( AttVal** list, AttVal* av );
/* used to classify characters for lexical purposes */
#define MAP(c) ((unsigned)c < 128 ? lexmap[(unsigned)c] : 0)
static unsigned int lexmap[128];
#define IsValidXMLAttrName(name) TY_(IsValidXMLID)(name)
#define IsValidXMLElemName(name) TY_(IsValidXMLID)(name)
static struct _doctypes
{
unsigned int score;
unsigned int vers;
unsigned int vers_out;
Bool xhtml;
ctmbstr name;
ctmbstr fpi;
ctmbstr si;
} const W3C_Doctypes[] =
{
{ 2, HT20, 200, no, "HTML 2.0", "-//IETF//DTD HTML 2.0//EN", NULL, },
{ 2, HT20, 200, no, "HTML 2.0", "-//IETF//DTD HTML//EN", NULL, },
{ 2, HT20, 200, no, "HTML 2.0", "-//W3C//DTD HTML 2.0//EN", NULL, },
{ 1, HT32, 320, no, "HTML 3.2", "-//W3C//DTD HTML 3.2//EN", NULL, },
{ 1, HT32, 320, no, "HTML 3.2", "-//W3C//DTD HTML 3.2 Final//EN", NULL, },
{ 1, HT32, 320, no, "HTML 3.2", "-//W3C//DTD HTML 3.2 Draft//EN", NULL, },
{ 6, H40S, 400, no, "HTML 4.0 Strict", "-//W3C//DTD HTML 4.0//EN", "http://www.w3.org/TR/REC-html40/strict.dtd" },
{ 8, H40T, 400, no, "HTML 4.0 Transitional", "-//W3C//DTD HTML 4.0 Transitional//EN", "http://www.w3.org/TR/REC-html40/loose.dtd" },
{ 7, H40F, 400, no, "HTML 4.0 Frameset", "-//W3C//DTD HTML 4.0 Frameset//EN", "http://www.w3.org/TR/REC-html40/frameset.dtd" },
{ 3, H41S, 401, no, "HTML 4.01 Strict", "-//W3C//DTD HTML 4.01//EN", "http://www.w3.org/TR/html4/strict.dtd" },
{ 5, H41T, 401, no, "HTML 4.01 Transitional", "-//W3C//DTD HTML 4.01 Transitional//EN", "http://www.w3.org/TR/html4/loose.dtd" },
{ 4, H41F, 401, no, "HTML 4.01 Frameset", "-//W3C//DTD HTML 4.01 Frameset//EN", "http://www.w3.org/TR/html4/frameset.dtd" },
{ 9, X10S, 100, yes, "XHTML 1.0 Strict", "-//W3C//DTD XHTML 1.0 Strict//EN", "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd" },
{ 11, X10T, 100, yes, "XHTML 1.0 Transitional", "-//W3C//DTD XHTML 1.0 Transitional//EN", "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" },
{ 10, X10F, 100, yes, "XHTML 1.0 Frameset", "-//W3C//DTD XHTML 1.0 Frameset//EN", "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd" },
{ 12, XH11, 110, yes, "XHTML 1.1", "-//W3C//DTD XHTML 1.1//EN", "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd" },
{ 13, XB10, 100, yes, "XHTML Basic 1.0", "-//W3C//DTD XHTML Basic 1.0//EN", "http://www.w3.org/TR/xhtml-basic/xhtml-basic10.dtd" },
{ 20, HT50, 500, no, "HTML5", NULL, NULL },
{ 21, XH50, 500, yes, "XHTML5", NULL, NULL },
/* final entry */
{ 0, 0, 0, no, NULL, NULL, NULL }
};
/*
* Issue #643 - Since VERS_FROM40 was extended to include VERS_HTML5
* to be used in the expanded entity table some 155 times,
* need a special macro here to denote just HTML 4 plus XHTML,
* which is actually the former define of VERS_FROM40
*/
#define VERS_HMTL40PX (VERS_HTML40|VERS_XHTML11|VERS_BASIC)
int TY_(HTMLVersion)(TidyDocImpl* doc)
{
unsigned int i;
unsigned int j = 0;
unsigned int score = 0;
unsigned int vers = doc->lexer->versions;
unsigned int dtver = doc->lexer->doctype;
TidyDoctypeModes dtmode = (TidyDoctypeModes)cfg(doc, TidyDoctypeMode);
Bool xhtml = (cfgBool(doc, TidyXmlOut) || doc->lexer->isvoyager) &&
!cfgBool(doc, TidyHtmlOut);
Bool html4 = ((dtmode == TidyDoctypeStrict) || (dtmode == TidyDoctypeLoose) ||
(VERS_HMTL40PX & dtver) ? yes : no);
Bool html5 = (!html4 && ((dtmode == TidyDoctypeAuto) ||
(dtmode == TidyDoctypeHtml5)) ? yes : no);
if (xhtml && dtver == VERS_UNKNOWN) return XH50;
if (dtver == VERS_UNKNOWN) return HT50;
/* Issue #167 - if NOT XHTML, and doctype is default VERS_HTML5, then return HT50 */
if (!xhtml && (dtver == VERS_HTML5)) return HT50;
/* Issue #377 - If xhtml and (doctype == html5) and constrained vers contains XH50 return that,
and really if tidy defaults to 'html5', then maybe 'auto' should also apply! */
if (xhtml && html5 && ((vers & VERS_HTML5) == XH50)) return XH50;
for (i = 0; W3C_Doctypes[i].name; ++i)
{
if ((xhtml && !(VERS_XHTML & W3C_Doctypes[i].vers)) ||
(html4 && !(VERS_HMTL40PX & W3C_Doctypes[i].vers)))
continue;
if (vers & W3C_Doctypes[i].vers &&
(W3C_Doctypes[i].score < score || !score))
{
score = W3C_Doctypes[i].score;
j = i;
}
}
if (score)
return W3C_Doctypes[j].vers;
return VERS_UNKNOWN;
}
static ctmbstr GetFPIFromVers(unsigned int vers)
{
unsigned int i;
for (i = 0; W3C_Doctypes[i].name; ++i)
if (W3C_Doctypes[i].vers == vers)
return W3C_Doctypes[i].fpi;
return NULL;
}
static ctmbstr GetSIFromVers(unsigned int vers)
{
unsigned int i;
for (i = 0; W3C_Doctypes[i].name; ++i)
if (W3C_Doctypes[i].vers == vers)
return W3C_Doctypes[i].si;
return NULL;
}
static ctmbstr GetNameFromVers(unsigned int vers)
{
unsigned int i;
for (i = 0; W3C_Doctypes[i].name; ++i)
if (W3C_Doctypes[i].vers == vers)
return W3C_Doctypes[i].name;
return NULL;
}
static unsigned int GetVersFromFPI(ctmbstr fpi)
{
unsigned int i;
for (i = 0; W3C_Doctypes[i].name; ++i)
if (W3C_Doctypes[i].fpi != NULL && TY_(tmbstrcasecmp)(W3C_Doctypes[i].fpi, fpi) == 0)
return W3C_Doctypes[i].vers;
return 0;
}
tidy-html5.c view on Meta::CPAN
TY_(IsDigit),
IsDigitHex
};
unsigned int start;
ENTState entState = ENT_default;
unsigned int charRead = 0;
Bool semicolon = no, found = no;
Bool isXml = cfgBool( doc, TidyXmlTags );
Bool preserveEntities = cfgBool( doc, TidyPreserveEntities );
unsigned int c, ch, startcol, entver = 0;
Lexer* lexer = doc->lexer;
start = lexer->lexsize - 1; /* to start at "&" */
startcol = doc->docIn->curcol - 1;
while ( (c = TY_(ReadChar)(doc->docIn)) != EndOfStream )
{
if ( c == ';' )
{
semicolon = yes;
break;
}
++charRead;
if (charRead == 1 && c == '#')
{
if ( !cfgBool(doc, TidyNCR) ||
cfg(doc, TidyInCharEncoding) == BIG5 ||
cfg(doc, TidyInCharEncoding) == SHIFTJIS )
{
TY_(UngetChar)('#', doc->docIn);
return;
}
TY_(AddCharToLexer)( lexer, c );
entState = ENT_numdec;
continue;
}
else if (charRead == 2 && entState == ENT_numdec
&& (c == 'x' || (!isXml && c == 'X')) )
{
TY_(AddCharToLexer)( lexer, c );
entState = ENT_numhex;
continue;
}
if ( entFn[entState](c) )
{
TY_(AddCharToLexer)( lexer, c );
continue;
}
/* otherwise put it back */
TY_(UngetChar)( c, doc->docIn );
break;
}
/* make sure entity is NULL terminated */
lexer->lexbuf[lexer->lexsize] = '\0';
/* Should contrain version to XML/XHTML if '
** is encountered. But this is not possible with
** Tidy's content model bit mask.
*/
if ( TY_(tmbstrcmp)(lexer->lexbuf+start, "&apos") == 0
&& !cfgBool(doc, TidyXmlOut)
&& !lexer->isvoyager
&& !cfgBool(doc, TidyXhtmlOut)
&& !(TY_(HTMLVersion)(doc) == HT50) ) /* Issue #239 - no warning if in HTML5++ mode */
TY_(ReportEntityError)( doc, APOS_UNDEFINED, lexer->lexbuf+start, 39 );
if (( mode == OtherNamespace ) && ( c == ';' ))
{
/* #130 MathML attr and entity fix! */
found = yes;
ch = 255;
entver = XH50|HT50;
preserveEntities = yes;
}
else
{
/* Lookup entity code and version
*/
found = TY_(EntityInfo)( lexer->lexbuf+start, isXml, &ch, &entver );
}
/* Issue #483 - Deal with 'surrogate pairs' */
/* TODO: Maybe warning/error, like found a leading surrogate
but no following surrogate! Maybe should avoid outputting
invalid utf-8 for this entity - maybe substitute? */
if (!preserveEntities && found && TY_(IsLowSurrogate)(ch))
{
unsigned int c1;
if ((c1 = TY_(ReadChar)(doc->docIn)) == '&')
{
SPStatus status;
/* Have a following entity,
so there is a chance of having a valid surrogate pair */
c1 = ch; /* keep first value, in case of error */
status = GetSurrogatePair(doc, isXml, &ch);
if (status == SP_error)
{
TY_(ReportSurrogateError)(doc, BAD_SURROGATE_TAIL, c1, 0); /* SP WARNING: - using substitute character */
TY_(UngetChar)('&', doc->docIn); /* otherwise put it back */
}
}
else
{
/* put this non-entity lead char back */
TY_(UngetChar)(c1, doc->docIn);
/* Have leading surrogate pair, with no tail */
TY_(ReportSurrogateError)(doc, BAD_SURROGATE_TAIL, ch, 0); /* SP WARNING: - using substitute character */
ch = 0xFFFD;
}
}
else if (!preserveEntities && found && TY_(IsHighSurrogate)(ch))
{
/* Have trailing surrogate pair, with no lead */
TY_(ReportSurrogateError)(doc, BAD_SURROGATE_LEAD, ch, 0); /* SP WARNING: - using substitute character */
ch = 0xFFFD;
}
tidy-html5.c view on Meta::CPAN
attval = TY_(AttrGetById)(node, TidyAttr_NAME);
if (AttrValueIs(attval, "generator"))
{
attval = TY_(AttrGetById)(node, TidyAttr_CONTENT);
if (AttrHasValue(attval) &&
TY_(tmbstrncasecmp)(attval->value, "HTML Tidy", 9) == 0)
{
/* update the existing content to reflect the */
/* actual version of Tidy currently being used */
TidyDocFree(doc, attval->value);
attval->value = TY_(tmbstrdup)(doc->allocator, buf);
return no;
}
}
}
}
if ( cfg(doc, TidyAccessibilityCheckLevel) == 0 )
{
node = TY_(InferredTag)(doc, TidyTag_META);
TY_(AddAttribute)( doc, node, "name", "generator" );
TY_(AddAttribute)( doc, node, "content", buf );
TY_(InsertNodeAtStart)( head, node );
return yes;
}
}
return no;
}
/*\ examine <!DOCTYPE ...> to identify version
* Issue #167 and #169
* If HTML5
* <!DOCTYPE html>
* <!DOCTYPE html SYSTEM "about:legacy-compat">
* else others
\*/
static unsigned int FindGivenVersion( TidyDocImpl* doc, Node* doctype )
{
AttVal * fpi = TY_(GetAttrByName)(doctype, "PUBLIC");
unsigned int vers;
if (!fpi || !fpi->value)
{
/*\
* Is. #815 - change to case-insensitive test
* See REC: https://www.w3.org/TR/html5/syntax.html#the-doctype
\*/
if (doctype->element && (TY_(tmbstrcasecmp)(doctype->element,"html") == 0))
{
return VERS_HTML5; /* TODO: do we need to check MORE? */
}
/* TODO: Consider warning, error message */
return VERS_UNKNOWN;
}
vers = GetVersFromFPI(fpi->value);
if (VERS_XHTML & vers)
{
TY_(SetOptionBool)(doc, TidyXmlOut, yes);
TY_(SetOptionBool)(doc, TidyXhtmlOut, yes);
doc->lexer->isvoyager = yes;
}
/* todo: add a warning if case does not match? */
TidyDocFree(doc, fpi->value);
fpi->value = TY_(tmbstrdup)(doc->allocator, GetFPIFromVers(vers));
return vers;
}
/* return guessed version */
unsigned int TY_(ApparentVersion)( TidyDocImpl* doc )
{
if ((doc->lexer->doctype == XH11 ||
doc->lexer->doctype == XB10) &&
(doc->lexer->versions & doc->lexer->doctype))
return doc->lexer->doctype;
else
return TY_(HTMLVersion)(doc);
}
ctmbstr TY_(HTMLVersionNameFromCode)( unsigned int vers, Bool ARG_UNUSED(isXhtml) )
{
ctmbstr name = GetNameFromVers(vers);
return name;
}
unsigned int TY_(HTMLVersionNumberFromCode)( unsigned int vers )
{
unsigned int i;
for (i = 0; W3C_Doctypes[i].name; ++i)
if (W3C_Doctypes[i].vers == vers)
return W3C_Doctypes[i].vers_out;
return VERS_UNKNOWN;
}
Bool TY_(WarnMissingSIInEmittedDocType)( TidyDocImpl* doc )
{
Bool isXhtml = doc->lexer->isvoyager;
Node* doctype;
/* Do not warn in XHTML mode */
if ( isXhtml )
return no;
/* Do not warn if emitted doctype is proprietary */
if ( TY_(HTMLVersionNameFromCode)(doc->lexer->versionEmitted, isXhtml ) == NULL )
return no;
/* Do not warn if no SI is possible */
if ( GetSIFromVers(doc->lexer->versionEmitted) == NULL )
return no;
if ( (doctype = TY_(FindDocType)( doc )) != NULL
&& TY_(GetAttrByName)(doctype, "SYSTEM") == NULL )
return yes;
return no;
}
/* Put DOCTYPE declaration between the
** <?xml version "1.0" ... ?> declaration, if any,
** and the <html> tag. Should also work for any comments,
** etc. that may precede the <html> tag.
*/
static Node* NewDocTypeNode( TidyDocImpl* doc )
{
Node* doctype = NULL;
Node* html = TY_(FindHTML)( doc );
if ( !html )
return NULL;
doctype = TY_(NewNode)( doc->allocator, NULL );
doctype->type = DocTypeTag;
TY_(InsertNodeBeforeElement)(html, doctype);
return doctype;
}
Bool TY_(SetXHTMLDocType)( TidyDocImpl* doc )
{
Lexer *lexer = doc->lexer;
Node *doctype = TY_(FindDocType)( doc );
TidyDoctypeModes dtmode = (TidyDoctypeModes)cfg(doc, TidyDoctypeMode);
ctmbstr pub = "PUBLIC";
ctmbstr sys = "SYSTEM";
lexer->versionEmitted = TY_(ApparentVersion)( doc );
if (dtmode == TidyDoctypeOmit)
{
if (doctype)
TY_(DiscardElement)(doc, doctype);
return yes;
}
if (dtmode == TidyDoctypeUser && !cfgStr(doc, TidyDoctype))
return no;
if (!doctype)
{
doctype = NewDocTypeNode(doc);
doctype->element = TY_(tmbstrdup)(doc->allocator, "html");
}
else
{
doctype->element = TY_(tmbstrtolower)(doctype->element);
}
switch(dtmode)
{
case TidyDoctypeHtml5:
/* HTML5 */
TY_(RepairAttrValue)(doc, doctype, pub, NULL);
TY_(RepairAttrValue)(doc, doctype, sys, NULL);
lexer->versionEmitted = XH50;
break;
case TidyDoctypeStrict:
/* XHTML 1.0 Strict */
TY_(RepairAttrValue)(doc, doctype, pub, GetFPIFromVers(X10S));
TY_(RepairAttrValue)(doc, doctype, sys, GetSIFromVers(X10S));
lexer->versionEmitted = X10S;
break;
case TidyDoctypeLoose:
/* XHTML 1.0 Transitional */
TY_(RepairAttrValue)(doc, doctype, pub, GetFPIFromVers(X10T));
TY_(RepairAttrValue)(doc, doctype, sys, GetSIFromVers(X10T));
lexer->versionEmitted = X10T;
break;
case TidyDoctypeUser:
/* user defined document type declaration */
TY_(RepairAttrValue)(doc, doctype, pub, cfgStr(doc, TidyDoctype));
TY_(RepairAttrValue)(doc, doctype, sys, "");
break;
case TidyDoctypeAuto:
if (lexer->doctype == VERS_UNKNOWN || lexer->doctype == VERS_HTML5) {
lexer->versionEmitted = XH50;
return yes;
}
else if (lexer->versions & XH11 && lexer->doctype == XH11)
{
if (!TY_(GetAttrByName)(doctype, sys))
TY_(RepairAttrValue)(doc, doctype, sys, GetSIFromVers(XH11));
lexer->versionEmitted = XH11;
return yes;
}
else if (lexer->versions & XH11 && !(lexer->versions & VERS_HTML40))
{
TY_(RepairAttrValue)(doc, doctype, pub, GetFPIFromVers(XH11));
TY_(RepairAttrValue)(doc, doctype, sys, GetSIFromVers(XH11));
lexer->versionEmitted = XH11;
}
else if (lexer->versions & XB10 && lexer->doctype == XB10)
{
if (!TY_(GetAttrByName)(doctype, sys))
TY_(RepairAttrValue)(doc, doctype, sys, GetSIFromVers(XB10));
lexer->versionEmitted = XB10;
return yes;
}
else if (lexer->versions & VERS_HTML40_STRICT)
{
TY_(RepairAttrValue)(doc, doctype, pub, GetFPIFromVers(X10S));
TY_(RepairAttrValue)(doc, doctype, sys, GetSIFromVers(X10S));
lexer->versionEmitted = X10S;
}
else if (lexer->versions & VERS_FRAMESET)
{
TY_(RepairAttrValue)(doc, doctype, pub, GetFPIFromVers(X10F));
TY_(RepairAttrValue)(doc, doctype, sys, GetSIFromVers(X10F));
lexer->versionEmitted = X10F;
}
else if (lexer->versions & VERS_LOOSE)
{
TY_(RepairAttrValue)(doc, doctype, pub, GetFPIFromVers(X10T));
TY_(RepairAttrValue)(doc, doctype, sys, GetSIFromVers(X10T));
lexer->versionEmitted = X10T;
}
else if (lexer->versions & VERS_HTML5)
{
/*\
* Issue #273 - If still a html5/xhtml5 bit
* existing, that is the 'ConstrainVersion' has
* not eliminated all HTML5, then nothing to do here.
* Certainly do **not** delete the DocType node!
* see: http://www.w3.org/QA/Tips/Doctype
\*/
}
else
{
if (doctype)
TY_(DiscardElement)(doc, doctype);
return no;
}
break;
case TidyDoctypeOmit:
assert(0);
break;
}
return no;
}
/* fixup doctype if missing */
Bool TY_(FixDocType)( TidyDocImpl* doc )
{
Lexer* lexer = doc->lexer;
Node* doctype = TY_(FindDocType)( doc );
unsigned int dtmode = cfg( doc, TidyDoctypeMode );
unsigned int guessed = VERS_UNKNOWN;
Bool hadSI = no;
/* Issue #167 - found doctype, and doctype is default VERS_HTML5, set VERS_HTML5 and return yes */
if (doctype && (dtmode == TidyDoctypeAuto) &&
(lexer->doctype == VERS_HTML5) )
{
/* The version emitted cannot be a composite value! */
lexer->versionEmitted = HT50;
return yes;
}
if (dtmode == TidyDoctypeAuto &&
lexer->versions & lexer->doctype &&
!(VERS_XHTML & lexer->doctype && !lexer->isvoyager)
&& TY_(FindDocType)(doc))
{
lexer->versionEmitted = lexer->doctype;
return yes;
}
if (dtmode == TidyDoctypeOmit)
{
if (doctype)
TY_(DiscardElement)( doc, doctype );
lexer->versionEmitted = TY_(ApparentVersion)( doc );
return yes;
}
if (cfgBool(doc, TidyXmlOut))
return yes;
if (doctype)
hadSI = TY_(GetAttrByName)(doctype, "SYSTEM") != NULL;
if ((dtmode == TidyDoctypeStrict ||
dtmode == TidyDoctypeLoose) && doctype)
{
TY_(DiscardElement)(doc, doctype);
doctype = NULL;
}
switch (dtmode)
{
case TidyDoctypeHtml5:
guessed = HT50;
break;
case TidyDoctypeStrict:
guessed = H41S;
break;
case TidyDoctypeLoose:
guessed = H41T;
break;
case TidyDoctypeAuto:
guessed = TY_(HTMLVersion)(doc);
break;
}
lexer->versionEmitted = guessed;
if (guessed == VERS_UNKNOWN)
return no;
if (doctype)
{
doctype->element = TY_(tmbstrtolower)(doctype->element);
}
else
{
doctype = NewDocTypeNode(doc);
doctype->element = TY_(tmbstrdup)(doc->allocator, "html");
}
TY_(RepairAttrValue)(doc, doctype, "PUBLIC", GetFPIFromVers(guessed));
if (hadSI)
tidy-html5.c view on Meta::CPAN
break;
}
/* find and discard multiple <head> elements */
/* find and discard <html> in <head> elements */
if ((node->tag == head->tag || nodeIsHTML(node)) && node->type == StartTag)
{
TY_(Report)(doc, head, node, DISCARDING_UNEXPECTED);
TY_(FreeNode)(doc, node);
continue;
}
if (TY_(nodeIsText)(node))
{
/*\ Issue #132 - avoid warning for missing body tag,
* if configured to --omit-otpional-tags yes
* Issue #314 - and if --show-body-only
\*/
if (!cfgBool( doc, TidyOmitOptionalTags ) &&
!showingBodyOnly(doc) )
{
TY_(Report)(doc, head, node, TAG_NOT_ALLOWED_IN);
}
TY_(UngetToken)( doc );
break;
}
if (node->type == ProcInsTag && node->element &&
TY_(tmbstrcmp)(node->element, "xml-stylesheet") == 0)
{
TY_(Report)(doc, head, node, TAG_NOT_ALLOWED_IN);
TY_(InsertNodeBeforeElement)(TY_(FindHTML)(doc), node);
continue;
}
/* deal with comments etc. */
if (InsertMisc(head, node))
continue;
if (node->type == DocTypeTag)
{
InsertDocType(doc, head, node);
continue;
}
/* discard unknown tags */
if (node->tag == NULL)
{
TY_(Report)(doc, head, node, DISCARDING_UNEXPECTED);
TY_(FreeNode)( doc, node);
continue;
}
/*
if it doesn't belong in the head then
treat as implicit end of head and deal
with as part of the body
*/
if (!(node->tag->model & CM_HEAD))
{
/* #545067 Implicit closing of head broken - warn only for XHTML input */
if ( lexer->isvoyager )
TY_(Report)(doc, head, node, TAG_NOT_ALLOWED_IN );
TY_(UngetToken)( doc );
break;
}
if (TY_(nodeIsElement)(node))
{
if ( nodeIsTITLE(node) )
{
++HasTitle;
if (HasTitle > 1)
TY_(Report)(doc, head, node,
head ?
TOO_MANY_ELEMENTS_IN : TOO_MANY_ELEMENTS);
}
else if ( nodeIsBASE(node) )
{
++HasBase;
if (HasBase > 1)
TY_(Report)(doc, head, node,
head ?
TOO_MANY_ELEMENTS_IN : TOO_MANY_ELEMENTS);
}
TY_(InsertNodeAtEnd)(head, node);
ParseTag(doc, node, IgnoreWhitespace);
continue;
}
/* discard unexpected text nodes and end tags */
TY_(Report)(doc, head, node, DISCARDING_UNEXPECTED);
TY_(FreeNode)( doc, node);
}
DEBUG_LOG(SPRTF("Exit ParseHead 1...\n"));
}
/*\
* Issue #166 - repeated <main> element
* But this service is generalised to check for other duplicate elements
\*/
static Bool TY_(FindNodeWithId)( Node *node, TidyTagId tid )
{
Node *content;
while (node)
{
if (TagIsId(node,tid))
return yes;
/*\
* Issue #459 - Under certain circumstances, with many node this use of
* 'for (content = node->content; content; content = content->content)'
* would produce a **forever** circle, or at least a very extended loop...
* It is sufficient to test the content, if it exists,
* to quickly iterate all nodes. Now all nodes are tested only once.
\*/
content = node->content;
if (content)
{
tidy-html5.c view on Meta::CPAN
{
TidyDocImpl* impl = tidyDocToImpl( tdoc );
unsigned int count = 0xFFFFFFFF;
if ( impl )
count = impl->errors;
return count;
}
unsigned int TIDY_CALL tidyWarningCount( TidyDoc tdoc )
{
TidyDocImpl* impl = tidyDocToImpl( tdoc );
unsigned int count = 0xFFFFFFFF;
if ( impl )
count = impl->warnings;
return count;
}
unsigned int TIDY_CALL tidyAccessWarningCount( TidyDoc tdoc )
{
TidyDocImpl* impl = tidyDocToImpl( tdoc );
unsigned int count = 0xFFFFFFFF;
if ( impl )
count = impl->accessErrors;
return count;
}
unsigned int TIDY_CALL tidyConfigErrorCount( TidyDoc tdoc )
{
TidyDocImpl* impl = tidyDocToImpl( tdoc );
unsigned int count = 0xFFFFFFFF;
if ( impl )
count = impl->optionErrors;
return count;
}
/* Error reporting functions
*/
void TIDY_CALL tidyErrorSummary( TidyDoc tdoc )
{
TidyDocImpl* impl = tidyDocToImpl( tdoc );
if ( impl )
TY_(ErrorSummary)( impl );
}
void TIDY_CALL tidyGeneralInfo( TidyDoc tdoc )
{
TidyDocImpl* impl = tidyDocToImpl( tdoc );
if ( impl )
{
TY_(Dialogue)( impl, TEXT_GENERAL_INFO );
TY_(Dialogue)( impl, TEXT_GENERAL_INFO_PLEA );
}
}
/* I/O Functions
**
** Initial version supports only whole-file operations.
** Do not expose Tidy StreamIn or Out data structures - yet.
*/
/* Parse/load Functions
**
** HTML/XHTML version determined from input.
*/
int TIDY_CALL tidyParseFile( TidyDoc tdoc, ctmbstr filnam )
{
TidyDocImpl* doc = tidyDocToImpl( tdoc );
return tidyDocParseFile( doc, filnam );
}
int TIDY_CALL tidyParseStdin( TidyDoc tdoc )
{
TidyDocImpl* doc = tidyDocToImpl( tdoc );
return tidyDocParseStdin( doc );
}
int TIDY_CALL tidyParseString( TidyDoc tdoc, ctmbstr content )
{
TidyDocImpl* doc = tidyDocToImpl( tdoc );
return tidyDocParseString( doc, content );
}
int TIDY_CALL tidyParseBuffer( TidyDoc tdoc, TidyBuffer* inbuf )
{
TidyDocImpl* doc = tidyDocToImpl( tdoc );
return tidyDocParseBuffer( doc, inbuf );
}
int TIDY_CALL tidyParseSource( TidyDoc tdoc, TidyInputSource* source )
{
TidyDocImpl* doc = tidyDocToImpl( tdoc );
return tidyDocParseSource( doc, source );
}
#ifdef WIN32
#define M_IS_DIR _S_IFDIR
#else // !WIN32
#define M_IS_DIR S_IFDIR
#endif
int tidyDocParseFile( TidyDocImpl* doc, ctmbstr filnam )
{
int status = -ENOENT;
FILE* fin = 0;
struct stat sbuf = { 0 }; /* Is. #681 - read-only files */
if ( stat(filnam,&sbuf) != 0 )
{
TY_(ReportFileError)( doc, filnam, FILE_NOT_FILE );
return status;
}
if (sbuf.st_mode & M_IS_DIR) /* and /NOT/ if a DIRECTORY */
{
TY_(ReportFileError)(doc, filnam, FILE_NOT_FILE);
return status;
}
#ifdef _WIN32
return TY_(DocParseFileWithMappedFile)( doc, filnam );
#else
fin = fopen( filnam, "rb" );
#if PRESERVE_FILE_TIMES
{
/* get last modified time */
TidyClearMemory(&doc->filetimes, sizeof(doc->filetimes));
if (fin && cfgBool(doc, TidyKeepFileTimes) &&
fstat(fileno(fin), &sbuf) != -1)
tidy-html5.c view on Meta::CPAN
{
doc->pConfigChangeCallback = callback;
return tidyDocStatus( doc );
}
/* Issue #567 - move style elements from body to head */
TY_(CleanStyle)(doc, &doc->root);
/* simplifies <b><b> ... </b> ...</b> etc. */
if ( mergeEmphasis )
TY_(NestedEmphasis)( doc, &doc->root );
/* cleans up <dir>indented text</dir> etc. */
TY_(List2BQ)( doc, &doc->root );
TY_(BQ2Div)( doc, &doc->root );
/* replaces i by em and b by strong */
if ( logical )
TY_(EmFromI)( doc, &doc->root );
if ( word2K && TY_(IsWord2000)(doc) )
{
/* prune Word2000's <![if ...]> ... <![endif]> */
TY_(DropSections)( doc, &doc->root );
/* drop style & class attributes and empty p, span elements */
TY_(CleanWord2000)( doc, &doc->root );
TY_(DropEmptyElements)(doc, &doc->root);
}
/* replaces presentational markup by style rules */
if ( clean )
TY_(CleanDocument)( doc );
/* clean up html exported by Google Docs */
if ( gdoc )
TY_(CleanGoogleDocument)( doc );
/* Reconcile http-equiv meta element with output encoding */
TY_(TidyMetaCharset)(doc);
if ( !TY_(CheckNodeIntegrity)( &doc->root ) )
TidyPanic( doc->allocator, integrity );
/* remember given doctype for reporting */
node = TY_(FindDocType)(doc);
if (node)
{
AttVal* fpi = TY_(GetAttrByName)(node, "PUBLIC");
if (AttrHasValue(fpi))
{
if (doc->givenDoctype)
TidyDocFree(doc, doc->givenDoctype);
doc->givenDoctype = TY_(tmbstrdup)(doc->allocator,fpi->value);
}
}
if ( doc->root.content )
{
/* If we had XHTML input but want HTML output */
if ( htmlOut && doc->lexer->isvoyager )
{
Node* node = TY_(FindDocType)(doc);
/* Remove reference, but do not free */
if (node)
TY_(RemoveNode)(node);
}
if (xhtmlOut && !htmlOut)
{
TY_(SetXHTMLDocType)(doc);
TY_(FixAnchors)(doc, &doc->root, wantNameAttr, yes);
TY_(FixXhtmlNamespace)(doc, yes);
TY_(FixLanguageInformation)(doc, &doc->root, yes, yes);
}
else
{
TY_(FixDocType)(doc);
TY_(FixAnchors)(doc, &doc->root, wantNameAttr, yes);
TY_(FixXhtmlNamespace)(doc, no);
TY_(FixLanguageInformation)(doc, &doc->root, no, yes);
}
if (tidyMark )
TY_(AddGenerator)(doc);
}
/* ensure presence of initial <?xml version="1.0"?> */
if ( xmlOut && xmlDecl )
TY_(FixXmlDecl)( doc );
/* At this point the apparent doctype is going to be as stable as
it can ever be, so we can start detecting things that shouldn't
be in this version of HTML
*/
if (doc->lexer)
{
/*\
* Issue #429 #426 - These services can only be used
* when there is a document loaded, ie a lexer created.
* But really should not be calling a Clean and Repair
* service with no doc!
\*/
if (doc->lexer->versionEmitted & VERS_HTML5)
TY_(CheckHTML5)( doc, &doc->root );
TY_(CheckHTMLTagsAttribsVersions)( doc, &doc->root );
if ( !doc->lexer->isvoyager && doc->xmlDetected )
{
TY_(Report)(doc, NULL, TY_(FindXmlDecl)(doc), XML_DECLARATION_DETECTED );
}
}
TY_(CleanHead)(doc); /* Is #692 - discard multiple <title> tags */
#if defined(ENABLE_DEBUG_LOG)
SPRTF("All nodes AFTER clean and repair\n");
dbg_show_all_nodes( doc, &doc->root, 0 );