ujimushi(@旧sradjp(15364))の日記

旧スラドの日記の引越先です

ターミナル上のテストやデモのgif動画を作成できる「VHS」

はじめに

つい最近,VHSという ターミナル上の操作を動画にできるものを見つけました。

これを使うと,この日記での説明とかにも色々利用できそうです。

とりあえず試してみました。

インストール方法

とりあえず,ubuntu上で利用するので,Releasesからdebパッケージをダウンロードしてインストールしました。

その他のインストール方法はReadmeファイルを見ると,色々書いているかと思います。

使い方

インスール後,

vhs new demo.tape

とコマンドを入力すると,demo.tapeというvhs用で 利用するtapeという拡張子のテキストファイルが生成されます。

この中身を見ると,コメントアウトされた使い方が色々書いてあって, このコメントを参照することで,色々利用できそうです。

利用例

次のようなdemo.tapeファイルを作成しました。

Output demo.gif
Require echo
Set Shell "bash"

Set FontSize 15
Set FontFamily "UDEV Gothic JPDOC"
Set Width 600
Set Height 400
Set Padding 10
Set Theme "Pro Light"
Set TypingSpeed 0.2

Type "rm -rf demo.txt"
Enter
Type "emacs -nw demo.txt"
Enter

Sleep 3s

Type "Emacs"
Ctrl+\
Type ";gehpcjsla"
Ctrl+\
Type T-Code
Ctrl+\
Type ";g/tlj,f;ahkyohg,fhf"
Enter
Type "ufkdjwydkgjdl4fvjgyohsjzdf7t;sgglghdkslc"
Ctrl+J
Type "ywhskd/tlj;gqdnp,f;ahcnfhg;ywakdpc/w;snmjkl;erhg,fhf"
Sleep 3s
Ctrl+X
Ctrl+S
Sleep 3s
Ctrl+X
Ctrl+C
Sleep 3s
Enter
Sleep 5s

そして,

vhs demo.tape

とすると,demo.gifというファイルに上記tapeファイルで指示した通りに ターミナルで動作させた結果をgifファイルに出力します。

出力結果のgifは次の通りです。

emacsを実行させて,文字を入力して終了させる,というデモです。

技術的には,ターミナルをchrome(モードレス)上で動作させて,chromeの画面を録画しているような感じのようです。

そのため,最初の実行時にchromeをダウンロードするので少し余分に時間がか薬るようです。二回目以降はダウンロード済みのchromeから実行するので,初回は時間がかかるのに注意が必要です。

さいごに

今回は,ターミナルの操作を再現させるVHSというものを紹介しました。

この日記で何かを紹介する時に色々利用できそうな気がします。