提高效率 用好Visual Studio 2010自定義代碼段
原創(chuàng)【51CTO獨(dú)家特稿】我在演講時發(fā)現(xiàn)這個功能也相當(dāng)有用,不用現(xiàn)場敲代碼,直接調(diào)出非常方便。Visual Studio 2010增強(qiáng)了自定義代碼段功能,使創(chuàng)建自定義代碼段的操作更加簡單了。
有兩種類型的代碼段:
◆在游標(biāo)中插入的Expansion自定義代碼段
◆圍繞選定代碼的SurroundsWith自定義代碼段
創(chuàng)建自定義代碼段
首先在項(xiàng)目中插入一個新的XML文件,取名為TryCatchFinally.snippet,注意文件名的后綴是.snippet,然后在編輯器窗口點(diǎn)擊右鍵,選擇“插入代碼段”*“代碼段”,創(chuàng)建一個基本的XML代碼段模板,代碼如下:
- <CodeSnippet Format="1.0.0"
- xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet">
- <Header>
- <Title>title</Title>
- <Author>author</Author>
- <Shortcut>shortcut</Shortcut>
- <Description>description</Description>
- <SnippetTypes>
- <SnippetType>SurroundsWith</SnippetType>
- <SnippetType>Expansion</SnippetType>
- </SnippetTypes>
- </Header>
- <Snippet>
- <Declarations>
- <Literal>
- <ID>name</ID>
- <Default>value</Default>
- </Literal>
- </Declarations>
- <Code Language="XML">
- <![CDATA[<test>
- <name>$name$</name>
- $selected$ $end$</test>]]>
- </Code>
- </Snippet>
- </CodeSnippet>
正如你所看到的,默認(rèn)的模板包括兩個代碼段類型,因?yàn)槲疫@里是要創(chuàng)建一個Expansion代碼段,因此去掉<SnippetType>SurroundsWith</SnippetType>標(biāo)簽。
然后將title改為“Try Catch Finally”,Shortcut改為“trycf”,Description改為“Adds a try-catch-finally block”。
Literal標(biāo)簽定義了代碼段中可編輯的值,在try-catch-finally代碼段中,我們希望用戶可修改捕獲到的異常(Exception)類型,ID標(biāo)簽是可編輯值的名字,因此將其改為“ExceptionName”,Default標(biāo)簽指定了可編輯字段的默認(rèn)值,我想捕獲所有的異常,因此我將它的值改為“Exception”。
***,code小節(jié)部分包括代碼段插入時自動填充的代碼,將language改為“CSharp”,code部分的全部代碼如下:
- <Code Language="CSharp">
- <![CDATA[
- try
- {
- }
- catch($ExceptionName$)
- {
- }
- finally
- {
- }
- ]]>
- </Code>
TryCatchFinally.snippet文件的最終代碼如下:
- <?xml version="1.0" encoding="utf-8" ?>
- <CodeSnippet Format="1.0.0"
- xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet">
- <Header>
- <Title>Try Catch Finally</Title>
- <Author>umair</Author>
- <Shortcut>trycf</Shortcut>
- <Description>Adds a try-catch-finally block</Description>
- <SnippetTypes>
- <SnippetType>Expansion</SnippetType>
- </SnippetTypes>
- </Header>
- <Snippet>
- <Declarations>
- <Literal>
- <ID>ExceptionName</ID>
- <Default>Exception</Default>
- </Literal>
- </Declarations>
- <Code Language="CSharp">
- <![CDATA[
- try
- {
- }
- catch($ExceptionName$)
- {
- }
- finally
- {
- }
- ]]>
- </Code>
- </Snippet>
- </CodeSnippet>
在Visual Studio中載入自定義代碼段
在Visual Studio中有兩種方法載入上面的自定義代碼段:
最直接的方法是將.snippet文件放在Visual Studio的代碼段目錄下,默認(rèn)位置是C:\Users\<UserName>\Documents\Visual Studio 2010\Code Snippets\,這個目錄會根據(jù)所使用的語言生成對應(yīng)的子目錄,如我們這里使用的C#,因此應(yīng)該將自定義代碼段文件放在Visual C#子目錄下,Visual Studio會自動發(fā)現(xiàn)新放進(jìn)去的.snippet文件,無需重啟Visual Studio。
第二種方法是將.snippet文件導(dǎo)入到Visual Studio中,選擇“工具”*“代碼段管理器”(Ctrl+K,Ctrl+B),在代碼段管理器中,點(diǎn)擊“導(dǎo)入”按鈕,瀏覽到.snippet文件所在位置,選擇它,然后點(diǎn)擊“確定”。
使用自定義代碼段
在Visual Studio的編輯器中,輸入自定義代碼段名字的前幾個字符,按Tab鍵,在彈出的代碼提示窗口中便可看到前面自定義的代碼段名稱(快捷名稱和完全名稱Tip提示),如下圖所示:
圖 1 輸入try,在彈出的代碼提示窗口中可看到自己定義的代碼段名
你也可以在編輯器中按CTRL+K,再按CTRL+X調(diào)出“插入代碼段”菜單,如下圖所示:
圖 2 插入代碼段菜單
選擇菜單中的“My Code Snippets”,再選擇前面添加的TryCatchFinally自定義代碼段,如下圖所示:
圖 3 插入TryCatchFinally自定義代碼段
正如你所看到的,在Visual Studio 2010中,添加自定義代碼段,裝載自定義代碼段文件和使用自定義代碼都變得更加簡單了,這一提高生產(chǎn)力的功能你應(yīng)該多多使用。
原文名:Code Snippets in Visual Studio 2010
【編輯推薦】