有没有人知道视觉工作室键盘快捷方式交换声明的两边?

时间:2010-09-21 11:51:46

标签: visual-studio keyboard-shortcuts

只是想知道是否有人知道键盘快捷方式来交换语句的两边。例如:

我想换掉

firstNameTextbox.Text = myData.FirstName;

myData.FirstName = firstNameTextbox.Text;  

有没有人知道快捷方式,如果有的话?显然我会输出它们,但是我需要交换很多的语句,我认为像这样的快捷方式会很有用!

随意扔掉你觉得很酷的快捷方式!

我的贡献是 CTRL + E D - 这会将您的代码格式化为Visual Studio标准!很有名,我猜,但我用它所有时间! :)

更新

只是为了让所有人都知道,通过对发布的文章进行一些窥探,我设法构建了一个正则表达式,所以这里是:

查找

{.+\.Text = myData\..+};

并替换为:

\2 = \1;

希望人们可以将它应用到他们想要交换的表达式中!

6 个答案:

答案 0 :(得分:3)

我认为以下主题是一个以

开头的好地方

Invert assignment direction in Visual Studio

答案 1 :(得分:2)

如果没有特定的键盘快捷键,我将如何做到这一点:

  • 首先,选择要修改和替换的文本

    " = " with "                 =               "
    

    (这里的关键是添加大量空格)。

  • 如果按住Alt并使用鼠标,则可以选择代码“块”。使用此选项仅选择等式右侧的文本(在您的选择中添加额外的空格很有帮助)
  • 使用相同的Alt + Left-Click组合选择左侧的开头(只需选择一个空白区域)。您应该能够将文本粘贴到此处。
  • 如果您为刚刚添加的文字添加了额外的空白区域,则应该能够使用= + Alt技术轻松插入Click。使用相同的技巧删除代码块右侧悬挂的等号。

虽然这可能不会完全你正在寻找什么,但我发现这些技巧非常有用。

答案 2 :(得分:1)

如果你正在使用ReSharper,可以按 Ctrl Alt Shift + ←< / kbd>或

答案 3 :(得分:1)

该功能位于Resharper中。选择代码段并单击内容向导,该向导是左上角的铅笔图标,读取查看操作列表,然后选择反向分配。 它完成了。

答案 4 :(得分:0)

swap-word是一个VSCode扩展,听起来就像你想做的那样。

  

快速交换两个单词或选择......

但我不确定它是否与VS兼容。

答案 5 :(得分:0)

由于我对需要在Visual Studio搜索/替换对话框中输入复杂字符串的答案不满意,因此我为自己编写了一个小小的AutoHotkey脚本,该脚本仅需按a即可执行交换。键盘快捷键。而且,无论您是在VS中还是在另一个IDE中。
每当按下 Win + Ctrl-S 时,此热键(只需从文本文件作为脚本启动一次,或编译为exe即可运行)。

#^s Up::  
 clipboard := "" ; Empty the clipboard
 Sendinput {Ctrl down}c{ctrl up}
 Clipwait
 Loop, Parse, clipboard, `n, `r  ; iterates over seperates lines
 {   
  array := StrSplit(RegExReplace(A_LoopField,";",""),"=")  ; remove semicolon and split by '='
  SendInput, % Trim(array[2]) . " = " .  Trim(array[1]) . ";{Enter}"
 }
return 

更多细节是可能的,例如还支持行以逗号结尾的代码

... ,我可以在同一个脚本中添加更多热键和热字符串,例如对于我最错字的单词:

::esle::else    ; this 1 line rewrites all my 'else' typos