忍者ブログ
妄想・想像・創造
×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

VBだと、定義に縮小しても、summary部分は表示されるけど
C#だと、表示されない。コレ、すこぶる不便。

ネットを探しまくったけど、解決方法がなかったのでマクロを自作。
もっといいマクロの組み方あると思うけど、プロトタイプ1号ということで。
Public Module Custom
'****************************************************
' xmlヘッダを全て開く
'****************************************************
Sub OpenXmlComment()

' 定義に縮小
DTE.ExecuteCommand("Edit.CollapsetoDefinitions")

' 1行目にジャンプ
DTE.ActiveDocument.Selection.GotoLine(1)

' <summary>を検索
DTE.Windows.Item("{CF2DDC32-8CAD-11D2-9302-005345000000}").Activate() '検索と置換
DTE.Find.FindWhat = "<summary>"
DTE.Find.Target = vsFindTarget.vsFindTargetCurrentDocument
DTE.Find.MatchCase = False
DTE.Find.MatchWholeWord = False
DTE.Find.Backwards = False
DTE.Find.MatchInHiddenText = True
DTE.Find.PatternSyntax = vsFindPatternSyntax.vsFindPatternSyntaxLiteral
DTE.Find.Action = vsFindAction.vsFindActionFind

Do
' 検索実行
DTE.Find.Execute()
' ステータスバーに以下のメッセージが表示されれば終了
If (DTE.StatusBar.Text = "ドキュメントの終わりまで検索しました。") Then
Exit Do
End If
Loop
' 検索ウィンドウを閉じる
DTE.Windows.Item("{CF2DDC32-8CAD-11D2-9302-005345000000}").Close()
End Sub
End Module


プロトタイプバージョン2

  '****************************************************
' xmlヘッダを全て開く
'****************************************************
Sub OpenXmlComment()

' 定義に縮小
DTE.ExecuteCommand("Edit.CollapsetoDefinitions")

' 現在行を取得
Dim selection As TextSelection = DTE.ActiveDocument.Selection
Dim nowLine As Integer = selection.ActivePoint.Line

' 1行目にジャンプ
selection.GotoLine(1)

' <summary>を検索
DTE.Windows.Item("{CF2DDC32-8CAD-11D2-9302-005345000000}").Visible = False
'DTE.Windows.Item("{CF2DDC32-8CAD-11D2-9302-005345000000}").Activate() '検索と置換
DTE.Find.FindWhat = "<summary>"
DTE.Find.Target = vsFindTarget.vsFindTargetCurrentDocument
DTE.Find.MatchCase = False
DTE.Find.MatchWholeWord = False
DTE.Find.Backwards = False
DTE.Find.MatchInHiddenText = True
DTE.Find.PatternSyntax = vsFindPatternSyntax.vsFindPatternSyntaxLiteral

DTE.Find.Action = vsFindAction.vsFindActionFind

Do
' 検索実行
DTE.Find.Execute()
' ステータスバーに以下のメッセージが表示されれば終了
If (DTE.StatusBar.Text = "ドキュメントの終わりまで検索しました。") Then
Exit Do
End If
Loop
' 検索ウィンドウを閉じる
DTE.Windows.Item("{CF2DDC32-8CAD-11D2-9302-005345000000}").Close()

' マクロを実行した行にジャンプ
DTE.ActiveDocument.Selection.GotoLine(nowLine)
End Sub

拍手

PR
この記事にコメントする
お名前
タイトル
文字色
メールアドレス
URL
コメント
パスワード   Vodafone絵文字 i-mode絵文字 Ezweb絵文字
この記事へのトラックバック
この記事にトラックバックする:
カレンダー
07 2017/08 09
S M T W T F S
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31
最新CM
[09/26 gor]
[09/26 gor]
[05/17 gor]
[05/09 RX-78/C.A]
[05/07 gor]
プロフィール
HN:
編集長 黒幕
性別:
非公開
自己紹介:
京阪奈を中心に活動する自称ストリートミュージシャン。
目標は、唄って踊れる、さらに、ゴルフも上手い、さらに
字も綺麗なアーティスト。
最近、MCや物販が一人歩きで有名になり、
実際、唄うと
「あ~、この人唄えるんだぁ~」
みたいな目で見られることが多い。

また、スタッフと間違われること多し。
「あっ、ドリンク頼んで良いですか!」
ブログ内検索
カウンター
フリーエリア

Copyright © [ 黒幕編集部 ] All rights reserved.
Special Template : 忍者ブログ de テンプレート and ブログアクセスアップ
Special Thanks : 忍者ブログ
Commercial message : [PR]