node-htmlbatchedit

1.0.0 • Public • Published

travis-CI Coverage Status

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 = require("node-htmlbatchedit");
 
edit.run(function($, html){
    $("ul li").addClass("test");
    return $.html(); // Returning the edited html is mandatory
}, "./output/", "./input/*.html");

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.

Package Sidebar

Install

npm i node-htmlbatchedit

Weekly Downloads

0

Version

1.0.0

License

MIT

Last publish

Collaborators

  • olemstrom