Visual Studio 有哪些好用的插件?


如須進行與圖像相關的 C/C++ 開發,牆裂推薦 Image Watch extension ~

Image Watch 可以在 debug 時直接顯示圖像的像素數據,可以靈活設置圖像的顯示方式,譬如自動歸一化、用偽色顯示等等。

Image Watch 默認支持 OpenCV 以及 Windows SDK 中的部分圖像類型,如 cv::Mat, IplImage 等。甚至通過定製 .natvis 文件,我們可以任意拓展 Image Watch 的支持對象。

譬如在我自己的項目中,能夠用 Image Watch 來 Debug 自定義的圖像類型:

放大可以直接看像素值

用來 debug 矩陣類型也比 vs 自帶的 watch 方便不少

如何寫 .natvis 詳見 Image Watch Help
這裡有個坑:自定義的 .natvis 文件需要放到 C:Users{用戶名}DocumentsVisual Studio 2015Visualizers 下面才能被 Image Watch 識別,否則只會顯示 invalid ...

Happy Coding!


以前曾經用Visual Assist X + Productivity Power Tools,印象里VA對C++幫助比較大,C#就不是那麼好用了(很久沒用了,如果有誤請指出)。
現在組裡給買了Resharper的license,不得不說沒有Reshaper的VS現在已經用不習慣了。各種代碼風格相關的tips和強大的功能,只能說兩個字,必備。當然我平常用到的功能大概不到1/2,還是相對臃腫了一些。

上面兩個都有不少人推薦過了,就不多說了。下面是重頭戲。

強烈推薦一款叫做ClaudiaIDE(D前面的是i不是L!我就總把這個名字記錯)的插件,這麼好的東西竟然沒人推薦。這貨可以給你的VS編輯窗口換背景。之前的版本曾經有bug,但是現在看起來已經修正了。效果見下圖們。

默認圖:

MIKU:

IA:


我是做 C# 開發的,先上圖讓大家看看我的 VS 里的插件

上面是我常用的插件。
下面詳細介紹一下:
1、VS10X 系列的 VS10X CodeMap、VS10X Editer、VS10X Comment的三個插件是我必裝的;
1)VS10X CodeMap 在代碼編輯器提供了一個代碼導航,可以快速定位到類里的每個方法和屬性;

還可以把代碼塊標識成不同的顏色,以便區分(雖然我用的很少);

VS10X CodeMap 支持的語言是包括C#、C++、VB,下圖是VS10X CodeMap的設置界面;

其他功能請大家自行發掘吧,官網上有詳細的介紹。
這個插件已經可以被後來發現的 CodeMaid 取代了,不過我依然喜歡這個插件,因為它近乎完美的嵌入到編輯器中,感覺已經和編輯器成為一體了。
下載地址:VS10x CodeMap extension
2)VS10x Comments Extender

3)VS10x Editor View Enhancer


2、CodeMaid

3、Javascript Parser Extension for Visual Studio

VSEditorBackgroud
最後的一定是重量級的,哈哈,就是這個VSEditorBackgroud。

我的編輯器設置背景圖的插件。

這個也不是我的原創,以前在老外的網站上看到的源碼,後來自己在原來的基礎上增加了一些功能。


嚴重依賴Visual Assist,沒有它的代碼著色我已經看不懂C++了。。。


推薦一批絕大部分都是免費的能較好增強寫代碼舒適度的.
.NET Demon -- (非免費)安裝後可以連續編譯, 如果不買License的話過期後也還有代碼改動後自動保存的上好功能, 安裝它之後再也不用費心保存了.
AllMargins -- 在增強的滾動條, 可以以各種彩色呈現代碼的結構和錯誤之處, 直接點擊定位.
C# Outline -- 給C#所有{}代碼塊加摺疊功能.
Code Alignment --提供代碼對齊功能, 比如按 =, (, ) 等符號對齊, 也可以自定義對齊基準字元(串), 十分有用, 特別是有規律的代碼需要列選時先對齊再操作無比舒適.
CodeMaid -- 顯示代碼中的成員, 可以按多種條件排序.
CssCop - FxCop For StyleSheets -- Css檢測.
Duplicate Selection -- 增加快速複製所選詞/所在行, 默認快捷鍵 Alt + D.
Editor Guidelines -- 右鍵給代碼某字元處增加彩色參考線, 長代碼好用.
HideShow Comments -- 方便的顯示/隱藏注釋.
HighLight All Occurrences of Selected Word -- 雙擊選擇某個詞後自動高亮整個代碼里同樣的詞.
Indent Guides -- 給每個代碼塊增加垂直對齊虛線.
Inline Color Picker -- 多種語言代碼中的顏色代碼直接顯示對應的顏色, 直觀方便.
JavaScript Parser -- 增強的JavaScript Parser.
jQuery Code Snippets -- jQuery 的代碼段.
JsLint .NET for Visual Studio -- 檢測JavaScript.
LINQ Insight Express -- 允許設計時在Visual Studio中直接執行LINQ查詢, 而無需啟動調試會話.
Microsoft Code Digger -- 分析.NET代碼中可能的執行路徑.
MultiEditing -- 按Alt可以同時定義多個插入點同時在多個不同位置輸入相同的字元, 但會影響Alt的列選功能, 不是很需要時通常禁用.
OzCode -- Debug時數據分析和跟蹤的好擴展.
Productivity Power Tools -- 多種實用小功能集合.
Regex Tester -- 測試正則.
Regular Expression Tester Extension -- 測試正則.
TextHighLighterExtension -- 給代碼中所有的詞和變數提供增強的自動提示.
Viasfora -- 很實用的關鍵字高亮和彩虹括弧, 能讓代碼看起來非常舒心.
SwitchStartupProject -- 同一個SLN中多個項目里快速切換啟動項目.
VSColorOutput -- Build時輸出信息彩色化.
VSCommands For Visual Studio -- 多種功能增加, 以及在帶觸控屏里給VS提供直接觸摸拖動代碼功能.
Web Essentials -- 跟Web相關的很多功能.
Workflow Manager -- 運行和管理 Windows Workflow Foundation 工作流.
XAML Regions -- 給XML 和 XAML增加 Region 功能.


強烈推薦Visual Studio史上最強大的插件Resharper
Resharper在代碼整理,優化代碼結構,重構等方面都有很強大的功能,樓主可參見下面這篇文章(年代久遠,鏈接已失效 :( ):
http://www.cnblogs.com/renji/archive/2007/12/11/resharper.html

建議樓主不要在VS中使用仿Vim或者是Emacs的插件,這樣會打亂VS本來的快捷鍵布局,VS本身自帶的快捷鍵對於VS來說更加實用

----------- 2013/5/14 更新-----------------
如果你使用了Entity Framework的話,那Entity Framework Power Tools也很不錯。


用過的不多,說下我用過的幾個插件好了。
Visual Assistant X
以前的VS中很好用,現在有些功能新版的VS都內置了。作用也就不是很大了。不過出於習慣還是裝上。它在啟動時會額外掃描一次項目,如果你的解決方案很大的話掃描會有些悲劇。
Visual HG
好象是叫這個,也就是一個Mercurial的VS插件,提供一些集成化的功能。
Emacs Emulator
名字也記不住了。模擬Emacs的快捷鍵用的。這貨最悲劇的就是複製粘貼的時候不能跨窗口,跨文件。而且和Visual Assistant有衝突,你用了這個插件VAX的配色每次打開VS都會被重置。如果不是特別依賴Emacs的快捷鍵,最好不要用這個。
Atomineer Utils
注釋工具。可以生成Doxygen等格式的注釋。可以配置各種選項。然後用Doxygen等工具生成類圖或者文檔等。這貨最強悍的一點,是可以根據你函數和變數的名稱自動判斷這個函數或者變數的功能自動完成。
再有的也就是一些軟體提供的集成插件,比如VMware,.NET Memory Profiler之類的。
其他的沒怎麼用過,看看別人的建議吧。


c/c++程序員(學生黨),圖像方向,常用的插件有這四個:
VsVim - Visual Studio Marketplace 模擬vim,滑鼠可以扔了
Image Watch - Visual Studio Marketplace 直觀顯示Mat,程序調試神器
Productivity Power Tools - Visual Studio Marketplace 提高生產力必備
NuGet Gallery | Home 第三方庫管理包

其實無論什麼插件都可以通過【工具】——【擴展和更新】 來進行安裝或者禁用 卸載。
前三個自不多說,直接介紹Nuget【NuGet Gallery | Home】
1. 應用場景描述
使用Windows 開發如何使用第三方庫呢。僅僅是如何配置對於新手來說就是一項摸不清頭腦的事情,例如opencv的配置。那麼以後就以opencv說事了。第二,經常面臨的尷尬問題是使用了第三方庫的編譯的程序,部署在別的電腦上的注意事項,又或者導師想review代碼,又或者在debug模式下運行。我們是否應該考慮一下問題:需要運行程序的計算機是否安裝了opencv,如果安裝了安裝的版本和我使用的是否一致,安裝在什麼目錄下,我該如何找到它?如果沒有安裝,又該怎麼辦?如果你也遇到這樣的困惑,請先點贊再往下看 終極解決方案
2. NuGet 使用
第一次遇到它實在使用caffe-windows【BVLC/caffe】
2.1 安裝Nuget
2.2 新建工程開始使用Nuget

【右擊工程名】——【管理NuGet程序包】 即進入界面

在搜索欄中輸入第三方庫名稱例如【opencv3】——點擊【安裝】

如果在win10上安裝可能會有一下錯誤,這並不是nuget插件的問題。

原因是c盤下需要管理員才有許可權添加目錄或者文件。所以新建文件夾NugetPackages,並修改其許可權

重新安裝,即可成功

這個問題有更好的解決方法,即在solution(.sln 平行目錄)中添加文件nuget.config 內容為

&
&
&..NugetPackages&
&

開始編程

#include &
#include &
using namespace std;

int main(int argc, char* argv[]){
cv::Mat img = cv::Mat::eye(cv::Size(256, 256), CV_8UC1) * 255;
cv::imshow("eye", img);
cv::waitKey();
return 0;
}

圖像表示運行成功了。
2.3 到此並沒有結束,真正的重點來了
剛才運行模式為debug|win32
並且自動拷貝了opencv_XX300d.dll,到debug文件夾下。很貼心啊,
直接雙擊nugetPackageManger.exe 能夠正常運行。

換一個模式release|x64

還是能夠運行成功,並且神奇的是自動拷貝了opencv_XX300.dll

直接雙擊nugetPackageManger.exe 能夠正常運行。

3. NuGet 本地庫管理
【工具】——【選項】進入管理頁面,構建本地第三方庫吧。


Visual Assist這個是必須的,不過不是免費的。
VSColorOutput這個也很好用,默認的編譯結果輸出是黑白的,找error和warning把眼睛看的累,彩色輸出很實用。
Productivity Power Tools是微軟自己寫的,一大堆小功能合集,我比較喜歡的是Ctrl+F變成類似Sublime那樣的,一邊輸入一遍顯示搜索結果。再就是Ctrl+3可以實現輸入keyword查找菜單項,類似eclipse。
AnkhSVN,如果用SVN,這個太好用了,是免費的。
VS Lint,不是免費,拖速度嚴重,不過偶爾用用還是對代碼質量提高有好處。


大家漏掉了一個重量級插件,.Net reflector插件,這個插件非常強大,能直接在VS中查看.net framework類的源碼。非常有利於開發工作


GitHub插件。集成到Team Explorer窗口內,很好用。
GitHub Extension for Visual Studio


WinGDB:
下載地址:WinGDB - Debugging with GDB under Visual Studio
神器,可在VS里開發Linux平台C/C++程序,使用SSH遠程的可視化調試Linux上的程序。其實我主要用它來研究開源代碼,比如nginx。不過這個是要收費的,當然啦,我覺得還是值得的,如果我現在還是以C++開發為主的話,我會買一個License。

VsVim:
下載地址:VsVim extension
這是一個VIM插件,使得用戶可以在VS的編輯界面里使用vim的編輯模式,比如HJKL移動游標,w保存文檔等等。與其做無休止的IDE和編輯器之爭,不如結合各自優點,取其長處。

PTVS:
下載地址:Python Tools for Visual Studio
這個是微軟官方支持的Python插件,它還集成了對Django的支持,同時提供編輯和調試功能非常方便。慢慢從C++轉向python之後,幾乎就靠它吃飯了,-)

VS.php
下載地址:VS.Php | PHP IDE for Windows
這個是PHP的開發插件。呃,暫時不用你費勁的配置LAMP了,先玩兒起來吧……他們都說php是最好的語言^_^


Resharper,目前為止無出其右者
如果使用NUnit進行單元測試的話,可以使用http://Testdriven.NET,不過功能和Resharper上有重合。


說Resharper強大的我贊同,但是resharper有些Bug很煩人,首先經常快捷鍵會失效,經常插件異常,還有會拖慢VS。這些問題雖然看起來是小問題,但是非常影響使用。


PTVS - Python Tools for Visual Studio


必須是vim的插件,若有需要,請留言


如果你是web開發者的話,可以試試Web Essentials
功能見:最鋒利的Visual Studio Web開發工具擴展:Web Essentials詳解
下載:web essentials


VsVim 沒有這個插件寫代碼總感覺怪怪的


竟然沒人推薦nuget
是不是已經是必備的所以沒人推薦?


請使用vs2015,任何插件都是渣,除了對qt的語法支持不太好,其他都堪稱完美


推薦閱讀:

關於後端程序員寫前端用什麼框架更好?
你見過哪些奇趣的代碼注釋?
如何評價 @左耳朵耗子 關於建設團隊的一條微博?
會計轉行從事 IT,如何在一年時間內全職學習?
街機遊戲《懲罰者》中無敵秘技的原理是什麼?

TAG:微軟(Microsoft) | 編程 | ASP.NET | C# | Microsoft Visual Studio |