このサイトではopenpearで公開しているHatenaSyntaxというライブラリのマニュアルを記述しています。
何かおかしいところや分かりづらい部分などがあったら開発者に連絡しましょう。
はてな記法パーサお試し版ではウェブ上でこのライブラリの動作を試すことが出来ます。
このライブラリはいくつかの利用実績を持っています。
openpearで公開しているはてな記法パーサのマニュアル
このサイトではopenpearで公開しているHatenaSyntaxというライブラリのマニュアルを記述しています。
何かおかしいところや分かりづらい部分などがあったら開発者に連絡しましょう。
はてな記法パーサお試し版ではウェブ上でこのライブラリの動作を試すことが出来ます。
このライブラリはいくつかの利用実績を持っています。
手っ取り早くはてな記法をHTMLに変換するには、HatenaSyntax::render()メソッドを使う。文字列はUTF-8を渡すこと。
<?php
include_once 'HatenaSyntax.php';
echo HatenaSyntax::render('* Lorem ipsum dolor sit amet,
consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.
Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
+ Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.
+ Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum
');
/*結果
<div class="section">
<h1> Lorem ipsum dolor sit amet, <a name="451267207f7cdf8f82dde43033c919d1_header_0" id="451267207f7cdf8f82dde43033c919d1_header_0"></a></h1>
<p>consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. </p>
<p>Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. </p>
<ol>
<li> Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. </li>
<li> Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum</li>
</ol>
</div>
*/
HatenaSyntaxでサポートする記法の一覧。
はてなダイアリのはてな記法についてはこちらを参照。
* 見出し ** 小見出し *** 小小見出し
*name* 見出し
この値はHatenaSyntax::getSectionName()で取得できる。
-ぶどう --巨峰 --マスカット -もも
順序付きリストも記述できる。
+ぶどう +もも ++すもも
:京都府:京都市 :滋賀県:大津市 :三重県:津市
引用する。引用はネストできる。
>> Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt. <<
また、引用元を記述できる。
>http://google.com/> Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt. <<
整形した分をそのまま表示できる。
>| Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt. |<
コードなどを色付して表示するための記法。
実際に色付け表示するには別にコードハイライトするライブラリを利用する。
>|html| <html><head><title>lorem ipsum</title></head> <body> Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt. </body></html> ||<
|*名前|*色|*個数| |りんご|赤|1| |みかん|だいだい|2|
実際にはてなダイアリーの様に続きを読む記法を動作させたい場合は、HatenaSyntax::hasSeparator()やHatenaSyntax::separate()を利用する。
====
pタグのみ受け付ける。
><p> Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt. </p><
二重の丸括弧で囲んだ部分は脚注となる
lorem ipsum((脚注部分)) dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt.
空行を二つ続けると改行する。
リンクをはる。
[http://google.com]
タイトルを指定するにはこうする。
[http://google.com:title=google]
タイトルの自動取得を指定する場合はこうする。
[http://google.com/:title]
タイトル自動取得の動作はレンダラの設定として渡すコールバックで規定される。詳しくはレンダラに渡す設定を参照。
[]で囲んだ文字はそのまま解釈される。
[][http://google.com][] これはリンクされずに角括弧がそのまま表示される。
htmlにも表示されないコメントとなる。
<!-- コメント -->
[[と]]で囲むとキーワードリンクとなる。
目次を表示する。
[:contents]