Blogger :
Geekswithblogs.net
All posts :
All posts by Geekswithblogs.net
Category :
XML
Blogged date : 2008 Jun 03
I'm clearly not the oldest knife in the drawer, nor am I the youngest. I got involved with computers in my youth just about the time Bill Gates was positioning himself to put a PC in every home. What this means is, I grew up on PCs with no mice; pre-Windows, pre-GUI. I learned how to write "menu" programs that utilized a broader range of ascii characters than most people are familiar with today. The point is, everything I did on the computer I did with the keyboard.
I recall in high school, a new kind of computer with this funny bulbous thing connected to it at the end of a wire. The screen was even more compelling. There was an arrow on the screen and you were supposed to use a "mouse" (the bulbous thing) to move it around. Our teachers loaded something called Hypertext and told us to play around with it. I have to admit, it was not love at first sight. I had a lot of trouble making the arrow do what I wanted.
Today, it is second nature to use a mouse to manipulate icons, text, forms, etc. on the screen. Many people use touch screens in their daily lives. As a developer who writes code, sometimes the mouse can get in the way. The mouse is so integral that it can be hard to break free. The mouse has its place; but, in my opinion, is should play a very small role in writing code.
I am constantly surprised at how many "experienced" developers are unfamiliar with the tools that they are using. Below is a list of commands that I find useful with Microsoft Visual Studio, specifically for C# and asp.net. Of course, you can change any of these and you can add your own by customizing Visual Studio. Many of these you will already know. Hopefully there are a few new ones here to boost your productivity.
These are just the basics. Imagine what you can do with code acceleration tools like CodeRush, ReSharper, and others.
| Keystroke |
Action |
| Navigation |
| F12 |
Go to Definition. Jumps to the definition of the Class, Method, Property, etc of the item currently occupied by the cursor. This works best if you have the source code. |
| Ctrl - |
Navigate Forward: Jumps to last line of visited code. Jumps between source files. Can be used repeatedly. |
| Ctrl-Shift - |
Navigate Backward: Jumps to next line of visited code. These are similar to going back and forward in your browser history. |
| Ctrl-Shift-F |
Find in files |
| Ctrl-G |
Go To Line. Useful if someone says your code is failing at line 1739 of 2341. Hopefully this never happens to you. |
| Ctrl-W S |
Activate Solution Explorer |
| Ctrl-W P |
Activate Properties Window |
| Ctrl-W O |
Activate Output Window |
Ctrl-W E
|
Activate Errors List |
| Editing |
| Ctrl-Shift-R |
Record temporary macro |
| Ctrl-Shift-P |
Play temporary macro. I use these two to perform repetitive editing that refactoring tools cannot help with. As refactoring tools have gotten better, I have found that I use this less often. |
| Ctrl-Shift-S |
Save All |
| Ctrl-Shift-H |
Replace in files |
| Alt-A |
(When in Find and Replace dialog) Replaces all occurrences with the new text.
|
| Ctrl-U |
Make lowercase |
| Ctrl-Shift-U |
Make uppercase |
| Ctrl-Space |
Complete a word (IntelliSense) |
| F2 |
Refactor Rename (I believe this is new to VS2008). Will search entire solution to update any references. Does a pretty good job with aspx too. |
| Ctrl-E D |
Format Document. Useful for aspx and xml (if you don't mind Microsoft's formatting rules |
| Ctrl-M M |
Toggle outline expansion (note: the capital M here does not imply a "Shift", just used for readability) |
| Ctrl-M L |
Toggle All outlining |
| Building and Debugging |
| Ctrl-Shift-B |
Build All / Build Solution |
| Ctrl-F5 |
Start without debugging. |
| F9-Toggle breakpoint |
The first time I used visual studio I switch F5 and F9. Bonus points to anyone who knows why. |
| F5 |
Run with debugger |
| F10 |
Step over |
| F11 |
Step into |
| Shift-F11 |
Step out of |
