Namazu-devel-ja(旧)


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

theme (Re: Namazu 3.0 design)



Satoru Takabayashi <satoru-t@xxxxxxxxxxxxxxxxxx> wrote:

> * 完全にカスタマイズできる
>   - テーマの機構を導入 (検索結果の表示)

検索結果の表示は完全にテーマファイルで定義できるようにするつ
もりです。テーマは通常のテキストファイルに Scheme のコードを
埋め込む形になります。手元では試作品が動いています。

こんな感じ:

  % cat theme.test
  <html>
  <head>
  <title>Theme test</title>
  </head>
  <body>

  <dl>
  <dt>Name
  <dd>[ (getenv "USER") ]

  <dt>Home Directory
  <dd>[ (getenv "HOME") ]

  <dt>1 + 2 + 3 + 4 + 5 = 
  <dd>[ (+ 1 2 3 4 5) ]
  </dl>

  \[ This is not a scheme code. 
     Because brackets are escaped. \]

  </body>
  </html>

テーマファイルを整形

  % guile -l formatter.scm
  guile> (display (formatter:format "theme.test"))
  <html>
  <head>
  <title>Theme test</title>
  </head>
  <body>

  <dl>
  <dt>Name
  <dd>satoru-t

  <dt>Home Directory
  <dd>/home/satoru-t

  <dt>1 + 2 + 3 + 4 + 5 = 
  <dd>15
  </dl>

  [ This is not a scheme code. 
     Because brackets are escaped. ]

  </body>
  </html>

[ ... ] の部分が Scheme のコードとして評価されます。
おもしろいと思いませんか? :-)

-- Satoru Takabayashi