feat: add Character Map (charmap) MTK app

A standalone Window Server app for browsing curated sets of characters
and copying them to the clipboard for pasting into other apps.

- Four sets (Latin, Punctuation, Currency, Symbols) shown as a responsive,
  scrollable tile grid with category tabs, a live preview/detail footer,
  and a Copy button.
- Click a tile (or use arrow keys + Enter/Space) to select and copy; a
  transient toast confirms the copy. Mouse wheel scrolls; Tab cycles sets.
- Styled with the MTK theme (accent, surfaces, rounded tiles) to match the
  other Montauk apps, modeled on the calculator app.

The character set is deliberately the single-byte Windows-1252 range the
system font can render (the glyph cache only holds codepoints 0-255).
Copying writes the raw byte, so glyphs render identically here and in every
other single-byte-text Montauk app (copying UTF-8 would render as mojibake).

Registered in programs/GNUmakefile and scripts/install_apps.sh alongside
calculator; menu category "Applications", icon accessories-character-map.svg.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
2026-07-06 18:07:23 +02:00
parent fcf8ae1e0b
commit 02a0cf66ad
7 changed files with 769 additions and 4 deletions
+1
View File
@@ -37,6 +37,7 @@ APPS=(
"procmgr|apps/scalable/system-monitor.svg"
"powermgr|apps/scalable/gnome-power-statistics.svg"
"calculator|apps/scalable/accessories-calculator.svg"
"charmap|apps/scalable/accessories-character-map.svg"
"printers|devices/scalable/preferences-devices-printer.svg"
"timezone|categories/scalable/preferences-system-time.svg"
"rpgdemo|apps/scalable/utilities-terminal.svg"