Visual Studio 中的一些隐性功能
[原文发表地址]: Visual Studio Hidden Gems
[原文发表时间]: May 4, 2015
Visual Studio是一个强大的 IDE,它数以百计的功能使开发人员能够做的更多、更快。大约一年前我加入了Visual Studio团队,我在这里发现了一些非常棒的功能。这些所有的功能都在Visual Studio 2015中,但其中一些已经存在在好几个版本里了,因此你也可以在 Visual Studio 之前的本版里找到它们。
2. 多语言支持
3. C#交互窗口(REPL)
6. 预览选项卡
9. 状态栏中的版本控制信息
10. 诊断工具窗口
快速启动栏(Ctrl-Q)
快速启动栏是一个增强型的搜索框,它位于标题栏的右上角。它不仅会让你找到菜单命令和选项开关,它也会让你搜索文件、 设置、 以及NuGet 程序包和更多的东西!你可以通过默认快捷键Ctrl + Q直接访问它。
悬停在列表中的项目会提供快捷键或目录信息等有用的附加信息。
多语言支持
Visual Studio支持许多种流行的语言,但是如果你的语言不在列表里,你可以很容易地把它添加进来。通过我们新增加的对TextMate包的支持, Visual Studio可以使用任何一种语言了。TextMate功能包括新的语言的语法高亮显示、基本智能感知和符号搜索。
TextMate功能的优点是,只需添加一个tmbundle到用户的扩展目录 ([userdir]\ .vs \ extensions),不需要重新启动Visual Studio;一旦相关的文件被打开新语言特性就可以使用了。
以下是一些已编写完毕且比较受欢迎的TextMate包的链接:
- Mads Kristensen编写的Scala bundle
- Tim Sneath编写的Haskell bundle
- Php, Ruby, 而且TextMate GitHub 上还有一些
C#交互窗口(REPL)
这个工具窗口允许您直接输入并运行C#代码。它有助于快速计算表达式或测试代码而不需要构建和运行一个解决方案。
你可以从视图菜单->“其他窗口” 来找到“C#交互窗口”。
Navigate/GoTo (Ctrl+,)
“Navigate To” 是一种智能搜索功能,允许您在解决方案中轻松定位到任何文件、 类、 成员或符号。要激活该功能,请按 Ctrl + 逗号,将会显示一个停靠在编辑器窗口右上角的输入框。
查看定义(Alt-F12)
这个功能是 Visual Studio 编辑器团队中的最爱。它允许你查看方法或者在一个小内联窗口内查看当前编辑器中变量的定义。你可以在这个窗口递归地浏览更多的定义,它可以避免打开许多的文件。你可以通过查找窗口上边不起眼的小点进行定位。Alt-F12将激活这个窗口(或者如果您已经安装了Productivity Power Tools,通过Control,点击GoToDefinition将默认使用此查看窗口)。
预览选项卡
最初引入Preview Tab是用于辅助调试, 它在文档的最右边显示,允许你在调试的时候进入代码而不会在调试完毕后会有很多打开的文件。当浏览或搜索文件时也很方便,选项卡只会显示一个文档,所以默认情况下,所有的新文件都将在Preview Tab中打开。这样使您的代码搜索起来免于混乱。如果你想把任何特定的文档一直保持打开状态,在文档的选项卡上固定文档的图标,这个文档就会加入到其他打开文档的左侧。
向上或向下移动代码 - (Alt+向上/向下箭头)
向上或向下移动代码特性使代码链接或块很容易重新排序。在一个文档内部移动代码,只需按住Alt键,使用键盘上的向上和向下箭头就可以了。这个特性将移动被选中行的所有内容,如果没有被选中,它将移动光标所在的行。
透明的弹出框(按住Ctrl键)
有很多智能的小弹出框,提供上下文特定的行为或信息, 像智能感知和调试时的DataTips。有时弹出框中的信息覆盖了下面重要的代码行。如果你想不失去弹出框又可以查看代码,只需按住Ctrl键,弹出框会消失在背景中,你便可以看到下面的文本。
没有按Ctrl 键…
按Ctrl 键后...
状态栏中的版本控制信息
从Visual Studio 2015的Update 2版本开始,在IDE的右下角,你可以查看版本控制信息。在状态栏,你现在看到的信息,如当前branch,文件改变的数量,和等待提交的数量。点击branch的名字打开一个菜单,从打开的菜单中可以更改branch,或执行其他版本控制功能。
诊断工具窗口
在程序处于调试模式时诊断工具窗口就会显示运行内存和 CPU占用率。当你开始调试.NET 或 C++ 应用程序时,工具窗口将自动打开。它可以让你看到你的代码占用了多少CPU,内存的增长率,以及一些正在被加载进来的对象。
对于更深层次的内存分析,您可以在执行过程中在不同时间点拍内存快照,可以很容易比较两个点之间的大小差异,分解成不同类型的对象。这可以帮助你跟踪内存正在增长的对象,有助于识别和解决应用程序中的内存泄漏。
一些额外的调试提示请参阅调试技巧和窍门。
您最喜欢的Visual Studio 功能及隐性功能是什么呢?
我很乐意听到您的意见,请在下面的评论中分享您的想法