[Edit] What used to be 27 is now 39 - Due to all the great comments, I've amended the list to add a few more suggestions, thanks to all that contributed.
Shortcuts are the most productive thing that a developer can add to their repertoire that will aid them through their entire career. Learning how to use your system and tools will improve your productivity and in general make traversing all your windows and apps a breeze. The mouse is a great, tool, but if you can do it quicker, more effectively without your hands leaving your keyboard then you should!
Here's a list of my most used shortcuts, you'll probably know or use quite a few of these already, hopefully there is one here you don't!
Let's get moving to Shortcuts people!
Cursor Movements
ARROWS - move character by character
CTRL + ARROWS - move word by word
HOME - Go to the first character of the line
END - Go to the last character of the line
CTRL + HOME - Go to the start of the file
CTRL + END - Go to the end of the file
SHIFT + Cursor Movement - Move as above, but selecting text.
Generic Windows Shortcuts
These are generic shortcuts specific to Windows, these are the things you will use day in, day out, so get accustomed to these, and use them when you can.
Ctrl + C - Copy - CTRL + INS
Ctrl + V - Paste - SHIFT + DEL
Ctrl + S - Save - SHIFT + INS
Ctrl + Z - Undo
Ctrl + Y - Redo
Ctrl + F - Find in window/app
Windows + D - Minimise all windows, goto desktop.
Windows + Up Arrow - Maximise current window/app
Windows + Left/ Right Arrow - Move current window/app to left/right side of/next screen.
Alt +Tab - Window Tab Move
Shift + Alt + Tab - Reverse Window Tab Move
Ctrl + Tab - Application Tab Move
Shift + Ctrl + Tab - Reverse Application Tab Move
As you can see, in the above two cases, the shift button, SHIFTS the direction of the tab! It's really intuitive if you think about it this way!
Ctrl + Arrow - Move cursor across word to next special character or space.
Ctrl + Shift + Arrow - Move cursor across word to next special character or space, and highlight.
IDE Shortcuts (VSCode)
The following is a list of shortcuts that are baked into VSCode - most IDE's will have the option to configure shortcuts, so if you use something else, have a go setting these up!
Alt + Left Arrow - Go back - Last Cursor Position, this could be in a different file.
Alt + Right Arrow - Go forward - Last Cursor Position the other way! Did you go too far? Don't worry, undo your undo!
Ctrl + Shift + F - Find in all Files
Really useful if GoTo Definition is not working, or you're looking for a String!
Ctrl + K + C - Comment
Ctrl + K + U - Uncomment
Ctrl + / - Comment Toggle
Alt + Shift + Up Arrow - Duplicate line above
Alt + Shift + Down Arrow - Duplicate line below
Ctrl + Shift + R - Refactor
F12 - Goto Definition
This one will save you a lot of time, if your codebase is a sprawling behemoth then this will come in very handy.
F2 - Rename
This will rename all instances of any variables you have kicking around, this won't replace text strings or comments, just the variable declaration.
Ctrl + D - Multi Cursor, Select next occurrence
Ctrl + Shift + L - Multi Cursor, Select All in File
Ctrl + P - Quick Find - Files, Etc
Browser Shortcuts.
Ctrl + Shift + t - Opens previously closed tab in browser!
We all strive to become a keyboard ninjas!
Do you have any other keyboard shortcuts we should be using?












Oldest comments (31)
Sometimes GIFs make everything better, today is one of those days! :)
Can you give some shortcuts for developing in atom editor ?
I'll be honest, I've never used Atom before, but this cheatsheet package looks the business.
atom.io/packages/atom-shortcuts
thanks man!
Awesome, Thanks!
I use both VS Code and InteliJ IDEA daily to do my work, when I saw the Crtl + Y shortcut I thought that I would warn InteliJ IDEA users that it is totally different in this IDE and can be potentially "dangerous". hahaha
Here is a reference card for InteliJ IDEA to contribute to the shortcut movement. :)
Haha! Yeah I've maybe I need a disclaimer somewhere! I've fallen for that on other IDE's too. For anyone wondering, this will delete the line you are on! Quite the opposite from Redo in most ways! :D
Nice!!Thanks!
Thanks for the list Chris.
To add one more, I believe only one keyboard shortcut is worth mentioning for browsers.
ctrl + shift + tIt opens previously closed tab, which saved me multiple times.
This one is great, thanks. I've added to the main post under Browser Shortcuts!
🕺💃
A long time ago, before Windows...
The code editors use to have this combination of keys that still work today.
CURSOR MOVEMENT:
ARROWS-> move character by characterCTRL+ARROWS-> move word by wordHOME-> Go to the first character of the lineEND-> Go to the last character of the lineCTRL+HOME-> Go to the start of the fileCTRL+END-> Go to the end of the fileSELECTION:
SHIFT+CURSOR MOVEMENT-> move selecting textCOPY & PASTE:
CTRL+INS-> Copy the selected test TO the clipboard (COPY)SHIFT+DEL-> Move the selected test TO the clipboard (CUT)SHIFT+INS-> Move the selected test FROM the clipboard (PASTE)Since those times I program with that COPY & PASTE combination. There is less movement of the hands. Once you get used to it, you will find that
CTRL + CandCTRL + Vcombinations are not so ergonomic.For example, in order to move a block of code from one place to another, I use to press:
HOME: go to the first position of the lineSHIFT+ARROW DOWN: select lines all the way down.SHIFT+DEL: cut the block.CURSOR MOVEMENTuntil the first position of the line where the code is going to be inserted.SHIFT+INS: to paste the block.You can see that in all that process, the left hand have only made the slight movement of pressing and releasing
SHIFT, and not the complicated movement of pressingCTRL+C/CTRL+V. The right hand did only use the arrows (better if it is from the numeric keypad, so thatHOMEandENDcan be reached with an slight movement of the right index finger)Thanks, I've added a selection of these to the main post. Funnily I use quite a few of these in my bash terminal! ;)
Thank you.
Oh, great, thanks! Most of the Windows shortcuts work on my Ubuntu as well!
You can also toggle comments (in VSCode at least) by selecting your block of code and hitting
CTRL + /.I didn't know this one, it's actually even easier! Thanks
Great list! Didn't know about
Alt+Left, gonna try it today at work. I'll be adding some that I use daily and haven't been covered in this list.More for VSCode:
CTRL+D- multi cursor select next occurrenceCTRL+SHIFT+L- multi cursor select all occurrences in fileCTRL+ALT+UPorDOWN- multi cursor next line up/downCTRL+/- comment or uncommentCTRL+P- quick search fileAnd some for VS:
CTRL+,- quick search definition and/or fileSHIFT+ALT+UPorDOWN- multi cursor next line up/downCTRL+SHIFT+U- to upper-caseCTRL+KandCTRL+D- format whole file