You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Allow size control by line count (height) and character count (width) #578
Is your feature request related to a problem? Please describe.
I love with vhs that you can declaratively define what you would like to show. However, specifying the with and height of the output is non-intuitive. It's a frustrating of setting sizes, producing a gif, tweaking sizes, producing a gif, tweaking sizes...
Describe the solution you'd like
It would be much nicer to be able to define the size of the output in terms of the text output. It should be possible to set the height by the number of lines and the width by the number of characters.
Describe alternatives you've considered
I've used Width and Height to tinker with the output size, but it's not a lot of fun.
asciinema's cols/rows sizing you referenced is nice - and you can have tape-like recordings with it via S-VHS, a small bash wrapper around tmux + asciinema + agg. The terminal is sized directly with SetCols / SetRows and the resolution follows font size -> no tweak-render-tweak loop.
Activity
jackspirou commentedon Aug 6, 2025
I started a discussion #644 around a working (for me) SVG implementation fork at https://github.com/agentstation/vhs - might be relevant or helpful 😄
feat: add Set Lines and Set Columns for character-based terminal sizing
mvanhorn commentedon Mar 26, 2026
Implemented in #731 - adds Set Lines, Set Columns (and aliases Rows, Cols) that compute pixel dimensions from font metrics.
dimk90 commentedon Aug 25, 2026
asciinema's cols/rows sizing you referenced is nice - and you can have tape-like recordings with it via S-VHS, a small bash wrapper aroundtmux+asciinema+agg. The terminal is sized directly withSetCols/SetRowsand the resolution follows font size -> no tweak-render-tweak loop.