Skip to main content

Applies tagging to organize files.

Project description

tagmanager

A Python library for tagging files.

Author: Grant Savage

Installation

pip install tagmanager

Current Package Limitations

This package currently works on Mac OS X 10.9 and newer. It was developed on Mac OS X 12.2 There is currently no functionality for Linux or Windows.

Package Structure

tagmanager
|   README.md
|   LICENSE
|   .gitignore
|   poetry.lock
|   pyproject.toml
|───tagmanager
|   |   __init__.py
|   |   tagmanager.py
|───tests
|   |   test_tagmanager_macOS.py
|───docs
|   |   Functional_Specs.md
|   |   Design_Specs.md
|───sample_folder
|   |   sample_file.txt

Tutorial

Add tag to file:

from tagmanager import tag_manager as tm

>> > file_location = "sample_folder/sample_file.txt"

# Add tag via Tag object
>> > tag = tm.Tag(name="green_tag", color="green")

>> > tm.add_tag(tag, file_location)

# Add tag via string
>> > tm.add_tag("blue_tag\nblue", file_location)

# Add colorless tag via string
>> > tm.add_tag("no_color_tag", file_location)

# Add tag via tuple
>> > tm.add_tag(("purple_tag", 'purple'), file_location)

# Add multiple tags via list of tuples
>> > red_list = [('first_red', 'red'), ('second_red', 'red')]

>> > tm.add_tag(red_list, file_location)

Return tags by file:

>>> tm.get_tags(file_location)
[Tag("blue_tag", "BLUE"), Tag("green_tag", "GREEN"), Tag("no_color_tag", "NONE"), Tag("purple_tag", "PURPLE"), Tag("first_red", "RED"), Tag("second_red", "RED")]

Remove tags from file:

# Remove tag via Tag object
>>> blue_tag = tm.Tag("blue_tag", "blue")

>>> tm.remove_tag(blue_tag, file_location)

# Remove tag via string
>>> tm.remove_tag("green_tag\ngreen", file_location)

# Remove colorless tag via string
>>> tm.remove_tag("no_color_tag", file_location)

# Remove tag via tuple
>>> tm.remove_tag(("purple_tag", "purple"), file_location)

# Remove multiple tags via list of tuples
>>> red_list = [('first_red', 'red'), ('second_red', 'red')]

>>> tm.remove_tag(red_list, file_location)

# Adding one tag back to show tags were removed
>>> tm.add_tag("new_tag", file_location)

>>> tm.get_tags(file_location)
[Tag("new_tag", "NONE")]

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

tagmanager-1.0.0.tar.gz (5.7 kB view details)

Uploaded Source

Built Distribution

tagmanager-1.0.0-py3-none-any.whl (5.7 kB view details)

Uploaded Python 3

File details

Details for the file tagmanager-1.0.0.tar.gz.

File metadata

  • Download URL: tagmanager-1.0.0.tar.gz
  • Upload date:
  • Size: 5.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.13 CPython/3.8.11 Darwin/21.4.0

File hashes

Hashes for tagmanager-1.0.0.tar.gz
Algorithm Hash digest
SHA256 7e7dabbfa95719f29f64dff0858b858980143d353f9cb6c01e92a58d7a793402
MD5 89138952019ff40dd14e9ab14443b3a3
BLAKE2b-256 099330e84c4a1a978ea7013b890506f35c0431158481dced051d26d7f383108d

See more details on using hashes here.

File details

Details for the file tagmanager-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: tagmanager-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 5.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.13 CPython/3.8.11 Darwin/21.4.0

File hashes

Hashes for tagmanager-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 ad9fc9a9af38fca68c7fe5fbe5743af8f0860e5b4a86e6d49f4023f2987fb56e
MD5 e510bc7242dc4356f4760aedbb7278bc
BLAKE2b-256 d67edead40cbaab0c5fc7e2d4334b807efcedc20223f8920894c983ad5b7cd88

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page