Commit Graph

725 Commits

Author SHA1 Message Date
Wilson Lin e8fd813a2e Implement an accept function accepts if next character doesn't match some provided character
This makes it easy to do something like "accept until".
2019-04-22 17:01:35 +10:00
Wilson Lin d782d21108 Fix proc offset documentation and behaviour mismatch 2019-04-22 17:00:16 +10:00
Wilson Lin ba9e17b6bc Fix entity unit not writing complete entity if not decoding 2019-04-22 16:58:46 +10:00
Wilson Lin 4b4622b73f Update rules to use new nicehash; complete refactor of units attr, attr/unquoted, attr/quoted, entity, and tag/name; improve cfg usage 2019-04-21 02:40:25 +10:00
Wilson Lin e0bba6ac19 Complete restructuring of rule 2019-04-10 17:05:47 +10:00
Wilson Lin df4044d332 Refactor most of core, proc, and rule 2019-04-09 23:16:29 +10:00
Wilson Lin 39e0260f73 Begin restructuring 2019-03-18 22:46:04 +11:00
Wilson Lin 5fbb004fc6 Demo of jmp 2019-01-26 14:14:48 +11:00
Wilson Lin 4b98c6a6b2 Incomplete major refactoring 2019-01-25 21:25:10 +13:00
Wilson Lin 277ea3303c Refactor out Emscripten version and restructure 2018-10-26 00:54:54 +13:00
Wilson Lin 7bdefd916a Don't do preprocessing anymore 2018-09-30 01:00:27 +12:00
Wilson Lin 21c4b75d4c Add hbu_pipe_skip_if 2018-09-30 00:59:53 +12:00
Wilson Lin c4b8c3128b Exit with 0 instead of EXIT_SUCCESS 2018-09-30 00:59:43 +12:00
Wilson Lin 198704d344 Add test for whitespace minification at root 2018-08-23 00:36:25 +12:00
Wilson Lin 304e69aba6 0.0.3 2018-08-22 03:08:07 +12:00
Wilson Lin d0dae68eb0 Clarify output files in package.json 2018-08-22 03:07:48 +12:00
Wilson Lin 822b4f3eba Clarify Emscripten usage in README 2018-08-22 03:07:34 +12:00
Wilson Lin 52bcc4fde7 Handle errors gracefully by unwinding stack; implement Emscripten version 2018-08-22 03:02:14 +12:00
Wilson Lin 8ef17f9769 Design error handling code 2018-08-14 15:59:28 +12:00
Wilson Lin a929268cc0 Add missing type info to pipe data in TS 2018-08-14 15:59:17 +12:00
Wilson Lin 69e2a66ee9 Pooling POC 2018-08-11 01:42:12 +12:00
Wilson Lin 10c49d152d Start directives stream 2018-08-10 22:02:35 +12:00
Wilson Lin 376afcd793 Fix entity stream refactoring 2018-08-10 22:01:27 +12:00
Wilson Lin 9ab8a0fafb Allow buffers as pipe inputs and give pipes an input_name 2018-08-10 22:00:53 +12:00
Wilson Lin 1df4fab239 Lazy-load and reuse default tags set options, and fix no value not being accepted as CLI tags list option values 2018-08-10 21:59:16 +12:00
Wilson Lin c7911c47c9 Clarify CLI option tags list values 2018-08-10 21:57:49 +12:00
Wilson Lin c16a77a568 Process entities in attribute values and ensure unquoted attribute values have at least one character 2018-08-09 15:48:34 +12:00
Wilson Lin 2a1821a2af 0.0.2 2018-08-08 17:17:53 +12:00
Wilson Lin dc2710bc95 Declare readraw and readtext in README 2018-08-08 17:14:24 +12:00
Wilson Lin d0b325b5dd Clarify comments minification in README 2018-08-08 17:14:12 +12:00
Wilson Lin 6fcdae711b Minify attribute value quotes 2018-08-08 16:58:54 +12:00
Wilson Lin a24f5a904e Implement pipe require_skip_predicate 2018-08-08 16:58:08 +12:00
Wilson Lin 6abb16ef18 Implement pipe output redirects 2018-08-08 16:57:55 +12:00
Wilson Lin bb8c1c467f Fix README to reflect that HBE_PARSE_NO_SPACE_BEFORE_ATTR is not suppressable 2018-08-08 14:32:51 +12:00
Wilson Lin 17896a20c4 Minify tag whitespace 2018-08-08 14:31:28 +12:00
Wilson Lin 652cc31a0a Update README 2018-08-08 13:48:36 +12:00
Wilson Lin 580a25f1df Remind about not closing tags before EOF is a general syntax error in README 2018-08-08 13:40:25 +12:00
Wilson Lin 6503cfa376 Fix removal of whitespace in specific attribute values 2018-08-08 13:39:43 +12:00
Wilson Lin 4f41c7d197 Fix parsing of tags 2018-08-08 13:39:32 +12:00
Wilson Lin 61649ea46a Clarify standard tags requirement in CLI tag list option arguments 2018-08-08 13:39:22 +12:00
Wilson Lin 7be3f6b09b Add more context to UNCLOSED_TAG error message 2018-08-08 13:38:50 +12:00
Wilson Lin d1f3476f4b Allow colons and hyphens in tag names 2018-08-08 13:38:32 +12:00
Wilson Lin e61ca93d21 Return acceptance count to while_predicate 2018-08-08 13:38:16 +12:00
Wilson Lin 59971c7319 Create case-insensitive matcher 2018-08-08 13:37:58 +12:00
Wilson Lin f0e5b5e66e Fix script tag comment parsing 2018-08-08 13:37:29 +12:00
Wilson Lin 48820d8377 Allow formatting in hbu_pipe_error 2018-08-08 13:37:06 +12:00
Wilson Lin b382fb9bd0 Clean up JS error messages 2018-08-08 11:09:37 +12:00
Wilson Lin 6db5e5c0a7 Make bare ampersands a separate error 2018-08-08 11:09:06 +12:00
Wilson Lin 6ca4363936 Fix double free error when expanding lists 2018-08-08 10:41:56 +12:00
Wilson Lin e2e12f408b More memory cleanup and safety 2018-08-08 10:41:39 +12:00
Wilson Lin 78b4ccf6a8 Detect memory allocation failures 2018-08-08 10:40:30 +12:00
Wilson Lin 366bd93720 Note that SELF_CLOSING_TAG is suppressable 2018-08-08 10:38:11 +12:00
Wilson Lin 959156c261 Fix bang parsing 2018-08-08 10:37:32 +12:00
Wilson Lin 2997fab7cd Minify class attribute values 2018-08-07 16:25:15 +12:00
Wilson Lin 73839141d3 Fix UCASE_ATTR enforcement 2018-08-07 16:24:57 +12:00
Wilson Lin f73cb82cd1 Enforce ILLEGAL_CHILD 2018-08-07 16:02:32 +12:00
Wilson Lin f8f884373f Minor fixes to internal documentation 2018-08-07 14:47:56 +12:00
Wilson Lin 4cee9588ac Update and simplify tests 2018-08-07 10:37:54 +12:00
Wilson Lin d6081bdd19 Enforce UNQUOTED_ATTR 2018-08-05 13:04:01 +12:00
Wilson Lin b42818a2e7 Simplify JS wrapper function 2018-08-05 12:58:24 +12:00
Wilson Lin d0dd65dde7 Parse response messages in JS better 2018-08-05 01:41:12 +12:00
Wilson Lin 89921f9397 Enforce UCASE_TAG 2018-08-04 23:52:06 +12:00
Wilson Lin 8d46291542 Fix passing array-based args via JS 2018-08-04 23:42:02 +12:00
Wilson Lin acbd843aa2 Make self-closing tags errors 2018-08-04 23:41:44 +12:00
Wilson Lin 4b740c23df Fix UCASE_ATTR not accepted in CLI 2018-08-04 23:41:17 +12:00
Wilson Lin 919bd6aefa Don't add bin to path (install and use actual bin if desired) 2018-08-04 22:51:38 +12:00
Wilson Lin 2a40290d7f Create wrapper Node.js module and tests 2018-08-04 22:38:17 +12:00
Wilson Lin 036dbb4c4b Enforce UCASE_ATTR 2018-08-04 22:37:41 +12:00
Wilson Lin 71c5ffd6fd Fix destroy whole whitespace minification 2018-08-04 22:37:26 +12:00
Wilson Lin 9ddba89e67 Internal documentation 2018-08-04 22:36:32 +12:00
Wilson Lin 9148946802 Clarify require_match functionality 2018-08-04 16:56:03 +12:00
Wilson Lin 577637c59a Respect --MXcomments 2018-08-04 16:55:50 +12:00
Wilson Lin 02c6f3a4e0 Improve wording of README 2018-08-04 16:54:52 +12:00
Wilson Lin fa635377ac Fix literal entity writer 2018-08-04 16:11:25 +12:00
Wilson Lin 9f632dd2ae Stricter content parsing 2018-08-04 16:11:11 +12:00
Wilson Lin a4edc1886a Enforce standard tags rule 2018-08-04 16:01:12 +12:00
Wilson Lin 1ce1155f1a Count SVG tags as specific tags 2018-08-04 16:01:04 +12:00
Wilson Lin 26bbe20a04 Add SVG tags to set of all tags 2018-08-04 16:00:39 +12:00
Wilson Lin c53b522c38 SVG tags 2018-08-04 16:00:22 +12:00
Wilson Lin 250a704c2e Simplify checking suppressed errors config 2018-08-04 15:59:53 +12:00
Wilson Lin bc2a935932 Minify whitespace 2018-08-04 15:38:21 +12:00
Wilson Lin 0985dafb14 Fix unrecognised suppressable error logging 2018-08-04 14:33:33 +12:00
Wilson Lin 4fdb1857f4 Better demonstrate contiguous whitespace 2018-08-04 00:54:37 +12:00
Wilson Lin f879e10607 Update README 2018-08-04 00:47:59 +12:00
Wilson Lin caf8dcac22 Stream entities 2018-08-04 00:15:44 +12:00
Wilson Lin d051650527 Various helper pipe write methods 2018-08-04 00:14:15 +12:00
Wilson Lin 01e805bf0d Return char on skip 2018-08-04 00:14:01 +12:00
Wilson Lin 30c322ab96 Add hex char rule 2018-08-04 00:13:44 +12:00
Wilson Lin abb47e0d15 Create lists with a specific initial size 2018-08-04 00:13:14 +12:00
Wilson Lin 90ad433c38 Fix parsing --supress 2018-08-04 00:12:34 +12:00
Wilson Lin dee2e03b21 Suppressable errors config 2018-08-03 23:02:10 +12:00
Wilson Lin cdad4f95e6 Missing include header 2018-08-03 23:01:17 +12:00
Wilson Lin a1513a88c1 Style parser 2018-08-03 23:01:07 +12:00
Wilson Lin a343241cfd Optimise script parser 2018-08-03 23:00:54 +12:00
Wilson Lin 8127690e89 Function to require from pipe but skip (don't output) 2018-08-03 22:57:56 +12:00
Wilson Lin 88017538f5 Add function to add Unicode code point to buffer 2018-08-03 22:57:30 +12:00
Wilson Lin 1eb19a4bc6 Remove redundant and incomplete tag categories table in README 2018-07-21 00:36:01 +12:00
Wilson Lin 7dc321b86a Allow self-closing tags 2018-07-20 22:40:05 +12:00
Wilson Lin 301bd36650 Parse JS code in script tags 2018-07-20 22:39:55 +12:00
Wilson Lin cbc837978d Parse comments 2018-07-20 22:39:37 +12:00