The @@@klammerset system command formally declares a klammerset — a named, logically related group of klammer definitions — with an operative, idempotent declaration (:requires and :files load in order at the declaration point, relative to the declaring file). A bare symbol given to ktext -k, kdesc --input, or :requires resolves to x/x.k on the search path: the document's directory, then KLAMMERTEXT_KLAMMERSETS, then KLAMMERTEXT_HOME; kdesc --klammerset lists the available sets. sks/sks.k is the first declared klammerset, so `-k sks` loads the SKS by name. The engine's lookup classes were renamed *_set → *_registry to keep the two concepts apart, and the whole C++ tree now follows standard const-correctness conventions. tst/ gains klammerset_test.sh (18 cases). (from dev 64b1abf23e56)
27 lines
1.1 KiB
Makefile
27 lines
1.1 KiB
Makefile
# Klammertext distribution test suite (subset).
|
|
#
|
|
# Runs the eight shell regression suites:
|
|
# cond_test.sh — @cond argument delimitation
|
|
# deftype_test.sh — the four klammer definition modes + redefinition table
|
|
# escape_test.sh — target character escaping and quoted specials
|
|
# filename_test.sh — filenames with spaces (quoting, " / " lists, rescue)
|
|
# alone_test.sh — an optional argument's three values (default, the
|
|
# argument type's :alone value, a written value)
|
|
# modulepath_test.sh — @eval finds modules beside the file that names them
|
|
# klammerset_test.sh — the @@@klammerset system command and its search path
|
|
# editor_test.sh — editor support (doc/edit): indentation and table
|
|
# alignment; needs python3, uses Emacs when installed
|
|
#
|
|
# Requires KLAMMERTEXT_HOME set and `ktext` on PATH (build it with `make -C com`).
|
|
|
|
.PHONY: test
|
|
test:
|
|
./cond_test.sh
|
|
./deftype_test.sh
|
|
./escape_test.sh
|
|
./filename_test.sh
|
|
./alone_test.sh
|
|
./modulepath_test.sh
|
|
./klammerset_test.sh
|
|
./editor_test.sh
|