MDN’s new design is in Beta! A sneak peek: https://blog.mozilla.org/opendesign/mdns-new-design-beta/

Kumaプラットフォーム上ではMDNが動作し、強力なマクロシステムであるKumaScriptを提供しています。それによって幅広い作業の自動化が可能です。この記事はMDNのマクロを記事中で呼び出す方法について情報を提供します。

KumaScript guideはMDN上でマクロを利用する方法について詳細な情報を提供しているので、このセクションでは全体の簡潔なまとめよりは詳しい解説をします。もし上記のセクションを既に読んでいるなら、"Using link macros" in Creating and editing links、マクロについての考え方に少しは馴染んでいるでしょう。

マクロを実装する

MDN上で動作するマクロはサーバで実行されるJavaScriptコードを利用して実装され、Node.jsによって解釈されます。そのうえ数多くのライブラリを用意しており、wiki 関連のサービス提供します。また、 wiki プラットフォームとそのコンテンツを、マクロと連携させる機能を提供します。もっと学びたければ、KumaScript guideを参照して下さい。KumaScript referenceはライブラリの詳細と実装済みの KumaScript API の詳細を提供します。

コンテンツ中にマクロを埋め込む

実際にマクロを使うには、マクロの呼び出しを単純に2重中括弧で囲みます。引数があれば括弧で囲みます。以下のようになります。

{{macroname(parameter-list)}}

マクロ呼び出しに関するいくつかのポイント

  • マクロ名は大文字と小文字を区別します。それに関するエラーはよくあるので幾つかののパターンがあります。例えば、マクロ名に大文字があるのに全て小文字で入力しているかもしれません。また、小文字から始まる所を大文字にしてしまっているのかもしれません。
  • 仮引数はコンマで区切ります。
  • 引数が無ければ括弧は取ってしまって構いません。{{macroname()}}{{macroname}}は全く同じことです。
  • 数値の引数はクオートで囲う必要がありませんが、あっても構いません(ただし、複数のピリオドを含むバージョン番号が渡される場合などは、クオートで囲まれる必要があります)。
  • エラーが発生した場合は、コードを丁寧に読み返して下さい。何が問題なのかそれでも特定できなかった場合には、Troubleshooting KumaScript errorsを参照して下さい。

マクロは高度にキャッシュ化されています。どの値についても(引数やマクロを動作させるURLといった環境変数のこと)、その結果は記憶され再利用されます。つまり、入力が変化した時だけマクロは実行されます。

Note:ブラウザでページを強制的に更新することによって、そのページのマクロを再評価することが出来ます(つまり、スーパーリロードによって)。

マクロは大きなテキスト部分を挿入したり、MDN の他記事からの内容を置き換えたりするようなシンプルなことをしますが、サイトを走査して目次をまるごと作り上げたり、出力のスタイリングをしたり、リンクを張ったりといった複雑なこともします。

最もよく使われるマクロについてCommonly-used macrosページで学習することが出来ます。また、complete list of all macrosもあります。そして多くのマクロにはコメントとして説明がソースに組み込まれています。

ドキュメントのタグと貢献者

 このページの貢献者: hamasaki, 5ara5treamer
 最終更新者: 5ara5treamer,