hghooks is a simple module that adds several useful hooks for use in Mercurial hooks system.
Right now it includes hooks for:
- pep8 checking of python files
- pyflakes checking of python files
- checking for forgotten pdb statements in python files
hghooks is distributed as a Python egg so is quite easy to install. You just need to type the following command:
And Easy Install will go to the Cheeseshop and grab the last hghooks for you. It will also install it for you at no extra cost :-)
To use one of the hooks provided by this package edit your hgrc file of your Mercurial repository and add these lines:
[hooks] pretxncommit.pep8 = python:hghooks.pep8hook pretxncommit.pyflakes = python:hghooks.pyflakeshook pretxncommit.pdb = python:hghooks.pdbhook
You can add as many hooks as you need. From version 0.2.0 it supports the pretxnchangegroup hook too.
If you need to avoid a hook for a specific changeset you can add one or more of the following keywords to the commit message: no-pep8, no-pyflakes and no-pdb.
On the other hand, if you want to avoid a hook in a specific file you can add a comment somewhere in the file saying so. For example:
# hghooks: no-pyflakes no-pdb
in this case the pyflakes and pdb hooks will skip this file. The "# hghooks:" prolog is important and you have to type it exactly like that. Then add the skip keyworkds separated by spaces.