ackandClaude Fable 5.1 f4dcdf3ffd @link :section links to a section by its heading, with an alone value (from dev 831455f36fcd)
A section link names the TEXT of a heading: :section alone means the current
file, a value names the file of the same @document that has it. Resolved by
@document at assembly in html and tex; errors for a missing file, a missing
title, a doubled title and a link outside a @document. The Markdown
converter reads a Markdown anchor as a section link to the heading its slug
names. Also from dev: the converter's four silent defects fixed and --chapter
(9ae2c4cd), and the engine's alone-value error text.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-12 20:55:39 +02:00

Klammertext

Klammertext is a markup language that produces multiple output formats — HTML, LaTeX/PDF, and plain text — from a single source description. Its core engine, the Klammermachine, is written in C++; the Standard Klammer Set (SKS) adds a default library of formatting and document-structuring operators on top.

Installing

Installation guides are in doc/install/:

  • Linux, from source — doc/install/linux_source_install.md
  • macOS, from source — doc/install/macos_source_install.md
  • Windows, Linux inside WSL — doc/install/windows_wsl_install.md
  • Linux, container — doc/install/linux_container_install.md
  • macOS, container — doc/install/macos_container_install.md
  • Raspberry Pi, from source — doc/install/raspberry_pi_install.md

Building from source

With a C++20 compiler and KLAMMERTEXT_HOME set to this directory:

make -C com

This builds the Klammermachine library (into lib/), the SKS components, and the three commands — ktext, kdesc, kdiag (into bin/). See the source-install guide for prerequisites (TeX Live for PDF output, Python, and so on).

Working with an AI assistant

If you use a language model to help write Klammertext, give it doc/klammertext_for_llm.md. It is a dense reference written for a model rather than a person: the syntax, the things a model is most likely to assume wrongly about it (Klammertext is not LaTeX, Markdown, or Lisp, and reads oddly if you expect any of them), and how to ask the kdesc and kdiag commands for the current state of the machine instead of guessing.

Editor support

Editing support for Emacs, Sublime Text, Vim, and Visual Studio Code — syntax highlighting, delimiter matching, structural reindentation, table alignment, diagnostics — is in doc/edit/, together with the shared implementation and the Klammertext language server they build on.

Provenance

This repository is a curated snapshot of Klammertext's private development tree, assembled by a manifest-driven script. Its history is a series of release snapshots, not a mirror of the development history, and files here are regenerated on each release — patches cannot be merged directly. Report problems (or send patches) to the author; accepted changes are applied to the development tree and appear in a following snapshot.

This snapshot was assembled from development commit 831455f36fcd.

License

See LICENSE.md.

S
Description
No description provided
Readme
11 MiB
0 Stars 1 Watchers 0 Forks
Languages
C++ 50.4%
Python 19.7%
Shell 15.8%
JavaScript 4.2%
KCL 3.5%
Other 6.3%