I’ve published over 100 projects over the years. In posts here, as projects, on GitHub, sometimes just zip files to Twitter. A lot of them I create out of curiosity, then let them go. I want to take a quick stock of the other kind, projects that filled a need so well for me that I not only maintain them, I use them daily. While I’m looking to satisfy my own curiosity, I’ll just go ahead and highlight some of them.
This is definitely not a “Best of 2018” list. These projects are almost all older than last year, though almost all of them saw updates over the course of the year.
Part 1: apps and services
Out of all of my projects, only a few of them are full-fledged apps. This section is going to list my favorites of those (and likely the only ones that have survived multiple OS versions), as well as my more fleshed-out Services (a.k.a. Quick Actions, these days).
- Marked 2
- Marked isn’t just my favorite app to work on these days, it’s my favorite tool to use when I’m writing Markdown of any kind. But you probably knew that.
- SearchLink is my favorite Service. It makes creating web links while you’re writing as simple as hitting a keyboard shortcut. No jumping to the browser, searching, copying, and jumping back. I seriously wouldn’t want to write without it.
- You probably know this one. While I struggle to get a replacement off the ground, I’ve kept nvALT running on the latest operating systems (and will for the foreseeable future). I don’t know where I’d be without it.
- While I turned over development of this Sublime Text package for Markdown writing, this was originally my project and I still use it every day. I’m using it (and SearchLink, Marked, and nvALT) right now as I write this.
- Marky the Markdownifier isn’t perfect. There’s a lot I’d like to fix on it. But 90% of the time it makes it a simple task to turn web articles into Markdown, whether I just want to make things more readable in the browser or archive them in a text format.
- TextExpander Tools
- I’ve built a lot of TextExpander snippets over the years. I use TextExpander literally every time I type a sentence, and some of my favorites from my more complex snippets are available here.
- Markdown Service Tools
- The cleverly named collection of macOS Services for writing Markdown. From adding bold and emphasis to gathering a Markdown list of all your Safari/Chrome tabs, this collection proves useful to me every time I write, even in Markdown-specific apps with their own tools.
- I talk a lot about my key bindings. I won’t go into depth other than to say it allows me to add shortcuts and modifications to the entire macOS text system. I miss them immediately when working without them, so they seem relevant to this list.
Part 2: Terminal tools
I spend time on the command line every day (iTerm2 to be specific), so the CLI tools I’ve written get a workout. Here are (some of) the ones I use constantly. You can find an archive of all my exploits in the Bash Fun series. (It’s mostly bash stuff, but often shell-agnostic and I do include some other shells.)
- My little interface to a TaskPaper file for each project. When I
cdinto a project, I automatically get a list of the top priority todo items for that project, and I can quickly add new todos, along with priority tags and notes. Together with my
tdfunction, this is how I handle all project-specific task management.
- My “What Was I Doing” system. I really just built it so I could take a quick note about what I was working on when I detect myself getting distracted by a tangential project, it morphed into a fairly complete system for task, idea, and time tracking.
- This is my interface to Ruby’s
rakegem. I hardly ever type
rakeanymore, instead using the simpler
rsyntax provided by reiki.
- Because I have so many scripts, aliases, and tools in my shell, I sometimes lose track of where a function or alias is coming from. Where catalogs all of my sourced files in Bash and allows me to quickly track down the file and line number where a function or alias is defined. It probably isn’t handy for everybody, but I use it frequently.
- Multi-purpose editor variable
- This one works transparently, always picking the right editor when the
$EDITORvariable is invoked in my shell. I use it every day without even remembering that it’s there (until my markdown file automatically opens in MultiMarkdown Composer instead of Sublime).
- newscript and editscript
- My two tools for quick-starting new scripts and editing existing scripts with fuzzy search and short commands.
- App Completion
- This trick lets me type
xc [tab]and get a completion of all of the Xcode projects and playgrounds in the current folder, ready to open in Xcode with the press of the return key. I have it set up for everything from Xcode and Sublime to Acorn and ImageAlpha.
Part 3: Just the aliases
I’ve mentioned a bunch of my favorite Bash aliases over the years, and some of these are repeats/updates, but here’s a list of some of my favorite custom aliases that you might want to incorporate if you spend time in the shell.
Quick access to
Shortcuts for package managers:
For doing a little config maintenance:
Working with git: