8 ms·
TMSU is a tool for tagging your files
- simula67 12y agoToo bad WinFS was canceled. Seems like no GUI support for any of these tools :(
- fsiefken 12y agoTagSpaces has excellent GUI support.
- itaysk 12y agoWas thinking "I like this but no Windows" so thanks for referencing TagSpaces, gonna try it right now
- blumkvist 12y agoThanks, I downloaded it.
- zo1 12y agoThat looked excellent until I read that it stores the tags in the filename. That's just... completely not what I'm looking for, or would use, ever.
- fsiefken 12y agoYes, it's a trade-off; or you keep the tags in a database on which you are dependent or you store everything in the file name or the file itself. Tagging inside the file can only be done if the filetype has support for it (exim or mp3 tags) and you have to program support for the different filetypes. Keeping it in a database necessitates a sync step between moving and renaming actions in the filesystem and the database itself and has to be programmed and tested for every OS. By keeping the tags in the filename, this way this tag system still keeps working without the tooling itself and across operating systems, but you have to give up some freedom in the naming of your files (so it doesn't really work on DOS). Why wouldn't you use such a system ever? People accept metadata in the file itself, the file name usualy describes the data - so why not use tags in the filename other then that it seems ugly hack? How are the alternatives better?
- joosters 12y agoWithout the virtual file system, does this work by hashing the files? That would make it very slow to use on larger files. If I was to tag my movie collection, would TMSU have to load every byte of every movie in order to show the file tags?
- mplewis 12y agoYou may want to check out the repair command. It seems to show that TMSU keeps track of file locations on disk. If you move a file, it can find it if it hasn't been modified. If you move and modify a file, it can't find it and will mark it missing. https://github.com/oniony/TMSU/blob/master/src/tmsu/cli/repair.go https://github.com/oniony/TMSU/blob/master/src/tmsu/cli/repa...
- ars 12y agoI wonder why he doesn't use EA's where available (or does he?)
- albertzeyer 12y agoWhat is EA?
- Someone 12y agoProbably Extended Attributes (http://en.m.wikipedia.org/wiki/Extended_file_attributes http://en.m.wikipedia.org/wiki/Extended_file_attributes) They stick better with files, as long as your tools know about them and handle them fine. Weakness is that they can (will) get lost in tools that do not. There are many of them: zip-unzip, tar-untar, http requests, ftp, etc.
- albertzeyer 12y agoAh. Also, depending on the FS, they are probably too limited, e.g. in size (only 4kb for ext2/3/4).
- 12y ago
- slackson 12y agoI remember looking at this a few years ago. My main reason for not using it was the time it would have taken to tag all my files. Basically, if you have so many files that it's worth tagging them, you need to spend a lot of time tagging, and if you have so few that it's reasonable to tag them all, you don't need this system. If you have a manageable number but expect tagging to be useful in the near future, then this might be useful. I'd be interested in hearing from people who have found a use for TMSU.
- sebastianavina 12y agoI have a library of a lot of ebooks about a lot of subjects, I order them by folders, but is very common to have interesections on the topics they cover. I could tag all them with the folder name, and then manually tag the subtopics each book covers. edit: too bad it isn't on ubuntu repositories. I've a personal policy to avoid programs outside the repositories
- Immortalin 12y agoTry Calibre for managing ebooks, it has a built-in tag system.
- whichfawkes 12y agoI really like Calibre, but it's tag system is pretty clunky. I don't think I can even tag multiple books at once.
- eqyiel 12y agoIt's definitely clunky, but you might like to know that you can tag more than one thing at once: Select more than one book, right click -> Edit metadata -> Edit metadata in bulk
- walterbell 12y agoNot only can you have multiple tags, you can have icons which are conditionally displayed based on tags. Tags are stored in a single metadata file, one directory per ebook, so can be parsed with a script when performing bulk operations. You can then customize search engine like recoll to display ebook metadata as contextual snippets in full-text search results. Best of both worlds.
- pmoriarty 12y agoIt would be nice if this app allowed regular expression searches of tags and spaces in tag names.
- nileshtrivedi 12y agoTags or folders - Aren't both of them mere kludges that we use when search isn't good enough?
- oneeyedpigeon 12y agoFolders/directories are a necessity as long as we continue to distribute collections of files the way we do. I'm not sure what github would look like in a world without directories, nor how file naming would work. Do you have a proposal for the issues that doing away with directories brings up?
- agumonkey 12y agoFolders are only a human factor necessity. Tags forming a graph of related files are more capable, but harder to manage mentally since they can reach any part of the system and cross boundaries.
- Yizahi 12y agoSearch doesn't help when you don't remember filename.
- dagw 12y agoIn an ideal world it should be enough to remember a couple of key words in the file, and possibly some relevant metadata. In an even more ideal world I should be able to search for "all pictures of my daughter from last Christmas, unless they are out of focus".
- jschulenklopper 12y agoSure it does when the search also investigates the contents of the files. For example, GMail and Outlook do this for mail items -- you don't need to know the subject, which is comparable to the file name, to retrieve an email -- and Google Desktop Search (discontinued) or Copernic does this for file systems. It is almost as if every system-retrievable item inside a file (e.g. every word in a text document) automatically becomes a searchable item of the file.
- rlpb 12y agogit-annex has some interesting tagging functionality. It uses trees of symlinks to provide the virtual filesystem: http://git-annex.branchable.com/metadata/ http://git-annex.branchable.com/metadata/ and http://git-annex.branchable.com/tips/metadata_driven_views/ http://git-annex.branchable.com/tips/metadata_driven_views/
- sanswork 12y agoI'm currently working on https://keepallthethings.com https://keepallthethings.com which offers a similar service only web based with a GUI so it will either be more useful or less for you depending on your use case. If anyone wants to try it out go through the sign up process until you hit the credit card form and stop then send me an email(in my profile) and I'll set you up with a free account. Its just launched so there are a lot of features still on the roadmap instead of implemented but it'd be nice to have other peoples feed back/ideas for improvements as I go.
- royka118 12y agoHow about auto tagging of you files? http://cloudfindhq.com/ http://cloudfindhq.com/ We actually automatically tag files in Dropbox and Google Drive, so there's no need to move files disclaimer: I work here!
- wvh 12y agoI haven't tried it yet, but at first glance, a lot of work and thought went into this tool: query parser, SQL, VFS layer, fingerprinting, file move detection ("repair"). The code looks pretty readable and well organised too. Generally speaking, I can't help but feel we're not quite there yet when it comes to meta-data and flexible file system views. We're still coming up with all sorts of cataloguing systems for different types of binary files – I just implemented a Vorbis comment (music tag) parser the other day, and that's just one out of many formats. Extended attributes (attr(5), "user_xattr") are enabled by default these days on most Linux file systems, but are limited in space and I don't see a lot of tool implementations around the functionality. Sure there are some general blunt force search indexers, but overall I feel we still live in a Wild West meta-data age as opposed to the myriad of well standardised open data formats. It would be nice to be able to use a (music, movie, picture, porn, whatever) site's existing meta-data when downloading a file, or hide all work-related files from the file system when you're at home.
- innguest 12y ago> Extended attributes (attr(5), "user_xattr") Reminder: some programs will reset these xattributes upon the file being edited. Back when I was looking for a tagging program for the Mac I read Photoshop was one of those programs. I would not trust putting in the effort to tag a bunch of files in a format so out of my control.
- gwillen 12y agoWhat those programs are likely actually doing is not deliberately resetting the attributes, but saving a file by (1) writing to a new file, and (2) moving the new file over the old file (thus destroying anything about the old file that they aren't aware of in the process.) Not sure if this helps figure out a way around it.
- fallat 12y agoHm. How could this be used efficiently for real work? I think because many of our tools are already file-based, this is not the greatest idea for uses cases that require structure. If anything tagging should be used along side hierarchical layouts...Or users should follow the standard of what /etc, /home, /lib and friends are used for. They are essentially tags in directory form. Take TMSU's example command: tmsu tag summer.mp3 music big-jazz mp3 We could come up with the same behavior WITHOUT an additional program: mkdir ~/music/big-jazz/mp3/ ln -s ~/Downloads/summer.mp3 ~/music/big-jazz/mp3/summer.mp3 Could easily make this into a shell script. Just my 2 cents.
- dmd 12y agoThis quickly becomes cumbersome when you have dozens or hundreds of tags, and doesn't address tag values.
- sbierwagen 12y agoThe other problem is when a file can be in multiple categories: say you're sorting photos into folders based on who is in the photo. alice.jpg goes into alice/, and bob.jpg goes into bob/, but where do you put groupshot.jpg?
- xorcist 12y agoBoth? Or a separate category? Any grouping system would let you do both.
- ap22213 12y agoI've always wanted this for Windows. I wonder how hard it would be to port it. In a business setting, I often see people's desktops cluttered with files. It'd be nice to give them a virtual folder on the desktop where they can drag and drop files into in to it, with tags.
- oniony 12y agoHi, author here. Windows support is in progress.
- arbalist 12y agoI don't know how you plan on doing the VFS stuff on windows but back in the day when I still used windows (XP) I had a shell extension that let you tag a folder or file from the context menu. It would then be linked into a tag directory using either NTFS reparse points (aka junctions?) for directories or hardlinks for files.
- Zuider 12y agoTaggedfrog does something very similar on Windows, except it uses a drag and drop GUI instead of the shell. You can have ready made customized tag clusters (so you don't have to type the tags for each file), and it will tag anything, including web URLs. http://lunarfrog.com/taggedfrog/ http://lunarfrog.com/taggedfrog/ That said, I would like to be able to tag and recall from the command line in order to integrate tags with other tools. Windows already offers a limited tagging service for Office documents.
- microcolonel 12y agoI like a mix of hierarchy and this, glad to see somebody is trying.
- natch 12y agoI tag directories, not files. Way more sustainable over time, because there is no way I'm going to tag every single file. Files tend to be better at describing themselves. To take an example from the TMSU docs, why would I ever need to tag an .mp3 file as music? If it's an MP3, and it's under my music directory, it's pretty clear what it is.
- zokier 12y ago> If it's an MP3, and it's under my music directory, it's pretty clear what it is. Putting files in a directory is semantically equivalent to applying a tag. But directory structure is no way fundamental to computing, and indeed tagging is more general and flexible solution to organizing files.
- natch 12y ago>Putting files in a directory is semantically equivalent to applying a tag. Yes, equivalent to a single tag. Not multiple tags.
- noisy_boy 12y agoThe first use case that came to my mind has been the one I've had difficulty with for the longest - marking/unmarking my music files to sync with my Android phone. I've heard Rhythmbox is good for that but what I'm looking for is a window which shows all my music with those that are also on my phone marked somehow (maybe a differently colored icon or something like that). I should be able to right click or use a shortcut to mark/unmark the music and once done, the music on my phone is updated. Files previously present and now unmarked are deleted, files newly marked are copied. I can see using TMSU for this with following approach: 1. Mount the VFS, to e.g. mount point "mp" 2. Using Nemo Actions (I use Linux Mint), call a script that upon executing on the selected file will do the following: - toggles the "sync" tag (so all files with "sync" will show-up under "mp/tags/sync") - If the file already has a "sync" tag, untag it (can it be done by doing an rm on "mp/tags/sync/<filename>"?) - Based on tag being present or not, toggle file icon to visually indicate if the file is marked/unmarked. I don't know how this can be done. 3. Once done, we can run a simple rsync script that syncs "mp/tags/sync/*" to the sdcard on the phone. Not sure when I will get around to actually implenting this :)
- hugozap 12y agoThis is really cool, the virtual filesystem and query abilities makes it really powerful.
- galfarragem 12y agoTo predict where is something, I use an hierarchical folder system to organise my documents based on GTD [1]. The initial investment (file renaming) pays off on the long run. [1] https://github.com/we-build-dreams/folder-system https://github.com/we-build-dreams/folder-system