2010-12-14 5 views
2

私はtfs.elを開発して、開発者がemacsからTFSのことを(チェックアウト、チェックインなど)できるようにしました。関連する機能セットのヘルプをどのように提供すればよいですか?

のようなTFSパッケージ内の13個の対話型のコマンドがありますtfs/checkouttfs/renametfs/diff、というように、私は1つの場所でそれらのすべてにヘルプを提供することができるようにしたいと思います。利用可能なすべての機能の概要。

これを実行する "emacsの方法"とは何ですか?私は、tfs/helpのような追加の関数を定義して、それぞれのtfs関数でdescribe-function-1を呼び出し、それをすべてTFS-Helpバッファに提示することを考えました。

良い方法がありますか?

+1

tfsに関しては、なぜEmacsのvcに統合しないのですか? –

+0

私はそれを開こうと思っても脅かされました...それは...その可能性を調査することです。 – Cheeso

答えて

1

あなたは、複数の、関連するコマンドを持って

(describe-bindings "\C-xv") 
2

まあ、 "Emacs way"がたくさんあります。

最も洗練さは、基本的にTexinfoを使用して情報ページにそれを変換すると言うページ"Info for Experts"を参照してください、情報ページを記述することです。あなたは欲しいと思ったほど詳細にすることができ、ユーザーは検索、ハイパーリンクなどを使用することができます。ユーザーはC-h F tfs/checkout経由で簡単にそこにアクセスできます。

もう1つの方法は、各コマンドの短いドキュメント文字列を書き、「詳細はtfs-modeのドキュメントを参照してください」で終わり、すべての一般的なドキュメントはdocstringのtfs-modeに入れてください。

パッケージの中には、tfs.elファイルの先頭に大きなコメントが付いているパッケージもあります。

あなたの選択を取る、それらはすべてトレードオフがあります。

1

を使用することができます。これまでのところ、彼らは彼らの名前だけに関連していると思います。

2つの可能性が頭に浮かぶ:

  • はこのようなもののためのモードを作成します。モードをオン/オフにするコマンドのドキュメント文字列のすべてを記録します。これは、メジャーモードまたはマイナーモードになります。マイナーモードの場合、バッファローカルまたはグローバルになります。

  • このもののグループ(defgroup)を作成し、そのドキュメント文字列のすべてを記録します。

基本的な考え方は、何らかの形で実際にこれらのコマンドを関連付けることである。何らかの方法でそれらを一緒にバンドルするので、あなたは、バンドルのドキュメントとしてまとめ、それらを文書化することができます。

これ以上のことは知らずに、グローバルマイナーモードを作成したいと思うかもしれません。

+0

マイナーモードは、行く方法のように聞こえる。また、 'tfs/thing'から' tfs-thing'に関数の名前を変更して、Emacsの慣習に一層合致させることも考えてください。 – tripleee

+0

これは実際にマイナーモードとして機能しますか?これらのコマンドは、現在のバッファの編集、オートフィルまたはflymakeの編集には影響しません。コマンドは現在のバッファで動作します。私はそれがマイナーモード状態に上昇するかどうかはわかりません。私にマイナーモードが好きではない。命名について、 'yfs/etcetc'という名前があまりにも好きだったので、私は' tfs/thing'を使いました。 – Cheeso

関連する問題