39 No Frills Keyboard Shortcuts every Developer Should Know About
Tags: webdev, learning, beginners, productivity
Published: 2018-09-04 12:42:24

---
title: 39 No Frills Keyboard Shortcuts every Developer Should Know About
published: true
description: 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...
tags: webdev, learning, beginners, productivity
cover_image: https://thepracticaldev.s3.amazonaws.com/i/xqxikn4s45f9jdh6keek.gif
---

[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!
<blockquote>
<p style="text-align: center;"><code>Let's get moving to Shortcuts people!</code></p>
</blockquote>

<h2><strong>Cursor Movements</strong></h2>

<code>ARROWS</code> - move character by character

<code>CTRL</code> + <code>ARROWS</code> - move word by word

<code>HOME</code> - Go to the first character of the line

<code>END</code> - Go to the last character of the line

<code>CTRL + HOME</code> - Go to the start of the file

<code>CTRL + END</code> - Go to the end of the file

<code>SHIFT + Cursor Movement</code> - Move as above, but selecting text.

<h2><strong>Generic Windows Shortcuts</strong></h2>
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.
<hr />

<code>Ctrl + C</code> - <strong>C</strong>opy - <code>CTRL + INS</code>

<code>Ctrl + V</code> - Paste - <code>SHIFT + DEL</code>

<code>Ctrl + S </code> - Save - <code>SHIFT + INS</code>

<img class="aligncenter" src="https://media1.tenor.com/images/ac226cfe289a96e242f146a304bf95ba/tenor.gif?itemid=5315333" alt="Image result for typing mad gif" />

<hr />

<code>Ctrl + Z</code> - Undo

<code>Ctrl + Y</code> - Redo

<img src="https://raw.githubusercontent.com/t9md/t9md/19e4086ce7f16bd802fd8ec609b422a45a05f8db/img/vim-mode-plus/flash-undo-redo.gif" alt="Image result for undo redo gif" />

<hr />

<code>Ctrl + F</code> - Find in window/app

<hr />

<code>Windows + D </code>- Minimise all windows, goto desktop.

<code>Windows + Up Arrow </code>- Maximise current window/app

<code>Windows + Left/ Right Arrow </code>- Move current window/app to left/right side of/next screen.

<img class="aligncenter" src="https://i.imgur.com/4dSv0jH.gif" alt="Image result for typing mad gif" />

<hr />

<code>Alt +Tab</code> - Window Tab Move

<code>Shift + Alt + Tab</code> - Reverse Window Tab Move

<img class="aligncenter" src="https://media0.giphy.com/media/3o6Ei2yv8fqpR3nJG8/giphy-preview.gif" alt="Image result for typing mad gif" width="504" height="252" />

<hr />

<code>Ctrl + Tab</code> - Application Tab Move

<code>Shift + Ctrl + Tab</code> - Reverse Application Tab Move

As you can see, in the above two cases, the shift button, <code>SHIFTS</code> the direction of the tab! It's really intuitive if you think about it this way!

<img class="aligncenter" src="https://cloud.addictivetips.com/wp-content/uploads/2016/04/tab-cycle.gif" alt="Image result for alt tab gif" />

<hr />

<code>Ctrl + Arrow</code>  - Move cursor across word to next special character or space.

<code>Ctrl + Shift + Arrow</code>  - Move cursor across word to next special character or space, <code>and highlight.</code>

<img class="aligncenter" src="http://www.typingspeedtests.net/images/typing-speed-tests-practice.gif" alt="Image result for fast typing gif" width="402" height="225" />

<hr />

<h2><strong>IDE Shortcuts (VSCode)
</strong></h2>
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!

<img class="irc_mi aligncenter" src="https://i1.wp.com/www.marcobeltempo.com/wp-content/uploads/2017/09/visual_studio_code_banner_resized.png?resize=1025%2C266" alt="Image result for vscode banner" width="1025" height="266" />

<code>Alt + Left Arrow </code>- Go back - Last Cursor Position, this could be in a different file.

<code>Alt + Right Arrow </code>- Go forward - Last Cursor Position the <code>other way! </code>Did you go too far? Don't worry, undo your undo!

<hr />

<code>Ctrl + Shift + F</code> - Find in all Files

<code>Really useful if GoTo Definition is not working, or you're looking for a String!</code>

<hr />

<code>Ctrl + K + C </code> - <strong>C</strong>omment

<code>Ctrl + K + U </code> - <strong>Un</strong>comment

<code>Ctrl + / </code> - Comment Toggle


<img class="aligncenter" src="http://joakimysland.com/wp-content/uploads/2015/05/vs_toggle_commenting.gif" alt="Image result for comment uncomment visual studio gif" />

<hr />

<code>Alt + Shift + Up Arrow</code> - Duplicate line above

<code>Alt + Shift + Down Arrow</code> - Duplicate line below

<hr />

<code>Ctrl + Shift + R</code> - Refactor

<img class="irc_mi aligncenter" src="https://code.visualstudio.com/assets/docs/editor/refactoring/ts-extract-local.gif" alt="Image result for rename vscode gif" width="640" height="361" />

<hr />

<code>F12</code> - 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.

<img class="irc_mi aligncenter" src="https://user-images.githubusercontent.com/20873402/27774345-75d635c8-5f45-11e7-9ea1-b17a3c8da345.gif" alt="Image result for goto definition gif" width="917" height="581" />

<hr />

<code>F2</code> - Rename

This will rename all instances of any variables you have kicking around, this won't replace text strings or comments, <strong>just the variable declaration.</strong>

<code>Ctrl + D</code> - Multi Cursor, Select next occurrence

<code>Ctrl + Shift + L </code> - Multi Cursor, Select All in File

<img class="irc_mi aligncenter" src="https://camo.githubusercontent.com/fc051d3b31b546d0ccdcb66e3bab78f084225b8e/68747470733a2f2f662e636c6f75642e6769746875622e636f6d2f6173736574732f3239363433322f313835303239312f38613230343664632d373663632d313165332d396237392d3530653062323938663265642e676966" alt="Multiple Selection" width="917" height="581" />

<code>Ctrl + P</code> - Quick Find - Files, Etc

<img class="irc_mi aligncenter" src="https://cdn-images-1.medium.com/max/1600/1*rmalZkfRK8jeC5s7yf6spQ.gif" alt="Quick Find" width="917" height="581" />

<hr />

<h2><strong>Browser Shortcuts.</strong></h2>

<code>Ctrl + Shift + t</code> - Opens previously closed tab in browser! 

<hr />
<p style="text-align: center;"><strong>We all strive to become a keyboard ninjas!</strong></p>
<img class="irc_mi aligncenter" src="http://www.seejenwrite.com/blog/wp-content/uploads/2015/03/ninja-04-desk.jpg" alt="Related image" width="425" height="400" />


Do you have any other keyboard shortcuts we should be using?