81
75

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

ターミナルでスライドを再生するコマンド『pera』を作った。

Last updated at Posted at 2016-06-29

こんなの。

pera


---で区切ったテキストファイルを読み込ませると、スライドのように1枚1枚再生できる。

Qiitaのスライドモードみたいな感じ。


使い方

---で区切ったテキストファイルをパラメータとして指定する。( サンプル )

$ pera usage.md

すると1ページ目から順に再生できる。


以下のようなオプションも用意してる。

  -e string
    	encoding (default "utf-8")
  -g	gravity(bottom align)
  -i int
    	interval <= 10 millisecond (enable auto mode)
  -l	loop (Exit:Press Esc Key)

-i 1000 というように時間をミリ秒で指定すると、1秒ごとに自動再生、みたいなこともできる。
あと-lを指定すると、最後までいった後に最初に戻ってループする。


これを組み合わせると・・・

chaofan

チャーハン作るよ!


技術解説

言語はGo言語。
画面制御にはエスケープシーケンスという仕組みを使ってる。

制御文字 効果
\x1b[2J 画面を全部消す
\x1b[1;2H カーソルを1行2列に移動
\x1b[2K カーソルのある行を削除

上の表にあるような特殊な文字を書き出すと、ターミナルの動きを制御できる。文字や背景の色の変更や太字など、他にもいろいろある!

ただしWindowsだとうまく動かなかったりするので、そこらへんを吸収するためにmattn/go-ttymattn/go-colorableを利用。


ダウンロードはこちら

ソース
https://github.com/kurehajime/pera
実行ファイル
https://github.com/kurehajime/pera/releases

PATHの通ってる場所に実行ファイルを放り込むだけでOK!

81
75
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
81
75

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?