node-htmlbatchedit
htmlbatchedit is a tool meant for batch editing of complex html files. Currently htmlbatchedit uses cheerio as a DOM library due to its similarity with jQuery. Since htmlbatchedit queries are very similar to jQuery commands, its use should be very easy and painless.
Usage as a module
After requiring the edit module, just run it with your intended function
var edit = ; edit;
Usage as a command line tool
Usage: index [options]
Options:
-h, --help output usage information
-V, --version output the version number
-q, --query <query> query to be used
-o, --origin <origin> Glob pattern that matches the files that will be edited. For example: ./js/*.js
-d, --destination <destination> Destination directory for processed files
--query-file <location> file that contains a query to be used (for complex queries)
--man Show longer manual for the tool (same as the project README.md)
The module example ran on command line would look like this
node index.js -o ./input/*.html -d ./output/ -q "find('ul li').addClass('test'); return find.html();"
NOTE: As you can see, instead of the usual $, the command line tools uses word "find"
About query file
Query file is intended to be used when used queries start to get too long and unwieldy to write on the command line.
However the query file uses the exact same syntax as the command line tool, most notably you must use find
keyword
instead of the typical $
Release plan
- Get initial tooling and code running (done)
- Finish command line interface and programmatical use (tests included) (mostly done)
- Document usage of the module (done)
- Create grunt plugin that utilises node-htmlbatchedit (done)
For developers
All issues and pull requests are appreciated! If you are looking for something to please, look into issues of the repo or improve testing.