使用ifdef将文本替换为聚焦于启用代码



是否存在任何方法来替换仅由C预处理器宏启用的文本,如Visual Studio中的#if/#ifdef ?

如果您问这样的功能是否内置,答案是"否"。

如果你问是否有可能创造一种方法来做到这一点,那么取决于你愿意努力工作的程度,答案是"也许"。显然,编辑器知道源文件中的预处理器启用了哪些代码,因为扫描器在其上运行,使用当前项目设置查找定义了哪些预处理器符号。着色器使用该信息为源文件着色。但是,标准的搜索和替换函数会忽略该信息(以及其他非基本文本的信息)。如果您非常想这样做,您可以使用Visual Studio SDK编写一个实现您自己的搜索和替换函数的扩展,并让它使用扫描器输出(或者可能是由着色器创建的文本装饰集合)来指导源文件的哪些部分进行搜索和替换。这将是大量的工作,可能比任何手动搜索和替换过程都要多得多。另一方面,也许你可以在VS库中出售生成的扩展。

最简单的方法是搜索并替换现有的工具,一次一个搜索(F3是你的朋友),并且只有当文本是"启用"颜色时才进行更改。

最新更新