目前 VS 有一个非常有用的特性:sort usings (C#)。
我希望任何随机文本都具有相同的功能,例如 - 配置文件中的 XML 节点。
实现起来有多复杂?VS插件,对吧?是否可以调用一些用于排序的 VS API?
目前 VS 有一个非常有用的特性:sort usings (C#)。
我希望任何随机文本都具有相同的功能,例如 - 配置文件中的 XML 节点。
实现起来有多复杂?VS插件,对吧?是否可以调用一些用于排序的 VS API?
编辑:请注意,此解决方案不适用于 VS2013 或更高版本,因为已删除对宏的支持。
您不一定需要编写 VS 插件来执行此操作:Visual Studio 已内置宏。要开始使用,请使用工具、宏、记录临时宏。
这是我根据记录临时宏给我的代码一起破解的“排序行”命令:
Imports System
Imports EnvDTE
Public Module TimModule
Sub SortLines()
Dim Selection As TextSelection = DTE.ActiveDocument.Selection
Dim Lines() As String = Selection.Text.Replace(Environment.NewLine, Chr(13)).Split(Chr(13))
Array.Sort(Lines)
DTE.UndoContext.Open("Sort Lines")
' Edit - see comments
' Selection.Text = String.Join(Environment.NewLine, Lines)
Selection.Delete
Selection.Insert(String.Join(Environment.NewLine, Lines))
DTE.UndoContext.Close()
End Sub
End Module
刚刚找到了一个不错的免费插件:Menees VS Tools 2012(或2010 版)- 正是这样做的,还有一些文字技巧。我安装它时有一些小的负面影响,但在评论页面上留下评论后,它在几天内得到了修复。去吧!=)
现在有一个 2017 版本:Menees VS Tools 2017
与 2019 年相比:
您可以将代码复制到 Sublime Text 中,选择代码部分并按 F9(或转到 Edit > Sort Lines)。然后,您可以将其复制回 Visual Studio。
我个人使用 Mads Kristensen 的Web Essentials扩展。您只需选择要排序的行和 Alt+3 或 Alt+4 (asc/desc)。
这仍然出现在搜索的顶部,所以我将添加这个最新的解决方案。如果您正在运行当前的 VS Code(为什么不运行?),您可以通过按 ctrl-shift-p(Mac 是 cmd-shift-p)使用内置排序器并在随后的搜索中键入“sort”盒子。有很多选择。