-
-
Notifications
You must be signed in to change notification settings - Fork 4
Expand file tree
/
Copy pathrsconstruct.toml
More file actions
117 lines (84 loc) · 4.61 KB
/
Copy pathrsconstruct.toml
File metadata and controls
117 lines (84 loc) · 4.61 KB
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
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
# Canonical shared rsconstruct.toml — this file is IDENTICAL in every repo.
#
# Do not edit per-repo copies. Edit the canonical copy
# (/home/mark/git/rsconstruct.canonical.toml) and sync it out.
# Repo-specific configuration (dependencies, explicit generators, excludes,
# one-off workarounds) lives in rsconstruct.local.toml, which rsconstruct
# deep-merges over this file at load time.
#
# This file is a menu: src_dirs entries that don't exist in a given repo are
# skipped (default behavior since 0.9.46), so a processor whose directories
# are all absent simply matches no files there. The directory layout of each
# repo decides which checks run.
# ─── analyzers ───────────────────────────────────────────────────────────────
[analyzer.tera]
[analyzer.markdown]
[analyzer.python]
# ─── templating ──────────────────────────────────────────────────────────────
# Convention: tera configs are Lua (config/*.lua). dep_auto entries are
# silently skipped where absent. Repos still on config/*.py keep a
# dep_inputs override in their local overlay until converted.
[processor.tera]
dep_auto = [
"config/project.lua",
"config/personal.lua",
"config/version.lua",
"config/github.lua",
"config/python.lua",
"config/shared.lua",
]
# ─── markdown ────────────────────────────────────────────────────────────────
[processor.rumdl]
src_dirs = ["src", "docs", "exercises", "notes", "marp"]
[processor.zspell]
src_dirs = ["src", "docs", "exercises", "notes", "marp", "syllabi", "out/generator"]
# ─── python ──────────────────────────────────────────────────────────────────
[processor.ruff]
src_dirs = ["src", "scripts", "config", "tests", "exercises", "animations"]
[processor.pylint]
src_dirs = ["src", "scripts", "config", "tests", "exercises", "animations"]
[processor.mypy]
src_dirs = ["src", "scripts", "config", "tests", "exercises", "animations"]
[processor.requirements]
src_dirs = ["src", "scripts", "config", "tests", "animations"]
[processor.pytest]
src_dirs = ["tests"]
# ─── shell ───────────────────────────────────────────────────────────────────
[processor.shellcheck]
src_dirs = ["scripts", "src", "misc", "exercises", "docs", "config"]
args = ["--severity=error", "--shell=bash"]
# ─── lua ─────────────────────────────────────────────────────────────────────
[processor.luacheck]
src_dirs = ["config", "print"]
# ─── toml / yaml / json ──────────────────────────────────────────────────────
[processor.taplo]
src_dirs = ["."]
[processor.iyamllint]
src_dirs = ["yaml", "tracks"]
[processor.ijsonlint]
src_dirs = ["json"]
# ─── web ─────────────────────────────────────────────────────────────────────
[processor.stylelint]
src_dirs = ["resources", "site-resources", "print"]
[processor.htmlhint]
src_dirs = ["src", "site-resources"]
[processor.tidy]
src_dirs = ["src", "blog"]
[processor.eslint]
src_dirs = ["site-resources", "shared", "config", "blog"]
args = ["-c", "config/eslint.config.js"]
# ─── teaching content ────────────────────────────────────────────────────────
[processor.tags]
src_dirs = ["syllabi", "out/generator"]
required_fields = ["tags", "level", "category", "audience"]
required_field_groups = [["duration_hours"], ["duration_hours_long", "duration_hours_short"]]
[processor.terms]
src_dirs = ["syllabi", "out/generator"]
[processor.pandoc.syllabi]
src_dirs = ["syllabi"]
formats = ["pdf", "html", "docx"]
[processor.script.check_md]
command = "scripts/check_md.py"
src_extensions = [".md"]
src_dirs = ["syllabi", "marp", "out/generator"]
batch = true