本ツールで生成されるHTMLファイルのテンプレートを作成してまいります。
◇HTMLファイルのイメージ
text2html(パッケージルートディレクトリ)の下にtemplatesというディレクトリを作り、その中に一連のテンプレートファイルを作成していくことにします。
text2html (プロジェクトルートディレクトリ) └── text2html (パッケージルートディレクトリ) └── templates ※この中に作る
以下のようになります。
(ファイル名) html_template.sm
<!DOCTYPE html> <html> <head> <meta charset="UTF-8" /> <title><%= title %></title> </head> <body> <div id="sm_all"> <header> <div id="sm_header"> <%= header %> </div> <!-- sm_header end --> <div id="sm_menubar"> <%= menubar %> </div> <!-- sm_menubar end --> </header> <div id="sm_middle"> <div id="sm_left_and_contents"> <div id="sm_contents"> <%= contents %> </div> <!-- sm_contents end --> <div id="sm_leftside"> <%= leftside %> </div> <!-- sm_left end --> </div> <!-- sm_left_and_contents end --> <div id="sm_rightside"> <%= rightside %> </div> <!-- sm_rightside --> </div> <!-- sm_middle end --> <footer> <%= footer %> </footer> </div> <!-- sm_all end --> </body> <html>
拡張子の.smは、本ツールで必要なプログラムファイル以外のファイルに付けます。
パッケージ管理ツールPasterScriptを使用して必要なファイルをパッケージ化するときに、認識しやすくするためです。
また、テンプレート中の「<%= 〜 %>」は、プログラムで実際の値に書き換えられます。
Ruby on Railsのテンプレート変数がこれを使っているので、真似ました。
(例)
<title><%= title %></title> ⇒ <title>ページ1のタイトル</title>
テンプレートファイルをパッケージに含める
MANIFEST.inに以下を記述します。
recursive-include text2html *.sm