id = "asciinema" name = "asciinema" homepage = "https://asciinema.org" description = "A command-line tool for recording and live streaming terminal sessions." icon = "SimpleIcons:asciinema" executables = ["asciinema"] # README: "asciinema runs on GNU/Linux, macOS and FreeBSD." platforms = ["macos", "linux"] [dotfiles] # asciinema/src/config.rs: config_home() is $ASCIINEMA_CONFIG_HOME, else # $XDG_CONFIG_HOME/asciinema, else $HOME/.config/asciinema — the same on # macOS, which is what [configHome] names. config.toml is the 3.x file; # `config` is the 2.x ini-style one, which the CLI still reads. paths = [ "[configHome]/asciinema/config.toml", "[configHome]/asciinema/config", ] exclude = [] # The install ID identifies this installation to the server and is what # `asciinema auth` ties an account to. config.rs writes it to state_home() # ($HOME/.local/state/asciinema) since 3.0.0 and still reads the pre-3.0 # location under config_home() when that file exists. secret = [ "~/.local/state/asciinema/install-id", "[configHome]/asciinema/install-id", ] # Read once at the start of a recording; no daemon. side_effect = false [commands] format = 1 label = "asciinema" description = "Record and replay terminal sessions. Authentication and cat are left out." quality = "ai-draft" base = "fig:asciinema" parser = { end_of_options = "--", interleave = "permute", long_equals = true, short_attached = true, short_bundles = true } [[commands.source]] id = "fig" kind = "completion" url = "https://github.com/withfig/autocomplete/blob/master/src/asciinema.ts" license = "MIT" [[commands.subcommand]] path = ["rec"] label = "Record a session" description = "Record a terminal session to an asciicast file. Environment capture is left out." [[commands.subcommand.source]] id = "fig" kind = "completion" url = "https://github.com/withfig/autocomplete/blob/master/src/asciinema.ts" license = "MIT" [[commands.subcommand.field]] id = "filename" label = "Output file" description = "Leave empty to be asked, or upload afterwards." type = "path" position = 0 path = { kind = "file", role = "output", must_exist = false } effect = "overwrite" sources = ["fig"] [[commands.subcommand.field]] id = "command" label = "Command to record" description = "Defaults to $SHELL." type = "string" option = ["--command", "-c"] sources = ["fig"] [[commands.subcommand.field]] id = "title" label = "Title" type = "string" option = ["--title", "-t"] sources = ["fig"] [[commands.subcommand.field]] id = "idle_time_limit" label = "Idle time limit (s)" type = "number" option = ["--idle-time-limit", "-i"] sources = ["fig"] [[commands.subcommand.field]] id = "stdin" label = "Record keyboard input" type = "boolean" option = ["--stdin"] sources = ["fig"] [[commands.subcommand.field]] id = "append" label = "Append to existing file" type = "boolean" option = ["--append"] sources = ["fig"] [[commands.subcommand.field]] id = "overwrite" label = "Overwrite existing file" type = "boolean" option = ["--overwrite"] effect = "overwrite" sources = ["fig"] [[commands.subcommand.field]] id = "raw" label = "Raw output (no timing)" type = "boolean" option = ["--raw"] sources = ["fig"] [[commands.subcommand.field]] id = "cols" label = "Columns" type = "integer" option = ["--cols"] sources = ["fig"] [[commands.subcommand.field]] id = "rows" label = "Rows" type = "integer" option = ["--rows"] sources = ["fig"] [[commands.subcommand.field]] id = "yes" label = "Answer yes to prompts" type = "boolean" option = ["--yes", "-y"] sources = ["fig"] [[commands.subcommand.field]] id = "quiet" label = "Quiet" type = "boolean" option = ["--quiet", "-q"] sources = ["fig"] [[commands.subcommand.task]] id = "record" label = "Record to a file" fields = ["filename", "command", "title", "idle_time_limit", "stdin", "overwrite"] required = ["filename"] [[commands.subcommand.group]] id = "basic" label = "Basic" fields = ["filename", "command", "title", "idle_time_limit", "stdin", "overwrite"] [[commands.subcommand.group]] id = "advanced" label = "Advanced" fields = ["append", "raw", "cols", "rows", "yes", "quiet"] [[commands.subcommand]] path = ["play"] label = "Play a recording" description = "Replay an asciicast file or URL in the terminal." [[commands.subcommand.source]] id = "fig" kind = "completion" url = "https://github.com/withfig/autocomplete/blob/master/src/asciinema.ts" license = "MIT" [[commands.subcommand.field]] id = "file" label = "File or URL" type = "string" position = 0 sources = ["fig"] [[commands.subcommand.field]] id = "speed" label = "Playback speed" type = "number" option = ["--speed", "-s"] sources = ["fig"] [[commands.subcommand.task]] id = "play" label = "Play recording" fields = ["file", "speed"] required = ["file"] [[commands.subcommand.group]] id = "basic" label = "Basic" fields = ["file", "speed"] [[commands.subcommand]] path = ["upload"] label = "Upload a recording" description = "Upload an asciicast to asciinema.org." [[commands.subcommand.source]] id = "fig" kind = "completion" url = "https://github.com/withfig/autocomplete/blob/master/src/asciinema.ts" license = "MIT" [[commands.subcommand.field]] id = "file" label = "Recording file" type = "path" position = 0 path = { kind = "file", role = "input", must_exist = true } sources = ["fig"] [[commands.subcommand.task]] id = "upload" label = "Upload" fields = ["file"] required = ["file"] [[commands.subcommand.group]] id = "basic" label = "Basic" fields = ["file"]