A month ago, my amazing client, Streamup kindly gave me a Macbook Pro, and my experience was catastrophic.
You see, I’m the kind of developer who used Linux for every-day task and tried every new shiny project to increase his productivity and pleasure to code. I’ve spent way too much time tweaking my AwesomeWM config, testing SublimeText and Atom plugins and adding shell aliases.
So when I got this brand new computer, I was left with a environment made for simplicity and not optimized for a developer usage.
A lot of persons don’t want to spend time tweaking everything, I completely understand that, so here’s the apps I highly recommend you to try!
Caps Lock to Hyper (Cmd + Alt + Ctrl)
The Caps Lock key is completely useless. I never use it but it’s here, always under my little finger.
In OSX, the best usage for it is to remap it to the Hyper combination. This is rarely used so you can then use the Caps Lock key for your system-wide shortcuts.
It’s quite simple to remap it, simply read this good article from Brett Terpstra.
Karabiner is a free app to simply alter the comportment of your keyboard. I only use it to remap Fn to Control but there is much more options you could use if you like.
One of the best feature is Raise-On-Hover, with this you don’t need to click in a window to start typing in it. It saves hundred of clicks each day, for real.
I only uses Caps Lock (remapped to Hyper) for the KWM keybinding.
BetterTouchTool is the swiss knife of shortcuts. You need to buy a licence to use it ($3).
Personally, I only uses 4 shortcuts:
- Move window to left/right space
- Toggle hidden files in Finder
- Close focused window
Replace your basic shell with a much more powerful one.
Here’s the plugins I cannot live without:
- Syntax highlighting (unknown commands in red, quoted text in yellow)
- Double escape to sudo
- History substring search (press up to get the last command matching)
- OSX (cdf to cd in finder directory)
- Extract (x [file] to decompress every type of file)
- Brew, Docker, Git to add smart auto-completion
Enhancd replace your cd command with an interactive list of your last directories to choose from.
You can start typing to fuzzy search the list and then just enter to change your current directory with the one selected.
Exa is a smarter ls, nothing more to say.
I’ve switched from Sublime Text 3 to Atom a couple of month ago. I will not explain here the reasons, here’s simply some plugins I use everyday.
Reindent your file or selection with a keybinding. Life saving.
Add color corresponding to the git diff of the current file in the gutter.
It makes me separate my modifications in more smaller commits.
Do I need to say more ?
Adds color in your code.
Smart enough to work with SASS functions.
Language / Framework specific packages
There is still a lot of things that can be improved and I haven’t found a solution. The biggest one lacking is a real Guake terminal (iTerm2 only does it on a single space).
If you think something is missing, comment this article on HackerNews!