Tera Term 開発者向け

  1. 開発環境
  2. ライブラリ
  3. SVN コミッターへの注意
  4. TERATERM.INI への項目追加
  5. メニューID追加時の命名規則
  6. マクロコマンド追加時の作業リスト
  7. ライブラリのビルド方法
  8. Tera Termのビルド方法
  9. TeraTerm Menuのビルド方法
  10. TTXKanjiMenuのビルド方法
  11. TTProxyのビルド方法
  12. TTSSHのビルド方法
  13. CygTermのビルド方法
  14. TTXSamplesのビルド方法
  15. ヘルプファイルのビルド方法
  16. リリースの方法

開発環境

ライブラリ

SVN コミッターへの注意

SVN リポジトリは一般向けとは違い、以下の通りです。

svn+ssh://svn.osdn.net/svnroot/ttssh2/trunk

ファイルを別のディレクトリで編集しないでください。
コミットしたときに別の人の修正を削除してしまうことがあります。

アップデート・コミット時の注意
svnの処理が失敗することがあるので、ファイルをエディタ等で開いたままで行わないでください。

言語ファイル編集時の注意
言語ファイル(installer\release\lang\*.lng)は多言語対応エディタ(vim, EmEditor, Notepad++等)で編集してください。

TERATERM.INI への項目追加

項目名
すでに EnableFoo... や DisableBar... が混在してしまっているが、混乱しやすい。
今後は Baz... という形式にするのが望ましい。

1桁目は 5
2桁目は
  Tera Term VT ウィンドウなら  0
  Tera Term TEK ウィンドウなら 1
  TTSSH なら                   2
  TTProxy なら                 3
  TTXKanjiMenu なら            4
3桁目は
  [File] メニューなら    1
  [Edit] メニューなら    2
  [Setup] メニューなら   3
  [Control] メニューなら 4
  [Window] メニューなら  8
  [Help] メニューなら    9

例:File配下にTTSSHのメニューを追加する

#define ID_SSHSCPMENU       52110

マクロコマンド追加時の作業リスト

Tera Termマクロを新設するときの作業手順について、以下に示します。

ライブラリのビルド方法

Tera Termのビルド方法

Tera Termのビルド方法について以下に示します。
ビルドにはVisual Studio 2005 Standard Edition以上が必要です。(Visual Studio 2005 Express Editionは不可)

  1. ソースコードをOSDN(https://ja.osdn.net/projects/ttssh2/)からチェックアウトする。
  2. teraterm\visualc\ttermpro.sln をVisual Studioで開く。
    .slnファイルの改行コードが"LF"になっていると、Visual Studioが起動しないので注意願います。
  3. ソリューションをビルドする。
  4. ビルドに成功するとteraterm ディレクトリに実行プログラムが生成される。

TeraTerm Menuのビルド方法

  1. Checkout TeraTerm Menu source code from OSDN(https://osdn.net/projects/ttssh2/).
  2. ttpmenu\ttpmenu.sln をVisual Studioで開く。
  3. ソリューションをビルドする。
  4. ビルドに成功すると ttpmenu ディレクトリに ttpmenu.exe が生成される。

TTXKanjiMenuのビルド方法

  1. Checkout TeraTerm Menu source code from OSDN(https://osdn.net/projects/ttssh2/).
  2. TTXKanjiMenu\ttxkanjimenu.sln をVisual Studioで開く。
  3. ソリューションをビルドする。
  4. ビルドに成功すると TTXKanjiMenu ディレクトリに ttxkanjimenu.dll が生成される。

TTProxyのビルド方法

TTProxyのビルド方法について以下に示します。
ビルドにはVisual Studio 2005(VC++8.0)が必要です。

  1. ソースコードをOSDN(https://ja.osdn.net/projects/ttssh2/)からチェックアウトする。
  2. TTProxy\TTProxy.sln をVisual Studioで開く。
  3. ソリューションをビルドする。
  4. ビルドに成功すると TTProxy ディレクトリにDLLが生成される。

TTSSHのビルド方法

TTSSHのビルド方法について以下に示します。
ビルドにはVisual Studio 2005(VC++8.0)、ActivePerlが必要です。

TTSSH単体のビルドは VS2005 Express Edition でも可能です。ttpcmn.libをリンクするため、Tera Termのビルドを事前に行っておく必要があります。VS2005 Express EditionではTera Termのビルドはできませんが、ttpcmn.libは作成することができます。

VS2008 Express Editionでビルドすると、.rcファイルで下記のエラーが発生します。
.\ttxssh.rc(10) : fatal error RC1015: cannot open include file 'afxres.h'.
本現象を回避するには、.rcファイルをテキストエディタで開き、afxres.hのincludeを削除し、新規に2行を追加します。

- #include "afxres.h"
+ #include 
+ #define IDC_STATIC -1
  1. ソースコードをOSDN(https://ja.osdn.net/projects/ttssh2/)からチェックアウトする。
  2. ttssh2\ttssh.sln をVisual Studioで開く。
  3. ソリューションをビルドする。
  4. ビルドに成功するとttssh2\ttxssh ディレクトリにDLLが生成される。

CygTermのビルド方法

CygTermのビルド方法について以下に示します。

  1. Cygwin(https://www.cygwin.com/)をインストールする。
  2. Cygwinのシェルを起動し、cygterm ディレクトリへ移動する。
    # cd cygterm
    
  3. CygTermをコンパイルする。
    # make
    

TTXSamplesのビルド方法

リポジトリのTTXSamplesに Tera Term Extension (TTX)のサンプルがあります。TTXを作る際の参考にしてください。
TTXSamplesのビルドにはVisual Studio 2005(VC++8.0)が必要です。Tera Term本体とは違い、Express Editionでもビルド可能です。

  1. ソースコードをOSDN(https://ja.osdn.net/projects/ttssh2/)からチェックアウトする。
  2. TTXSamples\TTXSamples.sln をVisual Studioで開く。
  3. ソリューションをビルドする。
  4. ビルドに成功すると TTXSamples ディレクトリにDLLが生成される。

各TTXの詳細については、プロジェクト内のReadMe-ja.txtを参照してください。

ヘルプファイルのビルド方法

ヘルプファイルのビルド方法について以下に示します。

  1. HTML Help Compiler を入手する。
    Visual Studio (2017 以降) を "C++ MFC" オプションを選択してインストールすると、HTML Help Compiler (hhc.exe) がインストールされる。
  2. doc\makechm.bat を実行する。

リリースの方法

リリースの方法について以下に示します。

  1. RC 作成時にバージョンを一つインクリメントする。
    一般にテストを呼びかけ、旧バージョンとの同時実行が考えられるため、このタイミングとする(cf. TT_FILEMAPNAME 定義)。
  2. この年における最初のリリースの場合は、著作権表示の「最後の発行の年」をインクリメントする。
  3. 依存ライブラリ、ツール、インポート元の最新版をチェックする。
  4. ドキュメントを確認する。
  5. バージョンを上げ、日付を変更する。 CygTerm+ は例外で、リリースとは関係なくバージョンが上がる。
    パッチがコミットされると即リリース扱いになり、リリース日はその日付となる。
    これは、バージョンの末尾が patchlevel であり、コンパイラの入手が容易なため。
  6. 前回のリリースからCygTerm+に変更がある場合は、64bit Cygwinでビルドして cygterm\cygterm+-x86_64\cygterm.exe の差し替えを行う。
  7. 動作確認をする
  8. SVN のタグを作成する。
    タグ名は「teraterm-バージョン」。たとえば、v4.82ならば"teraterm-4_82"。
    svn copy -m "Release 4.82" svn+ssh://svn.osdn.net/svnroot/ttssh2/trunk svn+ssh://svn.osdn.net/svnroot/ttssh2/tags/teraterm-4_82
          
  9. リリース用のタグでチェックアウトし直す。
  10. インストーラを作成する。
  11. OSDN を更新する。
  12. メーリングリストにアナウンスする。
  13. プロジェクトページを更新する。
  14. スナップショットを削除する。
  15. Twitter に告知する。
    https://twitter.com/Tera_Term
    リリース告知をツイートして固定する。
  16. フォーラムに告知する。
    Announcements http://logmett.com/support-forums/5
    Announcements に新規投稿する。種類は Announcement。
    一つ前の Announcement の種類を Normal に変更する。
    Announcement は三個残すことになっているので、三つ前の Announcement を削除する。
  17. Chocolatey の登録を更新