@peccul is peccu

(love peccu '(emacs lisp cat outdoor bicycle mac linux coffee))

= 深町さんのL5を使う

[2010-08-25 22:18]
>>>[clojure]
>>>[l5]

S式でHTMLの次はLaTeX,その次はプレゼンでしょうということで,まえまえから気になっていたS式で書くプレゼンツール「L5」を作りました - 八発白中を使ってみようと思います

「追記2010-08-29 20:51」深町さんが正式に本家でリリースされましたので,そっちのほうが詳しくて,いいかんじですー どうぞ

インストール

まずLeiningenで簡単Clojureプロジェクト - t2ru's blogをみながらleiningenをインストール
leiningenのバージョンが1.3.0だとlein depsが終わらないので,1.2.0でインストールする

% wget -O ~/bin/lein http://github.com/technomancy/leiningen/raw/1.2.0/bin/lein
% chmod a+x ~/bin/lein
# 必要なら% hash -r
% lein self-install

そんで,深町さんのL5をインストールします.

% git clone git://github.com/fukamachi/L5
% cd L5
% lein deps

(L5/project.cljを少しいじる必要がありましたが,深町さんに連絡済みなのできっと修正されてます)

途中clojure.mainというプログラムがドックに現れて,javaがネットワーク使うけどいいか,って聞いてきて,ターミナルでは結構いろいろダウンロードしてるみたいで,最終的にはすんなり入りました.

Copying 3 files to /path/to/L5/lib
Overriding previous definition of reference to L5
Overriding previous definition of reference to dependency.fileset
Copying 5 files to /path/to/L5/lib/dev

ここでとまってしまう.なんでやろーもうここで止まらないです.うまくいきました.

使ってみた

% cd /path/to/L5
% lein run presen

これでclojure.mainが起動して,プレゼンが始まります.
わくわくするね!

操作
キー 動作
左右キー 前後ページへ移動
F5 フルスクリーン
R init.clj最読み込み
記法
  • 例(深町さんのサンプルより)
(p (with-title "自己紹介"
       (item "深町英太郎です"
             "Webプログラマ"
             "Lisper (CL, Clojure)"
             "Perl5, JavaScript..."
             "オープンソース愛好家")))
  • 一覧
マクロ[引数 &省略可能?] 内容
p[& body] ページ
with-title 上の表題
with[param & body] contextのパラメータを変更して表示
item 箇条書き(前置記号”・”)
lines[& strs] 一行ごとに記述(itemから・がなくなる)
th 内容をページ全体に最大化(TakaHashiの略)
以下 L5/src/L5/layout.clj より推測
title[& str] タイトルページ
with-padding[y & body] 余白の設定
with-size[size & body] 指定したサイズにする
enum[& lines] 箇条書き(数字がつくやつ)
center[& strs] センタリング
img[file] 画像の挿入
fit[& strs] 多分横幅に合わせたサイズになる
txt[str] 長かったら折り返すと思う
with-current-y[& body] 多分内部マクロ
with-local-context[param & body] 多分内部マクロ
get-next-padding[y] 多分内部マクロ
with-gensyms[names & body] 多分内部マクロ
context[] 多分内部マクロ

むむー後半わけわかめっすorz

  • sample.cljをみればだいたいわかると思います.もう眠いですごめんなさい

忘れてた!PDFに出力できます

% lein run export