hファイルとcppファイルの表示切替

説明

デフォルトでは、F12で「定義へ移動」、Ctrl+F12で「宣言へ移動」ができます。
が、他プロジェクトも検索するので遅いし複数見つかる時があります。
現在のプロジェクト(同じフォルダ中)のhファイルとcppファイルを切り替えるマクロです。

VC++.NETの場合

Imports EnvDTE
Imports System.Diagnostics

Public Module Module1

    '------------------------------------------------------------------------------
    '
    ' 1.「ツール」-「マクロ」-「マクロIDE」で例えば "OpenCppH" という名前でマクロを「編集」
    ' 2.「ツール」-「カスタマイズ」-「キーボード」で「OpenCppH」を選択し
    '   「ショートカットキー」に好きなショートカットを割り当てる(例:Ctrl+Alt+1)
    '
    '------------------------------------------------------------------------------
    Sub OpenCpp2H()
        'DESCRIPTION: H ファイルと C/Cpp ファイルの表示切替
        Dim sn = ActiveDocument.FullName '現在編集中のファイル名
        Dim cl = Len(sn) '現在のファイル名の文字数
        Dim s2 As String
 
        '現在が h なら cpp を表示
        If Right(sn, 2) = ".h" Then
            s2 = Left(sn, cl - 2) + ".cpp" 'Cpp ファイル名
            DTE.ItemOperations.OpenFile(s2) '開く 
        End If

        '現在が cpp なら h を表示
        If Right(sn, 4) = ".cpp" Then
            s2 = Left(sn, cl - 4) + ".h" 'H ファイル名 
            DTE.ItemOperations.OpenFile(s2) '開く 
        End If
    End Sub
End Module

zoom

VC++6.0の場合

'------------------------------------------------------------------------------
'FILE DESCRIPTION: マクロ ファイルの新規作成
'Microsoft Visual Studio\Common\MSDev98\Macros\Mymacros.dsm
'
' 1.「ツール」-「マクロ」で例えば "OpenCppH" という名前でマクロを「編集」
' 2.「ツール」-「カスタマイズ」-「キーボード」-「マクロ」-「OpenCppH」で御好みのショートカット キーを設定.
'------------------------------------------------------------------------------

Sub OpenCpp2H()
'DESCRIPTION: H ファイルと C/Cpp ファイルの表示切替
	sn = ActiveDocument.FullName '現在編集中のファイル名
	cl = len(sn) '現在のファイル名の文字数
	
	'現在が H なら Cpp を表示
	if right(sn, 2) = ".h" then 
		s2 = left(sn, cl - 2) + ".cpp" 'Cpp ファイル名
		Documents.Open s2, "Text" '開く 
	end if
	
	'現在が Cpp なら H を表示
	if right(sn, 4) = ".cpp" then 
		s2 = left(sn, cl - 4) + ".h" 'H ファイル名 
		Documents.Open s2, "Text" '開く 
	end if 
End Sub

添付ファイル: file002.png 1336件 [詳細]

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2018-09-15 (土) 07:31:38