generate Code Snippet @ vs2005

说实话看到xml就有些晕,不过相对于不断的重复
static readonly ILog logger = LogManager.GetLogger(typeof(DataSourceConcurrencyTest));
总是相对好些。
 
vs2005采用了snippet生成策略,使用xml来制定规则
直接看一下for和prop你就很容易写出上面的logger生成snippet,如下

<?xml version="1.0" encoding="utf-8" ?>
<CodeSnippets  xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet">
      
<CodeSnippet Format="1.0.0">
             
<Header>
                    
<Title>logger</Title>
                    
<Shortcut>logger</Shortcut>
                    
<Description>Code snippet for 'log4net' declaration</Description>
                    
<Author>Survivalsoft Corporation</Author>
                    
<SnippetTypes>
                           
<SnippetType>Expansion</SnippetType>
                           
<SnippetType>SurroundsWith</SnippetType>
                    
</SnippetTypes>
             
</Header>
             
<Snippet>
                    
<Declarations>
                           
<Literal>
                                  
<ID>ClassName</ID>
                                  
<Default>ClassName</Default>
                                  
<ToolTip>ClassName</ToolTip>
                           
</Literal>
                    
</Declarations>
                    
<Code Language="csharp"><![CDATA[static readonly ILog logger = LogManager.GetLogger(typeof($ClassName$));]]>
                    
</Code>
             
</Snippet>
      
</CodeSnippet>
</CodeSnippets>


重点就落在最后的<Decarations>和<Code>上,没什么难度,只是xml让我心里堵得慌。
不妨打开VIM,然后在cmd中输入,

:map <F5> 0idef <Esc>oend<Esc>O<Space><Space>

很轻很自由,我想这才是我想要的,呵呵


posted @ 2006-07-25 11:23 nonocast 阅读(221) 评论(2) 编辑 收藏