Asciinemaで華麗に端末操作を共有する

Asciinemaとは?

前回の記事でbash云々よりも「その端末動画どうやって作った?」という意見が多かったので紹介。

Asciinemaは端末の操作を共有できるサービスです
下記公式サイトを見るのが一番わかるかと思います

https://asciinema.org/

以下の利点があります。

  1. 動画のシークができる
  2. 動画をテキストとしてコピーできる
  3. 導入が簡単
  4. 録画が簡単

インストール

インストールは公式に書いてある通りにすればできますが、
流行ってるのでDockerfileも作っておきました

git clone https://github.com/yaasita/docker-asciinema.git

# authorized_keysに自分の公開鍵を置く
cp /path/to/authorized_keys ./authorized_keys

# asciinemaというイメージをビルド
docker build -t asciinema .

# 実行
docker run -p 22022:22 -d asciinema

# sshでログイン
ssh localhost -lroot -p22022

使い方

使い方はとても簡単です
以下のコマンドでasciinemaが起動します

$ asciinema 
111

いろいろ操作します

$ exit

終了します

~ Asciicast recording finished.
~ Do you want to upload it? [Y/n]
と聞かれるのでよければアップロードします

Asciinemaでユーザ登録が済んでいるなら
以下のコマンドで表示されるURLをログイン状態で踏めば自分の動画として
登録されます。

$ asciinema auth

動画の例

Asciinemaの紹介なのに動画を残さないのもアレなので、
vimの操作ログでも共有しておきます
(操作の意味はお近くのvimmerに聞いてください)

計算

キー操作ログ

> vim /tm<Tab>ec<Tab>
> jjjqaf<LShft>$<LShft>lvt <LShft>"byf<LShft>$lvt <LShft>"cyf<LShft><E-7c>ll<LShft>R<LShft>$<Ctrl>r<LShft>_<Ctrl>rb<LShft>:<Ctrl>rc<LShft>@12
> <ESC>j0q5[<ESC>5[a'w
> 'q

集計

キー操作ログ

> vim shu<Tab>
> jj'w summary.txt
> <Ctrl>wv<Ctrl>wl'e sum<Tab>
> <LShft>V<ESC>j'<LShft>%s/'.<LShft>@//
> gg<LShft>VG<LShft>!sort -u
> <Ctrl>v<LShft>G<LShft>$A' 0<ESC>j'w
> <Ctrl>whkk<LShft>O<ESC><Ctrl>wlk.<Ctrl>whjqavt'yk/<Ctrl>r<LShft>"
> f l<LShft>"byiw<Ctrl>wlggn<LShft>$'normal <Ctrl>2<BckSp><Ctrl>rb<Ctrl>v<Ctrl>a
> <Ctrl>whddq[a[a[a[a[a[a30[a'w
> <Ctrl>wl'w
> 'qa

おしまい

Ruby on RailsによるWEBシステム開発、Android/iPhoneアプリ開発、電子書籍配信のことならお任せください この記事を書いた人と働こう! Ruby on Rails の開発なら実績豊富なBPS

この記事の著者

yamasita

東京電機大学工学部→3年間某SIerにて銀行システムの開発→bpsに入社→TechRacho外部ライター

yamasitaの書いた記事

インフラ
現場で使うansible

2014年12月25日

週刊Railsウォッチ

インフラ

BigBinary記事より

ActiveSupport探訪シリーズ