1. 首页
  2. 文章列表
  3. Resharper配合使用ProductivityPowerTools2017插件帮助你提高打码效率

之前发过几篇Resharper的文章,就有小伙伴问我Resharper文章里截图的某些IDE效果是怎么弄的,今天就给大家分享一个新的VisualStudio插件Productivity Power Tools2017。

Productivity Power Tools2017是微软官方推出的 Visual Studio 插件,被用以提高开发人员生产率。它的出现一定程度上弥补和完善了 Visual Studio 自身的不足,比如其中的标记自动补全、复制引用等看似虽小,但却真得帮助我减轻了很多麻烦。

本文大多数内容译自MSDN:https://marketplace.visualstudio.com/items?itemName=VisualStudioPlatformTeam.ProductivityPowerPack2017,当然,下载也在这儿了,那就先下载安装吧!

首次安装好以后,启动VisualStudio,可能会弹出一个安装其他依赖插件的窗口,待安装完成后,你还需要重启一次VS才能使插件生效。

视频介绍

扩展管理

由于该扩展安装完成后包含了多种不同的功能,如果你觉得某项功能对你来说没用,或者会干扰到你的正常工作,你可以选择卸载它们。你要做的只是打开扩展管理器,然后根据需要进行配置。

首选项

安装好以后首先要做的就是首选项配置了,ProductivityPowerTools2017所有插件的设置都会在这里进行配置:

懒得勤快的博客_全栈开发者_互联网分享精神

我们挨个讲解每个插件的具体配置和使用效果。

特别注意:ProductivityPowerTools2017有一个bug,就是每一页的参数修改完以后需要马上确定保存,不能所有参数页都配置完以后再确定,这样的话只有你最后一页的设置生效。

自定义文档标签页(Custom Document Well)

你可以设置文档标签页的显示位置:顶部,左边,右边,底部... 看个人爱好选择摆放位置.
还可以设置标签页的颜色, 是否有关闭按钮等.

懒得勤快的博客_全栈开发者_互联网分享精神

在Advanced里面可以设定tab的应用规则和尺寸等参数

懒得勤快的博客_全栈开发者_互联网分享精神

然后在Color Coding里面还有一些你可以自己写正则表达式来根据不同的文件让标签呈现不同的颜色

懒得勤快的博客_全栈开发者_互联网分享精神

使用效果:

懒得勤快的博客_全栈开发者_互联网分享精神

真的有不少小伙伴看到Resharper的那篇文章以后都来问我这种彩色的标签页是怎么配的,现在你们知道了吧。

高级命令(Power Commands)

Power Commands为VisualStudio的多个方面提供了增强功能,你可以手动来配置是否使用它们。

1.保存时格式化文档(Format On Save)

在保存文档时格式化文档中不规范的Tab,空格,以及其它字符. 相当于点击菜单 Edit(编辑)->Advanced(高级)->格式化文档 命令.
默认未开启该功能.
2.保存时移除并整理 Using 语句(Remove and Sort Usings on save)

在保存C#文档时, 移除未使用的 Using 语言, 并重新整理.
默认未开启该功能.

懒得勤快的博客_全栈开发者_互联网分享精神

3.清空所有面板的输出消息(Clear All Panes)

在<输出>标签页添加一个按钮, 并允许用户一次性清除所有的面板输出消息.

懒得勤快的博客_全栈开发者_互联网分享精神

4.用 Email 发送选中代码(Email CodeSnippet)

在源代码编辑器通过点击右键可以将选中的代码创建为一封新的Email.

懒得勤快的博客_全栈开发者_互联网分享精神

5.插入 Guid 属性(Insert Guid Attributes)

如果当前选中的文本在类的作用域范围内, 你可以通过右键菜单为该类添加一个 Guid 属性.

懒得勤快的博客_全栈开发者_互联网分享精神

6.显示所有文件(Show All Files)

当解决方案结点被选中时, 显示所有当前解决方案项目的文件. 它增强了 <显示所有文件> 按钮的功能,它同时会显示出当前项目中所有隐藏的文件哦!
7.撤销关闭文件(Undo Close)

重新打开一个已被关闭的文档, 返回到原来的光标位置处,可以通过菜单 编辑->Undo Close, 或 Ctrl+Shift+Z 来完成

懒得勤快的博客_全栈开发者_互联网分享精神

8.折叠项目文件(Collapse Projects)

从解决方案中已选择项目的根结点处折叠项目的所有文件.
9.复制/粘贴 一个类(Copy/Paste Class)

复制/粘贴一个类的整个内容(声明和实现) 到/从 剪贴板中,当正在粘贴一个类时, 它被自动重命名, 重命名时可能会依据项目名/选择的文件名.

懒得勤快的博客_全栈开发者_互联网分享精神

10.复制/粘贴 引用(Copy/Paste References)

复制/粘贴一个或多个引用 从/到 剪贴板. 你也可能通过 Reference 结点来执行此操作, 单个或多个,当其中一个项目需要作为另一个项目的引用时,可以直接使用 “Copy as Project Reference”。(只可用于同一个解决方案内的不同项目之间)

懒得勤快的博客_全栈开发者_互联网分享精神

11.复制为项目引用(Copy As Project Reference)

有些时候,你可能需要知道当前文件的路径,这时,你就可以在解决方案资源管理器中使用 “Copy Path”。复制一个项目作为一个项目引用到剪贴板,也可以从项目菜单中执行此操作。

懒得勤快的博客_全栈开发者_互联网分享精神

12.复制文档路径(Copy Path)

在<解决方案资源管理器>中点击右键, 你可以复制 解决方案/项目/文件夹/文件 路径到剪贴板.

懒得勤快的博客_全栈开发者_互联网分享精神

13.打开所在的文件夹(Open Containing Folder)

在资源管理器窗口在打开一个已选择文件(夹)的所在路径.

14.打开命令提示符(Open Command Prompt)

打开一个命令提示符窗口, 并切换当前目录到已选择解决方案/文件(夹)/项目的所在的文件夹.

懒得勤快的博客_全栈开发者_互联网分享精神

15.移除并整理 Using 语句(Remove and sort Usings)(和上面的不同哦)

移除并整理一个项目中的类的所有 using 语句, 它非常有用, 比如在移除并整理一个由向导创建的类的时候,这个命令可以通过 解决方案结点/单一项目来执行。

懒得勤快的博客_全栈开发者_互联网分享精神

16.提取常量(Extract Constant)

为选择的文本创建常量定义语句,提取出常量值并命名为一个常量变量, 将增强代码的可读性,该命令可以从解决方案结点/头晕目眩项目结点处执行。
17.清空最近文件列表(Clear Recent File List)

清空 Visual Studio 的最近文件列表,有点不同的是,这个命令会弹出窗口要求用户选择要删除的内容。
18.清空最近项目列表(Clear Recent Project List)

清空 VS 的最近项目列表,同上面一样, 会弹出窗口要求用户选择待删除内容。

懒得勤快的博客_全栈开发者_互联网分享精神

19.关闭所有(Close All)

关闭所有的文档. 可以在文档标签上面执行,通过Commands也可以配置哪些命令可以启用或禁用。

懒得勤快的博客_全栈开发者_互联网分享精神

添加参考线

如果你的每行的字符数有要求,比如只允许单屏显示,那你就需要在某一列时进行手动换行,从而保证显示效果。但是如何才能知道是否该换行了呢?难道每次都要去数字符数?或者是去看一下 Visual Studio 状态栏中的信息?这样效率实在是低!使用这个扩展,你只需要在需要进行换行的位置增加一条参考线,那么你就能一目了然了。如果你需要在第80列设置参考线,那么你先要允许光标能定位在第80列,否则无法插入或删除参考线。允许光标定位到某一列的方法很简单,你可以简单地按住空格键直到那列为止。或者可以开启 Visaul Studio 的虚拟空格。

懒得勤快的博客_全栈开发者_互联网分享精神

修改工程文件

在没有这个工具之前,修改一个工程需要先在文件夹中找到.cspr"/>

懒得勤快的博客_全栈开发者_互联网分享精神

快速启动

这个功能是 Visual Studio 2012 的功能,目的是能快速执行一些操作,因为有些操作隐藏在很深的地方,比如设置字体,你可能需要通过选择 工具 / 选项 / 环境 然后才能找到,但是你使用 “快速启动” 就能迅速设置字体。而该扩展进一步丰富了 “快速启动” 所支持的命令集,比如快速设置演示用的字体、快速恢复字体、恢复开发环境设置、开启或关闭自动换行等。

懒得勤快的博客_全栈开发者_互联网分享精神

命令描述
CollapseRegions当前文档中所有的#region折叠
ExpandRegion当前文档中所有的#region展开
TxtFont-将文本编辑器的字体减小2(最小减小到6)
TxtFont0将文本编辑器的字体重置为10
TxtFont+将文本编辑器的字体增加2(最大增加到60)
TxtFontReset将文本编辑器的字体重置为当前主题的默认值
EnvFont-将开发环境的字体减小2(最小减小到5)
EnvFont0将开发环境的字体重置为9
EnvFont+将开发环境的字体增加2(最大增加到59)
EnvFontReset将文本编辑器的字体重置为当前主题的默认值
InsTabsOff当键入Tab时用空格代替(对所有语言生效)
InsTabsOn当键入Tab时用保持使用Tab(对所有语言生效)
LineNumOff关闭文本编辑器的行号显示(对所有语言生效)
LineNumOn打开文本编辑器的行号显示(对所有语言生效)
PresentOff关闭演示模式,字体恢复为打开演示模式前的大小
PresentOn打开演示模式,放大字体以便在投影仪上查看
ResetToBasic把VS设置重置为Visual Basic development settings
ResetToC++把VS设置重置为Visual C++ development settings
ResetToC#把VS设置重置为Visual C# development settings
ResetToF#把VS设置重置为Visual F# development settings
ResetToGeneral把VS设置重置为General development settings
ResetToJavaScript把VS设置重置为JavaScript for Windows 8 Apps development settings
ResetToLightSwitch把VS设置重置为LightSwitch development settings
ResetToSQL把VS设置重置为SQL Server development settings
ResetToWeb把VS设置重置为Web development settings
ResetToWebCode把VS设置重置为Web (Code Only) development settings
SwitchCode从设计器和Code Behind,源文件的头文件之间切换
TabSize-把Tab的缩进量减小2(对所有语言生效)
TabSize0把Tab的缩进量重置为4(对所有语言生效)
TabSize+把Tab的缩进量棚屋增加2(对所有语言生效)
WordWrapOff关闭自动换行(对所有语言生效)
WordWrapOn打开自动换行(对所有语言生效)

鼠标中键滚动

  就像在浏览器中,按住鼠标中间可以进行滚动一样。

懒得勤快的博客_全栈开发者_互联网分享精神

修改Tab和空格混用的文档(Fix Mixed Tabs)

当打开或关闭一个混用Tab或Space的文档时, 警告用户. 并提供一个简单的解决方式给用户.
懒得勤快的博客_全栈开发者_互联网分享精神

解决方案错误可视化(Solution Error Visualizer)

突出显示错误和警告在解决方案资源管理器。此功能将错误,警告和消息用波浪线形式添加到解决方案资源管理器中。信息从错误列表中获取,并直接显示在解决方案资源管理器树视图中。将鼠标悬停在带有波形的节点上会弹出一个带有错误/警告/消息信息的弹出窗口。

懒得勤快的博客_全栈开发者_互联网分享精神过滤

使用“解决方案资源管理器”工具栏中的过滤器下拉列表将解决方案资源管理器过滤为仅包含警告/错误/消息 您可以创建新的解决方案资源管理器视图,将其过滤到错误并将其用作专用错误窗口。

注意:按文件范围过滤错误列表(即打开文档,当前项目,当前文档等)不会影响解决方案资源管理器中的显示。

懒得勤快的博客_全栈开发者_互联网分享精神

时间戳调试输出(Time Stamp Margin)

执行代码调试时能够将时间戳信息在调试窗口输出。

分享到:

文章历史版本:

修改次数:1 次 查看历史版本

版权声明:

本文仅用于学习、研究和交流目的,欢迎非商业性质转载。本文链接:https://masuit.com/1392

l  博主在此发文(包括但不限于汉字、拼音、拉丁字母)均为随意敲击键盘所出,用于检验本人电脑键盘录入、屏幕显示的机械、光电性能,并不代表本人局部或全部同意、支持或者反对观点。如需要详查请直接与键盘生产厂商法人代表联系。挖井挑水无水表,不会网购无快递。

l  文章内容部分来源于互联网,不代表本人的任何立场;涉及到的软件来源于互联网,仅供个人下载使用,请勿用于商业用途,版权归软件开发者所有,下载后请于24小时内删除,如有真实需要请支持正版!因下载本站任何资源造成的损失,全部责任由使用者本人承担!如果你是版权方,认为本文内容对您的权益有所侵犯,请联系博主,并参照侵删联系的说明提交相应的证明材料,待博主进行严格地审查和背景调查后,情况属实的将在三天内将本文删除或修正。

l  博主的文章没有高度、深度和广度,只是凑字数。由于博主的水平不高(其实是个菜B),不足和错误之处在所难免,希望大家能够批评指出。

l  博主是利用读书、参考、引用、抄袭、复制和粘贴等多种方式打造成自己的纯镀 24k 文章,请原谅博主成为一个无耻的文档搬运工!

l  博主只是一名普通的互联网从业者,不懂修电脑,不会卖电脑,不会帮你盗号,不会破解开机密码,找不回你丢失的手机等,如有这样的想法请绕道!

相关推荐:

Resharper配合使用CodeMaid插件帮助你提高打码效率 简单说说State和Status两个单词的区别
这又是史上最丧心病狂的大数据时代的IT术语解读😂 java经典面试题——HashMap和HashTable有什么不同?
给刚入行的软件开发者的20个忠告! 面向对象的八大设计原则解析
IT职场:为什么你总是感觉打码很吃力,总是出低级bug? 关于各种开源许可证的详解
漫画详解什么是HashMap? 由double类型判等引发的一点小思考

评论区:

    还没有评论哦,赶紧来写评论吧