Provides a framework for building file watchers. Includes a file watcher utility program that allows you to create file watchers declaratively.
Provides python bindings for inotify and framework for building file watchers using coroutines.
Please note this only runs on Linux and a have no plans to support any other OS.
There are many, many alternatives though.
noticeme includes the noticeme command for quickly setting up a file watcher.
Using noticeme declaratively
If you just need a small file watcher you can try this out.
pip install --user noticeme # install nano noticeme.cfg # use noticeme/examples/noticeme.cfg for an example noticeme # start watching
To see a full list of events:
To select which watchers we want to run we can give a list.
Say we had watchers named build:js, build:css, and test in a single config file.
In one terminal we could run:
noticeme build:js build:css
And in another:
Quick look at configuration
see noticeme/examples/noticeme.cfg for details
# noticeme.cfg [should] clear_screen = yes [imports] example = A .py file with a @noticeme.watcher decorator in it [my_watcher] description = This is an example. paths = . ** events = written regex = ^docs glob = *.txt shell = echo "my_watcher: file was added"
Using noticeme to build a file watcher programmatically
import asyncio import noticeme @noticeme.watcher('/path/to/directory', 'created modified') async def my_watcher(event): if '.py' == event.path.suffix.lower(): proc = await asyncio.create_subprocess_exec('cmd', event.path.absolute()) await proc.wait() if __name__ == '__main__': noticeme.run()
- Linux >= 2.6.13
- Python >= 3.5
- C compiler installed (if you need to run inotify_build.py)
pip install --user noticeme
- Copy noticeme.py and inotify_build.py to your project directory
- Within noticeme's package directory run:
- This creates a 'build' directory containing the result of ffibuilder.compile
- You should now be able to use noticeme.
- inotify_build.py will no longer be needed.
- set a more informative window title
- add '.noticeme' as possible config file
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
|Filename, size||File type||Python version||Upload date||Hashes|
|Filename, size noticeme-2019.8.tar.gz (14.2 kB)||File type Source||Python version None||Upload date||Hashes View hashes|