Find Me


My Text File Naming Taxonomy

I’ve often mentioned in posts about how I use text files for everything but I’ve never really explained how I keep them all organized.

I have always used text files but it wasn’t until I started using nvAlt that it became apparent that I needed a good way to keep track of things. I started tagging everything with a preceding date but found that it didn’t provide enough to go on when browsing a directory.

A few months into coming up with different naming conventions, I was listening to a MacPowerUsers podcast workflow podcast with Merlin Mann and he described his taxonomy and I thought I’d give it a try.

It’s not perfect, in the same way tagging is imperfect for me. I tend to forget what my prefixes and tags are and things devolve into a soup of mis-named, mismatched files. Merlin had a good idea in using “refx” as a tag for “reference files” and the having a “refx refx” file to serve as a master list of tags. Here is my actual refx refx.txt file contents.


refx        - reference file
workx       - work-related file
gamex       - gaming related file
rulex       - rules for games or other rules-based things
blogx       - blog-related file, usually a blog snippet or post
homex       - related to things like expenses, apartment planning
petsx       - pet related
taskx       - workflow, task-management related
runx        - running list file, lists that don't need to be in OF
kidsx       - files about kids
gamesx      - files about games
lists       - lists of stuff like "books to read", usually very long lists
scratchx    - junk files, may become actual files or reminders
shopx       - shopping lists
tvx         - tv-related stuff

I use as many of these prefixes as appropriate in a given file name. If the file is a work-related, running list file, I’ll use the prefix “workx runx”, etc.

If the file has a time-element, the second part of each file name is a date/time stamp. I have a TextExpander snippet to create these time stamps so its just a matter of hitting four keys (“dtts”). Before TextExpander (dark days…), I just included the date because it was faster than typing the date and time, but having the time included has helped in some cases.

After these prefixes are added, I put the rest of the actual name of the file, in human-readable language, add a “txt” extension and I’m done.

For exampe, this file is “blogx 01022012 1332PM my text taxonomy.txt”. Some other examples are “workx 09162011 Scalability and testing constraints.txt”, “scratchx 12132011.txt”, “tvx runx shows to download.txt”. You probably get the picture.

This naming convention does a few things for me that other conventions I’ve tried haven’t.

  1. It orders files by major type (and minor type, if applicable), date, time and title in the Dropbox directory. All work files appear together as “workx” files and the date ordering does the rest, etc.
  2. It allows for ultra-fast searching in Spotlight (by typing “kind: text “search strings like workx, etc.” in the Spotlight search field)
  3. It obviously plays to the strength of nvAlt, which can find and display a search by prefix in less than a second and allow for further typing to refine the search as you go.

That’s it, really. It’s simple, once explained fully, but it is integral to how I work. Every since I started using text files heavily in every aspect of my workflow, having a good way to keep track of them and find things quickly became paramount. Thanks to Merlin for coming up with such a simple, yet ingenius, way of doing just that.