$B!{(B Walrus $B%5%s%W%k(B -- htmlgen

Walrus$B$G$O%F%s%W%l!<%H$r;HMQ$;$:$KD>@\%9%/%j%W%H$G(Bhtml$B$r=PNO$9$k$3$H$b$G(B
$B$-$^$9!#(B

dotest          $B<B9TMQ%9%/%j%W%H(B
index.wal       walrus$BDj5A%U%!%$%k(B

$B!{(B walrus$BDj5A%U%!%$%k(B

----------------------------------------------------------------
#!/usr/bin/walrus

%model_class FibDocument DocumentFile {
....
}

Folder 
 target_dir=target

FibDocument fib.html
 title = "Walrus Sample (htmlgen)"
 max=20

----------------------------------------------------------------

FibDocument$B$H$$$&%/%i%9$N%I%-%e%a%s%H%*%V%8%'%/%H$O!"%F%s%W%l!<%H$J$7(B
$B$KD>@\(Bhtml$B%U%!%$%k$r=PNO$7$^$9!#(B

$B!{(B fibdoc.rb

----------------------------------------------------------------
class FibDocument < WalrusFile
  # $BCfN,(B
  def get_contents
      E(:html) {
	E(:head) { E(:title) { title } } +
	  E(:body) { get_body  }
      }
  end
----------------------------------------------------------------

$B%I%-%e%a%s%H%*%V%8%'%/%H%/%i%9$rDj5A$9$k>l9g$O!"I,$:(Bget_contents$B$H$$$&%a(B
$B%=%C%I$rDj5A$7$F$/$@$5$$!#$3$N%a%=%C%I$NJV$9FbMF(B($BJ8;zNs(B)$B$,=PNO$9$k%U%!%$(B
$B%k$NFbMF$K$J$j$^$9!#(B

$B$=$7$F!"$3$3$G$O(Bwalrus$BIUB0$N(Bhtml$B@8@.%i%$%V%i%j$,;H$($^$9!#$3$N%i%$%V%i%j(B
$B$N4pK\E*$J;HMQK!$O(B

   E(:$B%?%0L>>N(B) { $B%?%0FbMF(B } 

$B$H5-=R$9$k$H(B

  <$B%?%0L>>N(B>$B%?%0FbMF(B</$B%?%0FbMF(B>

$B$N$h$&$KE83+$5$l$k$H$$$&$3$H$G$9!#>e5-$NNc$G$O(B

<html>
  <head>
    <title>title$B$H$$$&%*%W%7%g%s%9%m%C%H$K@_Dj$5$l$?FbMF(B</title>
  </head>
  <body>
  get_body$B%a%=%C%I$NFbMF(B
  </body>
</html>

$B$N$h$&$KE83+$5$l$^$9!#(B

----------------------------------------------------------------
  def get_body
    [
      E(:h1) { title },
      "1$B$+$i(B#{max}$B$^$G$N%U%#%\%J%C%A?t$O0J2<$N$H$*$j$G$9!#(B",
      br,
      table(1) {
	tr { th { "NO" } + th { "Fibonacci" } } +
	  (1..max.to_i).collect { |i|
	  tr { td { i } + td { fib(i) } }
	}
      }
    ]
  end
end
----------------------------------------------------------------

$B<B:]$N%I%-%e%a%s%H$NFbMF$O$3$N%a%=%C%I$G:n@.$5$l0J2<$N$h$&$K$J$j$^$9!#(B

----------------------------------------------------------------
<html>
  <head>
    <title>Walrus Sample (htmlgen)</title>
  </head>
  <body>
    <h1>Walrus Sample (htmlgen)</h1>
    1$B$+$i(B20$B$^$G$N%U%#%\%J%C%A?t$O0J2<$N$H$*$j$G$9!#(B<br>
    <table border="1">
      <tr><th>NO</th><th>Fibonacci</th></tr>
      <tr><td>1</td><td>1</td></tr>
      <tr><td>2</td><td>1</td></tr>
      <tr><td>3</td><td>2</td></tr>
      <tr><td>4</td><td>3</td></tr>
      <tr><td>5</td><td>5</td></tr>
      <tr><td>6</td><td>8</td></tr>
      <tr><td>7</td><td>13</td></tr>
      <tr><td>8</td><td>21</td></tr>
      <tr><td>9</td><td>34</td></tr>
      <tr><td>10</td><td>55</td></tr>
      <tr><td>11</td><td>89</td></tr>
      <tr><td>12</td><td>144</td></tr>
      <tr><td>13</td><td>233</td></tr>
      <tr><td>14</td><td>377</td></tr>
      <tr><td>15</td><td>610</td></tr>
      <tr><td>16</td><td>987</td></tr>
      <tr><td>17</td><td>1597</td></tr>
      <tr><td>18</td><td>2584</td></tr>
      <tr><td>19</td><td>4181</td></tr>
      <tr><td>20</td><td>6765</td></tr>
    </table>
  </body>
</html>
----------------------------------------------------------------

