Help us understand the problem. What is going on with this article?

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

More than 3 years have passed since last update.

こんなの。

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!

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした