我们如何使用 SlickEdit® Tools for Microsoft® Visual Studio® 2005





2.00/5 (1投票)
2007 年 5 月 14 日
12分钟阅读

31663
介绍我们如何使用我们自己开发的工具®插件产品中的一些最受欢迎的功能。
这是我们对 The Code Project 赞助商的展示性评测。这些评测旨在为您提供我们认为对开发人员有用且有价值的产品和服务信息。
引言
你买过钓鱼竿吗?钓鱼竿附带的手册会告诉你如何组装它、如何放线、更换线轴,以及关于钓鱼竿的许多其他重要功能。但它不会教你如何钓鱼。
我们之前在 Code Project 上发表过 文章,介绍了我们 SlickEdit® Tools for Microsoft® Visual Studio® 2005 产品包含的功能。我们并非只是做市场宣传,我们自己每天都在软件开发中使用我们的产品。本文将介绍我们在 SlickEdit 中如何使用这些工具。 点击此链接可下载产品试用版。
快速链接
自动代码文档查看器 |
![]() |
![]() |
表面上看,自动代码文档查看器似乎与 NDoc 或 Sandcastle 执行相同的功能。所有这些工具都用于为代码库生成链接帮助文档,但自动代码文档查看器是唯一一个真正将帮助文档与 Visual Studio 集成的工具。
自动代码文档查看器不使用程序集或反射来构建帮助页面。相反,它会遍历源代码以构建文档数据库。结果是一个 XML 文件,其中包含有关源代码结构的丰富信息,包括所有源代码元素的标头注释。然后,它使用此 XML 文档在您在查看器中浏览时动态构建帮助页面。
因此,它适用于托管和非托管代码,包括 C++ 和 Web 项目。即使源代码无法编译,它也能构建文档。如果存在 XMLdoc,它会被解析以构建丰富的帮助文档,但如果您使用块注释或行注释来记录类和函数,它也会提取它们。
从类到成员变量的每个已记录符号旁边都有一个特殊的“代码链接”图标。单击该图标将直接带您到该实体的源代码。这弥合了文档和源代码之间的差距。
我们如何使用它?
对我来说,自动代码文档查看器非常适合为我不熟悉的代码库提供高层次的视图。我用它来做以下事情:
- 如果另一位开发人员向项目或解决方案添加了一个新模块,它能让我轻松地对其进行概览,而无需直接浏览源代码。一旦我准备好查看源代码,我就会使用特定类或函数的代码链接直接跳转到那里。
- 我喜欢 Code Project 来学习新东西。但是,有时完全打开未知源代码并开始理解它会很有挑战性。每当我从 Code Project 文章下载源代码时,我都会首先使用自动代码文档查看器来获得整体概览。这是深入源代码的一个很好的起点。
要尝试此功能,请执行以下操作:
- 打开一个 Code Project 示例应用程序。
- 通过选择 **SlickEdit > Show Auto Code Doc Viewer** 打开 **自动代码文档查看器** 工具窗口。
- 查看器窗口将显示为一个标签页文档,其中包含项目的链接。
- 通过单击该链接,您可以深入了解项目中定义的命名空间、类、函数等。
- 您还可以通过使用页面顶部的索引来浏览类、函数、属性等。
![]() |
观看自动代码文档查看器实际操作... |
注释自动换行 |
![]() |
![]() |
你能想象在一个不支持自动换行的编辑器中编写文本文档吗?不幸的是,作为程序员,我们每天都会遇到很多次这种情况。当我们编写代码时,我们希望代码编辑器不支持自动换行。但是,当我们编写注释时,编辑器没有任何理由不支持自动换行。您有多少次编辑了注释,然后不得不手动调整右侧以保持代码格式良好?
注释自动换行功能增强了代码编辑器,使其在您键入时自动换行注释。此功能适用于任何类型的多行注释:行注释、块注释以及 XMLdoc 和 Javadoc 注释。它甚至可以根据您偏好的布局重新格式化现有的注释块。
我们如何使用它?
使用此工具编写注释的便捷性显而易见。然而,随着时间的推移,我注意到使用此功能使我成为一名更有效的注释编写者,因为它承担了文本格式化的所有繁琐工作。因此,我们的源代码的文档编写变得更加出色。
要尝试此功能,请执行以下操作:
- 打开一个源文件进行编辑。
- 在函数标头上一行的上方键入 /// (VB 中为 ''')。
- 将创建一个 XMLdoc 注释的框架。
- 将光标放在
<summary>
标签内并开始键入。 - 当注释宽度大于 80 个字符时,文本将开始换行。
注意:这是默认行为。有很多选项可用于定义您希望注释如何换行。
![]() |
观看注释自动换行实际操作... |
目录别名 |
![]() |
目录别名是完整目录路径的简短标识符。例如,**winsys** 可能是 `C:\windows\system32` 的目录别名。无论何时在 Visual Studio 中使用“打开”或“保存”对话框,键入目录别名,然后按 **Ctrl+Dot** 键序列展开它,然后按 Enter 键直接导航到该目录。您再也不必通过双击来浏览这些对话框了。
我们如何使用它?
当我使用 Visual Studio 中的“打开”或“保存”对话框时,我总是在浏览几个目录。我总是为以下目录设置别名:
- 我们的开发根目录
- 任何输出或日志目录
- C:\Windows\System32
- 我的个人临时目录
- 我们的文档目录
要尝试此功能,请执行以下操作:
- 选择 **文件 > 打开 > 文件** 菜单选项 **(Ctrl+O)** 显示 **打开文件** 对话框。
- 将光标放在 **文件名** 输入字段中,然后键入 **wd**。
- 按 **Ctrl+Space**。**wd** 将被替换为 `C:\Windows`(或您的 %WINDIR% 环境变量所定义的任何值)。
- 按 **Enter**,您现在就进入了 `C:\Windows` 目录。
![]() |
观看目录别名实际操作... |
图标提取器 |
![]() |
![]() |
图标提取器是一个很棒的工具,体现在两个方面:查找高质量图标和轻松应用它们。通过浏览任何 EXE 或 DLL(托管或非托管),都可以获得许多图标。例如,`Windows\System32\shell32.dll` 包含大量出色的图标。还有许多其他二进制文件可以从中提取图标。还可以加载常规图标和图像,以及图标库。Visual Studio 的 `C:\Program Files\Microsoft Visual Studio 8\Common7\VS2005ImageLibrary\bitmaps` 文件夹中有大量非常好的图像可用于控件。它还可以用于检索应用程序共有的图标。通过打开您开发的其他应用程序的二进制文件,您将可以访问相同的图标集,以获得相似的外观和感觉。
更重要的是,提取的图标和图像可以轻松地应用于窗体设计器。工具栏上有一个按钮可以刷新工具的设计器组件树。这将填充一个树,显示窗体设计器中控件的分类视图,包括按钮、菜单、工具栏按钮以及任何接受图像的元素。然后,您可以简单地将图标从集合拖放到设计器控件树中的项目上。它们会立即在窗体设计器的 UI 上更新。如果您曾经需要为菜单项分配大量图像,您就知道这是一项多么漫长而糟糕的工作。现在,只需拖放即可完成。
我们如何使用它?
我总是使用图标提取器来为我的控件分配图像。我首先从我们的二进制文件中加载图像,然后从列表中选择。如果该集中没有匹配项,我通常会打开 `shell32.dll`。将这些图像拖放应用实际上使这项任务变得令人愉快。打开许多二进制文件并查看其中包含的精美图标很有趣!
要尝试此功能,请执行以下操作:
- 通过选择 **SlickEdit > Show Icon Extractor** 打开 **图标提取器** 工具窗口。
- 单击 **打开** 工具栏按钮。
- 浏览到 `C:\Windows\System32`。选择并打开 `shell32.dll` 文件。图标窗口将加载该 DLL 中嵌入的 200 多个图标。
- 通过选择 **文件 > 新建 > 项目** 创建一个新的 Windows 应用程序项目。
- 打开主窗体的 GUI 编辑器,如果代码视图已打开,则将其关闭。在窗体上放置一个按钮,并将 **ImageAlign** 属性设置为 **MiddleLeft**。
- 单击图标提取器工具栏上的 **刷新设计器组件树** 按钮。树将填充设计器窗体上的组件。
- 将图标从图标窗口拖放到树中按钮的节点上。该图标将被分配到树和设计器中。这适用于任何接受图形或图标的控件,包括菜单和工具栏。
注意:在使用任何受版权保护的材料之前,请检查所有 许可条款。
![]() |
观看图标提取器实际操作... |
单词补全 |
![]() |
Intellisense® 在正常工作时非常棒,但有时它可能不完整,或者根本不存在。当 Intellisense 不起作用时,SlickEdit Tools 的单词补全功能非常有帮助。原理很简单;您在 Intellisense 中获得的大多数结果都是您已经在文件中其他地方键入过的符号。**Complete Previous** 命令绑定到键盘序列 **Ctrl+Shift+Comma**。按下此键盘序列时,单词补全会在文件中查找与您已开始键入的内容匹配的前缀的第一个先前单词。例如,请看以下代码示例:
long CModel1DataAccess::Init(LPCTSTR loggingModuleName)
{
lo|
| 代表光标所在位置。您可以使用 Intellisense 的 Ctrl+Space 获取补全列表,但列表非常庞大,“loggingModuleName”在列表中靠后的位置。使用单词补全,**Ctrl+Shift+Comma** 会立即补全为“loggingModuleName”并突出显示找到匹配项的位置。如果我们想继续向后搜索更多“lo”匹配项,您可以继续按 **Ctrl+Shift+Comma**。下一个匹配项是“long”,函数返回类型。
我们如何使用它?
在 SlickEdit,我们在 Visual Studio 中进行大量工作,这些工作超出了 Intellisense 的能力范围。在这些情况下,单词补全可以节省大量时间。尽管单词补全功能很简单,但它却令人上瘾。一旦您使用几次,就会发现自己比使用 Intellisense 更频繁地使用它。
要尝试此功能,请执行以下操作:
- 打开一个 Code Project 示例应用程序。
- 在任何函数的末尾创建一个空行并将光标放在那里。
- 键入函数中任何符号的前几个字母,然后按 **Ctrl+Shift+Comma**。
- 单词补全将自动完成单词并突出显示找到的位置。
Diff With... |
![]() |
![]() |
SlickEdit Tools 附带 DIFFzilla®,允许您并排比较文件。市面上有许多差异比较工具,但 DIFFzilla 的特别之处在于它能够将当前缓冲区与多种不同来源进行比较。DIFFzilla 允许合并行和块的差异,您可以在 diff 缓冲区内进行实时编辑。然后,您可以将结果直接保存回关联的 Visual Studio 编辑器,或保存到文本文件中。
以下是您可以对当前缓冲区执行的 diff 功能摘要:
- 与磁盘文件比较:将当前缓冲区的内容与该缓冲区文件的内容进行比较。这是一种非常方便的方式,可以找出自上次保存文件以来所做的更改,并能够在必要时合并这些更改。您可以右键单击编辑器选项卡,然后单击 **与磁盘文件比较** 来执行此功能。
- 与备份历史记录比较:如果您使用 SlickEdit Tools 备份历史记录来维护所有文件保存的版本,您可以从列表中选择一个版本,然后单击 **运行选定备份的 diff**。这将比较当前缓冲区的内容与选定的备份历史记录版本。这是另一种查看自特定时间点以来所做更改并能够回滚这些更改的好方法。
- 与 CVS 或 SourceSafe 比较:可以通过“选项”页面将 DIFFzilla 设置为与 CVS 或 Visual SourceSafe® 2005 配合使用。这样做将允许您右键单击当前解决方案中的任何源代码控制文件,然后根据您的源代码控制系统选择 **与 CVS 比较** 或 **与 SourceSafe 比较**。DIFFzilla 将显示一个对话框,其中包含一个版本列表供您选择。如果文件在编辑器中打开,DIFFzilla 将该版本与打开的缓冲区进行比较。如果未打开,DIFFzilla 将该版本与磁盘上的文件进行比较。
我们如何使用它?
我经常使用 **与磁盘文件比较**,以至于它都快磨损了。我将其重新绑定到 **Ctrl+Shift+/** 键盘序列,以避免必须右键单击才能看到此视图。我也一直使用备份历史记录,这样当我在文件中陷入困境时,就无需一直回滚到上一次签入该文件。
要尝试此功能,请执行以下操作:
- 通过选择 **SlickEdit > Diff** 直接打开 DIFFzilla。
- 打开任何文件进行编辑。
- 更改编辑器缓冲区的内容。
- 右键单击编辑器选项卡,然后单击 **与磁盘文件比较**。
- 编辑器内容和磁盘文件将被比较。
- 您可以合并内容并将结果直接保存回关联的 Visual Studio 编辑器。
亲自试用 |
![]() |
在 SlickEdit,我们相信您将对我们最新发布的 SlickEdit Tools for Microsoft Visual Studio 2005 感到非常兴奋。下载试用版并亲自尝试。