Сортировать выделенный текст из контекстного меню Visual Studio - PullRequest
37 голосов
/ 28 июля 2010

В настоящее время VS обладает очень полезной функцией: сортировка при использовании (C #).

Мне нужны те же функции для любого случайного текста, например - узлов XML в файлах конфигурации.

Насколько сложныйреализовать это?VS Addin, верно?Можно ли вызвать некоторый VS API, который используется для сортировки пользователей?

Ответы [ 5 ]

23 голосов
/ 28 июля 2010

Редактировать: Обратите внимание, что это решение не работает на VS2013 или выше, так как поддержка макросов была удалена.

Для этого необязательно кодировать надстройку VS: в Visual Studio встроены макросы. Для начала используйте Инструменты, Макросы, Запись временных макросов.

Вот команда 'Sort Lines', которую я взломал вместе на основе кода, который мне дал Record Temporary Macro:

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
16 голосов
/ 30 марта 2016

Хорошим дополнением для Visual Studio является Code Maid

Вы выбираете несколько строк и выбираете из контекстного меню «Сортировка строк» ​​

enter image description here

И вуаля, ваши строки красиво отсортированы в алфавитном порядке:

enter image description here

14 голосов
/ 15 декабря 2012

Только что нашел хороший бесплатный аддон: Menees VS Tools 2012 (или 2010 ver ) - делает именно это и еще несколько текстовых трюков. Было несколько незначительных недостатков, когда я установил его, но после того, как он оставил комментарий на странице обзора, он был исправлен в течение нескольких дней. Вау, чтобы идти! =)

Сейчас доступна версия 2017 года: Menees VS Tools 2017

6 голосов
/ 16 ноября 2015

Вы можете скопировать код в Sublime Text, выбрать часть кода и нажать F9 (или перейти в «Правка»> «Сортировать строки»). Затем вы можете скопировать его обратно в Visual Studio.

3 голосов
/ 25 марта 2016

Я лично использую расширение Web Essentials от Mads Kristensen.Вы просто выбираете строки, которые хотите отсортировать, и Alt + 3 или Alt + 4 (asc / desc).

...