Automates terminal operations.
English | 日本語
cLive は事前に ttyd ( バージョン 1.7.4
以上 ) がインストールされている必要があります。
例えば homebrew を使用している場合、 brew install
でインストールすることができます。
$ brew install ttyd
それ以外のインストール方法については ttyd のドキュメントを参照してください。
Note
cLive を使用するには前提条件があります。詳しくは 前提条件
を参照してください。
$ brew install clive
$ brew install koki-develop/tap/clive
$ go install github.com/koki-develop/clive@latest
Releases ページからバイナリをダウンロードしてください。
まず clive init
を実行します。
$ clive init
Created ./clive.yml
すると、 clive.yml
という名前で次のような内容のファイルが作成されます。
# documentation: https://github.com/koki-develop/clive#settings
settings:
loginCommand: ["bash", "--login"]
fontSize: 22
defaultSpeed: 10
# documentation: https://github.com/koki-develop/clive#actions
actions:
- pause
- type: echo 'Welcome to cLive!'
- key: enter
最後に clive start
を実行するとブラウザが立ち上がり、 cLive が開始されます。
$ clive start
init
- 設定ファイルを作成します。start
- 設定ファイルを読み込み、 cLive を開始します。validate
- 設定ファイルの構文を検証します。completion
- 指定されたシェルの自動補完スクリプトを生成します。
設定ファイルを作成します。
$ clive init
フラグ | デフォルト | 説明 |
---|---|---|
-c , --config |
./clive.yml |
設定ファイル名。 |
設定ファイルを読み込み、 cLive を開始します。
設定ファイルについては設定
を参照してください。
$ clive start
フラグ | デフォルト | 説明 |
---|---|---|
-c , --config |
./clive.yml |
設定ファイル名。 |
設定ファイルを検証します。
$ clive validate
Flag | Default | Description |
---|---|---|
-c , --config |
./clive.yml |
設定ファイル名。 |
指定されたシェルの自動補完スクリプトを生成します。
生成されたスクリプトの使い方についてはヘルプを参照してください。
$ clive completion <shell>
# e.g.
$ clive completion bash
$ clive completion bash --help
サポートしているシェル:
- bash
- fish
- powershell
- zsh
設定ファイルは actions
と settings
で構成されます。
実行するアクションです。
有効なアクション:
type
- 文字を入力します。key
- 特殊キーを入力します。ctrl
- Ctrl キーを他のキーと一緒に入力します。sleep
- 指定した時間スリープします。pause
- アクションを一時停止します。screenshot
- スクリーンショットを撮影します。
文字を入力します。
フィールド | 必須 | デフォルト | 説明 |
---|---|---|---|
type |
Yes | N/A | 入力する文字。 |
count |
No | 1 |
アクションを繰り返す回数。 |
speed |
No | 10 |
キーを入力する間隔 (ミリ秒) 。 |
# e.g.
actions:
- type: echo 'Hello World'
count: 10 # Optional
speed: 100 # Optional
特殊キーを入力します。
使用できるキー:
esc
backspace
tab
enter
left
up
right
down
space
フィールド | 必須 | デフォルト | 説明 |
---|---|---|---|
key |
Yes | N/A | 入力するキー。 |
count |
No | 1 |
アクションを繰り返す回数。 |
speed |
No | 10 |
キーを入力する間隔 (ミリ秒) 。 |
# e.g.
actions:
- key: enter
count: 10 # Optional
speed: 100 # Optional
Ctrl キーを他のキーと一緒に入力する。
フィールド | 必須 | デフォルト | 説明 |
---|---|---|---|
ctrl |
Yes | N/A | Ctrl キーと一緒に入力するキー。 |
count |
No | 1 |
アクションを繰り返す回数。 |
speed |
No | 10 |
キーを入力する間隔 (ミリ秒) 。 |
# e.g.
actions:
- ctrl: c # Ctrl+c
count: 10 # Optional
speed: 100 # Optional
指定した時間スリープします。
フィールド | 必須 | デフォルト | 説明 |
---|---|---|---|
sleep |
Yes | N/A | スリープする時間 (ミリ秒) 。 |
# e.g.
actions:
- sleep: 3000 # 3 秒間スリープする
アクションを一時停止します。
エンターキーを入力して再開します。
# e.g.
actions:
- pause
スクリーンショットを撮影します。
撮影したスクリーンショットは screenshots/
に保存されます.
スクリーンショットを保存するディレクトリは settings.screenshotsDir
で変更することができます。
Field | Required | Default | Description |
---|---|---|---|
screenshot |
No | <ACTION_INDEX>_<yyyymmddHHMMSS>.png |
スクリーンショットのファイル名。 |
# e.g.
actions:
- screenshot
- screenshot: foobar.png # Optional
基本的な設定です。
設定できる項目:
loginCommand
- ログインコマンドと引数。fontSize
- フォントサイズ。fontFamily
- フォントファミリー。defaultSpeed
- デフォルトの入力速度。skipPauseBeforeQuit
- 終了前の一時停止をスキップするかどうか。screenshotsDir
- スクリーンショットを保存するディレクトリ。browserBin
- ブラウザの実行可能なバイナリへのパス。headless
- ブラウザをヘッドレスモードで動作させるかどうか。width
- ウィンドウの幅。height
- ウィンドウの高さ。
シェルへのログインコマンドと引数を設定します。
デフォルト: ["bash", "--login"]
.
# e.g.
settings:
loginCommand: ["zsh", "--login"]
フォントサイズを設定します。
デフォルト: 22
# e.g.
settings:
fontSize: 36
フォントファミリーを設定します。
# e.g.
settings:
fontFamily: monospace
デフォルトの入力速度を設定します (ミリ秒) 。
デフォルト: 10
# e.g.
settings:
defaultSpeed: 100
終了前の一時停止をスキップするかどうか。
デフォルト: false
# e.g.
settings:
skipPauseBeforeQuit: true
スクリーンショットを保存するディレクトリ。
デフォルト: screenshots
# e.g.
settings:
screenshotsDir: path/to/pictures
ブラウザの実行可能なバイナリへのパスを設定します。
サポートしているブラウザについては go-rod のドキュメント を参照してください。
# e.g.
settings:
browserBin: /Applications/Sidekick.app/Contents/MacOS/Sidekick # Sidekick を使う
ブラウザをヘッドレスモードで動作させるかどうか。
デフォルト: false
# e.g.
settings:
headless: true
ウィンドウの幅。
# e.g.
settings:
width: 1600
ウィンドウの高さ。
# e.g.
settings:
height: 800
それ以外のサンプルについては examples/
ディレクトリを参照してください。
もしこのプロジェクトが気に入ったら、是非コーヒーをおごってください。