コードのドキュメント化
YARD(英語) および RDoc(英語) は、コードをドキュメント化するために複数のライブラリで使用される最も一般的なドキュメント生成ツールです。 RubyMine は、クイックドキュメント検索を利用して、YARD または RDoc 構文で記述された ドキュメントを表示できます。 さらに、RubyMine は YARD タグで動作する拡張機能を提供します:
欠落している YARD タグを作成する
YARD タグの有効性を確認して修正する
YARD タグを活用して、コードインサイトを向上させる (たとえば、オブジェクト型の決定、メソッドのパラメーター情報の表示など。)
YARD タグの作成と修正
ここでは、いくつかのパラメーターをとるメソッドを文書化する方法を示します。 この場合、メソッドは 2 つの引数を取り、これらの値の積を返します。
YARD タグを使用してこのメソッドにアノテーションを付け、誤ったタグを修正する方法について説明します。
@param タグを追加する
メソッド名にキャレットを置き、 Alt+Enter を押します。
呼び出されたポップアップで、 @param タグを追加する アクションを選択します。
RubyMine はメソッドの上に対応するコメントを追加し、各パラメーター値の型の指定を提案します。 整数を入力し、 Ctrl+Space を押して提案を表示します。 整数 を選択し、 Enter を押して選択を確定し、もう一度 Enter を押して 2 番目のパラメーターの型を指定します。

@param タグの構文形式を構成する
デフォルトでは、RubyMine はパラメーター型の後にパラメーター名を生成します(例: @param [Integer] val1)。 この動作を変更し、型(@param val1 [Integer] )の前にパラメーター名を設定するには、次の手順を実行します。
設定ダイアログ (Ctrl+Alt+S) を開きます。
ページを開き、 Ruby グループで メソッドパラメーターに '@param' タグがありません インスペクションを選択します。
タグ構文形式 オプションを使用して、目的の順序を指定します。
誤った YARD タグを削除する
YARD タグを編集すると、RubyMine は間違ったタグが存在するかどうか確認します。 例: これは重複したタグであるか、タグに対応するパラメーターがコードにありません。 誤った YARD タグを削除するには:
目的のタグを含むハイライトされた行にキャレットを置き、 Alt+Enter を押します。
呼び出されたポップアップで、 タグの除去 アクションを選択します。

コードインサイトのための YARD
RubyMine は YARD 型アノテーションをさまざまなコードインサイト機能、たとえばオブジェクト型の判別や、取得したオブジェクト型の コード補完での利用、メソッドのパラメーター情報の表示などで活用します。 いくつか例を見てみましょう。
型情報を表示
RubyMine は @return、 @param、 @yieldparam などの YARD タグを用いてオブジェクトの型を判別します。

RubyMine は指定した型に応じた補完候補を提案することに注意してください。

戻り値 / パラメーター型の不一致
RubyMine は、メソッドの実際の戻り値型やパラメーター型が @return および @param アノテーションで指定された型と一致するかどうかを確認できます。 例: メソッドの戻り型が @return 型と一致しない場合、エディターは警告を表示します。

これらの警告は、 不一致のパラメーター型 および 不一致の戻り型 インスペクションを使用して管理できます。
パラメーター情報。
@type タグ
標準の YARD および RDoc タグのほか、RubyMine は @type タグを処理して変数型に関する情報を取得できます。 例: ローカル変数(変数名あり / なし)とブロックパラメーターにこのタグを使用できます:
ローカル変数
# @type [Integer] customer_id = 1 # @type [String] customer_name customer_name = "Andrew Fuller"ブロックパラメーター
# @type [Integer] number [1, 2, 3].each do |number| puts "#{number}" end
YARD/RDoc コメントをレンダリングする
RubyMine では、YARD/RDoc コメントをエディターでレンダリングできます。 レンダリングされたコメントは読みやすく、追加のタグでコードがオーバーロードになることはありません。 リンクをクリックして、参照されている Web ページに移動したり、参照されているトピックの クイックドキュメントを表示したりできます。


RubyMine は YARD マクロ拡張機能も認識し、それらに対して一般的なコーディング支援を提供します。 マクロをレンダリングするとき、RubyMine は参照先の代わりにマクロデータを表示します。 これには、マクロデータで使用される変数置換 ($1、$2 など) が含まれます。


レンダリングされたビューを切り替える
必要なドキュメントコメントの横のガターで
をクリックするか(または Ctrl+Alt+Q を押して)、レンダリングビューを切り替えます。コメントを編集するには
をクリックします。
(オプション)フォントサイズを変更するには、エディターでコメントを右クリックし、コンテキストメニューから フォントサイズを調整 を選択します。 レンダリングされたコメントは、クイックドキュメントポップアップと同じフォントサイズを使用することに注意してください。
デフォルトでコメントのレンダリングを有効にする
エディターにコメントを常に表示するように IDE を構成できます。
ガターのアイコン(
または
)を右クリックし、 すべてレンダリング オプションを有効にします。
または、 設定 ダイアログ Ctrl+Alt+S で を選択し、 ドキュメントコメントをレンダリングする オプションを有効にします。
レンダリングされたコメントを編集するには、コメントの横のガターにある アイコンをクリックします。
