tidy - print HTML(5) files
tidy [options] [file ...] [options] [file ...] ...
TIDY(1) 5.4.0 TIDY(1)
NAME
tidy - check, correct, and pretty-print HTML(5) files
SYNOPSIS
tidy [options] [file ...] [options] [file ...] ...
DESCRIPTION
Tidy reads HTML, XHTML, and XML files and writes cleaned-up markup.
For HTML variants, it detects, reports, and corrects many common coding
errors and strives to produce visually equivalent markup that is both
conformant to the HTML specifications and that works in most browsers.
A common use of Tidy is to convert plain HTML to XHTML. For generic
XML files, Tidy is limited to correcting basic well-formedness errors
and pretty printing.
If no input file is specified, Tidy reads the standard input. If no
output file is specified, Tidy writes the tidied markup to the standard
output. If no error file is specified, Tidy writes messages to the
standard error.
OPTIONS
Tidy supports two different kinds of options. Purely command-line
options, starting with a single dash '-', can only be used on the
command-line, not in configuration files. They are listed in the first
part of this section. Configuration options, on the other hand, can
either be passed on the command line, starting with two dashes --, or
specified in a configuration file, using the option name without the
starting dashes. They are listed in the second part of this section.
For command-line options that expect a numerical argument, a default is
assumed if no meaningful value can be found. On the other hand,
configuration options cannot be used without a value; a configuration
option without a value is simply discarded and reported as an error.
Using a command-line option is sometimes equivalent to setting the
value of a configuration option. The equivalent option and value are
shown in parentheses in the list below, as they would appear in a
configuration file. For example, -quiet, -q (quiet: yes) means that
using the command-line option -quiet or -q is equivalent to setting the
configuration option quiet to yes.
Single-letter command-line options without an associated value can be
combined; for example '-i', '-m' and '-u' may be combined as '-imu'.
File manipulation
-output <%s>, -o <%s> (output-file: <%s>)
write output to the specified <file>
-config <%s>
set configuration options from the specified <file>
-file <%s>, -f <%s> (error-file: <%s>)
write errors and warnings to the specified <file>
-modify, -m (write-back: yes)
modify the original input files
Processing directives
-indent, -i (indent: auto)
indent element content
-wrap <%s>, -w <%s> (wrap: <%s>)
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.
-upper, -u (uppercase-tags: yes)
force tags to upper case
-clean, -c (clean: yes)
replace FONT, NOBR and CENTER tags with CSS
-bare, -b (bare: yes)
strip out smart quotes and em dashes, etc.
-gdoc, -g (gdoc: yes)
produce clean version of html exported by Google Docs
-numeric, -n (numeric-entities: yes)
output numeric rather than named entities
-errors, -e (markup: no)
show only errors and warnings
-quiet, -q (quiet: yes)
suppress nonessential output
-omit (omit-optional-tags: yes)
omit optional start tags and end tags
-xml (input-xml: yes)
specify the input is well formed XML
-asxml, -asxhtml (output-xhtml: yes)
convert HTML to well formed XHTML
-ashtml (output-html: yes)
force XHTML to well formed HTML
-access <%s> (accessibility-check: <%s>)
do additional accessibility checks (<level> = 0, 1, 2, 3). 0 is
assumed if <level> is missing.
Character encodings
-raw output values above 127 without conversion to entities
-ascii use ISO-8859-1 for input, US-ASCII for output
-latin0
use ISO-8859-15 for input, US-ASCII for output
-latin1
use ISO-8859-1 for both input and output
-iso2022
use ISO-2022 for both input and output
-utf8 use UTF-8 for both input and output
-mac use MacRoman for input, US-ASCII for output
-win1252
use Windows-1252 for input, US-ASCII for output
-ibm858
use IBM-858 (CP850+Euro) for input, US-ASCII for output
-utf16le
use UTF-16LE for both input and output
-utf16be
use UTF-16BE for both input and output
-utf16 use UTF-16 for both input and output
-big5 use Big5 for both input and output
-shiftjis
use Shift_JIS for both input and output
Miscellaneous
-version, -v
show the version of Tidy
-help, -h, -?
list the command line options
-help-config
list all configuration options
-show-config
list the current configuration settings
-help-option <%s>
show a description of the <option>
-language <%s> (language: <%s>)
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`.
XML
-xml-help
list the command line options in XML format
-xml-config
list all configuration options in XML format
-xml-strings
output all of Tidy's strings in XML format
-xml-error-strings
output error constants and strings in XML format
-xml-options-strings
output option descriptions in XML format
Configuration options can be specified by preceding each option with --
at the command line, followed by its desired value, OR by placing the
options and values in a configuration file, and telling tidy to read
that file with the -config option:
tidy --option1 value1 --option2 value2 ...
tidy -config config-file ...
Configuration options can be conveniently grouped in a single config
file. A Tidy configuration file is simply a text file, where each
option is listed on a separate line in the form
option1: value1
option2: value2
etc.
The permissible values for a given option depend on the option's Type.
There are five Types: Boolean, AutoBool, DocType, Enum, and String.
Boolean Types allow any of yes/no, y/n, true/false, t/f, 1/0.
AutoBools allow auto in addition to the values allowed by Booleans.
Integer Types take non-negative integers. String Types generally have
no defaults, and you should provide them in non-quoted form (unless you
wish the output to contain the literal quotes).
Enum, Encoding, and DocType Types have a fixed repertoire of items,
which are listed in the Supported values sections below.
You only need to provide options and values for those whose defaults
you wish to override, although you may wish to include some already-
defaulted options and values for the sake of documentation and
explicitness.
Here is a sample config file, with at least one example of each of the
five Types:
// sample Tidy configuration options
output-xhtml: yes
add-xml-decl: no
doctype: strict
char-encoding: ascii
indent: auto
wrap: 76
repeated-attributes: keep-last
error-file: errs.txt
Below is a summary and brief description of each of the options. They
are listed alphabetically within each category.
HTML, XHTML, XML options
--add-xml-decl Boolean (no if unset)
This option specifies if Tidy should add the XML declaration
when outputting XML or XHTML.
Note that if the input already includes an <?xml ... ?>
declaration then this option will be ignored.
If the encoding for the output is different from ascii, one of
the utf* encodings, or raw, then the declaration is always added
as required by the XML standard.
See also: --char-encoding, --output-encoding
--add-xml-space Boolean (no if unset)
This option specifies if Tidy should add xml:space="preserve" to
elements such as <pre>, <style> and <script> when generating
XML.
This is needed if the whitespace in such elements is to be
parsed appropriately without having access to the DTD.
--alt-text String
This option specifies the default alt= text Tidy uses for <img>
attributes when the alt= attribute is missing.
Use with care, as it is your responsibility to make your
documents accessible to people who cannot see the images.
--anchor-as-name Boolean (yes if unset)
This option controls the deletion or addition of the name
attribute in elements where it can serve as anchor.
If set to yes a name attribute, if not already existing, is
added along an existing id attribute if the DTD allows it.
If set to no any existing name attribute is removed if an id
attribute exists or has been added.
--assume-xml-procins Boolean (no if unset)
This option specifies if Tidy should change the parsing of
processing instructions to require ?> as the terminator rather
than >.
This option is automatically set if the input is in XML.
--bare Boolean (no if unset)
This option specifies if Tidy should strip Microsoft specific
HTML from Word 2000 documents, and output spaces rather than
non-breaking spaces where they exist in the input.
--clean Boolean (no if unset)
This option specifies if Tidy should perform cleaning of some
legacy presentational tags (currently <i>, <b>, <center> when
enclosed within appropriate inline tags, and <font>). If set to
yes then legacy tags will be replaced with CSS <style> tags and
structural markup as appropriate.
--coerce-endtags Boolean (yes if unset)
This option specifies if Tidy should coerce a start tag into an
end tag in cases where it looks like an end tag was probably
intended; for example, given
<span>foo <b>bar<b> baz</span>
Tidy will output
<span>foo <b>bar</b> baz</span>
--css-prefix String
This option specifies the prefix that Tidy uses for styles
rules.
By default, c will be used.
--decorate-inferred-ul Boolean (no if unset)
This option specifies if Tidy should decorate inferred <ul>
elements with some CSS markup to avoid indentation to the right.
--doctype DocType (auto if unset)
Supported values: html5, omit, auto, strict, transitional, user
This option specifies the DOCTYPE declaration generated by Tidy.
If set to omit the output won't contain a DOCTYPE declaration.
Note this this also implies numeric-entities is set to yes.
If set to html5 the DOCTYPE is set to <!DOCTYPE html>.
If set to auto (the default) Tidy will use an educated guess
based upon the contents of the document.
If set to strict, Tidy will set the DOCTYPE to the HTML4 or
XHTML1 strict DTD.
If set to loose, the DOCTYPE is set to the HTML4 or XHTML1 loose
(transitional) DTD.
Alternatively, you can supply a string for the formal public
identifier (FPI).
For example:
doctype: "-//ACME//DTD HTML 3.14159//EN"
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.
This option does not offer a validation of document conformance.
--drop-empty-elements Boolean (yes if unset)
This option specifies if Tidy should discard empty elements.
--drop-empty-paras Boolean (yes if unset)
This option specifies if Tidy should discard empty paragraphs.
--drop-font-tags Boolean (no if unset)
Deprecated; do not use. This option is destructive to <font>
tags, and it will be removed from future versions of Tidy. Use
the clean option instead.
If you do set this option despite the warning it will perform as
clean except styles will be inline instead of put into a CSS
class. <font> tags will be dropped completely and their styles
will not be preserved.
If both clean and this option are enabled, <font> tags will
still be dropped completely, and other styles will be preserved
in a CSS class instead of inline.
See clean for more information.
--drop-proprietary-attributes Boolean (no if unset)
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 strict-tags-
attributes.
--enclose-block-text Boolean (no if unset)
This option specifies if Tidy should insert a <p> element to
enclose any text it finds in any element that allows mixed
content for HTML transitional but not HTML strict.
--enclose-text Boolean (no if unset)
This option specifies if Tidy should enclose any text it finds
in the body element within a <p> element.
This is useful when you want to take existing HTML and use it
with a style sheet.
--escape-cdata Boolean (no if unset)
This option specifies if Tidy should convert <![CDATA[]]>
sections to normal text.
--fix-backslash Boolean (yes if unset)
This option specifies if Tidy should replace backslash
characters \ in URLs with forward slashes /.
--fix-bad-comments Boolean (yes if unset)
This option specifies if Tidy should replace unexpected hyphens
with = characters when it comes across adjacent hyphens.
The default is yes.
This option is provided for users of Cold Fusion which uses the
comment syntax: <!--- --->.
--fix-uri Boolean (yes if unset)
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.
--gdoc Boolean (no if unset)
This option specifies if Tidy should enable specific behavior
for cleaning up HTML exported from Google Docs.
--hide-comments Boolean (no if unset)
This option specifies if Tidy should print out comments.
--hide-endtags Boolean (no if unset)
This option is an alias for omit-optional-tags.
--indent-cdata Boolean (no if unset)
This option specifies if Tidy should indent <![CDATA[]]>
sections.
--input-xml Boolean (no if unset)
This option specifies if Tidy should use the XML parser rather
than the error correcting HTML parser.
--join-classes Boolean (no if unset)
This option specifies if Tidy should combine class names to
generate a single, new class name if multiple class assignments
are detected on an element.
--join-styles Boolean (yes if unset)
This option specifies if Tidy should combine styles to generate
a single, new style if multiple style values are detected on an
element.
--literal-attributes Boolean (no if unset)
This option specifies how Tidy deals with whitespace characters
within attribute values.
If the value is no 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.
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 yes.
--logical-emphasis Boolean (no if unset)
This option specifies if Tidy should replace any occurrence of
<i> with <em> and any occurrence of <b> with <strong>. Any
attributes are preserved unchanged.
This option can be set independently of the clean option.
--lower-literals Boolean (yes if unset)
This option specifies if Tidy should convert the value of an
attribute that takes a list of predefined values to lower case.
This is required for XHTML documents.
--merge-divs AutoBool (auto if unset)
This option can be used to modify the behavior of clean when set
to yes.
This option specifies if Tidy should merge nested <div> such as
<div><div>...</div></div>.
If set to auto the attributes of the inner <div> are moved to
the outer one. Nested <div> with id attributes are not merged.
If set to yes the attributes of the inner <div> are discarded
with the exception of class and style.
See also: --clean, --merge-spans
--merge-emphasis Boolean (yes if unset)
This option specifies if Tidy should merge nested <b> and <i>
elements; for example, for the case
<b class="rtop-2">foo <b class="r2-2">bar</b> baz</b>,
Tidy will output <b class="rtop-2">foo bar baz</b>.
--merge-spans AutoBool (auto if unset)
This option can be used to modify the behavior of clean when set
to yes.
This option specifies if Tidy should merge nested <span> such as
<span><span>...</span></span>.
The algorithm is identical to the one used by merge-divs.
See also: --clean, --merge-divs
--ncr Boolean (yes if unset)
This option specifies if Tidy should allow numeric character
references.
--new-blocklevel-tags Tag names
This option specifies new block-level tags. This option takes a
space or comma separated list of tag names.
Unless you declare new tags, Tidy will refuse to generate a
tidied file if the input includes previously unknown tags.
Note you can't change the content model for elements such as
<table>, <ul>, <ol> and <dl>.
This option is ignored in XML mode.
See also: --new-empty-tags, --new-inline-tags, --new-pre-tags
--new-empty-tags Tag names
This option specifies new empty inline tags. This option takes a
space or comma separated list of tag names.
Unless you declare new tags, Tidy will refuse to generate a
tidied file if the input includes previously unknown tags.
Remember to also declare empty tags as either inline or
blocklevel.
This option is ignored in XML mode.
See also: --new-blocklevel-tags, --new-inline-tags, --new-pre-
tags
--new-inline-tags Tag names
This option specifies new non-empty inline tags. This option
takes a space or comma separated list of tag names.
Unless you declare new tags, Tidy will refuse to generate a
tidied file if the input includes previously unknown tags.
This option is ignored in XML mode.
See also: --new-blocklevel-tags, --new-empty-tags, --new-pre-
tags
--new-pre-tags Tag names
This option specifies new tags that are to be processed in
exactly the same way as HTML's <pre> element. This option takes
a space or comma separated list of tag names.
Unless you declare new tags, Tidy will refuse to generate a
tidied file if the input includes previously unknown tags.
Note you cannot as yet add new CDATA elements.
This option is ignored in XML mode.
See also: --new-blocklevel-tags, --new-empty-tags, --new-inline-
tags
--numeric-entities Boolean (no if unset)
This option specifies if Tidy should output entities other than
the built-in HTML entities (&, <, >, and ") in
the numeric rather than the named entity form.
Only entities compatible with the DOCTYPE declaration generated
are used.
Entities that can be represented in the output encoding are
translated correspondingly.
See also: --doctype, --preserve-entities
--omit-optional-tags Boolean (no if unset)
This option specifies if Tidy should omit optional start tags
and end tags when generating output.
Setting this option causes all tags for the <html>, <head>, and
<body> elements to be omitted from output, as well as such end
tags as </p>, </li>, </dt>, </dd>, </option>, </tr>, </td>, and
</th>.
This option is ignored for XML output.
--output-html Boolean (no if unset)
This option specifies if Tidy should generate pretty printed
output, writing it as HTML.
--output-xhtml Boolean (no if unset)
This option specifies if Tidy should generate pretty printed
output, writing it as extensible HTML.
This option causes Tidy to set the DOCTYPE and default namespace
as appropriate to XHTML, and will use the corrected value in
output regardless of other sources.
For XHTML, entities can be written as named or numeric entities
according to the setting of numeric-entities.
The original case of tags and attributes will be preserved,
regardless of other options.
--output-xml Boolean (no if unset)
This option specifies if Tidy should pretty print output,
writing it as well-formed XML.
Any entities not defined in XML 1.0 will be written as numeric
entities to allow them to be parsed by an XML parser.
The original case of tags and attributes will be preserved,
regardless of other options.
--preserve-entities Boolean (no if unset)
This option specifies if Tidy should preserve well-formed
entities as found in the input.
--quote-ampersand Boolean (yes if unset)
This option specifies if Tidy should output unadorned &
characters as &.
--quote-marks Boolean (no if unset)
This option specifies if Tidy should output " characters as
" as is preferred by some editing environments.
The apostrophe character ' is written out as ' since many
web browsers don't yet support '.
--quote-nbsp Boolean (yes if unset)
This option specifies if Tidy should output non-breaking space
characters as entities, rather than as the Unicode character
value 160 (decimal).
--repeated-attributes enum (keep-last if unset)
Supported values: keep-first, keep-last
This option specifies if Tidy should keep the first or last
attribute, if an attribute is repeated, e.g. has two align
attributes.
See also: --join-classes, --join-styles
--replace-color Boolean (no if unset)
This option specifies if Tidy should replace numeric values in
color attributes with HTML/XHTML color names where defined, e.g.
replace #ffffff with white.
--show-body-only AutoBool (no if unset)
This option specifies if Tidy should print only the contents of
the body tag as an HTML fragment.
If set to auto, this is performed only if the body tag has been
inferred.
Useful for incorporating existing whole pages as a portion of
another page.
This option has no effect if XML output is requested.
--skip-nested Boolean (yes if unset)
This option specifies that Tidy should skip nested tags when
parsing script and style data.
--strict-tags-attributes Boolean (no if unset)
This options ensures that tags and attributes are applicable for
the version of HTML that Tidy outputs. When set to yes (the
default) and the output document type is a strict doctype, then
Tidy will report errors. If the output document type is a loose
or transitional doctype, then Tidy will report warnings.
Additionally if drop-proprietary-attributes is enabled, then not
applicable attributes will be dropped, too.
When set to no, these checks are not performed.
--uppercase-attributes Boolean (no if unset)
This option specifies if Tidy should output attribute names in
upper case.
The default is no, which results in lower case attribute names,
except for XML input, where the original case is preserved.
--uppercase-tags Boolean (no if unset)
This option specifies if Tidy should output tag names in upper
case.
The default is no which results in lower case tag names, except
for XML input where the original case is preserved.
--word-2000 Boolean (no if unset)
This option specifies if Tidy should go to great pains to strip
out all the surplus stuff Microsoft Word 2000 inserts when you
save Word documents as "Web pages". It doesn't handle embedded
images or VML.
You should consider using Word's "Save As: Web Page, Filtered".
Diagnostics options
--accessibility-check enum (0 (Tidy Classic) if unset)
Supported values: 0 (Tidy Classic), 1 (Priority 1 Checks), 2
(Priority 2 Checks), 3 (Priority 3 Checks)
This option specifies what level of accessibility checking, if
any, that Tidy should perform.
Level 0 (Tidy Classic) is equivalent to Tidy Classic's
accessibility checking.
For more information on Tidy's accessibility checking, visit
Tidy's Accessibility Page at http://www.html-
tidy.org/accessibility/.
--show-errors Integer (6 if unset)
This option specifies the number Tidy uses to determine if
further errors should be shown. If set to 0, then no errors are
shown.
--show-info Boolean (yes if unset)
This option specifies if Tidy should display info-level
messages.
--show-warnings Boolean (yes if unset)
This option specifies if Tidy should suppress warnings. This can
be useful when a few errors are hidden in a flurry of warnings.
Pretty Print options
--break-before-br Boolean (no if unset)
This option specifies if Tidy should output a line break before
each <br> element.
--escape-scripts Boolean (yes if unset)
This option causes items that look like closing tags, like </g
to be escaped to <\/g. Set this option to 'no' if you do not
want this.
--indent AutoBool (no if unset)
This option specifies if Tidy should indent block-level tags.
If set to auto Tidy will decide whether or not to indent the
content of tags such as <title>, <h1>-<h6>, <li>, <td>, or <p>
based on the content including a block-level element.
Setting indent to yes can expose layout bugs in some browsers.
Use the option indent-spaces to control the number of spaces or
tabs output per level of indent, and indent-with-tabs to specify
whether spaces or tabs are used.
See also: --indent-spaces
--indent-attributes Boolean (no if unset)
This option specifies if Tidy should begin each attribute on a
new line.
--indent-spaces Integer (2 if unset)
This option specifies the number of spaces or tabs that Tidy
uses to indent content when indent is enabled.
Note that the default value for this option is dependent upon
the value of indent-with-tabs (see also).
See also: --indent
--indent-with-tabs Boolean (no if unset)
This option specifies if Tidy should indent with tabs instead of
spaces, assuming indent is yes.
Set it to yes to indent using tabs instead of the default
spaces.
Use the option indent-spaces to control the number of tabs
output per level of indent. Note that when indent-with-tabs is
enabled the default value of indent-spaces is reset to 1.
Note tab-size controls converting input tabs to spaces. Set it
to zero to retain input tabs.
--markup Boolean (yes if unset)
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 force-
output).
--punctuation-wrap Boolean (no if unset)
This option specifies if Tidy should line wrap after some
Unicode or Chinese punctuation characters.
--sort-attributes enum (none if unset)
Supported values: none, alpha
This option specifies that Tidy should sort attributes within an
element using the specified sort algorithm. If set to alpha, the
algorithm is an ascending alphabetic sort.
--split Boolean (no if unset)
This option has no function and is deprecated.
--tab-size Integer (8 if unset)
This option specifies the number of columns that Tidy uses
between successive tab stops. It is used to map tabs to spaces
when reading the input.
--vertical-space AutoBool (no if unset)
This option specifies if Tidy should add some extra empty lines
for readability.
The default is no.
If set to auto Tidy will eliminate nearly all newline
characters.
--wrap Integer (68 if unset)
This option specifies the right margin Tidy uses for line
wrapping.
Tidy tries to wrap lines so that they do not exceed this length.
Set wrap to 0(zero) if you want to disable line wrapping.
--wrap-asp Boolean (yes if unset)
This option specifies if Tidy should line wrap text contained
within ASP pseudo elements, which look like: <% ... %>.
--wrap-attributes Boolean (no if unset)
This option specifies if Tidy should line-wrap attribute values,
meaning that if the value of an attribute causes a line to
exceed the width specified by wrap, Tidy will add one or more
line breaks to the value, causing it to be wrapped into multiple
lines.
Note that this option can be set independently of wrap-script-
literals. By default Tidy replaces any newline or tab with a
single space and replaces any sequences of whitespace with a
single space.
To force Tidy to preserve the original, literal values of all
attributes, and ensure that whitespace characters within
attribute values are passed through unchanged, set literal-
attributes to yes.
See also: --wrap-script-literals, --literal-attributes
--wrap-jste Boolean (yes if unset)
This option specifies if Tidy should line wrap text contained
within JSTE pseudo elements, which look like: <# ... #>.
--wrap-php Boolean (yes if unset)
This option specifies if Tidy should line wrap text contained
within PHP pseudo elements, which look like: <?php ... ?>.
--wrap-script-literals Boolean (no if unset)
This option specifies if Tidy should line wrap string literals
that appear in script attributes.
Tidy wraps long script string literals by inserting a backslash
character before the line break.
See also: --wrap-attributes
--wrap-sections Boolean (yes if unset)
This option specifies if Tidy should line wrap text contained
within <![ ... ]> section tags.
Character Encoding options
--ascii-chars Boolean (no if unset)
Can be used to modify behavior of the clean option when set to
yes.
If set to yes when using clean, &emdash;, ”, and other
named character entities are downgraded to their closest ASCII
equivalents.
See also: --clean
--char-encoding Encoding (utf8 if unset)
Supported values: raw, ascii, latin0, latin1, utf8, iso2022,
mac, win1252, ibm858, utf16le, utf16be, utf16, big5, shiftjis
This option specifies the character encoding Tidy uses for both
the input and output.
For ascii Tidy will accept Latin-1 (ISO-8859-1) character
values, but will use entities for all characters whose value
>127.
For raw, Tidy will output values above 127 without translating
them into entities.
For latin1, characters above 255 will be written as entities.
For utf8, Tidy assumes that both input and output are encoded as
UTF-8.
You can use iso2022 for files encoded using the ISO-2022 family
of encodings e.g. ISO-2022-JP.
For mac and win1252, Tidy will accept vendor specific character
values, but will use entities for all characters whose value
>127.
For unsupported encodings, use an external utility to convert to
and from UTF-8.
See also: --input-encoding, --output-encoding
--input-encoding Encoding (utf8 if unset)
Supported values: raw, ascii, latin0, latin1, utf8, iso2022,
mac, win1252, ibm858, utf16le, utf16be, utf16, big5, shiftjis
This option specifies the character encoding Tidy uses for the
input. See char-encoding for more info.
See also: --char-encoding
--language String
Currently not used, but this option specifies the language Tidy
would use if it were properly localized. For example: en.
--newline enum (Platform dependent if unset)
Supported values: LF, CRLF, CR
The default is appropriate to the current platform.
Genrally CRLF on PC-DOS, Windows and OS/2; CR on Classic Mac OS;
and LF everywhere else (Linux, Mac OS X, and Unix).
--output-bom AutoBool (auto if unset)
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.
If set to auto this option causes Tidy to write a BOM to the
output only if a BOM was present at the beginning of the input.
A BOM is always written for XML/XHTML output using UTF-16 output
encodings.
--output-encoding Encoding (utf8 if unset)
Supported values: raw, ascii, latin0, latin1, utf8, iso2022,
mac, win1252, ibm858, utf16le, utf16be, utf16, big5, shiftjis
This option specifies the character encoding Tidy uses for the
output.
Note that this may only be different from input-encoding for
Latin encodings (ascii, latin0, latin1, mac, win1252, ibm858).
See char-encoding for more information
See also: --char-encoding
Miscellaneous options
--error-file String
This option specifies the error file Tidy uses for errors and
warnings. Normally errors and warnings are output to stderr.
See also: --output-file
--force-output Boolean (no if unset)
This option specifies if Tidy should produce output even if
errors are encountered.
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.
--gnu-emacs Boolean (no if unset)
This option specifies if Tidy should change the format for
reporting errors and warnings to a format that is more easily
parsed by GNU Emacs.
--gnu-emacs-file String
Used internally.
--keep-time Boolean (no if unset)
This option specifies if Tidy should keep the original
modification time of files that Tidy modifies in place.
Setting the option to yes allows you to tidy files without
changing the file modification date, which may be useful with
certain tools that use the modification date for things such as
automatic server deployment.
Note this feature is not supported on some platforms.
--output-file String
This option specifies the output file Tidy uses for markup.
Normally markup is written to stdout.
See also: --error-file
--quiet Boolean (no if unset)
This option specifies if Tidy should output the summary of the
numbers of errors and warnings, or the welcome or informational
messages.
--slide-style String
This option has no function and is deprecated.
--tidy-mark Boolean (yes if unset)
This option specifies if Tidy should add a meta element to the
document head to indicate that the document has been tidied.
Tidy won't add a meta element if one is already present.
--write-back Boolean (no if unset)
This option specifies if Tidy should write back the tidied
markup to the same file it read from.
You are advised to keep copies of important files before tidying
them, as on rare occasions the result may not be what you
expect.
ENVIRONMENT
HTML_TIDY
Name of the default configuration file. This should be an
absolute path, since you will probably invoke tidy from
different directories. The value of HTML_TIDY will be parsed
after the compiled-in default (defined with -DTIDY_CONFIG_FILE),
but before any of the files specified using -config.
EXIT STATUS
0 All input files were processed successfully.
1 There were warnings.
2 There were errors.
ATTRIBUTES
See attributes(7) for descriptions of the following attributes:
+---------------+------------------+
|ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+---------------+------------------+
|Availability | text/tidy |
+---------------+------------------+
|Stability | Uncommitted |
+---------------+------------------+
SEE ALSO
For more information about HTML Tidy:
http://www.html-tidy.org/
For more information on HTML:
HTML: Edition for Web Authors (the latest HTML specification)
http://dev.w3.org/html5/spec-author-view
HTML: The Markup Language (an HTML language reference)
http://dev.w3.org/html5/markup/
For bug reports and comments:
https://github.com/htacg/tidy-html5/issues/
Or send questions and comments to public-htacg@w3.org.
Validate your HTML documents using the W3C Nu Markup Validator:
http://validator.w3.org/nu/
AUTHOR
Tidy was written by Dave Raggett <dsr@w3.org>, and subsequently
maintained by a team at http://tidy.sourceforge.net/, and now
maintained by HTACG (http://www.htacg.org).
The sources for HTML Tidy are available at
https://github.com/htacg/tidy-html5/ under the MIT Licence.
NOTES
Source code for open source software components in Oracle Solaris can
be found at https://www.oracle.com/downloads/opensource/solaris-source-
code-downloads.html.
This software was built from source available at
https://github.com/oracle/solaris-userland. The original community
source was downloaded from https://github.com/htacg/tidy-
html5/archive/5.4.0.tar.gz.
Further information about this software can be found on the open source
community website at http://www.html-tidy.org/.
HTML Tidy 5.4.0 TIDY(1)