Vitag has proven useful enough to me that I’ve added a bit of polish and some new features. I do think this is going to end up being a RubyGem eventually for ease of install, but at this point still only requires a single script file to run.
The main new feature is that you can add a config file at ~/.vitagrc
. It currently supports just one section called ‘alias’, but it’s handy if you use a consistent tagging system the way I do.
The config file just includes a section header and then k=v
pairs:
[alias]
// comment...
#ar = #Archive
Formatting is loose; indentation is ignored, whitespace around separators (=
and ,
) is ignored, lines starting with //
(after any indentation) are ignored. Anything before the =
is an shorcut term, anything after becomes the tag(s) applied when the shortcut is found after saving a vitag file.
The above config file would allow me to change the tags on a file to [#ar,:systematic]
and “#ar” would expand to “#Archive” before the tags were applied. An alias can also be expanded to two or more tags by separating with commas after the =
, e.g. #as = #Archive,:systematic,podcast
would expand “#as” in my tag file to all three tags when applying after save.
See the Vitag project page for updates and more info.
I also started working on a class in a separate file that will scan full hierarchies for all tags in use, then rank them by the number of files they’re each used on. It’s headed toward a tag-suggestion and cleaning set of tools, but isn’t implemented anywhere yet. Feel free to play with it if you like.