diff --git a/RELEASE_NOTES.md b/RELEASE_NOTES.md index 24e143c..84392aa 100644 --- a/RELEASE_NOTES.md +++ b/RELEASE_NOTES.md @@ -169,6 +169,7 @@ June 2019. - add retro-embedimage.forth - add SaveAndRestoreStack.forth - add share.forth and shared.forth +- add strip-html.forth - add TokiPona-Translate.forth - add uuencode.forth - add uudecode.forth diff --git a/example/strip-html.forth b/example/strip-html.forth new file mode 100644 index 0000000..46a648e --- /dev/null +++ b/example/strip-html.forth @@ -0,0 +1,22 @@ +This is a quick little tool to strip some HTML and leave text behind. + +It's not factored, and doesn't filter blocks that don't exactly match +the tags listed in the code. It's still useful for quick looks, and +may serve as a starting point for something more useful later on. + +~~~ +'Tag d:create #1025 allot +'In-Tag var + +#0 sys:argv file:open swap + [ dup file:read + $< [ &Tag buffer:set &In-Tag v:on ] case + $> [ &Tag 'head [ here buffer:set ] s:case + 'title [ here buffer:set ] s:case + 'script [ here buffer:set ] s:case + 'script_type="text/javascript" [ here buffer:set ] s:case + 'style [ here buffer:set ] s:case + drop &In-Tag v:off ] case + @In-Tag [ buffer:add ] [ c:put ] choose ] times +file:close +~~~