What language is Visual Studio 2010/2012 written in? - visual-studio-2010

Visual Studio has historically been C++, but is there any C# or VB.NET code in versions 2010 and 2012?
Does it require the CLR to function?
Thanks

C++ and C#
Look at the sidebar in this link

Looks like Output window is written in C/C++.
When I tried:
string str="The quick brown fox \0 jumps over the lazy dog.";
System.Diagnostics.Debug.WriteLine(str);
The output window for "Debug" shows: "The quick brown fox".

The Programming Languages Beacon website contains a nice table of a whole bunch of different products and the languages they are written in. According to this site, Visual Studio is, indeed, written in C# and C++.

Related

Visual Studio 2013 C++ - guidelines

Few years back I've used Dev C++, just recently while working on some projects I remembered one its feature I miss a lot.
My English is not so great, so probably the word I've used isn't exactly right, but here is the picture.
See that lines by if/for/while/..., that identify exactly where it begins and where it ends.
Is it possible to add something like this is Visual Studio 2013?
Yes, via extensions. There's several: Indent Guides and Productivity Power Tools for example. The latter provides a lot of [useful?] modifications.
Visual Studio allows you to
automatically format the code with indentation adjustment (Edit > Avanced > Format Selection)
collapse/expand blocks (Edit > Outlining > ...)

What do mouse navigation buttons do in Visual Studio 2010?

I know this is an extremely lame question, but I can't seem to find an answer, anywhere. When I click the navigation thumb buttons on my mouse, the cursor jumps between lines and files in Visual Studio 2010. I assume this is navigating the code, in some logical pattern. However, it doesn't appear to be following references, and I don't see what that pattern may be. If VS2010 is following references, then it's doing a horrible job.
UPDATE: The mouse cursor is indeed navigating through C# files.
Thanks!
This article says
Visual Studio 2010 lacks support to navigate in the source code using
the mouse thumb buttons in the languages C++, Visual Basic and F#.

VS IDE Add-ons for Control Guidelines

Is there a Visual Studio extension (similar to CnPack in Delphi) that adds guide lines to boundaries of flow of controls like the begin..end of if, while and for statements?
You can try CodeRush It includes Structural Highlighting
(source: devexpress.com)

Visual Studio 2010 - recommended extensions [closed]

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 11 years ago.
This question's answers are a community effort. Edit existing answers to improve this post. It is not currently accepting new answers or interactions.
What are your recommended extensions for Visual Studio 2010?
(Please indicate if its free or not And also its purpose / function too)
Free:
VsCommandBudy - Extend VS with external commands where really need them (Free)
PowerCommands - useful extensions for the Visual Studio 2010 adding additional functionality to various areas of the IDE.
DevExpress CodeRush Xpress - Coding assistance, Intellisense navigation,etc.
AnkhSVN - Subversion Support for Visual Studio.
Ghost Doc - Simplify your XML Comments.
Visual Studio Color Theme Editor - make your VS2010 look pretty with themes.
VsVim - VIM emulation layer for Visual Studio.
DPack - FREE collection of Microsoft Visual Studio tools.
VSFileNav - fast searcher with wildcards + camel case searches.
Sonic file finder - fast and convenient search.
AllMargins
tangible T4 Editor plus modeling tools for VS2010 adds IntelliSense and Syntax Coloring to T4 Text Templates
Word Wrap with Auto-Indent
Indentation Matcher Extension
Structure Adornment
BlockTagger
BlockTaggerImpl
SettingsStore
SettingsStoreImpl
Source Outliner - not available on this link.
Triple Click - Makes triple click select an entire line.
ItalicComments
Go To Definition - Make ctrl+click perform a "Go To Definition" on the identifier under the cursor
Spell Checker - not available on this link.
Remove and Sort Using - Adds a context menu entry to Solution Explorer that sorts and removes using statements on every file in the solution, project, or on the individual file.
Format Document - Adds a context menu entry to Solution Explorer and the code window that executes the Edit-Advance-Format Document command on every file in the solution, project, or current code window.
Open Folder in Windows Explorer - Extends the Open Folder in Windows Explorer context menu option to the code editor and to all files in solution explorer.
Find Results Highlighter - Highlights the search text in the find results windows.
Regular Expressions Margin - A margin which exposes .Net Regular Expressions search and replace capabilities on a given code window.
VSCommands - not available on this link.
HelpViewerKeywordIndex - Visual Studio Extension for the Microsoft Help Viewer
StyleCop - StyleCop analyzes C# source code to enforce a set of best practice style and consistency rules.
Extension Analyzer - Extension Analyzer helps debug issues with VSIX Components, Visual Studio Packages, PkgDef Files and MEF Components.
CodeCompare - Code Compare is an advanced file and folder comparison tool. This programming languages oriented diff tool can be used as a Visual Studio add-in and as a standalone application.
Team Founder Server Power Tools - not available on this link
VS10x Selection Popup - not available on this link
Color Picker Completion - not available on this link
Numbered Bookmarks - Numbered Bookmarks allows users to create and recall bookmarks by using numbers. User can create 10 bookmarks (starting from 0 to 9).
Mouse Zoom - Mouse zoom at the mouse's cursor instead of at the top of the visible document. See VS options...
Visual Studio 2010 Pro Power Tools - A set of extensions to Visual Studio Professional (and above) which improves developer productivity.
JSEnhancements - provides outlining and matching braces highlighting features for Visual Studio JavaScript editor; provides fantastic #region collapsing in JS and CSS files, making long files much easier to handle;
Code Contracts Editor Extensions - Displays Code Contracts (when editing C#) in code, Intellisense, and in metadata files.
WoVS Quick Add Reference - Add missing assembly references right from the code editor
JScript Editor Extensions -
Align By
T4 Editor
Quick Open File for Visual Studio 2010 - quick opening any solution file
CleanProject - Cleans Visual Studio Solutions
PhatStudio - fast file navigation and quickly opening files
VsVim - Vim style keyboard shorcuts
Chutzpah - Open source JavaScript test runner
I Hate #Regions - makes expanded regions less disturbing by making the font smaller
Not Free:
Resharper
Visual Assist X
JustCode
ViEmu
CodeRush with Refactor! Pro
VisualSVN
VS10x Code Map - displays a graphical nested representation of the current editor window code
VS10x Editor View Enhancer
NuGet
NuGet (formerly NuPack) is a free, open source developer focused package management system for the .NET platform intent on simplifying the process of incorporating third party libraries into a .NET application during development.
PowerCommands (free)
AnkhSVN (free)
Even if you use other SVN shells outside VS (like TortoiseSVN), I recommend to install this Source Control Provider to automatically keep track of file renames, deletions and the like.
Visual Assist X(not free)
Ghost Doc (Free)
It takes a while to configure it properly, but it can be quite useful.
From my blog post (all free):
Word Wrap with Auto-Indent
Indentation Matcher Extension
Structure Adornment
This also installs the following extensions:
BlockTagger
BlockTaggerImpl
SettingsStore
SettingsStoreImpl
Source Outliner
Triple Click
ItalicComments
Go To Definition
Spell Checker
Remove and Sort Using
Format Document
Open Folder in Windows Explorer
Find Results Highlighter
Regular Expressions Margin
VSCommands
HelpViewerKeywordIndex
StyleCop
Visual Studio Color Theme Editor
PowerCommands for Visual Studio 2010
Extension Analyzer
CodeCompare
Team Founder Server Power Tools
VS10x Selection Popup
Color Picker Completion
Numbered Bookmarks
DevExpress CodeRush/Refactor! Pro (not free, $249.99)
It's way better than Resharper (which by the way always slowed down my VS to a crawl), it works with C# and VB.NET (including refactoring) and the support and community is excellent. Worth the price tag. And yes, it does support 2010 (in RC at the time of this writing).
Visual Studio Color Theme Editor (free)
I can't code unless my VS2010 has a StackOverflow-like theme.
VisualSVN (not-free)
I personally prefer this over AnkhSVN since its not an SCC provider and doesn't add extra files to my repository.
VisualHG is a Mercurial Source control plugin that drives TortoiseHG from VS. I'm a big fan of Mercurial & DVCS. VisualHG makes it nice n integrated. Git fans - I'm not asking for a flame war. Hg is just my brand.
VSCommands is simply one of the best FREE plugins ot there!
(visual studio gallery link)
DevExpress CodeRush Xpress (free)
tangible T4 Editor plus modeling tools for VS2010 adds IntelliSense and Syntax Coloring to T4 Text Templates (Free)
If you are a Vim aficionado...
VsVim - free
ViEmu - not free (also not yet released)
CodeMaid seems to be pretty useful - it AutoFormats on save which saves a lot of time between developers and code-diffs. (Are there other tools that can use the VS AutoFormat document?)
VS10x Code Map
That is very cool. Easy jumping to property, method. And easy expand collapse region and more.
ReSharper (not-free)
World of VS Default Browser Switcher for easily switching browser in web projects.
Code Contracts Editor Extensions, a free extension which provides information about inherited contracts for the method you're currently working on, and a list of contracts for any methods that you're calling. Unfortunately, the latter feature conflicts with Resharper, but the former still works fine.
RockScroll (free) - Double-click on a word/symbol highlights all occurrences of that word/symbol. Also replaces the scroll bar with a preview of your code, with edit spots and "all occurences" lines highlighted.
Example of use: want to see whether a variable is used anywhere else in current source file? Double-click variable, look at scroll bar for any red highlights.
AtomineerUtils Pro (not free, $9.99 USD) is, in my opinion, better than Ghost Doc. But, just like Ghost Doc or any automatic documentation generator, the generated documentation is meant to be edited to be of any real value.
devColor (Free)
Small tool which underlines hex colors in stylesheets with the correct color. I really like how it integrates into the editor.
CleanProject - Cleans Visual Studio Solutions
How many times have you wanted to send a project to a friend or upload
it to a web site like MSDN Code Gallery only to find that your zip
file has lots of stuff that you don't need to send in it making the
file larger than it needs to be.
bin folder obj folder TestResults folder Resharper folders And then if
you forget about removing Source Control bindings whoever gets your
project will be prompted about that. As someone who does this process
a great deal I decided to share with you my code for cleaning a
project.
I can't live without DPack - especially when working on large projects, makes navigating between files and members much easier. And it's free.
Favorite shortucts:
Alt+U : file browser, filters files as you type
Alt+G : code browser, filters all members as you type
Alt+M : code browser, filters methods in the current file as you type
...and so on. Much easier for me then finding my way around Project Explorer.
Vingy (Free)
Vingy 1.0 is simple, but effective add in for Visual Studio 2010 so that you can search the web in a non intrusive way, and can filter results based on sources.
Vingy http://lh4.ggpht.com/__Mw4iY-4nuY/TKic0LcfKgI/AAAAAAAAA7s/OR82RFQFSU8/s1600-h/image%5B14%5D.png
You can bring up Vingy either by clicking View->Other Windows –> Vingy Search Window from the Visual Studio IDE, or just by high lighting some text in the document and then clicking Tools –> Search Selected Text (Ctrl + 1).
Searching with Vingy is pretty straight forward. You can initiate a Search in two ways.
By typing the text in the Vingy search box and pressing ‘Enter’ or by clicking the ‘Go’ button
By highlighting some text in the editor when you type in Visual Studio, and then pressing Ctrl + 1
This is my list of extensions.
The list on this is pretty comprehensive, so I spent sometime to find the extensions that I need. Here is the snapshot. Hope it will help someone.
I tried installing Codemaid, and it appeared to be a nifty addon, but my Visual Studio response became very slow. Felt like some threads were doing some work all the time when Codemaid was on.
So uninstalling for now.
VSFileNav - (Free) A Find File in Solution tool (cross between SonicFileFinder and Resharper). Lightweight, easy to use and fast (I got sick of the huge startup time with Sonic).
Disclaimer : I wrote this tool.
Plugin to quickly go to any file in solution
Sonic file finder (free)
Fast switching between .h and .cpp file
Macro available here (free)
And that's it =)
WoVS Quick Add Reference
The “Quick Add Reference” extension augments the smart tag that VS shows for unrecognized types giving you a chance to add the corresponding assembly reference for that type plus corresponding “using” clause if needed in a single shot.

In Visual Studio 2008, how can I make control+click do a "Go To Definition"?

In the Delphi IDE, you can hold control and click on a method to jump to its definition. In VS2008, you have to right-click and select "Go To Definition".
I use this function quite often, so I'd really like to get VS to behave like Delphi in this regard - its so much quicker to ctrl+click.
I don't think there's a way to get this working in base VS2008 - am I wrong? Or maybe there's a plugin I could use?
Edit: Click then F12 does work - but isn't really a good solution for me.. It's still way slower than ctrl+click.
I might try AutoHotkey, since I'm already running it for something else.
Edit: AutoHotkey worked for me. Here's my script:
SetTitleMatchMode RegEx
#IfWinActive, .* - Microsoft Visual Studio
^LButton::Send {click}{f12}
Not for Visual Studio 2008, but if you upgrade to Visual Studio 2010, you can use the free
Visual Studio 2010 Pro Power Tools from Microsoft to achieve this.
You could create an Autohotkey script that does that. When you ctrl-click a word, send a doubleclick then a F12.
I don't have AHK handy so I can't try and sketch some code but it should be pretty easy; the AHK recorder should have enough features to let you create it in a point 'n' click fashion and IIRC it is smart enough to let you limit this behaviour to windows of a certain class only.
When you have your script ready just run the script in the background while you code. It takes just an icon in the Notify bar.
Visual Studio 2008 defaults this to F12, but you can set it in Tools | Options | Environment | Keyboard, and change Edit.GoToDefinition - however, I'm not sure how you can get it to CTRL+mouseclick.
Resharper does that but it's not free.
Highly recommended plugin though, most experienced .NET developers use it.
Just a quick note that the following AutoHotkey script works for me in Visual C++ 2010 Express.
SetTitleMatchMode 2
#IfWinActive, Microsoft Visual C++ 2010 Express
^LButton::Send {click}{f12}
I also changed the shortcuts for View.NavigateForward and View.NavigateBackward to Alt+Right/Left Arrow since I am used to Eclipse.
Yes, both Resharper (a must have!) and Productivity Power Tools have this feature.
Interesting quirk, though.
If you just go with the defaults on both tools (if you install both tools) you can experience a frequent double-jump problem (jump to definition from where you first click and then jump again from what your cursor is above upon getting to that first definition) until you turn off one of the Ctrl-Click features of these add-ons.
Put the mouse cursor on the method name or any identifier, and press F12

Resources