When I use a new computer and OS, I really notice how much my productivity goes down by not knowing all the keyboard shortcuts and not having any aliases set.

Here’s my top used shortcuts and alias that I’m using on Ubuntu 15.04:

For git, here’s aliases are used the most often: - git st for git status - git br for git branch -a - git lg = git log -10 --pretty=format:\"%h %ad | %s%d [%an]\" --graph --date=short

(There’s a better “git lg” I’ve used in the past that is twice as long with more colors, but I haven’t found it again.)

And, to make my git-ing even more smooth here’s a few more at the OS level; Ubuntu aliases I use (by editing ~/.bashrc) PATH=~/bin:$PATH alias gs=’git status ‘ alias ga=’git add ‘ alias gaa=’git add –all ‘ alias gac=’git commit -a ‘

Regarding the default Ubuntu bash terminal itself:

  • Open with hotkeys ctrl+alt+t.
  • Close by running the command exit.
  • Very much used, copy and paste can be done with ctrl+shift+c and ctrl+shift+v.

For moving the windows around, it’s really smooth to use ctrl+alt+<NumPadDirection>. You can easily snap to 10 different places.. for example, 7 for top-left quarter, 5 for full-screen, 6 for right side, 2 for lower-half, 0 for minimize.

Maybe don’t have focus on the window you want? Try one and all of these:

  • alt + tab
  • super + w (super == windows key)
  • alt + F1
  • super + <1-9> (open app on sidebar)
  • super + shift + <1-9> (open new instance of app on sidebar)

And, finally the experiment that I’m performing.. using just one text editor/”IDE” for everything that doesn’t require the full-blown power of IntelliJ and Android Studio. That way, I can focus more on having a single cross-platform setup and default keybindings. I’ve compared Vim, Atom, Sublime, Notepad++, and more. Notepad++ was my go-to favorite on Windows, but I’m going to stay with something cross-platform going forward. After I compared all the text editor communities, hackability, support, and plugins available, I’m going with Atom. I was very uneasy my first days with it. A week in and I’m loving it much more. The key was to make sure I do a search each time I didn’t know a keyboard shortcut for something. (Sidenote: I also used Atom about a year ago when it was in beta and didn’t care for how slow it was to load. It’s much better now and includes many goodies right out of the package.)

Here’s the Atom packages that I’ve installed so far:

  • minimap
  • open-recent
  • atom-terminal (hotkeys to open terminal at file directory and root directory)
  • language-haskell
  • remote-edit (do file editing via SSH, etc)

And, my top used keyboard shortcuts (besides the usual copy/paste/close):

  • ctrl + k, then (let go of ctrl) <arrow> to split screen.
  • ctrl + k, <arrow> to move focus to another pane. (ctrl+tab for switching between windows in a pane)
  • Insert newline from anywhere on line with ctrl + enter
  • Duplicate a line with ctrl + shift + D
  • Cut a line with ctrl + x and nothing highlighted
  • Multi-cursor is always fun. Atom has it as alt + shift + <up/down> via keyboard and ctrl + <mouse click> via mouse click. And, go crazy by combining the two. :)
Now a quick word from a tech company who helps support me and this site: