L5のver1.1.0をリリースしました

| 【6分で読めるよ!】 | コメント(0) | トラックバック(0)
※重要 この記事は古いです。新しいバージョンに移動する

 今日は秋分の日ですね。今日から秋なので、ちょっと秋らしいことをしようかなと思いました。

「秋…。秋か…。秋といえば、プログラムの秋…」

 ということでL5のver1.1.0をリリースしました。

前バージョンとの違い

  • スライドの記述言語が少し簡単になりました
  • GUIで操作できるようになりました
  • UbuntuでPDFエクスポートができない問題を解決しました

使い方

 L5はJDKがインストールされている環境なら動きます。以下のリンクからJARファイルをダウンロードしてください。

 JARファイルはダブルクリックで起動できます。たぶんね。できなかったらごめんなさい。コンソールで$ java -jar L5.jarしてください。

 起動すると以下のようなパネルが開きます。

L5-main-window.png

 「Open」をクリックしてL5のプレゼンファイルを選択すればプレゼンテーションが始まります。

 どんな感じの表示になるかを確認したければ、サンプルからcljファイルをダウンロードしてOpenしてみてください。

L5-sample1.png

L5-sample2.png

プレゼン資料を作る

構成

 プレゼン資料は以下のような構成になります。

(ns L5.sample
  (:use L5 L5.layout))

(defcontext {...})

(defslides [...]*)

 defcontextは”コンテキスト”の設定、defslidesはスライドの記述です。

コンテキストの記述

 L5では資料全体に影響するパラメータを”コンテキスト”と呼びます。コンテキストの定義にはdefcontextを使います。たとえばこんな感じ。

(defcontext
  {:width 640  ; 横幅
   :height 480  ; 縦幅
   :font-family "Gill Sans"  ; フォント
   :font-size 30  ; 文字の大きさ
   :color (Color/white)  ; 文字の色
   :background-color Color/darkGray  ; 背景の色
   })

 他に:background-imageも指定できます。

スライドの記述

 スライドはdefslidesで定義できます。たとえば。

(defslides
  [(title "自己紹介")
   (item "深町英太郎です"
         "Webプログラマ"
         "Lisper (CL, Clojure)"
         "Perl5, JavaScript..."
         "オープンソース愛好家")]
  ...)

 スライド一つは[...]で表します。

 スライドは複数の”要素”を含みます。この要素は文字とか、画像とかです。上の例では(title...)(item...)の2つの要素が入ったスライドを作っています。

title[& strs]スライドの上部にタイトル文字をつける
lines[& strs]文字を一行ずつ表示
item[& strs]文字を箇条書きで一行ずつ表示
enum[& strs]文字を行番号をつけて一行ずつ表示
t[& strs]画面いっぱいの文字を表示 (高橋メソッド)
img[file]指定された画像ファイルを表示 (相対パス)

 これらは要素を記述するものですが、その他にレイアウト用のマクロもあります。

with-size[size & body]中の要素の文字サイズを変更
with-padding[padding & body]中の要素のpaddingを変更
with[params & body]中の要素のパラメータを変更 (より汎用的なマクロ)

より詳しく知りたい人のために

 この節は蛇足なので読まないでいいです。

 ver1.1.0では、前バージョンにあったalignなどのマクロがなくなっていますが、文字の整列ができないわけではありません。実際、(title..)はセンタライズされて表示されます。

 実はスライドの各要素はdefslidesに渡される段階で最終的にArrayMapになっており、これが描画する関数に渡されてスライドが構築されます。上の例だけ見ればtitleなどを使って描画しているように見えますが、これはただArrayMapを返すマクロです。なのでdefslidesに以下のように書いても同じです。

(defslides
  [{:attr {:text-align :center
           :padding {:bottom 20}}
    :body "自己紹介"}
   {:attr {:padding {:top 10 :bottom 10}}
    :body ["深町英太郎です"
           "Webプログラマ"
           "Lisper (CL, Clojure)"
           "Perl5, JavaScript..."
           "オープンソース愛好家"]}]
  ...)

 各要素は:attr:bodyのキーを持つArrayMapです。:attr:text-align :centerと指定すると文字をセンタライズできます。

 上で紹介したwith-*系のマクロは、この要素の:attrをいじるための構文糖でしかありません。

キー操作

進む→、Space、Enter
戻る←、BackSpace
フルスクリーンF5 (トグル)、Esc (解除)
リロードR
PDF出力E

まとめ

 L5も随分と使い勝手がよくなったように思います。まだKeynoteにはかないませんが、LT資料をサクッと作る程度なら十分な手軽さになっています。

 ぜひプレゼンの秋に活用してみてください。

トラックバック(0)

トラックバックURL: http://e-arrows.sakura.ne.jp/mt/mt-tb.cgi/165

コメントする

このブログ記事について このアーカイブについて

このページは、深町英太郎が2010年9月23日 17:24に書いたブログ記事です。

ひとつ前のブログ記事は「SBCLのリーダを上書きして"超リードマクロ"を実装」です。

次のブログ記事は「祖母とハト」です。

Ariel Labs
Name:深町英太郎
Age:23歳
Living:京都府
Company:はてな
Hatena Id:id:nitro_idiot
Facebook:eitarow.fukamachi
mixi:ID:6756132
Twitter:nitro_idiot
GitHub:fukamachi
LinkedIn:eitarowfukamachi

Techonrati

Technorati search

» リンクしているブログ

Powered by Movable Type 4.23-ja