http://talks.golang.org/ などにあるGoに関するスライドショー。
左右キーでページ送り出来るのですが、
スマホで見れなかったりして、
使いづらいのによくみんな使っているなあと思ってたら、
どうやらこのスライドはgo.toolsにあるpresentという
パッケージを使っているということに気づきました。
つまりは**「Goの勉強会で発表で使うと差がつけられる!」**ということのようです。
以下、作り方のメモ。
ローカルで閲覧できるようにする
presentを使ってローカルにスライドショーを作成。
presentのインストール
$ go get code.google.com/p/go.tools/cmd/present
present
が使えるようになります。
$ present --help
Usage of present:
-base="": base path for slide template and static resources
-http="127.0.0.1:3999": HTTP service address (e.g., '127.0.0.1:3999')
-nacl=false: use Native Client environment playground (prevents non-Go code execution)
-orighost="": host component of web origin URL (e.g., 'localhost')
-play=true: enable playground (permit execution of arbitrary user code)
.articleと.slide
presentは、スライドショーを作りたい場合はファイルの拡張子を.slide
に。
記事を作りたい場合はファイルの拡張子を.article
にします。
例えば、下のようにファイルを用意します。
$ touch article1.article slide1.slide
そしてpresent
を起動すると下のような画面が出てきます。
それっぽいのが出てきます。
presentのフォーマット
各ファイルの頭は主に以下のようになります。
タイトル (必須)
サブタイトル
15:04 2 Jan 2006
Tags: タグ
<空行>
プロフィール
…
<空行>
内容
最初のタイトルが必須。それ以下はオプションです。。
またプロフィールは、タイトルの段落から空行を1行入れて記載していきます。
二段落目は、スライドの最初と最後に挿入されます。
セクション
セクションは*
表記です。
* スライドタイトル もしくはセクション
** サブセクション
*** さらにサブセクション
スライドショーの場合、* タイトル
がページの区切りになる。
また、セクションを連続して指定した場合は、最初のセクションのタイトルが
下のほうに表示されるようになります。例えばこれみたいなものです。
箇条書き
-
で箇条書き
- オレンジ
- リンゴ
- バナナ
テキスト
テキストは改行が普通に反映されます。
インデントを行うとそのエリアが<pre>になります。
コードの挿入
コードは 別ファイルに置きます。
.code <ファイル名>
コードの一部を見せたい場合 後ろに
/開始箇所/,/終了箇所/
で指定します
.code <ファイル名> /^func main/,/^}/
Playgroundで実行出来るUIをつける
.play
は.code
とほぼ同じく、コード表示で使うのですが
右下にPlaygroundでの実行ボタンを加えることができます。
.play <ファイル名>
ただ、Playgroundで実行出来るようにする以上、
packageはmainでないと出来ません。
スライドショーを公開する
http://go-talks.appspot.com というサイトでは、
GitHubとGoogle Project Hostingにある
presentファイルを動的に取得して表示をしてくれます。
やり方
- slideをgithubリポジトリに公開します。
例) https://github.com/hiroosak/go-slides/tree/master/present-guide
- フォーマットに合わせたURLにアクセス
talk.appspot.comで、スライドを見たい場合
URLの/
以下に指定されたフォーマットで表示されたいファイルを指定します。
http://go-talks.appspot.com/github.com/<owner>/<project>/<file.ext>
1で公開したファイルにアクセスしたい場合は、
http://go-talks.appspot.com/github.com/hiroosak/go-slides/present-guide/main.slide になります。
これで公開完了。
上のスライドのファイルは
github.com/hiroosak/go-slides/prsent-guid/main.slideにあります。
気になったこと
go-talks.appspot.com 元ファイルを編集しても、すぐ反映されないかも。
参考