Formats your entire project with clang-format
Last updated 2 years ago by emarquez .
BSD-3-Clause · Repository · Bugs · Original npm · Tarball · package.json
$ cnpm install webmat 
SYNC missed versions from official npm registry.

???????? webmat ????????

web + format = webmat. It formats your web projects!

⚠️ Warning: Still under early development ⚠️

Webmat is still under development and you may run into issues. Issues may range from a lot of memory usage to ruining your project. Use at your own risk for now.

???? Highlights

  • ???? Formats multiple files at once using an include / exclude glob api
  • ???? Searches through HTML files and formats only the script tags with contents
  • ???? Vaugely sounds like the word "wombat"

webmat is a formatter will run mulitple files in your project through a formatter (currently only clang-format). It will gather all the js, ts, and html files and format them in place. The trick of this pony is that it will format your HTML files by gathering their script tags, formatting them, and replacing only your script tags without touching the rest of your DOM.


Install webmat from npm:

npm install -g webmat

Simple usage

webmat will select files to format based off of a default set of globs defined in default_config.json. If those defaults are fine, then you can simply run:


File Selection

If you would like to include or exclude files not included by the default config, then you can specify a set of globs in a formatconfig.json file in the directory that you are running webmat. An example:

  "include": [ "protos/*.proto", "wasm/**/*.cpp" ],
  "exclude": [ "generated_files/**/*", "formatter-mangles-my-code.html" ]

webmat will simply append your custom config to the default config and then select files using fast-glob's set of selection rules. fast-glob's reading algorithm will run the excludes first, so if you want to format a file that is in the default config's exclude list, then you will have to add the ignoreDefaultGlobs flag to completely ignore the default include / exclude configurations.


I haven't totally made this user friendly yet, please come back later!


There are currently no command-line flags only formatconfig.json.



  include: string[],
  exclude: string[],
  ignoreDefaultGlobs: boolean


property description
include List of globs to include in format selection
exclude List of globs to exclude from format selection
ignoreDefaultGlobs Completely ignores default include / exclude globs

Current Tags

  • 0.2.2                                ...           latest (2 years ago)

6 Versions

  • 0.2.2                                ...           2 years ago
  • 0.2.1                                ...           2 years ago
  • 0.2.0                                ...           2 years ago
  • 0.1.2                                ...           2 years ago
  • 0.1.1                                ...           2 years ago
  • 0.1.0                                ...           2 years ago
Maintainers (1)
Today 0
This Week 1
This Month 1
Last Day 0
Last Week 1
Last Month 26
Dependencies (5)
Dev Dependencies (4)
Dependents (0)

Copyright 2014 - 2016 © taobao.org |