logo

tidy filter

← Back to Filter List

tidy


↓ examples

Uses tidy to clean and validate HTML.

Aliases for this filter

  • tidy
  • htmltidy

Converts from file formats:

  • .html

To file formats:

  • .html

Available settings:

SettingDescriptionDefault
add-new-filesBoolean or list of extensions/patterns to match.False
added-in-versionDexy version when this filter was first available.
additional-doc-filtersFilters to apply to additional documents created as side effects.{}
additional-doc-settingsSettings to apply to additional documents created as side effects.{}
argsArguments to be passed to the executable.
check-return-codeWhether to look for nonzero return code.True
clargsArguments to be passed to the executable (same as 'args').
command-stringThe full command string.%(prog)s -quiet -output "%(output_file)s" "%(script_file)s"
data-typeAlias of custom data class to use to store filter output.generic
envDictionary of key-value pairs to be added to environment for runs.{}
examplesTemplates which should be used as examples for this filter.['tidy']
exclude-add-new-filesList of patterns to skip even if they match add-new-files.[]
exclude-new-files-from-dirList of directories to skip when adding new files.[]
executableThe executable to be runtidy
extFile extension to output.None
extension-mapDictionary mapping input extensions to default output extensions.None
helpHelp string for filter, if not already specified as a class docstring.Uses tidy to clean and validate HTML.
initial-timeout10
input-extensionsList of extensions which this filter can accept as input.['.html']
install-dir/usr/local/lib/python3.8/site-packages/dexy/filters
keep-originalsWhether, if additional-doc-filters are specified, the original unmodified docs should also be added.False
make-dummy-outputWhether to make a dummy output file when one is not generated and add-new-files is True.False
mkdirA directory which should be created in working dir.None
mkdirsA list of directories which should be created in working dir.[]
nodocWhether filter should be excluded from documentation.False
outputWhether to output results of this filter by default by reporters such as 'output' or 'website'.False
output-extensionsList of extensions which this filter can produce as output.['.html']
override-workspace-exclude-filtersIf True, document will be populated to other workspaces ignoring workspace-exclude-filters.False
path-extensionsstrings to extend path with[]
preserve-prior-data-classWhether output data class should be set to match the input data class.False
record-varsWhether to add code that will automatically record values of variables.False
require-outputShould dexy raise an exception if no output is produced by this filter?True
scriptargsArguments to be passed to the executable.
tagsTags which describe the filter.['html']
timeout10
use-wdWhether to use a custom working directory when running filter.True
variablesA dictionary of variable names and values to make available to this filter.{}
varsA dictionary of variable names and values to make available to this filter.{}
version-commandCommand to call to return version of installed software.None
windows-version-commandCommand to call on windows to return version of installed software.None
workspace-exclude-filtersFilters whose output should be excluded from workspace.['pyg']
workspace-includesIf set to a list of filenames or extensions, only these will be populated to working dir.None
write-stderr-to-stdoutShould stderr be piped to stdout?True

HTML Tidy

Here's an example of some invalid HTML:

<html>
    <body>
        <p>This is an unclosed paragraph
    </body>
</html

The tidyerrors filter will report on what the errors are:

    - invalid.html|tidyerrors


line 1 column 1 - Warning: missing <!DOCTYPE> declaration
line 2 column 5 - Warning: inserting missing 'title' element

Here's some valid HTML:

    - valid.html|tidycheck


<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
<html>
<head>
<title></title>
</head>
<body>
<p>A valid paragraph/</p>
</body>
</html>

The tidycheck filter will let the valid HTML pass through unchanged:

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
<html>
<head>
<title></title>
</head>
<body>
<p>A valid paragraph/</p>
</body>
</html>

If we were to run the tidycheck filter on invalid HTML, it would raise an exception.

The tidy filter will apply tidy to valid HTML:

    - valid.html|tidy


<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
<html>
<head>
<meta name="generator" content=
"HTML Tidy for HTML5 for Linux version 5.6.0">
<title></title>
</head>
<body>
<p>A valid paragraph/</p>
</body>
</html>

If we were to run the tidy filter on invalid HTML, it would raise an exception.

Content © 2020 Dr. Ana Nelson | Site Design © Copyright 2011 Andre Gagnon | All Rights Reserved.