Changes between Initial Version and Version 1 of WikiProcessors


Ignore:
Timestamp:
2010/10/12 00:14:07 (14 years ago)
Author:
trac
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • WikiProcessors

    v1 v1  
     1= Wiki プロセッサ = #WikiProcessors 
     2 
     3プロセッサは [WikiMacros Wiki マクロ] の一種です。 [TracWiki Trac Wiki エンジン] 以外のマークアップフォーマットを使用するために設計されています。プロセッサは ''ユーザが編集したテキストを処理するマクロ機能'' と考えることができます。 
     4 
     5Trac 内の全ての Wiki テキストにおいて、 Wiki プロセッサを使用することができます。 
     6例えば、以下に述べる様々な用途で使用することができます: 
     7 - [#CodeHighlightingSupport シンタックスハイライト] またはテキストを逐語的にレンダリングする, 
     8 -  <div> ブロックや <span> や <td>, <th> のテーブルのセルの内容など 
     9   [#HTMLrelated コンテキスト内の Wiki のマークアップ]をレンダリングする, 
     10 - [wiki:WikiHtml HTML] や 
     11   [wiki:WikiRestructuredText Restructured テキスト] 
     12   または [http://www.textism.com/tools/textile/ textile] のシンタックスをマークアップの代替手段として使用する 
     13 
     14 
     15== プロセッサを使用する == #UsingProcessors 
     16 
     17テキストブロック上に Wiki プロセッサを適用するには、 
     18最初のデリミタとして Wiki の ''コードブロック'' を使用します: 
     19{{{ 
     20{{{ 
     21これらの行は 
     22処理されるでしょう... 
     23}}} 
     24}}} 
     25 
     26`{{{` のすぐ後または直後の行に,  
     27`#!` に続けて ''プロセッサ名'' を追加します。. 
     28 
     29{{{ 
     30{{{ 
     31#!プロセッサ名 
     32これらの行は 
     33処理されるでしょう... 
     34}}} 
     35}}} 
     36 
     37これはほとんどの UNIX ユーザにはおなじみである "shebang" を用いた表記法です。 
     38 
     39これらの内容に加えて、いくつかの Wiki プロセッサでは、  
     40プロセッサ名に続けて同じ行に、 `key=value` のペアを書くことによって、  
     41''パラメータ'' を許容するものがあります。もし、 `value` にスペースが含まれるケースがたびたび起こるようであれば、 
     42クオテーションで囲んだ文字列を使用することができます (`key="スペースが含まれている文字列"`) 。 
     43 
     44いくつかのプロセッサは Wiki のマークアップを処理することを意味するので、 
     45プロセッサのブロックを ''ネスト'' させることができます。 
     46可読性を向上させるためにネストしたブロックの内容をインデントさせたいと思うかもしれません。 
     47この種のインデントは中身を処理する際に無視されます。 
     48 
     49 
     50== 例 == 
     51 
     52||= Wiki マークアップ =||= 表示 =|| 
     53{{{#!td colspan=2 align=center style="border: none" 
     54 
     55                __例 1__: HTML を挿入する 
     56}}} 
     57|----------------------------------------------------------------- 
     58{{{#!td style="border: none" 
     59{{{ 
     60{{{ 
     61<h1 style="color: grey">HTML テスト</h1> 
     62}}} 
     63}}} 
     64}}} 
     65{{{#!td valign=top style="border: none; padding-left: 2em" 
     66{{{ 
     67#!html 
     68<h1 style="color: grey">HTML テスト</h1> 
     69}}} 
     70}}} 
     71|----------------------------------------------------------------- 
     72{{{#!td colspan=2 align=center style="border: none" 
     73 
     74     __例 2__: <div> ブロック内のカスタマイズしたスタイルシートでハイライトした Python のコード 
     75}}} 
     76|----------------------------------------------------------------- 
     77{{{#!td style="border: none" 
     78  {{{ 
     79  {{{#!div style="background: #ffd; border: 3px ridge" 
     80 
     81  これは 埋め込まれた "コード" ブロックの例です: 
     82 
     83    {{{ 
     84    #!python 
     85    def hello(): 
     86        return "world" 
     87    }}} 
     88 
     89  }}} 
     90  }}} 
     91}}} 
     92{{{#!td valign=top style="border: none; padding: 1em" 
     93  {{{#!div style="background: #ffd; border: 3px ridge" 
     94 
     95  これは 埋め込まれた "コード" ブロックの例です: 
     96 
     97    {{{ 
     98    #!python 
     99    def hello(): 
     100        return "world" 
     101    }}} 
     102 
     103  }}} 
     104}}} 
     105|----------------------------------------------------------------- 
     106{{{#!td colspan=2 align=center style="border: none" 
     107 
     108     __例 3__: Wiki ページでチケットのキーワード検索を行なう 
     109}}} 
     110|----------------------------------------------------------------- 
     111{{{#!td style="border: none" 
     112  {{{ 
     113  {{{ 
     114  #!html 
     115  <form action="/query" method="get"> 
     116  <input type="text" name="keywords" value="~" size="30"> 
     117  <input type="submit" value="キーワードで検索"> 
     118  <!-- To control what fields show up use hidden fields 
     119  <input type="hidden" name="col" value="id"> 
     120  <input type="hidden" name="col" value="summary"> 
     121  <input type="hidden" name="col" value="status"> 
     122  <input type="hidden" name="col" value="milestone"> 
     123  <input type="hidden" name="col" value="version"> 
     124  <input type="hidden" name="col" value="owner"> 
     125  <input type="hidden" name="col" value="priority"> 
     126  <input type="hidden" name="col" value="component"> 
     127  --> 
     128  </form> 
     129  }}} 
     130  }}} 
     131}}} 
     132{{{#!td valign=top style="border: none; padding: 1em" 
     133  {{{ 
     134  #!html 
     135  <form action="/query" method="get"> 
     136  <input type="text" name="keywords" value="~" size="30"> 
     137  <input type="submit" value="キーワードで検索"> 
     138  <!-- To control what fields show up use hidden fields 
     139  <input type="hidden" name="col" value="id"> 
     140  <input type="hidden" name="col" value="summary"> 
     141  <input type="hidden" name="col" value="status"> 
     142  <input type="hidden" name="col" value="milestone"> 
     143  <input type="hidden" name="col" value="version"> 
     144  <input type="hidden" name="col" value="owner"> 
     145  <input type="hidden" name="col" value="priority"> 
     146  <input type="hidden" name="col" value="component"> 
     147  --> 
     148  </form> 
     149  }}} 
     150}}} 
     151== プロセッサ一覧 == #AvailableProcessors 
     152 
     153以下のプロセッサが Trac の配布に含まれています: 
     154 
     155 `#!default` :: フォーマット済みのテキストブロック内でテキストを逐語的に表示する。  
     156                これはプロセッサ名を指定 ''しない'' のと同じです。 
     157                (さらに `#!` を指定しないのと同じです) 
     158 `#!comment` :: このセクション内のテキストを処理しません(つまり、このセクションの内容は 
     159                プレインテキスト内にのみ存在します - レンダリングしたページには表示されません)。 
     160 
     161=== HTML 関連 === #HTMLrelated 
     162 
     163 `#!html`        :: Wiki ページにカスタムした HTML を挿入する。 
     164 `#!htmlcomment` :: Wiki ページに HTML のコメントを挿入する (''0.12 以降'') 。 
     165 
     166`#!html` ブロックは ''自己完結型'' でなければなりません。 
     167つまり、1つ目のブロックである HTML 要素を開始し、後に記述する2つ目のブロックでその要素を閉じるということはできません。これに類似した効果を得るためには、下記に述べるプロセッサを使用して下さい。 
     168 
     169  `#!div` :: <div> 要素内の任意の Wiki の内容をラップする 
     170             (''0.11 以降''). 
     171 `#!span` :: <span> 要素内の任意の Wiki の内容をラップする  
     172             (''0.11 以降'').  
     173 
     174 `#!td` :: <td> 要素内の任意の Wiki の内容をラップする (''0.12 以降'') 
     175 `#!th` :: <th> 要素内の任意の Wiki の内容をラップする (''0.12 以降'')  
     176 `#!tr` :: `#!td` や `#!th` ブロックをラッピングしたり、 
     177       グルーピングした列を見やすくするために属性を指定する際、オプションとして使用することができます。 
     178       (''0.12 以降'') 
     179 
     180これらのプロセッサについての詳細と使用例については、 WikiHtml を参照して下さい。 
     181 
     182=== その他のプロセッサ ===#OtherMarkups 
     183 
     184     `#!rst` :: Trac における Restructured テキストのサポート. WikiRestructuredText 参照。 
     185 `#!textile` :: [http://cheeseshop.python.org/pypi/textile Textile] がインストール 
     186                されている場合のサポート。 
     187                [http://www.textism.com/tools/textile/ a Textile リファレンス] 参照。 
     188 
     189 
     190=== コードのハイライトのサポート ===#CodeHighlightingSupport 
     191 
     192Trac はインラインのシンタックスハイライトを提供するプロセッサを同梱しています: 
     193 `#!c` (C), `#!cpp` (C++), `#!python` (Python), `#!perl` (Perl),  
     194 `#!ruby` (Ruby), `#!php` (PHP), `#!asp` (ASP), `#!java` (Java),  
     195 `#!js` (Javascript), `#!sql (SQL)`, `#!xml` (XML または HTML), 
     196 `#!sh` (!Bourne/Bash シェル), など。 
     197 
     198Trac では、シンタックスのカラーリングについて外部のソフトウェア 
     199例えば [http://pygments.org Pygments] に依存しています。  
     200 
     201TracSyntaxColoring にどの言語のシンタックスハイライトがサポートされているかについての情報と 
     202その他の言語のシンタックスハイライトのサポートを有効にする方法について書かれています。  
     203 
     204MIME タイプをプロセッサ名として使用することによって、ソースコードをブラウズするときに、サポートしている言語についてはシンタックスハイライトをすることが可能です。例えば、このように書くことができます: 
     205{{{ 
     206{{{ 
     207#!text/html 
     208<h1>テキスト</h1> 
     209}}} 
     210}}} 
     211 
     212この結果はシンタックスハイライトされた HTML コードになります: 
     213{{{ 
     214#!text/html 
     215<h1>text</h1> 
     216}}} 
     217 
     218これは、対応しているすべての [TracSyntaxColoring#SyntaxColoringSupport 対応している MIME タイプ] に対して有効です。 
     219 
     220 
     221ユーザによるプロセッサマクロの開発やコントリビュート: 
     222 * [http://trac.edgewall.org/wiki/ProcessorBazaar ProcessorBazaar] 
     223 * [http://trac.edgewall.org/wiki/MacroBazaar MacroBazaar] 
     224 * [http://trac-hacks.org/ Trac Hacks] コミュニティサイト 
     225 
     226プロセッサは Wiki マクロを開発するのと変わりはありません。 
     227実際、開発方法は同じであり、シンタックスの使用方法のみが異なります。  
     228詳細情報については、 [WikiMacros#DevelopingCustomMacros カスタムマクロを開発する] を参照して下さい。 
     229 
     230 
     231---- 
     232See also: WikiMacros, WikiHtml, WikiRestructuredText, TracSyntaxColoring, WikiFormatting, TracGuide 
     233