Skip to main content

Use tags to organize files on Mac from Python

Project description

Use tags to organize files on Mac from Python

Release Checked with mypy

Installation

pip install macos-tags

Works since Python 3.7.

Tutorial

Get all tags:

>>> import macos_tags


>>> macos_tags.tags()
[Tag(name='design', color=None), ..., Tag(name='python', color=<Color.GREEN: 2>]

Get files by tag name:

>>> macos_tags.find("design")
['/Users/home/apple.jpg', '/Users/home/WEB_POSTERS.png']

Count files by tag name:

>>> macos_tags.count("design")
2

List the tags on the file:

>>> path = "/path/to/file"

>>> macos_tags.get_all(path)
[Tag(name='design', color=None), Tag(name='python', color=<Color.GREEN: 2>]

Add a tag to file:

>>> macos_tags.add("design", file=path)

When using str objects to define a tag, if a tag does not exist in the system, it will be added without a color label.

Add a new color tag by using Tag data class and Color enumeration:

>>> from macos_tags import Tag, Color


>>> tag = Tag(name="python", color=Color.GREEN)

>>> macos_tags.add(tag, file=path)

Add a new color tag using the str object, where the tag name and color number (from 1 to 7) are separated by the literal \n:

>>> tag = f"python\n{Color.GREEN}"  # == "python\n2"

>>> macos_tags.add(tag, file=path)

If the tag already exists in the system with a different color, the new color will be ignored.

Remove tag from file:

>>> macos_tags.remove(tag, file=path)

Remove all tags from a file at once:

>>> macos_tags.remove_all(path)

Change all tags in the file:

>>> macos_tags.get_all(path)
[Tag(name='design', color=None), Tag(name='python', color=<Color.GREEN: 2>]

>>> new_tags = [Tag("book"), Tag("programming", Color.BLUE)]

>>> macos_tags.set_all(new_tags, file=path)

>>> macos_tags.get_all(path)
[Tag(name="book", color=None), Tag("programming", <Color.BLUE: 4>]

❤️

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

macos-tags-1.4.4.tar.gz (4.7 kB view details)

Uploaded Source

Built Distribution

macos_tags-1.4.4-py3-none-any.whl (4.4 kB view details)

Uploaded Python 3

File details

Details for the file macos-tags-1.4.4.tar.gz.

File metadata

  • Download URL: macos-tags-1.4.4.tar.gz
  • Upload date:
  • Size: 4.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.0.3 CPython/3.7.6 Darwin/19.3.0

File hashes

Hashes for macos-tags-1.4.4.tar.gz
Algorithm Hash digest
SHA256 6526d27b6c61273232ff1cc7c47e420acee49341ef805a8f3533ce46906138f1
MD5 37266e5440a023cfc8420cb305cf9f18
BLAKE2b-256 04856f279b894be3c0c14a47abb5d52da8c025dafcc5978c926dc5bddd8452af

See more details on using hashes here.

File details

Details for the file macos_tags-1.4.4-py3-none-any.whl.

File metadata

  • Download URL: macos_tags-1.4.4-py3-none-any.whl
  • Upload date:
  • Size: 4.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.0.3 CPython/3.7.6 Darwin/19.3.0

File hashes

Hashes for macos_tags-1.4.4-py3-none-any.whl
Algorithm Hash digest
SHA256 418e073573ce3a95f7d709cae20f3b499da4ebfded8116d658c8135a9f3bbf74
MD5 daa35998ea5662117bafdacbd6b48480
BLAKE2b-256 fff6430ee28cbfb6c4218b308cd1dde139f5117841ad72cd5770e7a2a33d528e

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