1 (* :mode=isabelle-options: *)
3 section "Document Preparation"
5 option browser_info : bool = false
6 -- "generate theory browser information"
8 option document : string = ""
9 -- "build document in given format: pdf, dvi, false"
10 option document_output : string = ""
11 -- "document output directory (default within $ISABELLE_BROWSER_INFO tree)"
12 option document_variants : string = "document"
13 -- "alternative document variants (separated by colons)"
14 option document_tags : string = ""
15 -- "default command tags (separated by commas)"
17 option thy_output_display : bool = false
18 -- "indicate output as multi-line display-style material"
19 option thy_output_break : bool = false
20 -- "control line breaks in non-display material"
21 option thy_output_cartouche : bool = false
22 -- "indicate if the output should be delimited as cartouche"
23 option thy_output_quotes : bool = false
24 -- "indicate if the output should be delimited via double quotes"
25 option thy_output_margin : int = 76
26 -- "right margin / page width for printing of display material"
27 option thy_output_indent : int = 0
28 -- "indentation for pretty printing of display material"
29 option thy_output_source : bool = false
30 -- "print original source text rather than internal representation"
31 option thy_output_source_cartouche : bool = false
32 -- "print original source text rather than internal representation, preserve cartouches"
33 option thy_output_modes : string = ""
34 -- "additional print modes for document output (separated by commas)"
37 section "Prover Output"
39 option show_types : bool = false
40 -- "show type constraints when printing terms"
41 option show_sorts : bool = false
42 -- "show sort constraints when printing types"
43 option show_brackets : bool = false
44 -- "show extra brackets when printing terms/types"
45 option show_question_marks : bool = true
46 -- "show leading question mark of schematic variables"
48 option show_consts : bool = false
49 -- "show constants with types when printing proof state"
50 option show_main_goal : bool = false
51 -- "show main goal when printing proof state"
52 option goals_limit : int = 10
53 -- "maximum number of subgoals to be printed"
55 option names_long : bool = false
56 -- "show fully qualified names"
57 option names_short : bool = false
58 -- "show base names only"
59 option names_unique : bool = true
60 -- "show partially qualified names, as required for unique name resolution"
62 option eta_contract : bool = true
63 -- "print terms in eta-contracted form"
65 option print_mode : string = ""
66 -- "additional print modes for prover output (separated by commas)"
69 section "Parallel Processing"
71 public option threads : int = 0
72 -- "maximum number of worker threads for prover process (0 = hardware max.)"
73 option threads_trace : int = 0
74 -- "level of tracing information for multithreading"
75 option threads_stack_limit : real = 0.25
76 -- "maximum stack size for worker threads (in giga words, 0 = unlimited)"
78 public option parallel_limit : int = 0
79 -- "approximative limit for parallel tasks (0 = unlimited)"
80 public option parallel_print : bool = true
81 -- "parallel and asynchronous printing of results"
82 public option parallel_proofs : int = 1
83 -- "level of parallel proof checking: 0, 1, 2"
84 option parallel_subproofs_threshold : real = 0.01
85 -- "lower bound of timing estimate for forked nested proofs (seconds)"
87 option command_timing_threshold : real = 0.1
88 -- "default threshold for persistent command timing (seconds)"
91 section "Detail of Proof Checking"
93 option record_proofs : int = -1
94 -- "set level of proofterm recording: 0, 1, 2, negative means unchanged"
95 option quick_and_dirty : bool = false
96 -- "if true then some tools will OMIT some proofs"
97 option skip_proofs : bool = false
98 -- "skip over proofs (implicit 'sorry')"
99 option strict_facts : bool = false
100 -- "force lazy facts when defined in context"
103 section "Global Session Parameters"
105 option condition : string = ""
106 -- "required environment variables for subsequent theories (separated by commas)"
108 option timeout : real = 0
109 -- "timeout for session build job (seconds > 0)"
111 option timeout_scale : real = 1.0
112 -- "scale factor for session timeout"
114 option process_output_limit : int = 100
115 -- "build process output limit (in million characters, 0 = unlimited)"
117 option process_output_tail : int = 40
118 -- "build process output tail shown to user (in lines, 0 = unlimited)"
120 option profiling : string = ""
121 -- "ML profiling (possible values: time, allocations)"
123 option system_heaps : bool = false
124 -- "store session heaps in $ISABELLE_HEAPS_SYSTEM, not $ISABELLE_HEAPS"
129 option ML_print_depth : int = 20
130 -- "ML print depth for toplevel pretty-printing"
132 public option ML_exception_trace : bool = false
133 -- "ML exception trace for toplevel command execution"
135 public option ML_exception_debugger : bool = false
136 -- "ML debugger exception trace for toplevel command execution"
138 public option ML_debugger : bool = false
139 -- "ML debugger instrumentation for newly compiled code"
141 public option ML_statistics : bool = true
142 -- "ML run-time system statistics"
144 public option ML_system_64 : bool = false
145 -- "ML system for 64bit platform is used if possible (change requires restart)"
147 public option ML_process_policy : string = ""
148 -- "ML process command prefix (process policy)"
151 section "Editor Session"
153 public option editor_load_delay : real = 0.5
154 -- "delay for file load operations (new buffers etc.)"
156 public option editor_input_delay : real = 0.3
157 -- "delay for user input (text edits, cursor movement etc.)"
159 public option editor_generated_input_delay : real = 1.0
160 -- "delay for machine-generated input that may outperform user edits"
162 public option editor_output_delay : real = 0.1
163 -- "delay for prover output (markup, common messages etc.)"
165 public option editor_consolidate_delay : real = 2.0
166 -- "delay to consolidate status of command evaluation (execution forks)"
168 public option editor_prune_delay : real = 15
169 -- "delay to prune history (delete old versions)"
171 option editor_prune_size : int = 0
172 -- "retained size of pruned history (delete old versions)"
174 public option editor_update_delay : real = 0.5
175 -- "delay for physical GUI updates"
177 public option editor_reparse_limit : int = 10000
178 -- "maximum amount of reparsed text outside perspective"
180 public option editor_tracing_messages : int = 1000
181 -- "initial number of tracing messages for each command transaction (0: unbounded)"
183 public option editor_chart_delay : real = 3.0
184 -- "delay for chart repainting"
186 public option editor_continuous_checking : bool = true
187 -- "continuous checking of proof document (visible and required parts)"
189 public option editor_output_state : bool = false
190 -- "implicit output of proof state"
192 option editor_execution_delay : real = 0.02
193 -- "delay for start of execution process after document update (seconds)"
195 option editor_syslog_limit : int = 100
196 -- "maximum amount of buffered syslog messages"
198 public option editor_presentation : bool = false
199 -- "dynamic presentation while editing"
202 section "Headless Session"
204 option headless_check_delay : real = 0.5
205 -- "delay for theory status check during PIDE processing (seconds)"
207 option headless_check_limit : int = 0
208 -- "maximum number of theory status checks (0 = unlimited)"
210 option headless_nodes_status_delay : real = -1
211 -- "delay for overall nodes status check during PIDE processing (seconds, disabled for < 0)"
213 option headless_watchdog_timeout : real = 600
214 -- "watchdog timeout for PIDE processing of broken theories (seconds, 0 = disabled)"
216 option headless_commit_cleanup_delay : real = 60
217 -- "delay for cleanup of already imported theories (seconds, 0 = disabled)"
220 section "Miscellaneous Tools"
222 public option find_theorems_limit : int = 40
223 -- "limit of displayed results"
225 public option find_theorems_tactic_limit : int = 5
226 -- "limit of tactic search for 'solves' criterion"
231 public option completion_limit : int = 40
232 -- "limit for completion within the formal context"
234 public option completion_path_ignore : string = "*~:*.marks:*.orig:*.rej:.DS_Store"
235 -- "glob patterns to ignore in file-system path completion (separated by colons)"
238 section "Spell Checker"
240 public option spell_checker : bool = true
241 -- "enable spell-checker for prose words within document text, comments etc."
243 public option spell_checker_dictionary : string = "en"
244 -- "spell-checker dictionary name"
246 public option spell_checker_include : string = "words,comment,comment1,comment2,comment3,ML_comment,SML_comment"
247 -- "included markup elements for spell-checker (separated by commas)"
249 public option spell_checker_exclude : string = "document_marker,antiquoted,raw_text"
250 -- "excluded markup elements for spell-checker (separated by commas)"
253 section "Secure Shell"
255 option ssh_config_dir : string = "$HOME/.ssh"
256 -- "SSH configuration directory"
258 option ssh_config_file : string = "$HOME/.ssh/config"
259 -- "main SSH configuration file"
261 option ssh_identity_files : string = "$HOME/.ssh/id_dsa:$HOME/.ssh/id_ecdsa:$HOME/.ssh/id_rsa"
262 -- "possible SSH identity files (separated by colons)"
264 option ssh_compression : bool = true
265 -- "enable SSH compression"
267 option ssh_connect_timeout : real = 60
268 -- "SSH connection timeout (seconds)"
270 option ssh_alive_interval : real = 30
271 -- "time interval to keep SSH server connection alive (seconds)"
273 option ssh_alive_count_max : int = 3
274 -- "maximum number of messages to keep SSH server connection alive"
277 section "Theory Export"
279 option export_document : bool = false
281 option export_theory : bool = false
284 section "Theory update"
286 option update_inner_syntax_cartouches : bool = false
287 -- "update inner syntax (types, terms, etc.) to use cartouches"
289 option update_mixfix_cartouches : bool = false
290 -- "update mixfix templates to use cartouches instead of double quotes"
292 option update_control_cartouches : bool = false
293 -- "update antiquotations to use control symbol with cartouche argument"
295 option update_path_cartouches : bool = false
296 -- "update file-system paths to use cartouches"
299 section "Build Database"
301 option build_database_server : bool = false
302 option build_database_user : string = ""
303 option build_database_password : string = ""
304 option build_database_name : string = ""
305 option build_database_host : string = ""
306 option build_database_port : int = 0
307 option build_database_ssh_host : string = ""
308 option build_database_ssh_user : string = ""
309 option build_database_ssh_port : int = 0
312 section "Build Log Database"
314 option build_log_database_user : string = ""
315 option build_log_database_password : string = ""
316 option build_log_database_name : string = ""
317 option build_log_database_host : string = ""
318 option build_log_database_port : int = 0
319 option build_log_ssh_host : string = ""
320 option build_log_ssh_user : string = ""
321 option build_log_ssh_port : int = 0
322 option build_log_history : int = 30 -- "length of relevant history (in days)"
323 option build_log_transaction_size : int = 1 -- "number of log files for each db update"
326 section "Isabelle/Scala/ML system channel"
328 option system_channel_address : string = ""
329 option system_channel_password : string = ""