Filesystem that uses tags rather than folders

TMSU was born out of frustration with the hierarchical nature of filesystems - Home / Stackoverflow

see also

Principle

Tsmu

Works in user space, uses FUSE

Tagging

  • support unicode tags (hopefully)
$ tmsu tag <file> --tags='score=★★★★☆'
$ tmsu tag --tags="iron-giant sci-fi" ./Pictures/iron-giant/*
  
# Mounting FUSE filesystem
tmsu mount mount-point

Tricks and Tips

  • External Integration

    The versatility of TMSU means it isn’t very difficult to extract tags from text files (e.g. Markdown) and feed them into TMSU, for example the following could be used to extract #tags from markdown files in the current directory and assign tags to them.

Injecting my blog tags into tmsu, usig ripgrep and ruby one liner:

rg "tags:" | ruby -ne 'puts "tmsu tag \'#{$1}\' --tags=\'#{$2}\'" if $_ =~ /([^:]+):[^:]+:(.+)$/ ' | bash

DEV

Issue

FUSE error: Transport endpoint is not connected

  • fusermount -u YOUR_MNT_DIR
Written on July 19, 2020, Last update on November 5, 2023
tags filesystem