Перемещение строки вверх / вниз ярлык в Visual Studio 2012
в VS2010 у меня был установлен ярлык Alt+Вверх/Вниз для перемещения строк кода вверх или вниз, так же, как я использовал в Eclipse в мои дни Java.
теперь, поскольку Power Tools и макросы (как я настроил этот ярлык в VS2010) недоступны в VS2012, как мне заставить это работать?
Я видел, как кто-то упомянул, что Resharper может это сделать, но из любви к огню и воде я не могу найти имена команд в списке команд это может сделать это.
Я пробовал ReSharper_MoveUp/MoveDown, и это не перемещает строки вверх / вниз:

Это перемещает блоки текста вверх и вниз. Я просто хочу построчно вверх или вниз, никакой причудливой логики там нет.
Раньше

после ALT+до (когда курсор находится на линии WriteLine) я хотел бы видеть это:

Я видел эти темы: Что такое эквивалент Eclipse ALT+UP/DOWN (move line) в Visual Studio?, Visual Studio: горячие клавиши для перемещения линии вверх / вниз и перемещения по последним изменениям, но ни одно из предложенных решений не работает в VS2012.
есть еще идеи?
UPD 7 Nov 2012: . Расширения догоняют с помощью Visual Studio 2012, так. Теперь я знаю по крайней мере 3 расширения, которые обеспечивают эту функциональность:
Расширение MoveLine. Ссылке, предоставленной Карл Г
Переместить Расширение Линии С изменениями к версии 2010 года. На отель gius
Производительность Электроинструментов 2012. На самом деле не пробовал это, но этот блог заявляет, что линия движется вверх / вниз
UPD 15 Nov 2012: просто наткнулся на другое расширение, которое утверждает, что он делает то, что требуется здесь. Не пробовал, хотя: LineMan Расширение
UPD 10 мая 2015 только что установлен VS2015 RC, и это уже встроенный:

9 ответов:
обновление: ура, производительность PowerTools VS2012 теперь доступен и предлагает эту функциональность (наряду с другим личным фаворитом,
Tools.AddEndTokenAtTheEnd.)Расширение MoveLine (совместим с VS 2012; мне пришлось вручную перезапустить мой VS, чтобы увидеть команды в инструменте быстрого доступа VS.)
для тех, кто прибыл на этот вопрос с помощью Visual Studio 2013 (или выше, я бы предположил) функция встроена прямо в программу. Просто используйте Altдо и Altвниз для перемещения строки курсором-или выбранных строк-вверх и вниз.
Если вы хотите привязать его в инструменты>опции>окружающая среда>клавиатура ключи
Edit.MoveSelectedLinesUpиEdit.MoveSelectedLinesDown. Возможно, вам придется сначала удалить новую комбинацию из других существующих ключей.
Установить ReSharper.
открыть Инструменты - > Параметры - > среда - > клавиатура (как показано на рисунке)
- Найти " ReSharper.ReSharper_MoveUp"
- В "использовать новый ярлык в:" выберите: "текстовый редактор"
- нажмите В "Press shortcut keys:" и нажмите ярлык (например Alt + ArrowUp)
- нажать кнопку "Назначить" То же самое с "ReSharper.ReSharper_MoveDown"
P. S. работает хорошо для одиночных линий и несколько выделенные строки, но удаляет выделение после перемещения 1 строки. Надеюсь, что есть способ переместить несколько строк несколько раз в одном выборе.
Если у вас есть Resharper, то вы можете нажать Ctrl + Shift + Alt + ↑ для перемещения текущей строки вверх. или Ctrl + Shift + Alt + ↓ для перемещения на одну строку вниз.
Это работает в VS 2012 Premium со схемой клавиатуры Visual Studio в Resharper 7 (7.0.97.60 to быть точным.)
Edit: это сопоставляется с ' ReSharper.ReSharper_MoveUp ' / 'MoveDown' команды.
можно использовать Переместить Команду Строки
в то время как многие люди, кажется, рекомендуют разное. Расширения Visual Studio и Resharper, я хотел бы отметить, что есть уроженца горячая клавиша, которая выполняет эту цель. Я пришел к этому вопросу, пытаясь найти ответ, так как мой Resharper заменил мои горячие клавиши по умолчанию их версиями MoveUp и MoveDown.
и в то время как горячие клавиши Resharper перемещают вещи вверх и вниз, они не что ищет оригинальный плакат, и они не то, что я хотел. Эти горячие клавиши перемещают методы и блоки кода,не отдельные линии.
Visual studio имеет две команды горячих клавиш для перемещения выбранных строк вверх или вниз. Эти горячие клавиши:
- правка.MoveSelectedLinesDown
- правка.MoveSelectedLinesUp
однако я использую Visual Studio 2013, поэтому я не знаю, существуют ли они в более старой версии. Если 2012 не имеет этих горячих клавиш, то возможно, расширение является единственным решением.
в любом случае, у меня была проблема с поиском точной горячей клавиши в списке visual studio, и мне потребовалось много времени, чтобы найти их, поэтому я надеюсь, что мое решение поможет кому-то еще в подобной ситуации.
Shift+ Del а то Ctrl+V
Shift+ Del тут вырезать (то же самое, что Ctrl+ X) операция над текущей строкой, на которой расположен курсор.
затем вы можете использовать Ctrl+V вставить его в любом месте вам нравится.
хорошо, что вам не нужно выберите полная текущая строка, только курсор должен быть расположен на линии.
одним из недостатков использования этого ярлыка является то, что вы не сможете увидеть перемещение линии ( вверх или вниз ) живое перед вашими глазами.
ярлыки перемещения вверх и вниз ReSharper являются умными-вместо того, чтобы просто перемещать текущую строку (что может легко привести к нарушению кода), он будет перемещать текущий оператор вверх и вниз в списке операторов, составляющих тело метода. Это намного мощнее, чем просто перемещение одной строки кода.
но это не поможет вам получить ваше заявление внутри
ifзаблокировать. Здесь нужно сделать одну из двух вещей.во-первых, переместить заявление выше the
ifблок, а затем использовать Ctrl+Shift+ Alt+право чтобы подтолкнуть его в область действия. Заявление теперь будет внутриifблок, и вы можете использовать вверх и вниз, чтобы переместить его вокруг там. Вы также можете использовать Ctrl+Shift+ Alt+левый чтобы вытащить его в рамки, за пределамиifзаблокировать.кроме того, вы можете поместить текст каретка на внешней стороне закрывающей скобки
ifблок и использовать Ctrl+Shift+ Alt+вниз чтобы переместить скобку вниз, перешагнув через следующие операторы, включая их внутриifзаблокировать.эти клавиши могут сделать гораздо больше, чем просто переместить один оператор. Если вы поместите текстовый курсор на объявление метода или класса, до и вниз переместит весь метод или класс объявление вверх и вниз. Если вы поместите текстовый курсор в список параметров метода,левый и право будет переставлять отдельные параметры (а затем Alt+введите можно вызвать изменение подписи рефакторинга).
Подробнее справки.

Comments