IDE

The Visual Studio .NET IDE
Customization and Enhancements
Chapter 6 - Pumping up the IDE
Coder To Developer - Mike Gunderloy
Respected Professor: Dr. James Fawcett
Presented By: Ghanashyam N
Pumping Up The IDE
 In order to be useful to a developer an IDE
must have the following characteristics
 Support for Customization
 Developers must be able to define their own
shortcuts and choose their own window layouts
and keyboard settings
 It must be possible to automate repetitive tasks
 Support for Extensibility
 Developers must be able to use third-party tools
to achieve functionality that is not present (by
default) in the IDE
Pumping Up VS .NET
 This presentation will focus on the
following topics
 Customizing VS .NET
 Using VS.NET Macros
 Using VS.NET Add-Ins
Customizing VS .NET
 Using Profiles
(My Profiles tab on Help ►Show Start Page)
 Enables selection of a group of settings for
 Keyboard Scheme
 Window Layout
 Help Filtering
 Startup Options
Customizing VS .NET
 Setting VS .NET Options
(Tools ►Options)
 Environment ►General
Increase number
of items on most
recently used list
Customizing VS .NET
 Setting VS .NET Options
(Tools ►Options)
 Environment ►Documents
Get rid of
“Are you sure?”
prompts
Customizing VS .NET
 Setting VS .NET Options
(Tools ►Options)
 Environment ►Fonts and Colors
Use developerfriendly fonts
(e.g. ProFont,
Sheldon)
Customizing VS .NET
 Setting VS .NET Options
(Tools ►Options)
 Environment ►Task List
Use your own
comment tags
to put items
In the Task List
Customizing VS .NET
 Setting VS .NET Options
(Tools ►Options)
 Text Editor ►C# ► General
Show line
numbering in
editor window
Customizing VS .NET
 Setting VS .NET Options
(Tools ►Options)
 Text Editor ►C# ► Tabs
Set tab size
and indent width
Customizing VS .NET
 Setting VS .NET Options
(Tools ►Options)
 Database Tools ►Server Explorer
Increase login
timeout for WAN
or Internet based
access
Customizing VS .NET
 Some More Tips
 Developer fonts - ProFont and Sheldon are
available for download at
http://www.tobias-jung.de/seekingprofont/
 For even more customization possibilities try VS
.NET PowerToys available at
http://www.gotdotnet.com/team/ide/
 Explore Tools ►Options for several more useful
options
Using VS .NET Macros
 Increase productivity by using Macros to avoid
repetitive work
 A macro is a series of actions saved in a
scripting language
 VS .NET includes




A Macro recorder and playback facility
A Macro editor
Keyboard bindings for Macros
An object model to let Macros work with the IDE
Using VS .NET Macros
 Macro Recorder
(Tools ►Macros ►Record Temporary Macro)
(Ctrl + Shift + R)
 Macro Playback
(Tools ►Macros ►Run Temporary Macro)
(Ctrl + Shift + P)
 Macro Explorer
(View ►Other Windows ►Macro Explorer)
 Provides a project abstraction for Macros
 Supports editing and saving of Macros and Macro projects
 Setting Macro Keyboard Shortcuts
(Tools ►Options ►Environment ►Keyboard)
Using VS .NET Add-Ins
 The VS .NET IDE was designed to be extensible and
many utility vendors have taken advantage of this
extensibility by developing Add-Ins that plug into it
 VS .NET uses an object model called the DTE (DesignTime Environment) object model to support Macros as
well as Add-Ins
[For further details see - Inside Microsoft Visual Studio
.NET - Brian Johnson, Craig Skibo, and Marc Young]
 Add-Ins can make the IDE more productive, and often
help in analyzing and improving the quality of code that
you write
Useful VS .NET Add-Ins
 Project Line Counter (WndTabs)
http://www.wndtabs.com/plc/
Useful little Add-In for counting SLOC (Source
Lines of Code)
Useful VS .NET Add-Ins
 QuickJump .NET
http://www.codeproject.com/dotnet/quickjump_net.asp
VS .NET already supports incremental search (Ctrl + I)
mode, class view and dropdown class and member lists
for easy navigation
QuickJump is an Add-In that simplifies source code
navigation in a different way
 Alt + G gives a window showing a list of members in the
current class which can be used for navigation
 Provides a search and filtering mechanism to simplify
navigation
More VS .NET Add-Ins
 Total .NET Analyzer (FMS)
http://www.fmsinc.com/dotnet/Analyzer
Code analyzer for .NET that warns regarding
deviations from best practices and likely errors
 CodeWright for VS .NET
http://www.codewright.com/cwnet/default.asp
Replaces VS .NET’s editor with CodeWright’s editor
and lets you use CodeWright’s keystrokes and color
syntax (amongst other features)
More VS .NET Add-Ins
 IBM Rational XDE Developer .NET
http://www.ibm.com/developerworks/rational/products/x
de/
Add-In that supports modeling through UML and also
supports reverse engineering and model-to-code
synchronization
 DevPartner Studio
Add-In that provides code coverage analysis along with
a rules-driven engine that can be used to locate
dangerous parts of code before they break down
Yet More VS .NET Add-Ins
 A definitive list of VS .NET Add-Ins and other
.NET utilities is available at
http://sharptoolbox.madgeek.com/
Add-In Hell
 Having too many Add-Ins installed can slow
down the IDE and affect system performance
 Too many Add-Ins can cause shortcut key
conflicts between individual Add-Ins
 It is a good practice to uninstall Add-Ins that
you no longer use
Thank You