Continuously monitor a file and mirror the content after modification
Project description
Mendeley Watchdog
Mendeley Watchdog is a command line utility that continuously watches the last modification time of a given files and writes the content to a specified file.
WARNING The contents of the specified destination file are not checked checked before they are overwritten. Therefore the contents of the destination file will always be overwritten after the first "check". All manual changes to the destination file will always be overwritten when a change to the source file was detected.
WARNING The file contents are read and written in binary mode, as of right now this behavior can not be changed. This may be changed in future versions of this software.
The motivation for this software arose from the need to be able to save BibTeX files that are managed by Mendeley Desktop to LaTeX project directories. While Mendeley does support creating BibTeX files on a per-project basis it does not allow setting specific directories to which the individual files are saved. They are all written to the same directory. This software
The first (an so far only) entry point for the software fulfills that need by making it possible to mirror one of these files to any writable destination. Since I write LaTeX using Visual Studio Code I wanted to be able to run the monitoring process whenever the workspace folder for a project is open. Luckily VS Code makes it possible to configure arbitrary tasks for a given workspace. The mendeley-watchdog entry point was designed with this use-case in mind, an exemplary task could look like this:
{
"label": "Mirror hhn-it-systems",
"type": "shell",
"command": "mendeley-watchdog",
"runOptions": {"runOn": "folderOpen"},
"problemMatcher": ["$eslint-compact"],
"args": [
"--mendeley-bibtex",
"'R:\\Mendeley Library\\.bib'",
"hhn-it-systems.bib",
"resources/references.bib"
]
}
The above task launches mendeley-watchdog as soon as the containing workspace folder is opened. The task continuously mirrors the file R:\Mendeley Library.bib\hhn-it-systems.bib as references.bib to the workspace subdirectory resources. Refer to the documentation for a more detailed explanation of the entry point and task.
Installation
The above-mentioned VS Code task assumes the entry point is on PATH. An easy way to achieve this is installing via pipx which isolates the package in its own virtual environment exposes their entry points on PATH.
pipx install mendeley-watchdog
Alternatively install using
pip install mendeley-watchdog
Documentation
The detailed documentation for mendeley-watchdog can be found on GitHub. Be aware that the above link points to the master branch. If you're reading this on PyPI that means it might be outdated. In that case use the Documentation URL from the sidebar which should point towards the latest release docs.
Further Development
Depending on usefulness (and reception) additional functionality may be added. Ideas include:
- enable mirroring any single file (not just bib files)
- allow mirroring a single watched file to multiple destinations
- enable mirroring a map of files and destinations
Feel free to open an issue if you encountered bugs or have other ideas that aren't yet listed in the backlog.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file mendeley-watchdog-0.0.2.tar.gz
.
File metadata
- Download URL: mendeley-watchdog-0.0.2.tar.gz
- Upload date:
- Size: 19.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/53.0.0 requests-toolbelt/0.9.1 tqdm/4.58.0 CPython/3.9.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | a5cc5fd76a0fb2b91dbed5a2324d7c446b6e5cf48fd62047ce8b85304f921a14 |
|
MD5 | f7835a59d2f5e1b9c7758565d1f4fe29 |
|
BLAKE2b-256 | 92ca9ca9e04b94f60de0ebc1776756b92e83b61a99bb54159d1572eb8263d2cd |
File details
Details for the file mendeley_watchdog-0.0.2-py3-none-any.whl
.
File metadata
- Download URL: mendeley_watchdog-0.0.2-py3-none-any.whl
- Upload date:
- Size: 14.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/53.0.0 requests-toolbelt/0.9.1 tqdm/4.58.0 CPython/3.9.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | e81908bad9c8bc95d605f51df1328ffac90572648707b6ff439622898d43db4c |
|
MD5 | aac1146f99eaa785d3d37d2f9cc26a36 |
|
BLAKE2b-256 | 60ff63b1df99b4b829630c80a5f58620f52a45e00047ef36960dc3aa4f8c5f08 |