-
Notifications
You must be signed in to change notification settings - Fork 5
/
Config.dhall
295 lines (265 loc) · 9.41 KB
/
Config.dhall
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
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
{- Almost all of the fields are either `Optional` values or `List`s so that
these fields can be omitted from the generated NetHack configuration file if
left empty.
The few fields that are not wrapped in `Optional` or `List` are records
whose fields are also all `List` or `Optional` values. For example, the
`Scores` type is defined as:
```
{ own : Optional Bool, around : Optional Natural, top : Optional Natural }
```
If all of those fields are `None` then the `scores` option will omitted
from the generated NetHack configuration file, so there is no need to wrap
the `Scores` type in yet another `Optional`.
-}
let Alignment = ./Alignment.dhall
let AUTOPICKUP_EXCEPTION = ./AUTOPICKUP_EXCEPTION.dhall
let BIND = ./BIND.dhall
let Disclose = ./Disclose.dhall
let Enabled = ./Enabled.dhall
let Gender = ./Gender.dhall
let HiliteStatus = ./HiliteStatus.dhall
let MenuColor = ./MenuColor.dhall
let MenuStyle = ./MenuStyle.dhall
let MenuHeadings = ./MenuHeadings.dhall
let MsgWindow = ./MsgWindow.dhall
let MsgType = ./MsgType.dhall
let NumberPad = ./NumberPad.dhall
let ParanoidConfirmation = ./ParanoidConfirmation.dhall
let PetType = ./PetType.dhall
let PickupBurden = ./PickupBurden.dhall
let PileLimit = ./PileLimit.dhall
let PlayMode = ./PlayMode.dhall
let Race = ./Race.dhall
let Role = ./Role.dhall
let RunMode = ./RunMode.dhall
let Scores = ./Scores.dhall
let SortLoot = ./SortLoot.dhall
let SOUND = ./SOUND.dhall
let SymSet = ./SymSet.dhall
let WhatisCoord = ./WhatisCoord.dhall
let WhatisFilter = ./WhatisFilter.dhall
in { Type =
{ AUTOCOMPLETE : List (Enabled Text)
, acoustics : Optional Bool
, align : Optional (Enabled Alignment)
, autodescribe : Optional Bool
, autodig : Optional Bool
, autoopen : Optional Bool
, autopickup : Optional Bool
, AUTOPICKUP_EXCEPTION : List AUTOPICKUP_EXCEPTION
, autoquiver : Optional Bool
, BIND : List BIND
, blind : Optional Bool
, bones : Optional Bool
, catname : Optional Text
, checkpoint : Optional Bool
, checkspace : Optional Bool
, clicklook : Optional Bool
, cmdassist : Optional Bool
, confirm : Optional Bool
, dark_room : Optional Bool
, disclose : Optional Disclose.Type
, dogname : Optional Text
, extmenu : Optional Bool
, fixinv : Optional Bool
, force_invmenu : Optional Bool
, fruit : Optional Text
, gender : Optional Gender
, goldX : Optional Bool
, help : Optional Bool
, hilite_pet : Optional Bool
, hilite_pile : Optional Bool
, hilite_status : HiliteStatus.Type
, hitpointbar : Optional Bool
, horsename : Optional Text
, ignintr : Optional Bool
, implicit_uncursed : Optional Bool
, legacy : Optional Bool
, lit_corridor : Optional Bool
, lootabc : Optional Bool
, mail : Optional Bool
, mention_walls : Optional Bool
, menucolors : List MenuColor
, menustyle : Optional MenuStyle
, menu_deselect_all : Optional Text
, menu_deselect_page : Optional Text
, menu_first_page : Optional Text
, menu_headings : Optional MenuHeadings
, menu_invert_all : Optional Text
, menu_invert_page : Optional Text
, menu_last_page : Optional Text
, menu_next_page : Optional Text
, menu_objsyms : Optional Bool
, menu_previous_page : Optional Text
, menu_search : Optional Text
, menu_select_all : Optional Text
, menu_select_page : Optional Text
, menu_tab_sep : Optional Bool
, msghistory : Optional Natural
, msg_window : Optional MsgWindow
, MSGTYPE : List MsgType
, name : Optional Text
, news : Optional Bool
, nudist : Optional Bool
, null : Optional Bool
, number_pad : Optional NumberPad
, packorder : Optional Text
, paranoid_confirmation : ParanoidConfirmation.Type
, perm_invent : Optional Bool
, pettype : Optional PetType
, pickup_burden : Optional PickupBurden
, pickup_thrown : Optional Bool
, pickup_types : Optional Text
, pile_limit : Optional PileLimit
, playmode : Optional PlayMode
, pushweapon : Optional Bool
, race : Optional (Enabled Race)
, rest_on_space : Optional Bool
, role : Optional (Enabled Role)
, roguesymset : Optional SymSet
, rlecomp : Optional Bool
, runmode : Optional RunMode
, safe_pet : Optional Bool
, sanity_check : Optional Bool
, scores : Scores.Type
, showexp : Optional Bool
, showrace : Optional Bool
, showscore : Optional Bool
, silent : Optional Bool
, sortloot : Optional SortLoot
, sortpack : Optional Bool
, SOUNDDIR : Optional Text
, SOUND : List SOUND
, sparkle : Optional Bool
, standout : Optional Bool
, status_updates : Optional Bool
, statushilites : Optional Natural
, suppress_alert : Optional Text
, symset : Optional SymSet
, time : Optional Bool
, timed_delay : Optional Bool
, tombstone : Optional Bool
, toptenwin : Optional Bool
, travel : Optional Bool
, verbose : Optional Bool
, whatis_coord : Optional WhatisCoord
, whatis_filter : Optional WhatisFilter
, whatis_menu : Optional Bool
, whatis_moveskip : Optional Bool
, windowtype : Optional Text
, wizkit : Optional Text
, zerocomp : Optional Bool
}
, default =
{ AUTOCOMPLETE = [] : List (Enabled Text)
, acoustics = None Bool
, align = None (Enabled Alignment)
, autodescribe = None Bool
, autodig = None Bool
, autoopen = None Bool
, autopickup = None Bool
, AUTOPICKUP_EXCEPTION = [] : List AUTOPICKUP_EXCEPTION
, autoquiver = None Bool
, BIND = [] : List BIND
, blind = None Bool
, bones = None Bool
, catname = None Text
, checkpoint = None Bool
, checkspace = None Bool
, clicklook = None Bool
, cmdassist = None Bool
, confirm = None Bool
, dark_room = None Bool
, disclose = None Disclose.Type
, dogname = None Text
, extmenu = None Bool
, fixinv = None Bool
, force_invmenu = None Bool
, fruit = None Text
, gender = None Gender
, goldX = None Bool
, help = None Bool
, hilite_pet = None Bool
, hilite_pile = None Bool
, hilite_status = HiliteStatus.default
, hitpointbar = None Bool
, horsename = None Text
, ignintr = None Bool
, implicit_uncursed = None Bool
, legacy = None Bool
, lit_corridor = None Bool
, lootabc = None Bool
, mail = None Bool
, mention_walls = None Bool
, menucolors = [] : List MenuColor
, menustyle = None MenuStyle
, menu_deselect_all = None Text
, menu_deselect_page = None Text
, menu_first_page = None Text
, menu_headings = None MenuHeadings
, menu_invert_all = None Text
, menu_invert_page = None Text
, menu_last_page = None Text
, menu_next_page = None Text
, menu_objsyms = None Bool
, menu_previous_page = None Text
, menu_search = None Text
, menu_select_all = None Text
, menu_select_page = None Text
, menu_tab_sep = None Bool
, msghistory = None Natural
, msg_window = None MsgWindow
, MSGTYPE = [] : List MsgType
, name = None Text
, news = None Bool
, nudist = None Bool
, null = None Bool
, number_pad = None NumberPad
, packorder = None Text
, paranoid_confirmation = ParanoidConfirmation.default
, perm_invent = None Bool
, pettype = None PetType
, pickup_burden = None PickupBurden
, pickup_thrown = None Bool
, pickup_types = None Text
, pile_limit = None PileLimit
, playmode = None PlayMode
, pushweapon = None Bool
, race = None (Enabled Race)
, rest_on_space = None Bool
, role = None (Enabled Role)
, roguesymset = None SymSet
, rlecomp = None Bool
, runmode = None RunMode
, safe_pet = None Bool
, sanity_check = None Bool
, scores = Scores.default
, showexp = None Bool
, showrace = None Bool
, showscore = None Bool
, silent = None Bool
, sortloot = None SortLoot
, sortpack = None Bool
, SOUNDDIR = None Text
, SOUND = [] : List SOUND
, sparkle = None Bool
, standout = None Bool
, status_updates = None Bool
, statushilites = None Natural
, suppress_alert = None Text
, symset = None SymSet
, time = None Bool
, timed_delay = None Bool
, tombstone = None Bool
, toptenwin = None Bool
, travel = None Bool
, verbose = None Bool
, whatis_coord = None WhatisCoord
, whatis_filter = None WhatisFilter
, whatis_menu = None Bool
, whatis_moveskip = None Bool
, windowtype = None Text
, wizkit = None Text
, zerocomp = None Bool
}
}