Skip to content

Cowsay in C++

Tech stack: C++ License: (see repo)

A minimal C++ port of the classic cowsay: take a string, wrap it in an ASCII speech bubble, render a small ASCII cow underneath. Not a TUI in any serious sense. Captured here only as a tiny note: KN-86 has many places where a bordered speech bubble — CIPHER voice fragments, mission briefing callouts, error toasts — is the right unit of presentation.

  • ASCII speech-bubble / box-art callout as a primitive. A tiny helper — given text, render a CP437-bordered bubble. Reusable across CIPHER preamble on the main grid (Null cartridge only, per ADR-0015), mission brief callouts, transmissions, and Bare Deck Terminal hints.
  • N/A — single-shot CLI.
  • Plain-ASCII box-art bubble. The whole point.

Cowsay rendered output

TODO (human): Optional. A simple cowsay-style output snippet is fine — pull from the repo’s README or just generate one. Drop at inspiration/screenshots/cowsay-cpp.png.

  • Mostly a decorative idea. The real KN-86 question is: do we want a sanctioned bubble glyph treatment (alongside box-drawing and braille) as a documented primitive in software/api-reference/grammars/character-set.md, with bubble characters defined in CP437? Probably yes — it’s already an implicit pattern in some mission-brief drafts.