summaryrefslogtreecommitdiff
path: root/tex/context/base/task-ini.lua
blob: 20cba27b7155a32e14833e2f47501b6efdbbc03f (plain)
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
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
if not modules then modules = { } end modules ['task-ini'] = {
    version   = 1.001,
    comment   = "companion to task-ini.mkiv",
    author    = "Hans Hagen, PRAGMA-ADE, Hasselt NL",
    copyright = "PRAGMA ADE / ConTeXt Development Team",
    license   = "see context related readme files"
}

-- this is a temporary solution, we need to isolate some modules and then
-- the load order can determine the trickery to be applied to node lists
--
-- we can disable more handlers and enable then when really used (*)

tasks.appendaction("processors", "normalizers", "fonts.collections.process")                 -- todo
tasks.appendaction("processors", "normalizers", "fonts.checkers.missing")                    -- disabled

tasks.appendaction("processors", "characters",  "chars.handle_mirroring")                    -- disabled
tasks.appendaction("processors", "characters",  "typesetting.cases.handler")                 -- disabled
--~ tasks.appendaction("processors", "characters",  "typesetting.digits.handler")                -- disabled
tasks.appendaction("processors", "characters",  "chars.handle_breakpoints")                  -- disabled
tasks.appendaction("processors", "characters",  "scripts.preprocess")

tasks.appendaction("processors", "words",       "kernel.hyphenation")                        -- always on
tasks.appendaction("processors", "words",       "languages.words.check")                     -- disabled

tasks.appendaction("processors", "fonts",       "parbuilders.solutions.splitters.split")     -- experimental
tasks.appendaction("processors", "fonts",       "nodes.process_characters")                  -- maybe todo
tasks.appendaction("processors", "fonts",       "nodes.inject_kerns")                        -- maybe todo
tasks.appendaction("processors", "fonts",       "nodes.protect_glyphs", nil, "nohead")       -- maybe todo
tasks.appendaction("processors", "fonts",       "kernel.ligaturing")                         -- always on
tasks.appendaction("processors", "fonts",       "kernel.kerning")                            -- always on
tasks.appendaction("processors", "fonts",       "nodes.stripping.process")                   -- disabled (might move)

tasks.appendaction("processors", "lists",       "lists.handle_spacing")                      -- disabled
tasks.appendaction("processors", "lists",       "lists.handle_kerning")                      -- disabled

tasks.appendaction("processors", "lists",  "typesetting.digits.handler")                -- disabled

tasks.appendaction("shipouts",   "normalizers", "nodes.cleanup_page")                        -- maybe todo
tasks.appendaction("shipouts",   "normalizers", "nodes.add_references")                      -- disabled
tasks.appendaction("shipouts",   "normalizers", "nodes.add_destinations")                    -- disabled
tasks.appendaction("shipouts",   "normalizers", "nodes.rules.process")                       -- disabled
tasks.appendaction("shipouts",   "normalizers", "nodes.shifts.process")                      -- disabled

tasks.appendaction("shipouts",   "finishers",   "shipouts.handle_color")                     -- disabled
tasks.appendaction("shipouts",   "finishers",   "shipouts.handle_transparency")              -- disabled
tasks.appendaction("shipouts",   "finishers",   "shipouts.handle_colorintent")               -- disabled
tasks.appendaction("shipouts",   "finishers",   "shipouts.handle_negative")                  -- disabled
tasks.appendaction("shipouts",   "finishers",   "shipouts.handle_effect")                    -- disabled
tasks.appendaction("shipouts",   "finishers",   "shipouts.handle_viewerlayer")               -- disabled

tasks.appendaction("math",       "normalizers", "noads.relocate_characters", nil, "nohead")  -- always on
tasks.appendaction("math",       "normalizers", "noads.resize_characters",   nil, "nohead")  -- always on
tasks.appendaction("math",       "normalizers", "noads.respace_characters",  nil, "nohead")  -- always on

tasks.appendaction("math",       "builders",    "noads.mlist_to_hlist")                      -- always on

-- quite experimental

tasks.appendaction("finalizers", "lists",       "nodes.repackage_graphicvadjust")            -- todo
tasks.appendaction("finalizers", "fonts",       "parbuilders.solutions.splitters.optimize")  -- experimental

-- rather new

tasks.appendaction("mvlbuilders", "normalizers", "nodes.migrate_outwards")
tasks.appendaction("mvlbuilders", "normalizers", "nodes.handle_page_spacing") -- last !

tasks.appendaction("vboxbuilders", "normalizers", "nodes.handle_vbox_spacing")

-- speedup: only kick in when used

tasks.disableaction("processors",  "fonts.checkers.missing")
tasks.disableaction("processors",  "chars.handle_breakpoints")
tasks.disableaction("processors",  "typesetting.cases.handler")
tasks.disableaction("processors",  "typesetting.digits.handler")
tasks.disableaction("processors",  "chars.handle_mirroring")
tasks.disableaction("processors",  "languages.words.check")
tasks.disableaction("processors",  "lists.handle_spacing")
tasks.disableaction("processors",  "lists.handle_kerning")
tasks.disableaction("processors",  "nodes.stripping.process")

tasks.disableaction("shipouts",    "nodes.rules.process")
tasks.disableaction("shipouts",    "nodes.shifts.process")
tasks.disableaction("shipouts",    "shipouts.handle_color")
tasks.disableaction("shipouts",    "shipouts.handle_transparency")
tasks.disableaction("shipouts",    "shipouts.handle_colorintent")
tasks.disableaction("shipouts",    "shipouts.handle_effect")
tasks.disableaction("shipouts",    "shipouts.handle_negative")
tasks.disableaction("shipouts",    "shipouts.handle_viewerlayer")

tasks.disableaction("shipouts",    "nodes.add_references")
tasks.disableaction("shipouts",    "nodes.add_destinations")

tasks.disableaction("mvlbuilders", "nodes.migrate_outwards")

tasks.disableaction("processors",  "parbuilders.solutions.splitters.split")
tasks.disableaction("finalizers",  "parbuilders.solutions.splitters.optimize")

callbacks.freeze("find_.*_file", "find file using resolver")
callbacks.freeze("read_.*_file", "read file at once")
callbacks.freeze("open_.*_file", "open file for reading")