使用 Visual Studio 2019 批量添加代码文件头
应用场景介绍
在我们使用一些开源项目时,基本上都会在每个源代码文件的头部看到一段版权声明。一个项目或解决方案中源代码文件的个数少则几十,多则几千甚至更多,那么怎么才能给这么多文件方便地批量添加或者修改一致的文件头呢?在 2020 年 8 月 11 日 更新的 Visual Studio 2019 v16.7.1 版中,就加入了使用 EditorConfig 向现有文件、项目和解决方案添加文件头 这一功能。提到 EditorConfig, 那么:
什么是 EditorConfig?
EditorConfig 是帮助跨多个编辑器和 IDE 的从事同一项目的多个开发人员保持一致性编码风格的一个文本文件。EditorConfig 文件可以设置诸如缩进样式、选项卡宽度、行尾字符以及编码等,而无需考虑使用的编辑器或 IDE。向项目添加 EditorConfig 文件,可以强制对使用该项目的所有人员实施一致的编码风格。 EditorConfig 设置优先于全局 Visual Studio 文本编辑器设置。
由于这些设置包含在基本代码的文件中,因此能与基本代码一起移动。 只要在 EditorConfig 兼容的编辑器中打开代码文件,就能实现文本编辑器设置。 有关 EditorConfig 文件的详细信息,请参阅 EditorConfig.org 网站。
使用 Visual Studio 2019 添加文件头
首先,在 Visual Studio 中打开项目或解决方案,点击“帮助” > “关于”,查看您的 Visual Studio 2019 版本是否是 16.7.1 或更高版本,如果不是请先升级。
向项目或解决方案添加 EditorConfig。
根据要应用
.editorconfig设置的对象(是解决方案中的所有项目还是其中一个项目),选择项目或解决方案节点。 还可在项目或解决方案中选择一个文件夹,向其添加.editorconfig文件。从菜单栏中,选择“项目” > “添加新项”,或按 Ctrl+Shift+A :

或者在“解决方案资源管理器”中右键单击项目、解决方案或文件夹,选择“添加” > “新建 EditorConfig”:

添加完成后可以看到
.editorconfig文件的内容大致如下:
在
.editorconfig文件中添加file_header_template项file_header_template = 添加文件头(add file header)示例程序\n Copyright (c) https://ittranslator.cn/
.editorconfig中换行需要使用 Unix 换行符(\n)来插入新行。如图:

将光标置于任意 C# 或 Visual Basic 文件的第一行,按
Ctrl+.触发“快速操作和重构”菜单,选择“添加文件头”,如图:
在“修复以下对象中的所有实例:”处可以选择 “文档”、“项目”或“解决方案”,下图是选择了“项目”后的预览效果:

点击“应用”按钮,以应用更改。
此时可以看到项目中的所有代码文件都添加了
.editorconfig中设置的file_header_template项的字符串作为文件头:
修改文件头
修改文件头和添加文件头的步骤是一样的。
在
.editorconfig文件中修改file_header_template项的值添加“技术译站”几个文字试试:
file_header_template = 添加文件头(add file header)示例程序\n Copyright (c) 技术译站 https://ittranslator.cn/
重复上面“添加文件头”的第 3 步,预览如下图:

重复上面“添加文件头”的第 4 步,点击“应用”按钮,结果如下图:

参考文献
- https://docs.microsoft.com/zh-cn/visualstudio/ide/create-portable-custom-editor-options?view=vs-2019
- https://docs.microsoft.com/zh-cn/visualstudio/ide/reference/add-file-header?view=vs-2019
作者 : 技术译民
出品 : 技术译站
使用 Visual Studio 2019 批量添加代码文件头的更多相关文章
- Visual Studio Code-批量添加或删除注释行
小技巧一例,批量删除Visual Studio code或notepad++注解信息,便于读取有效代码或文本信息,具体操作如下: Visual Studio Code批量删除注解行信息: 在VS Co ...
- visual studio 2019工具里添加开发中命令提示符的方法
最新新装了visual studio 2019,发现默认的没有开发者命令提示符 现将添加步骤描述如下: 从VS2019菜单选择"Tools",然后选择"外部工具" ...
- Visual Studio 2019 正式发布,重磅更新,支持live share
如约而至,微软已于今天推出 Visual Studio 2019 正式版,一同发布的还有 Visual Studio 2019 for Mac. Visual Studio 2019 下载地址:htt ...
- “宇宙最强” IDE,Visual Studio 2019 正式发布
转载请注明出处:葡萄城官网,葡萄城为开发者提供专业的开发工具.解决方案和服务,赋能开发者. 本文由葡萄城翻译并发布 今天凌晨Visual Studio 2019已经正式发布,现在已经可以下载了.使用V ...
- Visual Studio 2019 RC入门
介绍 在本文中,让我们看看如何开始使用Visual Studio 2019 RC.Microsoft现已发布Visual Studio Release Candidate,现在可以下载了.最初,Mic ...
- ComponentOne 2019V1:全面支持 Visual Studio 2019
ComponentOne Enterprise 2019V1已经正式发布,本次更新的最大亮点就是 ComponentOne 控件全面支持 Visual Studio 2019. 作为一款专注于企业应用 ...
- [翻译] Visual Studio 2019: 极速编码. 智能工作. 创造未来.
原文: Visual Studio 2019: Code faster. Work smarter. Create the future. Visual Studio 2019 的正式版现在可以下载了 ...
- [翻译] Visual Studio 2019 RC版发布
[翻译] Visual Studio 2019 RC版发布 原文: Visual Studio 2019 Release Candidate (RC) now available 今天,我们将分享 V ...
- 【转载】“宇宙最强” IDE,Visual Studio 2019 正式发布
转载请注明出处:葡萄城官网,葡萄城为开发者提供专业的开发工具.解决方案和服务,赋能开发者. 本文由葡萄城翻译并发布 今天凌晨Visual Studio 2019已经正式发布,现在已经可以下载了.使用V ...
随机推荐
- 2019 7 8 HL 模拟赛
今天 很不爽 昨天晚上没有睡好觉 大约2点才睡着吧 反正翻来覆去睡不着 不知道为什么可能可行流 或者可行费用流并没有深刻理解 .我不会写 让我心情非常的焦躁. 大凶 顺理成章的被3位强者吊着锤(妈呀我 ...
- ASP.NET MVC+LayUI视频上传
前言: 前段时间在使用APS.NET MVC+LayUI做视频上传功能的时,发现当上传一些内存比较大的视频就会提示上传失败,后来通过查阅相关资料发现.NET MVC框架为考虑安全问题,在运行时对请求的 ...
- win系统下git代码批量克隆,批量更新
@REM 根据实际情况设置GIT路径及本地仓库地址 set path=%path%;"D:\Program Files\Git\cmd" set project_path=F:\g ...
- LeetCode 164. Maximum Gap[翻译]
164. Maximum Gap 164. 最大间隔 Given an unsorted array, find the maximum difference between the successi ...
- .Net Core下基于Emit的打造AOP
之前的基于DispatchProxy的AOP组件,实现了属性注入,但是这个依旧有很多限制 比如不支持构造器注入,继承DispatchProxy的子类必须是公开类 个人有点代码洁癖,不喜欢这种不能控制的 ...
- requests上传文件,又要上传data的处理
前话 最近在自己学着弄接口自动化框架,因为要封装一个发送请求的父类,其中有考虑到上传文件,以及同时上传文件,和传递其他字段数据,遇到点小问题 这里解决下. 实例的接口数据 参考文档 来自fastapi ...
- kafka的学习1
1.Kafka是什么? Apache Kafka 是一款开源的分布式消息引擎系统.倘若“消息引擎系统”这个词对你来说有点陌生的话,那么“消息队列”“消息中间件”的提法想必你一定是有所耳闻的.不过说实话 ...
- 前端面试基础题:Ajax原理
Ajax 的原理简单来说是在⽤户和服务器之间加了—个中间层( AJAX 引擎),通过XmlHttpRequest 对象来向服务器发异步请求,从服务器获得数据,然后⽤ javascrip t 来操作 D ...
- windows 下部署 .netcore 到 docker
前面我们演示了如何将 Asp.Net Core 程序部署到 iis 和 部署到 windows 服务.其实前面的都是铺垫,如何将 Asp.Net Core 站点部署到 docker 才是这个系列文章的 ...
- CSS基础知识(下)
3.层叠 稍微复杂的样式表中都可能存在两条甚至多条规则同时选择一个元素的情况.CSS通过一种叫作层叠(cascade)的机制来处理这种冲突. 层叠机制的原理是为规则赋予不同的重要程度.最重要的是作者样 ...