htmltidy: Tidy Up and Test XPath Queries on HTML and XML Content

HTML documents can be beautiful and pristine. They can also be wretched, evil, malformed demon-spawn. Now, you can tidy up that HTML and XHTML before processing it with your favorite angle-bracket crunching tools, going beyond the limited tidying that 'libxml2' affords in the 'XML' and 'xml2' packages and taming even the ugliest HTML code generated by the likes of Google Docs and Microsoft Word. It's also possible to use the functions provided to format or "pretty print" HTML content as it is being tidied. Utilities are also included that make it possible to view formatted and "pretty printed" HTML/XML content from HTML/XML document objects, nodes, node sets and plain character HTML/XML using 'vkbeautify' (by Vadim Kiryukhin) and 'highlight.js' (by Ivan Sagalaev). Also (optionally) enables filtering of nodes via XPath or viewing an HTML/XML document in "tree" view using 'xml-viewer' (by Julian Gruber). See <https://github.com/vkiryukhin/vkBeautify> and <https://github.com/juliangruber/xml-viewer> for more information about 'vkbeautify' and 'xml-viewer', respectively.

AuthorBob Rudis [aut, cre], Dave Raggett [ctb, aut] (Original HTML Tidy library), Charles Reitzel [ctb, aut] (Modern HTML Tidy library), Björn Höhrmann [ctb, aut] (HTML5 Support), Kenton Russell [aut, ctb] (xml-viewer integration), Vadim Kiryukhin [ctb, cph] (vkbeautify library), Ivan Sagalaev [ctb, cph] (highlight.js library), Julian Gruber [ctb, cph] (xml-viewer library)
Date of publication2016-10-16 17:39:11
MaintainerBob Rudis <bob@rud.is>
LicenseMIT + file LICENSE
Version0.3.0
https://github.com/hrbrmstr/htmltidy

View on CRAN

Files in this package

htmltidy
htmltidy/inst
htmltidy/inst/htmlwidgets
htmltidy/inst/htmlwidgets/lib
htmltidy/inst/htmlwidgets/lib/highlightjs
htmltidy/inst/htmlwidgets/lib/highlightjs/Makefile
htmltidy/inst/htmlwidgets/lib/highlightjs/highlight.pack.min.js
htmltidy/inst/htmlwidgets/lib/highlightjs/composer.json
htmltidy/inst/htmlwidgets/lib/highlightjs/component.json
htmltidy/inst/htmlwidgets/lib/highlightjs/README.md
htmltidy/inst/htmlwidgets/lib/highlightjs/bower.json
htmltidy/inst/htmlwidgets/lib/highlightjs/highlight.pack.js
htmltidy/inst/htmlwidgets/lib/highlightjs/styles
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/atelier-cave-light.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/school-book.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/atelier-heath.dark.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/googlecode.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/atelier-sulphurpool-dark.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/atelier-sulphurpool-light.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/atelier-sulphurpool.dark.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/vs.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/agate.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/paraiso.light.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/solarized-light.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/atelier-dune-light.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/brown_papersq.png
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/brown_paper.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/brown-papersq.png
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/tomorrow-night.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/codepen-embed.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/ir-black.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/ascetic.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/monokai_sublime.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/paraiso.dark.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/atelier-plateau.light.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/arta.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/atelier-plateau-dark.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/monokai-sublime.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/hopscotch.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/pojoaque.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/dark.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/atelier-dune-dark.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/atelier-cave.light.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/kimbie.light.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/school_book.png
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/solarized-dark.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/tomorrow.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/mono-blue.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/monokai.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/atelier-seaside.dark.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/atelier-plateau-light.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/atelier-savanna-light.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/atelier-forest-light.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/atelier-savanna.dark.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/solarized_light.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/atelier-lakeside-dark.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/atelier-lakeside.dark.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/atelier-estuary.dark.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/school-book.png
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/atelier-forest-dark.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/atelier-estuary-dark.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/github-gist.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/far.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/foundation.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/atelier-dune.light.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/color-brewer.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/idea.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/github.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/atelier-forest.dark.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/atelier-estuary-light.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/hybrid.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/darkula.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/atelier-savanna-dark.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/ir_black.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/atelier-lakeside-light.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/atelier-heath.light.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/atelier-sulphurpool.light.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/pojoaque.jpg
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/tomorrow-night-bright.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/school_book.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/atelier-seaside-light.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/atelier-seaside-dark.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/grayscale.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/atelier-savanna.light.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/brown-paper.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/kimbie.dark.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/atelier-lakeside.light.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/androidstudio.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/paraiso-dark.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/atelier-seaside.light.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/docco.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/magula.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/atelier-heath-dark.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/railscasts.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/paraiso-light.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/atelier-plateau.dark.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/solarized_dark.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/xcode.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/rainbow.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/atelier-dune.dark.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/atelier-heath-light.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/default.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/atelier-cave-dark.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/zenburn.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/tomorrow-night-eighties.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/tomorrow-night-blue.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/atelier-cave.dark.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/atelier-estuary.light.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/sunburst.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/obsidian.css
htmltidy/inst/htmlwidgets/lib/highlightjs/styles/atelier-forest.light.css
htmltidy/inst/htmlwidgets/lib/highlightjs/LICENSE
htmltidy/inst/htmlwidgets/lib/vkbeautify
htmltidy/inst/htmlwidgets/lib/vkbeautify/wdgt.css
htmltidy/inst/htmlwidgets/lib/vkbeautify/vkbeautify.js
htmltidy/inst/htmlwidgets/lib/vkbeautify/rlogo.png
htmltidy/inst/htmlwidgets/lib/vkbeautify/reset.png
htmltidy/inst/htmlwidgets/lib/xml-viewer
htmltidy/inst/htmlwidgets/lib/xml-viewer/xml-viewer.js
htmltidy/inst/htmlwidgets/lib/xml-viewer/README.md
htmltidy/inst/htmlwidgets/lib/xml-viewer/package.json
htmltidy/inst/htmlwidgets/lib/xml-viewer/treewdgt.css
htmltidy/inst/htmlwidgets/xmlview.js
htmltidy/inst/htmlwidgets/xmltreeview.js
htmltidy/inst/htmlwidgets/xmltreeview.yaml
htmltidy/inst/htmlwidgets/xmlview.yaml
htmltidy/inst/COPYRIGHTS
htmltidy/inst/extdata
htmltidy/inst/extdata/getHistory.xml
htmltidy/inst/extdata/input.xml
htmltidy/inst/extdata/dwml.xml
htmltidy/tests
htmltidy/tests/testthat.R
htmltidy/tests/testthat
htmltidy/tests/testthat/test-htmltidy.R
htmltidy/src
htmltidy/src/access.c
htmltidy/src/parser.h
htmltidy/src/sprtf.h
htmltidy/src/Makevars
htmltidy/src/streamio.c
htmltidy/src/attrask.c
htmltidy/src/language.c
htmltidy/src/charsets.h
htmltidy/src/tidy-int.h
htmltidy/src/tagask.c
htmltidy/src/utf8.c
htmltidy/src/attrs.c
htmltidy/src/tidybuffio.h
htmltidy/src/clean.c
htmltidy/src/tidy.h
htmltidy/src/iconvtc.c
htmltidy/src/version.h
htmltidy/src/message.c
htmltidy/src/iconvtc.h
htmltidy/src/tags.h
htmltidy/src/config.c
htmltidy/src/streamio.h
htmltidy/src/message.h
htmltidy/src/language_en.h
htmltidy/src/language_es_mx.h
htmltidy/src/clean.h
htmltidy/src/fileio.h
htmltidy/src/tidyenum.h
htmltidy/src/attrdict.h
htmltidy/src/tidylib.c
htmltidy/src/config.h
htmltidy/src/tmbstr.c
htmltidy/src/attrs.h
htmltidy/src/lexer.c
htmltidy/src/forward.h
htmltidy/src/language_es.h
htmltidy/src/charsets.c
htmltidy/src/istack.c
htmltidy/src/buffio.h
htmltidy/src/entities.h
htmltidy/src/sprtf.cpp
htmltidy/src/attrget.c
htmltidy/src/htmltidy.cpp
htmltidy/src/gdoc.h
htmltidy/src/language_fr.h
htmltidy/src/utf8.h
htmltidy/src/pprint.h
htmltidy/src/language_en_gb.h
htmltidy/src/fileio.c
htmltidy/src/entities.c
htmltidy/src/buffio.c
htmltidy/src/mappedio.c
htmltidy/src/win32tc.c
htmltidy/src/parser.c
htmltidy/src/tags.c
htmltidy/src/lexer.h
htmltidy/src/language.h
htmltidy/src/language_zh_cn.h
htmltidy/src/alloc.cpp
htmltidy/src/pprint.c
htmltidy/src/RcppExports.cpp
htmltidy/src/attrdict.c
htmltidy/src/access.h
htmltidy/src/gdoc.c
htmltidy/src/platform.h
htmltidy/src/tmbstr.h
htmltidy/src/mappedio.h
htmltidy/src/tidyplatform.h
htmltidy/src/win32tc.h
htmltidy/NAMESPACE
htmltidy/NEWS.md
htmltidy/R
htmltidy/R/xmltreeview.R htmltidy/R/shiny.R htmltidy/R/RcppExports.R
htmltidy/R/response.r
htmltidy/R/shiny-tree-view.R
htmltidy/R/htmltidy-package.r
htmltidy/R/xmlview.R
htmltidy/R/tidy.r
htmltidy/README.md
htmltidy/MD5
htmltidy/DESCRIPTION
htmltidy/man
htmltidy/man/highlight_styles.Rd htmltidy/man/xmltreeview-shiny.Rd htmltidy/man/xmlviewOutput.Rd htmltidy/man/xml_view.Rd htmltidy/man/tidy_html.Rd htmltidy/man/htmltidy.Rd htmltidy/man/renderXmlview.Rd htmltidy/man/xml_tree_view.Rd
htmltidy/LICENSE

Questions? Problems? Suggestions? or email at ian@mutexlabs.com.

All documentation is copyright its authors; we didn't write any of that.