pkg.sopackage field notes

brew / rank 3046

Install libvterm with Homebrew

C99 library which implements a VT220 or xterm terminal emulator. Version 0.3.3 via Homebrew; verified from local package data.

install

Additional install commands

macOS

Homebrewverified · 100%
brew install libvterm

provider-native install command

overview

Package summary

C99 library which implements a VT220 or xterm terminal emulator

Commands and aliases

  • unterm
  • vterm-ctrl
  • vterm-dump

history

Project history and usage

libvterm is Paul "LeoNerd" Evans's C99 library for embedding a VT/xterm/ECMA-48 terminal emulator without binding the emulator to a graphics toolkit. In package-manager terms it is a small, sharp terminal-emulation core: applications provide callbacks for drawing while libvterm handles escape sequences, screen state, and terminal behavior.

Project history

The official libvterm page describes it as an abstract C99 implementation of a VT220 or xterm-like terminal emulator that avoids a specific graphics toolkit and avoids malloc during normal running state. Launchpad records the project as registered by Paul Evans on 2010-08-01, with Bazaar as the version-control system and MIT/X/Expat licensing.

The project grew alongside related terminal experiments such as pangoterm and x86term. LeoNerd's project page points to pangoterm as a GTK/Pango terminal using libvterm, and blog posts from the 2010s document the library reaching enough completeness to drive Vim in its own terminal environment.

Adoption history

libvterm became best known beyond its author's ecosystem through editor and terminal embedding work. Neovim maintained a public fork and later documented that vterm had been bundled into Neovim itself under src/nvim/vterm, making libvterm part of the story behind Neovim's built-in :terminal support.

How it is used

Applications embed libvterm when they need terminal parsing and screen-state management but want to draw through their own UI toolkit, TUI layer, or experimental environment. The Homebrew package also ships small utilities such as unterm, vterm-ctrl, and vterm-dump for exercising or inspecting terminal behavior.

Why package nerds care

libvterm is the dependency you notice when a text editor or UI toolkit suddenly grows a real terminal. It is interesting because it packages a historically messy domain, VT and xterm escape behavior, into a reusable C library small enough for distros and embedders to carry.

Timeline

  • 2010-08-01: libvterm is registered on Launchpad by Paul "LeoNerd" Evans.
  • 2015-03-02: Neovim's libvterm-based terminal work draws public attention in the editor community.
  • 2022-09-06: Launchpad lists v0.3 as released.
  • 2023-01-15: The official libvterm page is updated and lists libvterm-0.3.3, 0.2, and 0.1.4 tarballs.

Related projects

  • Related projects include pangoterm, Tickit, libtermkey, x86term, Neovim's bundled vterm code, and the broader family of VT100, VT220, xterm, and ECMA-48 terminal behavior that terminal emulators implement.

security posture

Risk level: green

library-like package without higher-risk signals.

Risk classifier

green risk · low confidence · appliance

Why

  • library-like package without higher-risk signals

Signals

  • metadata:library-like

Install behavior

  • No Homebrew bottle metadata was recorded.

Recommended review

Before unattended agent use, check whether the tool reads plaintext credentials, writes remote state, publishes artifacts, or shells out to plugins.

executables

Installed executables

CommandKindExposureNote
untermexecutableindexed executableDiscovered from the local executable index.
vterm-ctrlexecutableindexed executableDiscovered from the local executable index.
vterm-dumpexecutableindexed executableDiscovered from the local executable index.

freshness

Version and freshness

These signals separate page generation age, package-manager activity, and upstream release comparison. Version lag is warned only when an evidence URL and comparable versions are present.

page generated2026-08-03
manager version0.3.3
manager updated
local dataunknown
upstreamnot available
latest detectednot detected
  • okNo freshness warnings were generated.

install metadata

Package metadata

Package keybrew:libvterm
Version0.3.3
Package managerHomebrew
Homepagehttps://www.leonerd.org.uk/code/libvterm/
Bottlenot recorded
Servicenone declared

source trail

Generated from repository data

This page is generated by av-web from the private package SQLite artifact built by scripts/generate-pkg-sqlite.py.

Used sources

  • Geiger risk classifier
  • Nucleus package database
  • curated package history
  • pkgdb category and tag curation