taggo
Tag organizer that uses names of files and folders to create symlinks. Tags are defined by using #hashtags in the name. They can also be as many sub levels as you want, like #sub-hash-tag
note This version is a completey different version than the old (https://github.com/xeor/taggo/tree/0.2). The old version works for python 2 (but not 3). It also had config-file instead of parameters. Check out the repo if you want it..
Free software: MIT license
Documentation: https://taggo.readthedocs.io
Source: https://github.com/xeor/taggo
Introduction
This project is in beta stage, please report bugs :)
Any questions, thoughts, bugs are very welcome!
Requirements
3.6+
Docker
Start the container with environment variables like CRON_TAGGO_0 with the format * * * * *|run ….
CRON_TAGGO_n where n is a number, start at 0, have as many as you want.
We take care automaticly that only 1 of each number is running at a time. Example, if one of your job is running every minute and it takes more than a minute to finish. It wont start the 2nd time.
The environment variable is split in 2 by a |. The first param is a cron, the 2nd is the parameters sent to the taggo command.
FAQ
Why the name taggo?
It’s a tagging tool. It does stuff with tags. What do you suggest? Tagging, taggs, tags, tag2fold… no.. Taggo!
Why do you want to create tags with symlinks?
Because everyone have underestimated the power of tagging data.
Photo filenames are just wasted, what does DCIM1234.jpg tell you?
You know you miss one folder that contains all your dog pictures.
You sould not depend on a 3rd party program/database to manage your files/photos.
There are just a bunch of empty folders created on windows
This is probably because you are not allowed to create symlinks (verify by running with debug). To allow yourself access to do that, go to Administrative Tools > Local Security Policy > Local Policies > User Rights Assignment and add your account to Create symbolic links.
History
0.18.0 (2019-12-07)
Don’t create symlinks if it’s destination is in the symlink directory. This makes it possible to have the tag-directory inside the source-directory.
0.17.1 (2019-12-06)
Build-fix, docs and changelog update
0.17.0 (2019-12-05)
Added a parameter and functionality for alternative tag-lookup. You can now use –tag-lookup frontmatter using the run command if you want to also use frontmatter and data in .md files as tags. Use tags in frontmatter. It can be a list.
0.16.0 (2019-06-03)
Lots of windows fixes
0.15.0
pip-install error fixed (missing files)
0.14.0
Small bugfixes
0.13.0 (2018-03-04)
Dropping python 2.x support… Some things might end up being problematic to support. Like symlinks for directories in windows. So instead of making a bunch of hacks around functionality. It is now dropped.
0.12.0 (2018-03-03)
Making symlink name template configurable
Symlink collision handling
Logs to stdout/stderr depending on message severety
Option to output log as json
Option to prompt/wait after each symlink. Usefull for debugging
Lots of things around symlink-name-templates, it’s now completly configurable.
Possible to have extrainfo (used in symlink-name) from a tag parameter. Like #tag(info)
Using powerful filters to not symlink certain files, or only symlink some files.
Metadata-addons to use special file-info as in the symlink-name, like md5, stat, exif-data, …
Output data as json, if you want a logparser to use it. Single-lines..
Configurable collision handling. If symlink already exist and points to a different file.
Making pip install taggo[all] to get all metadata-addon required libs
–auto-cleanup option in run
Log different messages to stdout or stderr
0.11.0 (2018-02-20)
Fixing up docker image
0.10.0 (2017-11-04)
Basic docker image
0.9.0 (2017-10-21)
Python 2.7 support
0.8.0 (2017-10-21)
Good test coverage
Things are mostly working
Rename functionality
List/info
Much more
0.4.0 (2017-10-08)
Started a complete rewrite, mainly focusing on using python 3.6
Test on PyPI.. Non working version.
0.2 (2017-10-07)
Checkpoint of the old version working only with 2.x. This checkpoint contains code from many years ago.
Metadata
Release files for taggo 0.18.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| taggo-0.18.0.tar.gz | 194.7 kB | Without provenance | Details for taggo-0.18.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| taggo-0.18.0-py36-none-any.whl | Python 3.6 | none | any | Details for taggo-0.18.0-py36-none-any.whl |
Total release size: 212.9 kB
Release files / taggo-0.18.0.tar.gz
| Download URL | taggo-0.18.0.tar.gz |
|---|---|
| Size | 194.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
88b8566445537aa74205d5776ef23f3945b1262deee26f32c85e8e25bcd919c1
|
|
BLAKE2b-256 checksum How to use checksums |
d974aa221019f082a13caf43531ef3a2a950952b14e12abacfeb15ee2edb7c6c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/42.0.2 requests-toolbelt/0.9.1 tqdm/4.40.1 CPython/3.6.7
|
Release files / taggo-0.18.0-py36-none-any.whl
| Download URL | taggo-0.18.0-py36-none-any.whl |
|---|---|
| Size | 18.2 kB |
| Tags | Python 3.6 |
|
SHA-256 checksum How to use checksums |
7a400a5cc94c014f5a1575d343c8529a96ed275e0e70e2b96f983952b09a2a81
|
|
BLAKE2b-256 checksum How to use checksums |
cdb28eda2dc7f981c010c6122cd0ff35ad74a7c25c1e605e4d3a3496274a53dd
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/42.0.2 requests-toolbelt/0.9.1 tqdm/4.40.1 CPython/3.6.7
|
Security for taggo 0.18.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.