나는 사용자의 코드를 구문 분석하기 위해 매크로 이벤트를 작성하는 방법을 찾고있다.
예를 들어 프로그래머가 특정 코드를 작성할 때이 이벤트는 코드 행을 구문 분석하고 정규 표현식과 일치하는 경우 활성 문서에 몇 가지 추가 코드를 삽입합니다.
홀라인 코드를 얻고 어떤 이벤트를 사용해야합니까?사용자가 입력 한 코드를 가져 오기 위해 Visual Studio 매크로 이벤트를 작성하는 방법은 무엇입니까?
0
A
답변
-1
그러나, 나는 그 텍스트 입력이 그들 중 하나입니다 생각하지 않습니다, 매크로가 응답 할 수있는 이벤트가 있습니다, 더 나은 접근 방식은 미리 사용할 수 있습니다 - http://msdn.microsoft.com/en-us/library/ms165392(v=VS.100).aspx
그들은 당신이 키워드를 정의 할 수 있습니다 및 그런 다음 편집기에 텍스트를 추가하십시오. 좋은 예는 속성 스 니펫입니다. 편집기에서 'prop'를 입력 한 다음 Tab 키 (VB에서 C# 두 번, VB에서 한 번)를 눌러 호출하십시오. http://msdn.microsoft.com/en-us/library/z41h7fat(v=VS.100).aspx
2
당신은 TextDocumentKeyPressEvents.AfterKeyPress 이벤트를 사용할 수 있습니다
는 여기 조각의 자세한 목록입니다. 사용자가 텍스트 편집기에서 키를 누르면 다음 매크로가 트리거됩니다. 그런 다음 현재 행을 가져옵니다. 이 예제에서는 행에 "hello"텍스트가 포함되어 있는지 테스트하고, 그렇다면 텍스트 상자에 줄을 표시합니다.
Private Sub TextDocumentKeyPressEvents_AfterKeyPress(ByVal Keypress As String, _
ByVal Selection As EnvDTE.TextSelection, ByVal InStatementCompletion As Boolean) _
Handles TextDocumentKeyPressEvents.AfterKeyPress
Try
Dim line As String
Dim aPoint As EditPoint = Selection.ActivePoint.CreateEditPoint
Dim startPoint As EditPoint = aPoint.CreateEditPoint
startPoint.StartOfLine()
Dim endPoint As EditPoint = aPoint.CreateEditPoint
endPoint.EndOfLine()
line = startPoint.GetText(endPoint)
If line.Contains("hello") Then
MsgBox(line)
End If
Catch ex As Exception
End Try
End Sub
만들고이 매크로를 적용하려면 :
- 이동 메뉴 도구 - 매크로 - 매크로 IDE ... 매크로 IDE 클래스 뷰에서
- 는 MyMacros로 이동 - {} MyMacros - 환경 이벤트. EnvironmentEvents를 엽니 다 (더블 클릭).
- 이 코드를 모듈 내부에 붙여 넣으십시오 (모듈 끝 줄 바로 앞에)