- Filenames may contain spaces: quote on the command line; filename lists use a standalone "/" separator; unseparated names that do not exist are rejoined into names that do (announced); leading ~ expands. - Without -o, output is written to the input file's directory; -o fully specifies the output directory and basename. - "Word not parsed" warnings now appear without -v, only for text that survives removal, with correct line numbers. - New tst/filename_test.sh regression suite. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
83 lines
2.6 KiB
Plaintext
83 lines
2.6 KiB
Plaintext
@@show s : @eval :cpp show show @ @@
|
|
|
|
@@@argtype caption_side |
|
|
the side of its element on which a caption is placed
|
|
:pattern top^|right^|bottom^|left
|
|
:default bottom
|
|
@@@
|
|
|
|
@@caption_arguments :
|
|
:caption
|
|
:number.bool true
|
|
:caption_side.caption_side
|
|
:caption_font.font i
|
|
:caption_font_size.float .9
|
|
@@
|
|
|
|
@@reference spec | name :
|
|
__REF__*spec*__*name*__
|
|
@@
|
|
|
|
@@@argtype number | a number
|
|
:pattern 'float'^|'int'
|
|
:python_cast (lambda s: float(s))
|
|
@@@
|
|
|
|
@@@argtype length | a length specifier
|
|
#:pattern f^|none^|'float'w^|'float'h^|'int'px^|'float'em^|'int'pt
|
|
# The last pattern is a string, used where possible to determine its length
|
|
:pattern f^|none^|'float'w^|'float'h^|'int'px^|'float'em^|'int'pt^|"[^^"]+"^|'float'pw^|'float'ph
|
|
# :python_cast (lambda s : __import__("kutil").parse_length("tex", s))
|
|
@@@
|
|
|
|
@@@argtype lengths | a list of lengths
|
|
:pattern ('length'^|\s+)*
|
|
#:python_cast (lambda s : [__import__("kutil").parse_length("tex", e) for e in s.split()])
|
|
@@@
|
|
|
|
@@@argtype element_hpos |
|
|
the horizontal position of a block element (a table or an image) within
|
|
the text column: center, left, right, or a length, which places the
|
|
element's left edge that far from the left margin (e.g. ^:hpos 4em, ^:hpos
|
|
.25w). When the element is as wide as the text column, the positions are
|
|
indistinguishable.
|
|
:pattern center^|left^|right^|'length'
|
|
:default center
|
|
@@@
|
|
|
|
@@@argtype figure_id |
|
|
an identifier for a figure.
|
|
|
|
The identifier can be in one of six forms:
|
|
|
|
before
|
|
before <offset-to-figure>
|
|
after
|
|
after <offset-to-figure>
|
|
<image-basename>
|
|
<id>
|
|
|
|
The "before" value means the figure before this place in the text;
|
|
the number indicates the number of figures behind that place in the
|
|
text. This means that "before" is equivalent to "before 1". The
|
|
"after" value uses an offset in the same way but counting forewards.
|
|
|
|
For images, the <image-basename> argument is the basename argument to
|
|
the ^@image klammer and can be used as an identifier.
|
|
|
|
An <id> is the value of the ^:id argument for an image.
|
|
|
|
^:pattern before(?^:\s+\d+)?^|after(?^:\s+\d+)?^|[-\w]+
|
|
@@@
|
|
|
|
@@@argtype filename_list |
|
|
one or more filenames. Filenames may contain spaces: a list is separated
|
|
by a standalone "/" (whitespace on both sides), e.g.
|
|
"chapter 1.kt / chapter 2.kt". Without the separator, the names are
|
|
separated by whitespace, and names that do not exist are rejoined with
|
|
their neighbors into names that do. A leading ~ expands to the home
|
|
directory.
|
|
:pattern [\s\S]*
|
|
:python_cast (lambda s: __import__("kutil").filename_list(s))
|
|
@@@
|