Files
klammertext/README.md
T
ackandClaude Fable 5.1 715d939727 What a Windows editor saves, and a standard user's Windows install (from dev 9d6f66456a3d)
- CRLF line endings are read as newlines on every system (the reader used
  to delete the pair, collapsing a Notepad++ file into one line on Linux
  and macOS); a leading UTF-8 byte-order mark is ignored; a UTF-16 or
  Windows-1252 source is refused with the encoding, the place and the
  remedy named. .gitattributes pins LF in every clone.
- Windows source install: the repository path must hold no space (GNU
  Make), accented letters are fine (every linker input is relative now);
  python.org's Python is selected ahead of an MSYS2 one that poppler pulls
  in; TeX Live goes to its Windows default C:\texlive\2026.
- The Python binding needs an ASCII installation path on Windows, and its
  suite says so there.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-26 16:17:59 +02:00

61 lines
2.5 KiB
Markdown

# 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/`](doc/install/):
- Linux, from source — `doc/install/linux_source_install.md`
- macOS, from source — `doc/install/macos_source_install.md`
- Windows, from source (native) — `doc/install/windows_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`
## 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`](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/`](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 `9d6f66456a3d`.
## License
See [`LICENSE.md`](LICENSE.md).