html/template: "stripTags" exportability in the html/template package
gopherbot opened this issue · 8 comments
gopherbot commented
by uberjack:
The html/template package has a very handy "stripTags" function (http://golang.org/src/pkg/html/template/html.go) that's currently unexported. This function does state-based html stripping which would be very useful as a general-purpose feature. It would be great to have this function be exported in future releases.
adg commented
gopherbot commented
I did (0xe1f/grr@6ddd85b69c59a47abc62cee3bcd662d681f1b4ba), but sadly it requires a whole set of private classes and functions, and as a result I ended up importing the entire template package - 11 files.
gopherbot commented
> It's a pretty odd feature, though. It's not that useful to display webpages / rendering templates, but it becomes really handy whenever you need to display the text content of web resources in a non web context - for example in a cli app - when said resources can have tags embedded in them. Eg: displaying the content of a rss feed entries (many embed tags in there), listing the text of all items in an <ul> list on a page (many have <span>/<strong>/... embedded in the <li>), etc ... While the function can be copied from "html/template", #2 shows just how much you need to actually copy (pretty much the entire template package). Having it exported would make more sense and would be really useful for all of us doing cli apps dealing with web content
rsc commented
gopherbot commented
gopherbot commented
Comment 6 by me@rocketmails.net:
+1 Some very common use case is when sending emails as you need to send both text and HTML versions.
gopherbot commented
Comment 7 by chris@pushbullet.com:
I've attached a file that does this.
Attachments:
- strip.go (113963 bytes)
earljwagner commented
+1 for StripTags, either in html or html/template.