《Visual Studio程序员箴言》----1.2 滚动与导航

1.2 滚动与导航

Visual Studio程序员箴言
能够查看代码并将光标移到所关注的任意行,与能够尽可能轻松地输入代码同样重要。

1.2.1 滚动

我们都习惯使用鼠标滚轮来滚动编辑器内的代码和文本。以下技巧介绍了一些新的键盘快捷键,可改善你对滚动查看的体验。此外还介绍了如何隐藏所有的滚动条。说不定什么时候这些技巧就会派上用场。

技巧1.13 使用鼠标滚轮在各个方向上滚动
您知道可以按鼠标滚轮并把它当作第三个按键来用吗?对于很多带有编辑器的应用程序来说,按下鼠标滚轮会显示一个图标,指示可以往哪些方向滚动。有些需要按住鼠标滚轮,有些不需要。

在编辑器中,按一次鼠标滚轮就可以看到一个图标指示可以滚动的方向。

有几个事情需要注意:

鼠标距离方向图标越远,编辑器滚动的速度越快;
按鼠标主键将停止滚动,但必须再次按按钮才能将光标移到所需的位置。
技巧1.14 在不滚动的情况下跳到编辑器中当前视图的顶部或底部
按PgUp键或PgDn键会导致编辑器向上或向下翻一页,而以下键盘快捷键只会让光标移动。

按Ctrl+PgUp键可以将光标移到当前编辑器视图的顶部,同时不会像PgUp键那样移动当前视图。

按Ctrl+PgDn键可以将光标移到当前编辑器视图的底部,同时不会像PgDn键那样移动当前视图。

如果像上面这样使用键盘快捷键,会发现下面这些快捷键也很有用。

按Ctrl+Shift+PgUp键可以选择当前光标位置(在下面的例子中,接近屏幕的底部)与当前编辑器视图顶部之间的所有文本。

按Ctrl+Shift+PgDn键可以选择当前光标位置与当前编辑器视图底部之间的所有文本。

有一点要注意,这4个命令都是直线跳转光标,这表示它不会跳到顶行的开始位置,而是尽可能接近当前列的位置,这一点从上面的例子中可以看出来。

技巧1.15 隐藏编辑器中的垂直和水平滚动条
这个技巧真正符合“你知道吗?”的精神。

选择菜单“工具”→“选项”→“文本编辑器”→“常规”,在“显示”下,可以取消选中“垂直滚动条”和“水平滚动条”选项。

现在滚动条隐藏了。当然,在这种状态下仍然可以在垂直和水平方向上进行滚动。

1.2.2 在编辑器内和编辑器之间进行导航

导航代码是另一项经常执行的操作,因此如果能在这上面省下一点时间,长此以往也不可小视。下面的技巧让您尽可能快地可以到达想去的位置,或者返回刚刚所在的位置。

技巧1.16 通过返回标记在编辑器中进行向前和向后定位
在标准工具栏中可以找到“向前定位”和“向后定位”图标。

在编辑器中,与“向后定位”命令绑定的快捷键是Ctrl+-(减号),而与“向前定位”命令绑定的快捷键是Ctrl+Shift+-(减号)。在浏览多个文件或者在调用堆栈中跳转时,这些命令最有用。

“基本编辑器定位101”课程结束了。现在是时候学习“高级编辑器定位201”课程了。

您可能已经注意到了,“向后定位”按钮还包含一个下拉列表框。这个列表框内显示的内容项是做上了返回标记的所有位置。换句话说,单击“向后定位”按钮表示回到最近访问的返回标记。

如果一切顺利,返回导航应该感觉很自然。但如果您像我一样,就会想了解整个过程的细节。

在以下条件下会做返回标记。

增量式搜索(包括反向)会在搜索的开始处留下一个返回标记,而在搜索的结尾处留下另一个;
“转到行”操作,例如按Ctrl+G键,或者将光标从当前位置移动11行或更多行的鼠标单击,会在新位置上留下一个返回标记;
已将光标移到一个新位置的删除操作(例如按Backspace键)会留下一个返回标记;
进行搜索,例如按Ctrl+F键,会在找到的位置上留下一个返回标记;
打开一个文件时,会在光标位于老文件上的地方留下一个返回标记,并在已打开文件上的地方留下另一个返回标记。
如果您发现其他情况也会留下返回标记,请告诉我。

技巧1.17 使用撤销操作将光标跳回到上一个插入点
在技巧1.16中,我们深入了解了关于返回标记的内容。本条技巧讲述插入点的轻微差异。它们与返回标记类似,但应用的位置是单击鼠标或跳转光标的地方。返回标记“11或更多行”法则不适用。

下图中显示的这个选项可以在“工具”→“选项”→“文本编辑器”→“常规”中找到。

要进行尝试,只要随便单击某处,然后单击另一处(或者如果正在使用键盘,使用“查找”或“转到行”操作),然后单击“撤销”按钮。这将回到前面一个位置。

技巧1.18 通过键盘访问导航栏
导航栏位于编辑器顶部,就在文件选项卡的下面。左边的组合框列出了对象,而右边的组合框列出了所选对象的成员。需要跳转到一个大解决方案中的各个函数,或者想要查看一个对象有哪些函数时,这些组合框非常有用。

要通过键盘跳转到导航栏,可按Ctrl+F2键。这个键盘快捷键绑定到了窗口.移动到导航栏命令。要在对象列表与成员列表之间切换,可按Tab或Shift+Tab键。

另外,还可以隐藏(或显示)导航栏,具体操作是选择“工具”→“选项”→“文本编辑器”→“所有语言”→“常规”,不选择(或选择)“导航栏”选项。注意,因为这个选项位于“所有语言”窗格中,所以可对“文本编辑器”节点下列出的任何语言进行自定义。

技巧1.19 拆分窗口和新建窗口
拆分当前窗口有两种途径。

在菜单栏中选择“窗口”→“拆分”。
使用鼠标直接拖动文档滚动条上的拆分控件,如下图所示。

但是拆分命令只会进行水平拆分。如果需要像下图这样进行垂直拆分,可使用“窗口”→“新建窗口”命令。这将创建窗口“Program.cs:1”和“Program.cs:2”。然后可以使用“窗口”→“新建垂直选项卡组”命令垂直拆分这两个文件。

技巧1.20 使用F6在编辑器内的拆分窗格之间跳转
作者旁述

我最初编写和发布这个技巧时,这与描述如何拆分窗格的技巧1.19之间相隔了6个月之久,不禁令人好笑。我在博客上开始发表“每日一贴”系列文章的第一周,就不得不面对实际上不得不每隔一天写一条技巧的无情事实。在编写“每日一贴”的第一周内,我正在参加一个会议,所以最初发表的技巧都是我能够以最快的速度写出来的。这段时间的疯狂写作没有任何节奏或理由,因此技巧1.19与技巧1.20之间相隔了6个月。
使用拆分控件拆分完编辑器窗口之后,可以使用F6键在编辑器视图之间跳转。

技巧1.21 在编辑器内启用URL定位
在“工具”→“选项”→“文本编辑器”→“所有语言”→“常规”下,有一个“启用单击URL定位”选项。这个选项对于大多数编辑器是默认选中的。但是无法单击URL时,可以在这里检查该选项是否已选中。

技巧1.22 使用Ctrl+G时不弹出“转到行”对话框
这个技巧相当直观:按Ctrl+G键将弹出“转到行”对话框。

但您是否知道有一种方法可以在使用Ctrl+G键时不弹出这个对话框呢?

1.按Ctrl+D键,将焦点移到标准工具栏上的“查找”组合框上。

2.输入行号。

3.按Ctrl+G键(注意:不要按Enter键,否则就会变为搜索这个数字!)

恭喜!您已经定位到了该行,并且“转到行”对话框没有弹出。

可以尝试定位到第0行,但Visual Studio会跳到第1行。

1.2.3 自动换行和虚空格

自动换行选项会将很长的文本行换行,文本会显示在新行上,而不是挤在第一行。虚空格选项支持将插入点置于文件的任何地方,即便是在行末符之外也可以。

技巧1.23 启用自动换行
下图演示了如何让一行文本换行到下一行上。

进入“工具”→“选项”→“文本编辑器”→“所有语言”→“常规”下,选中“自动换行”选项。选中之后,“显示可视的自动换行标志符号”选项也将变为可用。

还可以在“工具”→“选项”→“环境”→“字体和颜色”下修改“可见空白”项,为自动换行自定义虚字的项前景色。

技巧1.24 启用虚空格
作者旁述

这个技巧与前面技巧1.23中的自动换行功能是互斥的。试一试就会知道,不可能同时选中自动换行和虚空格两个选项。但如果您知道如何做到这一点,请不吝赐教!
在下面的例子中,光标位于虚空格中。我已经启用了“可见空白”选项,确保Program类名之后不存在空格。

作者旁述

我从未用过自动换行功能,而虚空格功能也不过是在几周前进行测试时刚刚用过。这两个选项对我都没有多大用处。我发表这个技巧时,也要求读者说明他们使用这些选项的理由,我知道我会学到一些新东西的。
本文仅用于学习和交流目的,不代表异步社区观点。非商业转载请注明作译者、出处,并保留本文的原始链接。

时间: 2024-08-30 19:27:08

《Visual Studio程序员箴言》----1.2 滚动与导航的相关文章

《Visual Studio程序员箴言》---- 第2章 让编辑器的使用得心应手 2.1 高级编辑

第2章 让编辑器的使用得心应手 Visual Studio程序员箴言 纵观本书,您会看到我反复测试我最喜欢的功能.但我可以肯定地说,没有什么其他功能比编辑器更能让我想要拥有.编辑器是每个人一直都要使用的功能,我怎么会不想测试它并揭示它的秘密呢? 第1章重点讲述了适用于任意文件类型(甚至是纯文本文件)的基本编辑技巧.本章着重强调的是针对任意语言文件的基本编码技巧.在此,您将了解到关于Microsoft IntelliSense.大纲显示和代码段的技巧. 本文仅用于学习和交流目的,不代表异步社区观点

《Visual Studio程序员箴言》----2.2 打开文件

2.2 打开文件 Visual Studio程序员箴言 花在IDE上的时间越多,想要进行自定义的愿望就越强烈.对于打开文件也是如此.因为这是一项频繁执行的操作,使用快捷方式或一些省时的自定义设置可以在需要打开文件的时候加快这个过程的速度. 打开文件和编辑器窗口 接下来要讲的这些技巧为在编辑器内打开文件提供了各种自定义方法. 技巧2.22 打开文件时重用同一个编辑器窗口 访问菜单"工具"→"选项"→"环境"→"文档",然后选中&

《Visual Studio程序员箴言》----2.4 IntelliSense

2.4 IntelliSense Visual Studio程序员箴言IntelliSense这个术语指的是编辑器在用户输入代码时为用户提供建议的功能.用户很可能最熟悉的主要IntelliSense功能包括语句完成.参数信息和完成单词. 语句完成.参数信息和完成单词语句完成就是在UI上显示在指定位置能够将哪些合法对象插入到代码中.它也称为列表成员. 完成单词和语句完成非常类似,但不在UI上显示.如果正在输入的方法或对象是唯一的,完成单词功能将会填好单词,即便语句完成并未显示也是如此.完成单词等价

《Visual Studio程序员箴言》----第1章 回顾编辑器的基础知识 1.1 基本编辑

第1章 回顾编辑器的基础知识 Visual Studio程序员箴言Microsoft Visual Studio中的性能改进是从编辑器开始的.无论是输入代码.编辑代码还是删除代码,除了纯粹的输入,无需执行其他的操作了.把这些技巧当作一个储钱罐,在其中存入多余的零钱.即使这些技巧当中的一些只能够为您省下短短的几秒钟时间,这几秒钟也能积少成多,变为几天.几周和几个月.省出这么长的时间用于消遣不是很好吗? 本文仅用于学习和交流目的,不代表异步社区观点.非商业转载请注明作译者.出处,并保留本文的原始链接

《Visual Studio程序员箴言》---- 1.3 编辑器字体和颜色

1.3 编辑器字体和颜色 Visual Studio程序员箴言这部分内容着重讲述如何修改编辑器中带有一些可视元素的内容,无论是仅仅增大文本编辑器的字体大小,还是显示行号. 1.3.1 字体大小 众所周知,在"工具"→"选项"→"环境"→"字体和颜色"下选择"纯文本",可以增大编辑器中所有文本的字体大小.但还有一些用于增大字体的其他选项迟早派的上用场. 技巧1.25 增大编辑器中工具提示的字体大小选择&quo

《Visual Studio程序员箴言》----1.4 打印

1.4 打印 Visual Studio程序员箴言当我得知可以使用出现在"打印"对话框中已安装打印机列表中的Microsoft XPS Document Writer打印文件时,心情是喜忧参半.喜是因为它测试打印的速度非常快,而忧是因为我为办公室购买一台顶级彩色打印机的愿望都成为泡影. 打印选项我们都会时不时需要打印.所以需要打印文件时,有必要了解您在自定义打印页外观的过程中都可使用哪些选项. 技巧1.33 打印行号作者旁述 如果回到使用Visual Studio .NET 2003的

《Visual Studio程序员箴言》---- 1.5 状态栏

1.5 状态栏 Visual Studio程序员箴言状态栏可以反映IDE中发生的变化,无论是编译.进行搜索.运行宏,还是执行任意其他类似的操作. 像状态栏这样的小功能始终会给测试人员带来挑战.类似于这样的功能几乎可以持有这样的嘲弄态度:"你永远也别想在我身上找出一个新bug".或许我只是怀恨在心,因为我记得从来没有找到过关于状态栏的任何有用的bug. 状态栏选项正如您所希望的那样,关于状态栏的选项并不多.实际上,我相信下面这个选项可能是唯一的一个. 技巧1.36 隐藏状态栏我无法确定人

《Visual Studio程序员箴言》---- 2.3 书签

2.3 书签 Visual Studio程序员箴言书签是在文件中标记各种位置的一种手段.刚开始测试书签时,我并不确定书签与任务列表中注释之间的区别.任务列表注释和其他记号出现在文件中,所以它们有可能进入源代码库,并且所有人都可见.另一方面,书签只有自己才能看到."书签"窗口中显示的书签保存在文件之外.关于任务列表功能的更多信息,请参见第5章. 管理书签接下来的多条技巧是关于创建和使用书签. 技巧2.27 设置书签并在多个书签之间导航按Ctrl+K键.Ctrl+K键可设置一个书签.相应的

《Visual Studio程序员箴言》----2.5 代码段

2.5 代码段 Visual Studio程序员箴言与破坏软件相同,我更喜欢做的唯一的事情就是发出通知:"我破坏了软件".例如,我首次接管测试代码段的工作时,我会尝试进行各种意外的操作来破坏UI,例如在代码段名称的位置上输入"Sara wuz here".正如您所期望的那样,我的大部分尝试都是不成功的,但最终我确实发现了一系列能够导致崩溃的键盘快捷键. 软件测试的有趣之处在于,一旦找出一个bug,通常在附近还隐藏着一堆bug.您要做的就是知道如何找出bug的模式.从