C#のファイルヘッダテンプレート

MSDN Archiveで、本日時点最もダウンロードされている Code Header Designer を使ってみました。

このツールができることは、CやC++でもよく見るファイルに著作権情報やファイル名・作者などをヘッダとして統一的なフォーマットで作成することです。DownloadページからSeup32.msiを落としてきてインストールします。インストールはNext連打でOkです。

instal

インストール後、[スタート] – [すべてのプログラム] – [CSharp Code Header Designer]をクリックすると以下のようなウィンドウが立ち上がります。

top

使い方にちょっと癖(バグ?)があるようですが、以下のようにします。

Step1.HeaderDesignerのプロジェクトを作成する

  1. [File] – [New]から新しいプロジェクトを適当なディレクトリに保存します。.csprojと同じディレクトリでいいでしょう。
  2. 下のような画面が出てくるので、ProjectName(ここではTEST)と対象のc#コードを含むプロジェクトorソリューションを指定します。プロジェクトを選択すると自動的にC#ソースが選択されます。3つほどあるオプションはご自由に設定してください。
  3. OKで閉じたら[File] – [Save] からプロジェクトを上書き保存しておきます。

file_select

Step2.Headerのテンプレートを構成する

  1. 簡単には[Templates]から[Standard]または[Style Cop]を選択し、ヘッダテンプレートのベースを選択します。StandardはC,C++風、StyleCopはXMLのC#風ベースです。
  2. Feedback列に「値をいれてください」と出てくるものはValue列に値を入れます。
  3. 再び[File] – [Save] でプロジェクトを保存します。

style

見てもらえばわかると思いますが、”[]”で囲まれた領域が置換される文字列です。自分で何か設定すると下のReplaceable Fieldに行が自動追加されます。”[AUTO: ..]”はファイル名や作成者などで、自動的に読み取って反映されます。Feedbackの列に「値を入れてください」といわれる限り正しいヘッダではありません。

Step3.テンプレートを適用する

  1. [Project] – [Apply Headers]を実行すると対象のC#ソースにStep2で設定したヘッダが適用されます。
  2. [Project] – [Apply Headers]が実行できない場合、[File] – [Open]からStep2で保存したプロジェクトを読み直してください。

ここらへんでたまに動かない場合があるように感じますが読みなおせば実行できるようです。まぁそもそもファイル選択ボタンが「toolStripButton1」なんてツールチップが出るくらいなので完成度は高いとは言えませんね。適用結果はこちら。

//-----------------------------------------------------------------------
// <copyright file="Program.cs" company="Tocs Company">
//     Copyright © Tocs Company. All rights reserved.
// </copyright>
// <authorTocs</author>
// <email>test@mail.com</email>
// <date>24/03/2014</date>
// <summary>no summary</summary>
//-----------------------------------------------------------------------
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace WindowsFormsApplication
{
    static class Program
    {
        /// <summary>
        /// アプリケーションのメイン エントリ ポイントです。
        /// </summary>
        [STAThread]
        static void Main()
        {
            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);
            Application.Run(new Form1());
        }
    }
}

ありゃりゃ良く見ると<author>の開始タグがおかしなことになってますね、デフォルトのタグがすでにおかしいようです。使える場面はありそうですが、私自信著作権(Copyright)表記には賛成ですが、作成者(Author)や自明なファイル名などを載せることにあまり意味が感じられません…

広告

C#のファイルヘッダテンプレート」への1件のフィードバック

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中