title: Visual Studio中使用Macros插件给代码添加注释、时间和以及自动脚本

date: 2020-09-11

sidebarDepth: 2

tags:

  • 代码
  • Visual studio
  • 时间
  • 注释
  • Macros

    categories:
  • 开发
  • 微软技术
  • windows

Macros for Visual Studio插件是一款非常易用的自动脚本插件,支持visual studio各个版本,用来创建todo、时间备注以及文件头尾注释。

Macros for Visual Studio插件是一款非常易用的自动脚本插件,支持visual studio各个版本,用来创建todo、时间备注以及文件头尾注释。

简介

什么是创建信息注释?

创建信息注释,类似于文件的创建信息,一般来说,至少要有创建人和创建时间。如果说有人修改了方法也应该添加一个更新信息注释。

为什么要添加创建信息注释?

可能在一个人编码的时候,创建信息注释并不太重要,但是如果许多人共同维护一个项目,并且经常会出现多个人修改同一个文件的代码 时,这就显得很重要了,哪里的代码出现了什么问题,可以直接责任到人,谁改的代码出现了问题就应该谁去修改代码。

虽然使用svn、git管理工具,可以有提交日志,可以方便的管理,但如果在代码中进行注释,则会更好的提升效率。

如果是在vs code中,则可以使用Insert Date String等插件,部署后使用ctrl+Shift+I就能插入当前时间,显然这对于visual stuido大型编程来说还不足。

创建信息注释

  • 1.最初的想法是重写 VS 内置的文档注释,然而并没有找到这样的解决方案。找到的基本都是修改新建类或接口时模板文件从而添加注释,并没有在方法上加注释 的解决方案。

这个方案否定之后,尝试着使用自定义代码段来实现在生成注释的基础上再添加创建信息注释。

  • 2.自定义代码段

自定义代码段参考示例:

<?xml version="1.0" encoding="utf-8"?>
<CodeSnippets xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet">
<CodeSnippet Format="1.0.0">
<Header>
<Title>cm</Title>
<Shortcut>cm</Shortcut>
<Description>新建代码注释 的代码片段</Description>
<Author>liweihan</Author>
<SnippetTypes>
<SnippetType>Expansion</SnippetType>
</SnippetTypes>
</Header>
<Snippet>
<Declarations>
<Literal>
<ID>Description</ID>
<ToolTip>方法描述</ToolTip>
<Default>方法描述</Default>
</Literal>
<Literal>
<ID>Author</ID>
<ToolTip>作者</ToolTip>
<Default>liweihan</Default>
</Literal>
<Literal>
<ID>CreateDate</ID>
<ToolTip>日期</ToolTip>
<Default>@@Today</Default>
</Literal>
</Declarations>
<Code Language="csharp">
<![CDATA[/// <summary>
/// $Description$
/// @Author:$Author$
/// @CreateDate:$CreateDate$$end$
/// </summary>]]>
</Code>
</Snippet>
</CodeSnippet>
</CodeSnippets>

这样的代码段还有许多不足,现在作者是写死的,创建时间需要再插入代码段之后再进行手动修改, 我希望能够自动生成作者和当前日期, 作者写死的问题不大,因为这个代码段只我一个人使用,直接写死反而更方便,这里使用一个变量方便进行修改, 关键是当前日期没有办法获取到,查阅了很多资料,代码段并不支持直接插入当前日期,stackoverflow 上有人讨论过这个问题,解决方案是利用宏自动生成当前日期,但是文中提到的解决方案不可用,不过倒给了我解决问题的思路——利用宏去插入当前日期。

  • 3.宏插入当前日期 我在 VS 的 扩展与更新 中下载了一个 管理宏的插件—— Macros for Visual studio

你也可以直接在visualstudio的market市场下载,地址:

https://marketplace.visualstudio.com/items?itemName=VisualStudioPlatformTeam.MacrosforVisualStudio

这有一个官方示例动图:

这是在visual studio中下部署环境:

下载安装之后需要重启 VS ,重启之后在 菜单栏中的工具下就可以看到:

这个宏管理器自带了一些 Samples ,其中有一个可以插入日期的宏

选择 Assign Shortcut 进行设置快捷键就可以在 VS 中使用啦,默认的格式是 “mm/dd/yyyy”

如果你像我一样不喜欢默认的日期格式,可以在对应项上右键选择“打开”,进行编辑,里面是 js 代码,有一些 js 基础的话修改起来会 更方便,我修改了下代码,将日期格式修改为了“yyyy-MM-dd”格式。

  • 4.完整操作流程

首先,在方法体上输入“///”,VS 会自动生成默认的文档注释,先写好注释

复制<summary>部分的注释,选中 <summary> 部分,参数及返回信息保留,输入定义好的代码段快捷键,双击 Tab 键插入代码段

将复制的注释粘贴到 方法描述 处,添加注释

按 Tab 键切换到 当前日期,在 @@Today 处,按设置的插入当前日期的宏快捷键,VS 会自动插入当前日期

更新信息注释

更新信息代码段示例:

<?xml version="1.0" encoding="utf-8"?>
<CodeSnippets xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet">
<CodeSnippet Format="1.0.0">
<Header>
<Title>up</Title>
<Shortcut>up</Shortcut>
<Description>更新代码注释 的代码片段</Description>
<Author>liweihan</Author>
<SnippetTypes>
<SnippetType>Expansion</SnippetType>
</SnippetTypes>
</Header>
<Snippet>
<Declarations>
<Literal>
<ID>Description</ID>
<ToolTip>更新描述</ToolTip>
<Default>更新描述</Default>
</Literal>
<Literal>
<ID>UpdatedBy</ID>
<ToolTip>更新人</ToolTip>
<Default>liweihan</Default>
</Literal>
<Literal>
<ID>UpdatedDate</ID>
<ToolTip>日期</ToolTip>
<Default>@@Today</Default>
</Literal>
</Declarations>
<Code Language="csharp">
<![CDATA[/// $Description$ @UpdatedBy:$UpdatedBy$ @UpdatedDate:$UpdatedDate$$end$ ]]>
</Code>
</Snippet>
</CodeSnippet>
</CodeSnippets>

将自定义代码段添加到 VS

在 VS 中打开代码段管理器

选择语言为 “CSharp”,选中“My Code Snippets”,选择“Visual C#”也可以,这里为了区分自己的代码段和系统代码段我选择了"My Code Snippets",复制位置中的路径,并在资源管理器中打开路径

将自定义的代码段(*.snippet)拷贝到上一步打开的目录中,重启VS就可以了

Visual Studio中使用Macros插件给代码添加注释、时间和以及自动脚本的更多相关文章

  1. visual studio 中使用的插件介绍

    Highlight all occurrences of selected word 高亮代码 Indent Guides 代码的开头结尾连接竖线..是代码更清洗 PHP Tools for visu ...

  2. 教程:在 Visual Studio 中开始使用 Flask Web 框架

    教程:在 Visual Studio 中开始使用 Flask Web 框架 Flask 是一种轻量级 Web 应用程序 Python 框架,为 URL 路由和页面呈现提供基础知识. Flask 被称为 ...

  3. 教程:Visual Studio 中的 Django Web 框架入门

    教程:Visual Studio 中的 Django Web 框架入门 Django 是高级 Python 框架,用于快速.安全及可扩展的 Web 开发. 本教程将在 Visual Studio 提供 ...

  4. 在Visual Studio 中使用git——给Visual Studio安装 git插件(二)

    在Visual Studio 中使用git--什么是Git(一) 第二部分: 给Visual Studio安装 git插件 如果要使用 git 进行版本管理,其实使用 git 命令行工具就完全足够了, ...

  5. 如何在 Visual Studio 中使用 Git 同步代码到 CodePlex

    开源社区不管在国内还是国外都很火热,微软也曾因为没有开源而倍受指责,但是随着 .Net framework.ASP.Net MVC等框架的逐渐开源,也让大家看到了微软开源的步伐.CodePlex 则是 ...

  6. [转]如何在 Visual Studio 中使用 Git 同步代码到 CodePlex

    本文转自:http://www.cnblogs.com/stg609/p/3673782.html 开源社区不管在国内还是国外都很火热,微软也曾因为没有开源而倍受指责,但是随着 .Net framew ...

  7. 推荐一个可以直接在Visual Studio中看到complexity的插件CodeMaid

    博客搬到了fresky.github.io - Dawei XU,请各位看官挪步.最新的一篇是:推荐一个可以直接在Visual Studio中看到complexity的插件CodeMaid.

  8. 【转】在Visual Studio中怎样快速添加代码段

    原文网址:http://blog.csdn.net/yl2isoft/article/details/9735527 以前一直只知道,键入prop,再按两次tab键,会生成自动属性代码. 今天闲着无事 ...

  9. Visual Studio中自定义代码段!

    Visual Studio中自定义代码段! 第一步:在编辑器中进行快捷键的输入[ctrl + shift + p] 或者 点击 查看 第一个选项就是!请看下图 第二步:选择你要配置代码段的语言, 这里 ...

随机推荐

  1. selenium--常用判断

    获取页面 title 的方法可以直接用 driver.title 获取到,然后也可以把获取到的结果用做断言.1.首先导入 expected_conditions 模块:from selenium.we ...

  2. Windows环境下搭建Hadoop(2.6.0)+Hive(2.2.0)环境并连接Kettle(6.0)

    前提:配置JDK1.8环境,并配置相应的环境变量,JAVA_HOME 一.Hadoop的安装 1.1 下载Hadoop (2.6.0) http://hadoop.apache.org/release ...

  3. Vue3 如何修改端口

    build哪里去了?config哪里去了?配置都消失了? 对比之前Vue2 发现项目目录改动较大 找了很久才找到配置文件:node_modules\@vue\cli-service\lib\comma ...

  4. Python 文件路径设置

    菜鸟教程:https://www.runoob.com/python/os-chdir.html Python官方文件教程:https://docs.python.org/3.9/library/os ...

  5. WPF实现截图(仿微信截图)

    WPF开发者QQ群: 340500857  | 微信群 -> 进入公众号主页 加入组织 每日一笑 肚子疼,去厕所排便,结果什么都没拉出来.看着自己坐在马桶上痛苦又努力却一无所获的样子,仿佛看到了 ...

  6. Mac里存储空间不足,该怎么删垃圾数据?

    说明:在mac设备运行一段时间后,电脑空间很小了,对于开发者来说,清清Xcode缓存,腾出几十G的空间还是有可能的.在升级Xcode适配新系统.新手机也是得给电脑减减压. 一.Xcode缓存文件(co ...

  7. 14-Java锁的概述

    14-锁的概述 乐观锁与悲观锁 ​ 乐观锁与悲观锁是数据库中引入的名词,但是在并发包里也引入了类似的思想,在这里我们还是有必要需要了解一下. ​ 悲观锁指数据被外界修改持保守态度,认为数据会很容易被其 ...

  8. Linux查找运行程序主目录

    1.查看程序所在PID netstat -lntup 2.根据PID查找程序所在目录 ll /proc/PID/exe 3.查找程序配置路径 /proc/PID/exe -t

  9. app定位工具介绍

     一.元素获取工具WEditor使用   1.安装WEditor:pip3 install weditor   2.启动WEditor:python3 -m weditor    Android : ...

  10. 解决更新页面版本后用户需CTRL+F5强刷才能应用最新页面

    设置文件永远不从缓存读取 第一步:在html文件设置文件不缓存 <!DOCTYPE html> <html lang="en" class="theme ...