1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
|
if not modules then modules = { } end modules ['cldf-com'] = {
version = 1.001,
comment = "companion to cldf-ini.mkiv",
author = "Hans Hagen, PRAGMA-ADE, Hasselt NL",
copyright = "PRAGMA ADE / ConTeXt Development Team",
license = "see context related readme files"
}
local tostring, type = tostring, type
local format = string.format
local context = context
local generics = context.generics
local variables = interfaces.variables
generics.starttabulate = "start" .. variables.tabulate -- todo: e!start
generics.stoptabulate = "stop" .. variables.tabulate -- todo: e!stop
local NC, NR = context.NC, context.NR
local function tabulaterow(how,...)
local t = { ... }
for i=1,#t do
local ti = tostring(t[i])
NC()
if how then
context[how](ti)
else
context(ti)
end
end
NC()
NR()
end
function context.tabulaterow (...) tabulaterow(false, ...) end
function context.tabulaterowbold(...) tabulaterow("bold",...) end
function context.tabulaterowtype(...) tabulaterow("type",...) end
function context.tabulaterowtyp (...) tabulaterow("typ", ...) end
-- these will move up, just after cld definitions
function context.char(k) -- todo: if catcode == letter or other then just the utf
if type(k) == "table" then
for i=1,#k do
context(format([[\char%s\relax]],k[i]))
end
elseif k then
context(format([[\char%s\relax]],k))
end
end
function context.utfchar(k)
context(utfchar(k))
end
-- plain variants
function context.chardef(cs,u)
context(format([[\chardef\%s=%s\relax]],k)) -- context does already do format
end
function context.par()
context([[\par]]) -- no need to add {} there
end
function context.bgroup()
context("{")
end
function context.egroup()
context("}")
end
local rule = nodes.pool.rule
function context.hrule(w,h,d,dir)
if type(w) == "table" then
context(rule(w.width,w.height,w.depth,w.dir))
else
context(rule(w,h,d,dir))
end
end
context.vrule = context.hrule
|