Search in Files工具是Wing IDE中最强大的搜索选项。它支持磁盘、项目,打开编辑器,或其它文件集的多文件批量搜索。它还可以使用通配符搜索,并可以做基于正则表达式的搜索/替换。
建议用户在进行细节设置之前,在example1.py文件中尝试一个简单的批处理搜索。从搜索管理器中选择当前文件(这是默认的)。然后在搜索区域输入PrintAs。
Wing IDE将立即开始搜索,每当用户改变搜索字符串或进行其它影响结果的更改时,都需重新启动搜索。当完成之后,用户应该看到如上面截图所示的画面。点击第一个结果行来进行选择,将会高亮显示在example1.py文件中与相应的搜索的匹配行。
用户可以在Search in Files管理器中使用后退/前进的方向键来遍历搜索结果。
文件集
接下来,更改选择器来查看在项目中的所有的文件,并将搜索字符串改为HTML。这与搜索单个文件是同样的方式,但是会列出项目中所有文件的搜索结果。用户也可以用这个方式搜索当前打开的所有文件。
在大多数情况下,搜索被限制在项目中的子文件。例如,只有Python文件。这可以通过在过滤选择器中选择Python文件实现。用户还可以在过滤器选择器使用Create/Edit File Sets定义其他文件集。这将显示文件集偏好:
每个文件集有一个名称和一个包括和排除规范列表。每一种规格可以应用到文件名、目录名或文件的MIME类型。一个简单的例子就是指定 *.pas通配符通过名称匹配Pascal文件,或使用所有的HTML文件的text/html mime类型。
搜索磁盘
Wing IDE也可以直接在磁盘上进行搜索。通过在区域中输入路径进行尝试。假设用户有没有改变搜索字符串,就会在目录中的所有的文本文件搜索HTML。
磁盘搜索还可以递归,在这种情况下Wing IDE将搜索所有子目录。这是通过在范围选择器选择一个目录,并在选项菜单检查Recursive Directory Search。
用户可以使用Options Selector中的Show Line Numbers选项和Result File Name组改变结果列表的格式。这个选项选择器也包含各种其它搜索选项。
注意,搜索项目文件通常比搜索目录结构速度更快,因为文件组是预先计算的。
多文件替换
在处理结果集中的多个文件时,Wing IDE将默认在编辑器中打开每个更改的文件,不管该文件是否已经打开。这允许用户通过不保存文件撤消更改或者通过在每个编辑器发行撤销。
选项菜单中还有另一种替代方式。如果用户检查Disk项上的Replace Operates, Wing IDE将会直接在磁盘上改变文件而不是在IDE中打开编辑器。这可以速度更快,但不推荐,除非用户拥有一个版本控制系统,错误出现时能及时做出反应。
注意,即使直接在磁盘上操作,Wing IDE将替换在IDE中已经打开编辑器的更改。如果已经文件已经保存在IDE中,这就可以避免创建两个版本的文件。建议在Disk模式下Replace Operates进行工作时关闭所有编辑器,或每个替换操作之后立即从文件菜单选择Save All。这可以避免丢失替换部分,避免在源程序中导致不一致的应用程序的替换操作。