更有效率的使用Visual Studio(二)
没想到上一篇文章有这么多人喜欢,多谢大家支持。继续~
很多比较通用的快捷键的默认设置其实是有一些缩写在里面的,这个估计也是MS帮助我们记忆。比如说注释代码的快捷键是Ctrl + E + C,我们如果知道它是 Ctrl + Edit + Comment Code 的缩写不是更好记么?我也会尽量YY把快捷键和功能联系起来来帮助我自己记忆。另外很多功能在VS中有多个快捷键可以实现,我猜是为了防止一些快捷键冲突所设计的吧,我一般只会去记好记的,冲突了再说。
三、继续更有效率的编辑器
3.1 更有效的编辑(补充)
a. 注释代码:Ctrl + E(Edit) + C(Comment), Ctrl + K + C(Comment)。打开文件类型不同行为可能不同,在cs文件类型中会将选中行的代码注释,cpp中会将选中的内容进行注释。
反注释代码:Ctrl + E(Edit) + U(Uncomment), Ctrl + K + U(Uncomment)
b. 调整格式选中代码格式:Ctrl + E(Edit) + F(Format)。
c. 调整整个文档代码格式:Ctrl + E(Edit) + D(Document Format)。
3.2 更有效率的搜索:
a. Incremental Search(增量搜索,不知道翻译得恰不恰当):Ctrl + I(Incremental) (移动到下一个匹配按Ctrl + I, 移动到上一个Shift + Ctrl + I)。按住快捷键然后输入要查询的字符串,VS会马上定位到而不需要想Ctrl + F那种确认的过程,可以通过我截的图中看到效果。我一般如果只是想在当前文档进行简单搜索的话一般会使用这个搜索,遇到是一些比较复杂的搜索条件才去动用弹框搜索。
b. Ctrl + F(Find):在Visual Studio 2012中其实这个功能已经和Increment Search很相似了,你会发现在VS2012+里使用Ctrl + F和上面的效果是一样的,都是输入即可看到搜索结果。不过与Increment Search不同的是,这个搜索可以指定更多的条件,如是否匹配大小写、是否整词搜索、是否用正则表达式以及搜索的范围。
c. 在文件中查找:Ctrl + Shift + F,这个可以实现的搜索功能与Ctrl + F 一模一样,唯一不同就是这个可以将你搜索的结果输出到查找结果窗口中,而不是一个一个显示出来。这个比较合适搜一些比较多匹配的东西,然后在输出的结果窗口中在肉眼筛选。
四、更有效的导航:
1. 快速打开Solution Explorer:Ctrl + W(Windows)+ S(Solution)、Ctrl + Alt + L。当你在写代码想打开工程中另一个文件时就可以用这个快速打开解决方案窗口选择文件。
2. 打开当前打开文件列表:Ctrl+Alt+Down。这个很好用,但是这个快捷键在很多电脑上都会翻转屏幕,囧。如果实在要用这个功能,可以通过自定义快捷键来实现。
3. 快速将焦点移到类列表(这个名词纯属YY,见图便知我指的是啥):Ctrl +F2。
4. 内部文件切换:Ctrl + Tab。这个不仅在VS中,很多软件中都是这个功能。
5. 全屏:Shift + Alt + Enter。可以让你进入全屏无干扰模式,本人很喜欢这个功能。
五、更有效的智能感知
智能感知本来就很智能,但是很多时候我们想强制的调出一些提示来看一下的时候这些功能就爽。很多功能语言描述可能比较累,而且由于我语文不好很可能你还看不懂,所以我会附图。
1. 列出成员。Ctrl + K + L(List Member), Ctrl + J。我们知道当我们需要访问对象方法的时候按.VS会自动提示出有哪些方法,但是有时候我们需要在.操作符已经存在的情况下再查看。以前我会把点删掉然后再点一次,我承认我当时很傻,后来知道这个快捷键以后就好多了。
2. 列出选项(表述不明确,具体看后面描述)。Ctrl + . 或者Ctrl + Shift +F10。当我们用到一些类型在我们工程引用的程序集里但是没有在当前当前文件引用的命名空间内时,或者我们写了一个不存在的函数时,那行代码会有错误提示,并且在左下角有一个小符号。如图:。我们鼠标移到符号附近会出现一些帮助,可以自动帮助我们添加引用或者生成函数。这个快捷键就是在不移动鼠标的情况下让其出现这个提示。
六、其他
1. 任务列表(Task List),可以通过View->Task List打开这个窗口。很多人可能不知道这个功能,我觉得挺有用。写代码的时候我往往会遇到这种情况,某一些代码我现在不确定需求或者觉得可能会有问题将来需要改善,我会加上注释://TODO:reason。相信很多人会有同样的习惯,这个任务列表的功能就是让我们可以看到我们当前工程中有多少个TODO项。当然不局限于TODO这个词,可以自定义词汇。我一般会在commit之前看一下这个列表看看还有没有需要改的地方。这个还可以直接添加一些任务,具体使用自己用一下就知道了。
七、插件
这里在推荐两个插件:C# outline 和Smart Paster。
1. C# Outline
Visual Studio默认的outline是只有在函数级别的,但是很多时候有一些循环条件很长也需要缩起来看比较方便。于是就有了这个插件。效果如下:
Before outline->
After outline->
2. Smart Paster
这个插件可以将文字粘帖为注释、和string字符串和StringBuilder。特别是对于粘贴多行的文字的时候很有用。
八、推荐资料
1. Favorite Visual Studio keyboard shortcuts:Stackoverflow 上一群人在讨论自己最喜欢的快捷键,可以去里面看看或许你会看到一些你意想不到的快捷键。
2. Visual Studio程序员箴言:这本书介绍了很多关于VS方面的知识。
3. 可以多看看VS菜单栏上那些没用过东西,或许你会发现一些对你很有用的东西。
总结
这些只是对我来说最有用的一些技巧,强烈推荐大家可以去看看我推荐的那些资料去探索一些更加适合你的习惯的一些功能。因为当你不知道有这个功能的存在的情况下你根本就想不到要去找这么一个功能。
容我再罗嗦几句。我们绝对没有必要去死记硬背很多很多快捷键然后装逼,因为并非所有的快捷键所有人都需要。很大程度上一些功能的使用是取决于你的工作习惯,同时我也不推荐你去记一些你觉得你都不会用到的快捷键,没意义,浪费时间。这也就是为什么我只列出一些对我工作效率有切身帮助的一些快捷键,而不是把Visual Studio中所有的快捷键都列出来,因为那样子的话就没意义了!
所以我强烈建议你们只去记你觉得有用的那些东西。
P.S. : 评论中貌似很多人对于我如何制作gif的兴趣比文章本身更感兴趣(惭愧啊~~),我用的是一个叫做LICEcap的工具。
更有效率的使用Visual Studio(二)的更多相关文章
- 更有效率的使用 Visual Studio - 快捷键
工欲善其事,必先利其器.虽然说Vim和Emacs是神器,但是对于使用Visual Studio的程序员来说,我们也可以通过一些快捷键和潜在的一些功能实现脱离鼠标写代码,提高工作效率,像使用Vim一样使 ...
- 更有效率的使用Visual Studio
工欲善其事,必先利其器.虽然说Vim和Emacs是神器,但是对于使用Visual Studio的程序员来说,我们也可以通过一些快捷键和潜在的一些功能实现脱离鼠标写代码,提高工作效率,像使用Vim一样使 ...
- 更有效率的使用Visual Studio(一)
很多比较通用的快捷键的默认设置其实是有一些缩写在里面的,这个估计也是MS帮助我们记忆.比如说注释代码的快捷键是Ctrl + E + C,我们如果知道它是 Ctrl + Edit + Comment C ...
- 更有效率的使用Visual Studio2
PS色调均化滤镜的快捷实现(C#源代码). photoshop色调均化功能通常是在进行修片处理前期比较常用的功能之一,其对扩展图像的对比度,增强视觉效果有一定的作用.在很多课本或者文章中,也称这种处理 ...
- 微软Visual Studio二十周年:VS2017于3月7日发布
二十年前的今天,微软正式发布Visual Studio 97.如今二十年已经过去,微软宣布全新的Visual Studio 2017即将在美国当地时间3月7日正式发布. VS97是Visual Stu ...
- 笔记——Visual Studio 程序员箴言
记录了一些感觉比较用得到的tips用于随时查看.要想看完整的的内容还是阅读<Visual Studio 程序员箴言>,不过有些内容我在新版本的VS里没能实现,或者有替代方案了. 避免意外复 ...
- Visual Studio 2017十五项新功能体验
Visual Studio 2017正式已经于2017.3.7号正式发布,选在这一天发布也是为了纪念Visual Studio 二十周年.MVP 2017技术峰会将于这个周末(3.17)在北京举办,由 ...
- Visual Studio 20周年,我和VS不得不说的故事
Visual Studio 2017正式版已如期发布(点击这里查看发布全记录)!自去年 11 月正式宣布 Visual Studio 项目之后,微软终于正式推出了“宇宙最强集成开发环境(IDE)”的最 ...
- 使用Visual Studio Team Services进行压力和性能测试(一)——创建基础的URL压力测试
使用Visual Studio Team Services进行压力和性能测试(一)--创建基础的URL压力测试 概述 压力测试使应用程序更加健壮,并审核在用户负载下的行为,这样我们可以在当前的基础设施 ...
随机推荐
- SQL Server技术内幕笔记合集
SQL Server技术内幕笔记合集 发这一篇文章主要是方便大家找到我的笔记入口,方便大家o(∩_∩)o Microsoft SQL Server 6.5 技术内幕 笔记http://www.cnbl ...
- 前端框架 EasyUI (2)页面布局 Layout
在 Web 程序中,页面布局对应用程序的用户体验至关重要. 在一般的信息管理类的 Web 应用程序中,页面结构通常有一个主工作区,然后在工作区上下左右靠近边界的区域设置一些边栏,用于显示信息或放置一些 ...
- 0-1背包问题蛮力法求解(java版本)
sloves: package BackPack; public class Solves { public int[] DecimaltoBinary(int n,int m) { int ...
- WPF样式之画刷结合样式
第一种画刷,渐变画刷GradientBrush (拿线性渐变画刷LinearGradientBrush(其实它涵盖在GradientBrush画刷内.现在拿他来说事.),还有一个圆心渐变画刷Radia ...
- 原生js+css3实现图片自动切换,图片轮播
运用CSS3transition及opacity属性 制作图片轮播动画 自己这两天根据用js来控制触发CSS3中transition属性,从而写出来的以CSS3动画为基础,js控制过程的图片轮播 运用 ...
- python 数据类型 ----字典
字典由一对key:value 组成的 python中常用且重量级的数据类型 1. key , keys, values 字典由一对key:value 组成的 python中常用且重量级的数据类型 1. ...
- css样式之border
border用法详解: 1.border-width 属性设置边框的宽度 可能的值:像素 2.border-style 属性设置边框的样式 可能的值:solid(直线),dashed(虚线),dott ...
- docker4dotnet #4 使用Azure云存储构建高速 Docker registry
使用Docker来构建应用程序最常见的操作就是 docker run 或者 docker pull了,但是由于众所周知的原因,在国内想要高速稳定的获取docker hub上面的资源并不是件容易的事情, ...
- T-SQL字符串相加之后被截断的那点事
本文出处:http://www.cnblogs.com/wy123/p/6217772.html 字符串自身相加, 虽然赋值给了varchar(max)类型的变量,在某些特殊情况下仍然会被“截断”,这 ...
- Linux:将rhel yum 切换到centos yum
Red Hat Enterprise Linux Server(RHEL) yum安装软件时This system is not registered with RHN. RHN support wi ...