asciinema 로 WSL 터미널을 녹화하기
asciinema 는 python 으로 작성된 terminal 녹화 및 플레이 프로그램입니다.
OS X, Linux 를 지원하며 개발 환경 설정이나 shell 명령어등을 강의할 때 간편하게 녹화하고 업로드할 수 있습니다.
Windows 에는 linux 같은 pty 기능이 제공되지 않아서 개인적으로는 잘 사용하지 않았는데 WSL 2가 나온후에 WSL 2 에 설치한 Ubuntu 에서 다시 실행해 보니 아주 잘 동작합니다.
이제 자료 작성시에 터미널 화면을 녹화할 일이 있으면 캡춰대신 asciinema로 녹화해서 올릴까 합니다.
사용하기
설치는 아주 간단하며 python 의 의존성 관리자인 pip 로 설치해 주면 됩니다.
pip install asciinema
녹화 & 종료
이제 asciinema rec 명령을 실행하면 local 에 녹화 파일을 저장한다는 메시지와 함께 Ctrl-d 또는 exit 를 치면 녹화가 종료된다고 알려줍니다.
$ asciinema rec asciinema: recording asciicast to /tmp/tmp98nfavzj-ascii.cast asciinema: press <ctrl-d> or type "exit" when you're done
exit 나 Ctrl-d 를 입력하면 녹화를 종료한다는 메시지와 함께 asciinema.org 에 업로드할지를 물어보는데 Enter 를 입력하면 업로드됩니다.
$ exit asciinema: recording finished asciinema: press <enter> to upload to asciinema.org, <ctrl-c> to save locally
Title 주기
업로드하면 기본적으로 제목이 untitled 로 붙게 됩니다. -t 옵션으로 제목을 지정하면 녹화가 끝나면 자동으로 지정한 제목을 붙여서 업로드합니다.
$ asciinema rec -t "My linux tutorial"
local 에 저장
마지막 옵션으로 파일명을 주고 실행하면 로컬에 저장하고 업로드를 하지 않습니다. 다음은 my-demo.cast 파일에 터미널 내용을 녹화합니다.
$ asciinema rec my-demo.cast
local 에 녹화한 파일은 play 명령으로 상영해 볼수 있습니다.
$ asciinema play my-demo.cast
개인 계정 연결
개인 계정에 업로드하고 싶을 경우 asciinema auth 을 실행하면 URL 을 하나 알려주는데 브라우저도 asciinema.org 에 로그인한후에 이 URL에 연결하면 업로드한 영상이 자동으로 개인 계정과 연결됩니다.
$ asciinema auth Open the following URL in a web browser to link your install ID with your asciinema.org user account: https://asciinema.org/connect/935d5bba-xxxx-xxxxx This will associate all recordings uploaded from this machine (past and future ones) to your account, and allow you to manage them (change title/theme, delete) at asciinema.org.