在Visual Studio 2013中,有没有一种移动书签行号的方法?

4
我正在使用Visual Studio Professional 2013中的书签功能。
目前,如果在书签上方添加/删除代码行,则书签会自动更改“行号”,使得书签保持与预期代码行一致,这对我非常有用。
然而,最近我注意到有些书签已经移动到了意外的行(行号仍然相同,但上方的代码行已经添加/删除)。这可能是由于在源代码控制资源管理器中更新文件并引入其他人的更改所导致的。
是否有一种方法可以移动书签(仅更改行号),而不需要删除并重新添加它?

1
书签设置在行号上,而不是代码上。如果您修改了代码,则书签将保留在行号处,并且不会随着代码移动。 - raven
1
在Visual Studio Professional 2013中,如果您在书签之前插入代码,则实际上会更改行号。 @RobertoDeLaParra,您使用的是哪个版本的Visual Studio? - Simon Bosley
1个回答

6
根据 MSDN 的说明,书签设置为行号。
引用:“书签设置为行号,而不是代码。如果您修改了代码,则书签保留在行号上,并且不随代码移动”(参见 msdn)。
如果您使用 Visual Studio 插入或删除行,则它会调整所有后续书签的行号,但这仅是编辑器的功能。
如果您从 SCCS 更新包含书签的解决方案,那么书签将保留在完全相同的行号上,如果更新添加或删除行,则不会移动。
书签存储在具有专有结构的二进制文件中,因此很难进行操作。
可能会有一个扩展程序可以按您需要管理书签。
替代提议:
也许任务列表(请参见MSDN about Task List)能够帮助你。它会列出所有包含用户可定义关键字(默认为TODO或HACK)的注释,并且即使从SCCS更新代码,注释也会随之移动。
不要添加书签,只需按照格式// TODO: (your description)添加注释,打开“任务”窗口并从组合框中选择“注释”,即可查看包含一个定义关键字的所有注释列表。

这解释了正在发生的事情,非常感谢。我需要能够跳转到代码的重要部分,但不能干扰实际的代码本身。看起来我需要暂时设置我的书签(因为它们最终会漂移)。 - Simon Bosley
如果我可以删除/更改TODO作为默认标记词,那么任务列表会很好,但是代码库中已经有200多个TODO,因此任务列表已经过度拥挤(也可以使用过滤器!)。在这里最好的方法似乎是设置自己的任务列表标记,然后将其设置为高优先级,以便跳到列表顶部。对于跟踪我的TODO非常有用。 - Simon Bosley
可能 Visual Studio 2015 已经改变了这个。我现在无法尝试,但据我记得,在 VS 2015 中可以删除默认关键字。 - Andreas H.

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接