Mr_*_*s_D 18 c++ comments toggle visual-studio-2010
实际上有2个问题
1)在所选行上切换评论的快捷方式?适用于我用notepad ++开始使用的所有iDE
2)ctrl-k, ctrl-c展品的这种行为(引自某个地方措辞得很好):
C#:选择某些文本的每一行都在line-start上用双斜杠进行注释.如果未选择任何内容,则注释光标所在的行.
C++:如果未选择任何内容或选择完整行,则其行为与上述相同.但是,如果选择了部分行,并且未选择任何注释作为选择的一部分(例如,选择代码行中间的某些内容),则选择将被/*和*/包围.
因为我在C++中编码,我发现这种行为很烦人 - 我希望能够注释掉部分选中的行 - 任何变通方法?
选择某些文本的每一行在line-start处以双斜杠进行注释.如果未选择任何内容,则会注释光标所在的行.
如果是多行选择: 仅当选择中的所有行都被注释时,我的解决方案才会取消注释.我发现它更直观.
工具 - > 宏 - > 宏IDE ...
在Macro Explorer中右键单击Macros,然后单击New Macro Project ...
为例如MyMacroProject命名宏,然后单击" 添加".
在Macro Explorer中右键单击新宏项目中的Module1, 然后单击Edit.
将其粘贴到宏编辑器窗口中:
Option Strict Off
Option Explicit Off
Imports EnvDTE
Imports System.Text.RegularExpressions
Public Module Module1
Sub ToggleCommentLine()
Dim sel As TextSelection = DTE.ActiveDocument.Selection
Dim firstLine As Integer = sel.TopPoint.Line
Dim lastLine As Integer = sel.BottomPoint.Line
sel.GotoLine(firstLine, True)
sel.LineDown(True, lastLine - firstLine)
sel.EndOfLine(True)
'we un-comment only if there is no commented line
Dim allLinesCommented As Boolean = True
Dim lineIndex As Integer = firstLine
While allLinesCommented And (lineIndex <= lastLine)
sel.GotoLine(lineIndex, True)
allLinesCommented = Regex.IsMatch(sel.Text, "^\s*//.*$")
lineIndex += 1
End While
'iterate over the lines
For lineIndex = firstLine To lastLine
sel.GotoLine(lineIndex, True)
Dim line As String = sel.Text
Dim m As Match = Regex.Match(line, "^(\s*)(//)(.*)$")
If allLinesCommented Then
sel.Text = m.Groups(1).Value & m.Groups(3).Value
ElseIf Not m.Success Then
sel.StartOfLine(vsStartOfLineOptions.vsStartOfLineOptionsFirstColumn)
sel.Text = "//"
End If
Next
'select all the affected lines
sel.GotoLine(firstLine, True)
sel.LineDown(True, lastLine - firstLine)
sel.EndOfLine(True)
End Sub
End Module
Run Code Online (Sandbox Code Playgroud)
保存此文件并关闭宏编辑器窗口.
将宏绑定到一个键:
工具 - > 选项... - > 环境 - > 键盘
在显示命令中键入以下内容:
ToggleCommentLine
选择Macros.MyMacroProject.Module1.ToggleCommentLine.
在按快捷键处设置一个键:.,然后单击" 分配",再单击" 确定".
请享用.
该行为是故意的。如果用户需要对单行进行微小的临时更改,而不需要重写整行,则使用 Ctrl+K、Ctrl+C 快捷键对可以让他/她仅注释掉更改而不是整个行线。
编辑:
至于问题一,它是相同的快捷键对:Ctrl+K、Ctrl+C 打开任何评论,Ctrl+K、Ctrl+U 关闭任何评论。
编辑2:
如果您仍然不满意,请从 Whole Tomato 软件获取 Visual Assist X:http://www.wholetomato.com/ 它会在文本突出显示时添加一个附加注释快捷方式映射到“/”和“*”键。
| 归档时间: |
|
| 查看次数: |
24258 次 |
| 最近记录: |