| author | wenzelm | 
| Wed, 08 Nov 2023 20:31:29 +0100 | |
| changeset 78921 | 2fee5fba3116 | 
| parent 78914 | 715f1bd21993 | 
| child 79067 | 212c94edae2b | 
| permissions | -rw-r--r-- | 
| 48367 | 1 | (* :mode=isabelle-options: *) | 
| 2 | ||
| 49295 | 3 | section "Document Preparation" | 
| 49270 | 4 | |
| 77603 | 5 | option browser_info : bool = false for build | 
| 48580 | 6 | -- "generate theory browser information" | 
| 48367 | 7 | |
| 77603 | 8 | option document : string = "" (standard "true") for build | 
| 73827 | 9 | -- "build PDF document (enabled for \"pdf\" or \"true\", disabled for \"\" or \"false\")" | 
| 77603 | 10 | option document_output : string = "" (standard "output") for build | 
| 72578 
3e8395f9093a
clarified build_doc, based on Present.build_documents;
 wenzelm parents: 
72300diff
changeset | 11 | -- "document output directory" | 
| 77603 | 12 | option document_echo : bool = false for build | 
| 74732 
015282fb3e31
clarified messages, depending on option "document_echo";
 wenzelm parents: 
74147diff
changeset | 13 | -- "inform about document file names during session presentation" | 
| 77603 | 14 | option document_variants : string = "document" for build document | 
| 67137 | 15 | -- "alternative document variants (separated by colons)" | 
| 77603 | 16 | option document_tags : string = "" for document | 
| 67138 | 17 | -- "default command tags (separated by commas)" | 
| 77603 | 18 | option document_bibliography : bool = false for document | 
| 73743 | 19 | -- "explicitly enable use of bibtex (default: according to presence of root.bib)" | 
| 77603 | 20 | option document_build : string = "lualatex" (standard "build") for document | 
| 74827 
c1b5d6e6ff74
clarified system option standard values: avoid oddities like "isabelle build -o document_output" producing directories named "true";
 wenzelm parents: 
74824diff
changeset | 21 | -- "document build engine (e.g. build, lualatex, pdflatex)" | 
| 77603 | 22 | option document_logo : string = "" (standard "_") for document | 
| 73723 | 23 | -- "generate named instance of Isabelle logo (underscore means unnamed variant)" | 
| 77603 | 24 | option document_heading_prefix : string = "isamarkup" (standard) for document | 
| 74824 
6424f74fd9d4
Latex.Output.latex_heading depends on option document_heading_prefix, e.g. relevant for Dagstuhl LIPIcs which prefers unaliased \section etc.;
 wenzelm parents: 
74733diff
changeset | 25 | -- "prefix for LaTeX macros generated from 'chapter', 'section' etc." | 
| 77603 | 26 | option document_comment_latex : bool = false for document | 
| 74840 
4faf0ec33cbf
option document_comment_latex supports e.g. Dagstuhl LIPIcs;
 wenzelm parents: 
74827diff
changeset | 27 | -- "use regular LaTeX version of comment.sty, instead of historic plain TeX version" | 
| 77603 | 28 | option document_cite_commands : string = "cite,nocite,citet,citep" for document | 
| 76986 | 29 | -- "antiquotation commands to determine the structure of bibliography" | 
| 48367 | 30 | |
| 77603 | 31 | option thy_output_display : bool = false for content | 
| 48580 | 32 | -- "indicate output as multi-line display-style material" | 
| 77603 | 33 | option thy_output_break : bool = false for content | 
| 48580 | 34 | -- "control line breaks in non-display material" | 
| 77603 | 35 | option thy_output_cartouche : bool = false for content | 
| 70121 | 36 | -- "indicate if the output should be delimited as cartouche" | 
| 77603 | 37 | option thy_output_quotes : bool = false for content | 
| 70121 | 38 | -- "indicate if the output should be delimited via double quotes" | 
| 77603 | 39 | option thy_output_margin : int = 76 for content | 
| 59175 
bf465f335e85
system option "pretty_margin" is superseded by "thy_output_margin";
 wenzelm parents: 
58849diff
changeset | 40 | -- "right margin / page width for printing of display material" | 
| 77603 | 41 | option thy_output_indent : int = 0 for content | 
| 48580 | 42 | -- "indentation for pretty printing of display material" | 
| 77603 | 43 | option thy_output_source : bool = false for content | 
| 48580 | 44 | -- "print original source text rather than internal representation" | 
| 77603 | 45 | option thy_output_source_cartouche : bool = false for content | 
| 70122 
a0b21b4b7a4a
strip cartouches from arguments of "embedded" document antiquotations, corresponding to automated update via "isabelle update -u control_cartouches" -- e.g. relevant for documents with thy_output_source (e.g. doc "isar-ref", "jedit", "system");
 wenzelm parents: 
70121diff
changeset | 46 | -- "print original source text rather than internal representation, preserve cartouches" | 
| 77603 | 47 | option thy_output_modes : string = "" for content | 
| 52042 | 48 | -- "additional print modes for document output (separated by commas)" | 
| 49270 | 49 | |
| 52043 
286629271d65
more system options as context-sensitive config options;
 wenzelm parents: 
52042diff
changeset | 50 | |
| 
286629271d65
more system options as context-sensitive config options;
 wenzelm parents: 
52042diff
changeset | 51 | section "Prover Output" | 
| 
286629271d65
more system options as context-sensitive config options;
 wenzelm parents: 
52042diff
changeset | 52 | |
| 77674 | 53 | option pide_reports : bool = true for content | 
| 54 | -- "enable reports of PIDE markup" | |
| 55 | ||
| 77603 | 56 | option show_types : bool = false for content | 
| 52043 
286629271d65
more system options as context-sensitive config options;
 wenzelm parents: 
52042diff
changeset | 57 | -- "show type constraints when printing terms" | 
| 77603 | 58 | option show_sorts : bool = false for content | 
| 52043 
286629271d65
more system options as context-sensitive config options;
 wenzelm parents: 
52042diff
changeset | 59 | -- "show sort constraints when printing types" | 
| 77603 | 60 | option show_brackets : bool = false for content | 
| 52043 
286629271d65
more system options as context-sensitive config options;
 wenzelm parents: 
52042diff
changeset | 61 | -- "show extra brackets when printing terms/types" | 
| 77603 | 62 | option show_question_marks : bool = true for content | 
| 52043 
286629271d65
more system options as context-sensitive config options;
 wenzelm parents: 
52042diff
changeset | 63 | -- "show leading question mark of schematic variables" | 
| 
286629271d65
more system options as context-sensitive config options;
 wenzelm parents: 
52042diff
changeset | 64 | |
| 77603 | 65 | option show_consts : bool = false for content | 
| 52043 
286629271d65
more system options as context-sensitive config options;
 wenzelm parents: 
52042diff
changeset | 66 | -- "show constants with types when printing proof state" | 
| 77603 | 67 | option show_main_goal : bool = false for content | 
| 52043 
286629271d65
more system options as context-sensitive config options;
 wenzelm parents: 
52042diff
changeset | 68 | -- "show main goal when printing proof state" | 
| 77603 | 69 | option goals_limit : int = 10 for content | 
| 52043 
286629271d65
more system options as context-sensitive config options;
 wenzelm parents: 
52042diff
changeset | 70 | -- "maximum number of subgoals to be printed" | 
| 
286629271d65
more system options as context-sensitive config options;
 wenzelm parents: 
52042diff
changeset | 71 | |
| 77603 | 72 | option show_states : bool = false for content | 
| 76073 
951abf9db857
option "show_states" for more verbosity of batch-builds;
 wenzelm parents: 
76068diff
changeset | 73 | -- "show toplevel states even if outside of interactive mode" | 
| 
951abf9db857
option "show_states" for more verbosity of batch-builds;
 wenzelm parents: 
76068diff
changeset | 74 | |
| 
951abf9db857
option "show_states" for more verbosity of batch-builds;
 wenzelm parents: 
76068diff
changeset | 75 | |
| 77603 | 76 | option names_long : bool = false for content | 
| 52043 
286629271d65
more system options as context-sensitive config options;
 wenzelm parents: 
52042diff
changeset | 77 | -- "show fully qualified names" | 
| 77603 | 78 | option names_short : bool = false for content | 
| 52043 
286629271d65
more system options as context-sensitive config options;
 wenzelm parents: 
52042diff
changeset | 79 | -- "show base names only" | 
| 77603 | 80 | option names_unique : bool = true for content | 
| 52043 
286629271d65
more system options as context-sensitive config options;
 wenzelm parents: 
52042diff
changeset | 81 | -- "show partially qualified names, as required for unique name resolution" | 
| 
286629271d65
more system options as context-sensitive config options;
 wenzelm parents: 
52042diff
changeset | 82 | |
| 77603 | 83 | option eta_contract : bool = true for content | 
| 52043 
286629271d65
more system options as context-sensitive config options;
 wenzelm parents: 
52042diff
changeset | 84 | -- "print terms in eta-contracted form" | 
| 
286629271d65
more system options as context-sensitive config options;
 wenzelm parents: 
52042diff
changeset | 85 | |
| 77603 | 86 | option print_mode : string = "" for content | 
| 49270 | 87 | -- "additional print modes for prover output (separated by commas)" | 
| 88 | ||
| 89 | ||
| 73387 | 90 | section "Parallel Processing and Timing" | 
| 49270 | 91 | |
| 77603 | 92 | public option threads : int = 0 for build | 
| 49270 | 93 | -- "maximum number of worker threads for prover process (0 = hardware max.)" | 
| 56734 
6ca87a061740
suppress potential dangerous option (see 1baa5d19ac44);
 wenzelm parents: 
56613diff
changeset | 94 | option threads_trace : int = 0 | 
| 49270 | 95 | -- "level of tracing information for multithreading" | 
| 59468 
fe6651760643
explicit threads_stack_limit (for recent Poly/ML SVN versions), which leads to soft interrupt instead of exhaustion of virtual memory, which is particularly relevant for the bigger address space of x86_64;
 wenzelm parents: 
59446diff
changeset | 96 | option threads_stack_limit : real = 0.25 | 
| 
fe6651760643
explicit threads_stack_limit (for recent Poly/ML SVN versions), which leads to soft interrupt instead of exhaustion of virtual memory, which is particularly relevant for the bigger address space of x86_64;
 wenzelm parents: 
59446diff
changeset | 97 | -- "maximum stack size for worker threads (in giga words, 0 = unlimited)" | 
| 62790 | 98 | |
| 77603 | 99 | public option parallel_limit : int = 0 for build | 
| 68130 
6fb85346cb79
clarified future scheduling parameters, with support for parallel_limit;
 wenzelm parents: 
67743diff
changeset | 100 | -- "approximative limit for parallel tasks (0 = unlimited)" | 
| 77603 | 101 | public option parallel_print : bool = true for build | 
| 56875 
f6259d6fb565
explicit option parallel_print to downgrade parallel scheduling, which might occasionally help for big and heavy "scripts";
 wenzelm parents: 
56734diff
changeset | 102 | -- "parallel and asynchronous printing of results" | 
| 77603 | 103 | public option parallel_proofs : int = 1 for build | 
| 49270 | 104 | -- "level of parallel proof checking: 0, 1, 2" | 
| 77603 | 105 | option parallel_subproofs_threshold : real = 0.01 for build | 
| 51423 
e5f9a6d9ca82
clarified parallel_subproofs_saturation (blind guess) vs. parallel_subproofs_threshold (precient timing estimate);
 wenzelm parents: 
51230diff
changeset | 106 | -- "lower bound of timing estimate for forked nested proofs (seconds)" | 
| 49270 | 107 | |
| 77603 | 108 | option command_timing_threshold : real = 0.1 for build | 
| 62793 
f235646b1b73
less bulky timing information, e.g. HOL 56913 ~> 672;
 wenzelm parents: 
62790diff
changeset | 109 | -- "default threshold for persistent command timing (seconds)" | 
| 
f235646b1b73
less bulky timing information, e.g. HOL 56913 ~> 672;
 wenzelm parents: 
62790diff
changeset | 110 | |
| 77603 | 111 | public option timeout_scale : real = 1.0 for build | 
| 73387 | 112 | -- "scale factor for timeout in Isabelle/ML and session build" | 
| 113 | ||
| 78018 
dfa44d85d751
proper system options to control context tracing/timing;
 wenzelm parents: 
77715diff
changeset | 114 | option context_data_timing : bool = false for build | 
| 
dfa44d85d751
proper system options to control context tracing/timing;
 wenzelm parents: 
77715diff
changeset | 115 | -- "timing for context data operations" | 
| 
dfa44d85d751
proper system options to control context tracing/timing;
 wenzelm parents: 
77715diff
changeset | 116 | |
| 
dfa44d85d751
proper system options to control context tracing/timing;
 wenzelm parents: 
77715diff
changeset | 117 | option context_theory_tracing : bool = false for build | 
| 
dfa44d85d751
proper system options to control context tracing/timing;
 wenzelm parents: 
77715diff
changeset | 118 | -- "tracing of persistent theory values within ML heap" | 
| 
dfa44d85d751
proper system options to control context tracing/timing;
 wenzelm parents: 
77715diff
changeset | 119 | |
| 
dfa44d85d751
proper system options to control context tracing/timing;
 wenzelm parents: 
77715diff
changeset | 120 | option context_proof_tracing : bool = false for build | 
| 
dfa44d85d751
proper system options to control context tracing/timing;
 wenzelm parents: 
77715diff
changeset | 121 | -- "tracing of persistent Proof.context values within ML heap" | 
| 
dfa44d85d751
proper system options to control context tracing/timing;
 wenzelm parents: 
77715diff
changeset | 122 | |
| 49270 | 123 | |
| 52490 | 124 | section "Detail of Proof Checking" | 
| 49270 | 125 | |
| 77603 | 126 | option record_proofs : int = -1 for content | 
| 65448 
9bc3b57c1fa7
added system option record_proofs, which allows to build HOL-Proofs without special Proofs.thy;
 wenzelm parents: 
65264diff
changeset | 127 | -- "set level of proofterm recording: 0, 1, 2, negative means unchanged" | 
| 77603 | 128 | option quick_and_dirty : bool = false for content | 
| 49270 | 129 | -- "if true then some tools will OMIT some proofs" | 
| 77603 | 130 | option skip_proofs : bool = false for content | 
| 51553 
63327f679cff
more ambitious Goal.skip_proofs: covers Goal.prove forms as well, and do not insist in quick_and_dirty (for the sake of Isabelle/jEdit);
 wenzelm parents: 
51423diff
changeset | 131 | -- "skip over proofs (implicit 'sorry')" | 
| 77603 | 132 | option strict_facts : bool = false for content | 
| 68661 | 133 | -- "force lazy facts when defined in context" | 
| 49270 | 134 | |
| 135 | ||
| 49295 | 136 | section "Global Session Parameters" | 
| 49270 | 137 | |
| 78431 | 138 | option context : string = "" for content | 
| 139 | -- "free-form information for session content (to be interpreted in Isabelle/ML)" | |
| 140 | ||
| 77603 | 141 | option condition : string = "" for content | 
| 49270 | 142 | -- "required environment variables for subsequent theories (separated by commas)" | 
| 143 | ||
| 77603 | 144 | option timeout : real = 0 for build | 
| 48661 | 145 | -- "timeout for session build job (seconds > 0)" | 
| 146 | ||
| 77603 | 147 | option timeout_build : bool = true for build | 
| 73701 | 148 | -- "observe timeout for session build" | 
| 149 | ||
| 77483 | 150 | option process_policy : string = "" | 
| 151 | -- "command prefix for underlying process, notably ML with NUMA policy" | |
| 152 | ||
| 77603 | 153 | option process_output_tail : int = 40 for build | 
| 62409 
e391528eff3b
proper option process_output_tail, more generous default;
 wenzelm parents: 
62115diff
changeset | 154 | -- "build process output tail shown to user (in lines, 0 = unlimited)" | 
| 51962 
016cb7d8f297
limit build process output, to avoid bombing Isabelle/Scala process by ill-behaved jobs (e.g. Containers in AFP/9025435b29cf);
 wenzelm parents: 
51960diff
changeset | 155 | |
| 77603 | 156 | option profiling : string = "" (standard "time") for build | 
| 76041 | 157 | -- "ML profiling (possible values: time, time_thread, allocations)" | 
| 64308 | 158 | |
| 77603 | 159 | option system_log : string = "" (standard "-") for build | 
| 74827 
c1b5d6e6ff74
clarified system option standard values: avoid oddities like "isabelle build -o document_output" producing directories named "true";
 wenzelm parents: 
74824diff
changeset | 160 | -- "output for system messages (log file or \"-\" for console progress)" | 
| 73777 
52e43a93d51f
clarified system_log: make this work independently of the particular "isabelle build" command-line (e.g. "isabelle mirabelle");
 wenzelm parents: 
73743diff
changeset | 161 | |
| 77603 | 162 | option system_heaps : bool = false for build | 
| 69854 
cc0b3e177b49
system option "system_heaps" supersedes various command-line options for "system build mode";
 wenzelm parents: 
69755diff
changeset | 163 | -- "store session heaps in $ISABELLE_HEAPS_SYSTEM, not $ISABELLE_HEAPS" | 
| 
cc0b3e177b49
system option "system_heaps" supersedes various command-line options for "system build mode";
 wenzelm parents: 
69755diff
changeset | 164 | |
| 56279 
b4d874f6c6be
clarified options ML_source_trace and ML_exception_trace (NB: the latter needs to be a system option, since the context is sometimes not available, e.g. for 'theory' command);
 wenzelm parents: 
56265diff
changeset | 165 | |
| 
b4d874f6c6be
clarified options ML_source_trace and ML_exception_trace (NB: the latter needs to be a system option, since the context is sometimes not available, e.g. for 'theory' command);
 wenzelm parents: 
56265diff
changeset | 166 | section "ML System" | 
| 
b4d874f6c6be
clarified options ML_source_trace and ML_exception_trace (NB: the latter needs to be a system option, since the context is sometimes not available, e.g. for 'theory' command);
 wenzelm parents: 
56265diff
changeset | 167 | |
| 77603 | 168 | option ML_print_depth : int = 20 for content | 
| 62711 | 169 | -- "ML print depth for toplevel pretty-printing" | 
| 170 | ||
| 56279 
b4d874f6c6be
clarified options ML_source_trace and ML_exception_trace (NB: the latter needs to be a system option, since the context is sometimes not available, e.g. for 'theory' command);
 wenzelm parents: 
56265diff
changeset | 171 | public option ML_exception_trace : bool = false | 
| 
b4d874f6c6be
clarified options ML_source_trace and ML_exception_trace (NB: the latter needs to be a system option, since the context is sometimes not available, e.g. for 'theory' command);
 wenzelm parents: 
56265diff
changeset | 172 | -- "ML exception trace for toplevel command execution" | 
| 56265 
785569927666
discontinued Toplevel.debug in favour of system option "exception_trace";
 wenzelm parents: 
55672diff
changeset | 173 | |
| 62498 | 174 | public option ML_exception_debugger : bool = false | 
| 175 | -- "ML debugger exception trace for toplevel command execution" | |
| 176 | ||
| 60730 | 177 | public option ML_debugger : bool = false | 
| 178 | -- "ML debugger instrumentation for newly compiled code" | |
| 179 | ||
| 77603 | 180 | public option ML_system_64 : bool = false for build | 
| 76276 | 181 | -- "prefer native 64bit platform (change requires restart)" | 
| 61158 
ea6a4c8bc722
convenient change of ML system architecture via system option ML_preference_64, which is grepped off-line from stored preferences during bootstrap;
 wenzelm parents: 
60889diff
changeset | 182 | |
| 78309 
fc6246225283
revert ineffective b04ac8a017b2: etc/settings of polyml components needs to be changed as well;
 wenzelm parents: 
78306diff
changeset | 183 | public option ML_system_apple : bool = true for build | 
| 76275 
b446004b2464
support for system option ML_system_apple: emulated x86_64 Poly/ML is sometimes more stable than native ARM64;
 wenzelm parents: 
76212diff
changeset | 184 | -- "prefer native Apple/ARM64 platform (change requires restart)" | 
| 
b446004b2464
support for system option ML_system_apple: emulated x86_64 Poly/ML is sometimes more stable than native ARM64;
 wenzelm parents: 
76212diff
changeset | 185 | |
| 49288 | 186 | |
| 77330 
47eb96592aa2
support alternative build engines, via system option "build_engine";
 wenzelm parents: 
77149diff
changeset | 187 | section "Build Process" | 
| 71675 | 188 | |
| 77675 
9e5f8f6e58a0
more thorough treatment of build prefs, guarded by system option "build_through": avoid accidental rebuild of HOL etc.;
 wenzelm parents: 
77674diff
changeset | 189 | option build_thorough : bool = false | 
| 
9e5f8f6e58a0
more thorough treatment of build prefs, guarded by system option "build_through": avoid accidental rebuild of HOL etc.;
 wenzelm parents: 
77674diff
changeset | 190 | -- "observe dependencies on options with tag 'content' or 'document'" | 
| 
9e5f8f6e58a0
more thorough treatment of build prefs, guarded by system option "build_through": avoid accidental rebuild of HOL etc.;
 wenzelm parents: 
77674diff
changeset | 191 | |
| 77384 
ef6673859c38
option build_hostname allows to change hostname easily;
 wenzelm parents: 
77372diff
changeset | 192 | option build_hostname : string = "" | 
| 
ef6673859c38
option build_hostname allows to change hostname easily;
 wenzelm parents: 
77372diff
changeset | 193 | -- "alternative hostname for build process (default $ISABELLE_HOSTNAME)" | 
| 
ef6673859c38
option build_hostname allows to change hostname easily;
 wenzelm parents: 
77372diff
changeset | 194 | |
| 77330 
47eb96592aa2
support alternative build engines, via system option "build_engine";
 wenzelm parents: 
77149diff
changeset | 195 | option build_engine : string = "" | 
| 
47eb96592aa2
support alternative build engines, via system option "build_engine";
 wenzelm parents: 
77149diff
changeset | 196 | -- "alternative session build engine" | 
| 
47eb96592aa2
support alternative build engines, via system option "build_engine";
 wenzelm parents: 
77149diff
changeset | 197 | |
| 78511 | 198 | option build_database : bool = false | 
| 77372 | 199 | -- "expose state of build process via central database" | 
| 200 | ||
| 78189 
e9f96422f607
afford larger build_database_slice for better compression (HOL: 1 slice, HOL-Proofs: multiple slices for testing);
 wenzelm parents: 
78188diff
changeset | 201 | option build_database_slice : real = 300 | 
| 78188 | 202 | -- "slice size in MiB for ML heap stored within database" | 
| 203 | ||
| 78406 
2ece6509ad6f
clarified options: accommodate potentially slow database connection;
 wenzelm parents: 
78404diff
changeset | 204 | option build_delay : real = 0.2 | 
| 78409 | 205 | -- "delay build process main loop (local)" | 
| 78364 | 206 | |
| 78409 | 207 | option build_cluster_delay : real = 1.0 | 
| 208 | -- "delay build process main loop (cluster)" | |
| 78406 
2ece6509ad6f
clarified options: accommodate potentially slow database connection;
 wenzelm parents: 
78404diff
changeset | 209 | |
| 78440 
126a12483c67
support for Build_Cluster.Session.init (rsync + Admin/init);
 wenzelm parents: 
78431diff
changeset | 210 | option build_cluster_root : string = "$USER_HOME/.isabelle/build_cluster" | 
| 
126a12483c67
support for Build_Cluster.Session.init (rsync + Admin/init);
 wenzelm parents: 
78431diff
changeset | 211 | -- "root directory for remote build cluster sessions" | 
| 
126a12483c67
support for Build_Cluster.Session.init (rsync + Admin/init);
 wenzelm parents: 
78431diff
changeset | 212 | |
| 
126a12483c67
support for Build_Cluster.Session.init (rsync + Admin/init);
 wenzelm parents: 
78431diff
changeset | 213 | option build_cluster_identifier : string = "build_cluster" | 
| 
126a12483c67
support for Build_Cluster.Session.init (rsync + Admin/init);
 wenzelm parents: 
78431diff
changeset | 214 | -- "ISABELLE_IDENTIFIER for remote build cluster sessions" | 
| 
126a12483c67
support for Build_Cluster.Session.init (rsync + Admin/init);
 wenzelm parents: 
78431diff
changeset | 215 | |
| 71675 | 216 | |
| 69520 | 217 | section "Editor Session" | 
| 49288 | 218 | |
| 52065 
78f2475aa126
explicit notion of public options, which are shown in the editor options dialog;
 wenzelm parents: 
52043diff
changeset | 219 | public option editor_load_delay : real = 0.5 | 
| 49288 | 220 | -- "delay for file load operations (new buffers etc.)" | 
| 221 | ||
| 72933 | 222 | public option editor_input_delay : real = 0.2 | 
| 49288 | 223 | -- "delay for user input (text edits, cursor movement etc.)" | 
| 224 | ||
| 64524 
e6a3c55b929b
explicit option editor_generated_input_delay, which is more aggressive by default;
 wenzelm parents: 
64325diff
changeset | 225 | public option editor_generated_input_delay : real = 1.0 | 
| 
e6a3c55b929b
explicit option editor_generated_input_delay, which is more aggressive by default;
 wenzelm parents: 
64325diff
changeset | 226 | -- "delay for machine-generated input that may outperform user edits" | 
| 
e6a3c55b929b
explicit option editor_generated_input_delay, which is more aggressive by default;
 wenzelm parents: 
64325diff
changeset | 227 | |
| 52065 
78f2475aa126
explicit notion of public options, which are shown in the editor options dialog;
 wenzelm parents: 
52043diff
changeset | 228 | public option editor_output_delay : real = 0.1 | 
| 49288 | 229 | -- "delay for prover output (markup, common messages etc.)" | 
| 230 | ||
| 76474 | 231 | public option editor_consolidate_delay : real = 1.0 | 
| 66379 
6392766f3c25
maintain "consolidated" status of theory nodes, which means all evals are finished (but not necessarily prints nor imports);
 wenzelm parents: 
66160diff
changeset | 232 | -- "delay to consolidate status of command evaluation (execution forks)" | 
| 
6392766f3c25
maintain "consolidated" status of theory nodes, which means all evals are finished (but not necessarily prints nor imports);
 wenzelm parents: 
66160diff
changeset | 233 | |
| 62115 
57895801cb57
prune old versions more often, to reduce overall heap requirements;
 wenzelm parents: 
61873diff
changeset | 234 | public option editor_prune_delay : real = 15 | 
| 57867 
abae8aff6262
added system option editor_output_delay: lower value might help big sessions under low-memory situations;
 wenzelm parents: 
56875diff
changeset | 235 | -- "delay to prune history (delete old versions)" | 
| 
abae8aff6262
added system option editor_output_delay: lower value might help big sessions under low-memory situations;
 wenzelm parents: 
56875diff
changeset | 236 | |
| 65264 
7e6ecd04b5fe
dynamic session_options for tuning parameters and initial prover options;
 wenzelm parents: 
65141diff
changeset | 237 | option editor_prune_size : int = 0 | 
| 
7e6ecd04b5fe
dynamic session_options for tuning parameters and initial prover options;
 wenzelm parents: 
65141diff
changeset | 238 | -- "retained size of pruned history (delete old versions)" | 
| 
7e6ecd04b5fe
dynamic session_options for tuning parameters and initial prover options;
 wenzelm parents: 
65141diff
changeset | 239 | |
| 52065 
78f2475aa126
explicit notion of public options, which are shown in the editor options dialog;
 wenzelm parents: 
52043diff
changeset | 240 | public option editor_update_delay : real = 0.5 | 
| 49288 | 241 | -- "delay for physical GUI updates" | 
| 242 | ||
| 52065 
78f2475aa126
explicit notion of public options, which are shown in the editor options dialog;
 wenzelm parents: 
52043diff
changeset | 243 | public option editor_reparse_limit : int = 10000 | 
| 49524 
68796a77c42b
Thy_Syntax.consolidate_spans is subject to editor_reparse_limit, for improved experience of unbalanced comments etc.;
 wenzelm parents: 
49295diff
changeset | 244 | -- "maximum amount of reparsed text outside perspective" | 
| 50119 
5c370a036de7
more generous tracing_limit, with explicit system option;
 wenzelm parents: 
49524diff
changeset | 245 | |
| 52065 
78f2475aa126
explicit notion of public options, which are shown in the editor options dialog;
 wenzelm parents: 
52043diff
changeset | 246 | public option editor_tracing_messages : int = 1000 | 
| 69103 
814a1ab42d70
unbounded tracing for proper termination, e.g. relevant for theory Sequents.Hard_Quantifiers;
 wenzelm parents: 
68661diff
changeset | 247 | -- "initial number of tracing messages for each command transaction (0: unbounded)" | 
| 50697 
82e9178e6a98
improved Monitor_Dockable, based on ML_Statistics operations;
 wenzelm parents: 
50505diff
changeset | 248 | |
| 52065 
78f2475aa126
explicit notion of public options, which are shown in the editor options dialog;
 wenzelm parents: 
52043diff
changeset | 249 | public option editor_chart_delay : real = 3.0 | 
| 50697 
82e9178e6a98
improved Monitor_Dockable, based on ML_Statistics operations;
 wenzelm parents: 
50505diff
changeset | 250 | -- "delay for chart repainting" | 
| 52702 | 251 | |
| 52807 
b859a180936b
simplified flag for continuous checking: avoid GUI complexity and slow checking of all theories (including prints);
 wenzelm parents: 
52798diff
changeset | 252 | public option editor_continuous_checking : bool = true | 
| 
b859a180936b
simplified flag for continuous checking: avoid GUI complexity and slow checking of all theories (including prints);
 wenzelm parents: 
52798diff
changeset | 253 | -- "continuous checking of proof document (visible and required parts)" | 
| 
b859a180936b
simplified flag for continuous checking: avoid GUI complexity and slow checking of all theories (including prints);
 wenzelm parents: 
52798diff
changeset | 254 | |
| 61604 | 255 | public option editor_output_state : bool = false | 
| 61213 | 256 | -- "implicit output of proof state" | 
| 257 | ||
| 76578 
06b001094ddb
more uniform session selectors, with persistent options;
 wenzelm parents: 
76474diff
changeset | 258 | public option editor_document_session : string = "" | 
| 
06b001094ddb
more uniform session selectors, with persistent options;
 wenzelm parents: 
76474diff
changeset | 259 | -- "session for interactive document preparation" | 
| 
06b001094ddb
more uniform session selectors, with persistent options;
 wenzelm parents: 
76474diff
changeset | 260 | |
| 77149 
3991a35cd740
automatically build document when selected theories are finished;
 wenzelm parents: 
76986diff
changeset | 261 | public option editor_document_auto : bool = false | 
| 
3991a35cd740
automatically build document when selected theories are finished;
 wenzelm parents: 
76986diff
changeset | 262 | -- "automatically build document when selected theories are finished" | 
| 
3991a35cd740
automatically build document when selected theories are finished;
 wenzelm parents: 
76986diff
changeset | 263 | |
| 
3991a35cd740
automatically build document when selected theories are finished;
 wenzelm parents: 
76986diff
changeset | 264 | public option editor_document_delay : real = 2.0 | 
| 
3991a35cd740
automatically build document when selected theories are finished;
 wenzelm parents: 
76986diff
changeset | 265 | -- "delay for document auto build" | 
| 
3991a35cd740
automatically build document when selected theories are finished;
 wenzelm parents: 
76986diff
changeset | 266 | |
| 52798 
9d3c9862d1dd
recovered delay for Document.start_execution (see also 627fb639a2d9), which potentially improves throughput when many consecutive edits arrive;
 wenzelm parents: 
52779diff
changeset | 267 | option editor_execution_delay : real = 0.02 | 
| 
9d3c9862d1dd
recovered delay for Document.start_execution (see also 627fb639a2d9), which potentially improves throughput when many consecutive edits arrive;
 wenzelm parents: 
52779diff
changeset | 268 | -- "delay for start of execution process after document update (seconds)" | 
| 
9d3c9862d1dd
recovered delay for Document.start_execution (see also 627fb639a2d9), which potentially improves throughput when many consecutive edits arrive;
 wenzelm parents: 
52779diff
changeset | 269 | |
| 57974 | 270 | option editor_syslog_limit : int = 100 | 
| 271 | -- "maximum amount of buffered syslog messages" | |
| 272 | ||
| 52702 | 273 | |
| 69520 | 274 | section "Headless Session" | 
| 275 | ||
| 70787 | 276 | option headless_consolidate_delay : real = 15 | 
| 277 | -- "delay to consolidate status of command evaluation (execution forks)" | |
| 278 | ||
| 279 | option headless_prune_delay : real = 60 | |
| 280 | -- "delay to prune history (delete old versions)" | |
| 281 | ||
| 69520 | 282 | option headless_check_delay : real = 0.5 | 
| 283 | -- "delay for theory status check during PIDE processing (seconds)" | |
| 284 | ||
| 285 | option headless_check_limit : int = 0 | |
| 286 | -- "maximum number of theory status checks (0 = unlimited)" | |
| 287 | ||
| 288 | option headless_nodes_status_delay : real = -1 | |
| 289 | -- "delay for overall nodes status check during PIDE processing (seconds, disabled for < 0)" | |
| 290 | ||
| 291 | option headless_watchdog_timeout : real = 600 | |
| 292 | -- "watchdog timeout for PIDE processing of broken theories (seconds, 0 = disabled)" | |
| 293 | ||
| 294 | option headless_commit_cleanup_delay : real = 60 | |
| 295 | -- "delay for cleanup of already imported theories (seconds, 0 = disabled)" | |
| 296 | ||
| 70801 | 297 | option headless_load_limit : real = 5.0 | 
| 77709 | 298 | -- "limit in MiB for loaded theory files (0 = unlimited)" | 
| 70772 
030a6baa5cb2
support headless_load_limit for more scalable load process;
 wenzelm parents: 
70634diff
changeset | 299 | |
| 69520 | 300 | |
| 52702 | 301 | section "Miscellaneous Tools" | 
| 302 | ||
| 303 | public option find_theorems_limit : int = 40 | |
| 304 | -- "limit of displayed results" | |
| 305 | ||
| 56613 | 306 | public option find_theorems_tactic_limit : int = 5 | 
| 52702 | 307 | -- "limit of tactic search for 'solves' criterion" | 
| 308 | ||
| 55672 
5e25cc741ab9
support for completion within the formal context;
 wenzelm parents: 
53189diff
changeset | 309 | |
| 
5e25cc741ab9
support for completion within the formal context;
 wenzelm parents: 
53189diff
changeset | 310 | section "Completion" | 
| 
5e25cc741ab9
support for completion within the formal context;
 wenzelm parents: 
53189diff
changeset | 311 | |
| 
5e25cc741ab9
support for completion within the formal context;
 wenzelm parents: 
53189diff
changeset | 312 | public option completion_limit : int = 40 | 
| 
5e25cc741ab9
support for completion within the formal context;
 wenzelm parents: 
53189diff
changeset | 313 | -- "limit for completion within the formal context" | 
| 64130 | 314 | |
| 66158 | 315 | public option completion_path_ignore : string = "*~:*.marks:*.orig:*.rej:.DS_Store" | 
| 316 | -- "glob patterns to ignore in file-system path completion (separated by colons)" | |
| 317 | ||
| 64130 | 318 | |
| 65141 | 319 | section "Spell Checker" | 
| 320 | ||
| 77606 | 321 | public option spell_checker : bool = true | 
| 65141 | 322 | -- "enable spell-checker for prose words within document text, comments etc." | 
| 323 | ||
| 77606 | 324 | public option spell_checker_dictionary : string = "en" | 
| 65141 | 325 | -- "spell-checker dictionary name" | 
| 326 | ||
| 77606 | 327 | public option spell_checker_include : string = "words,comment,comment1,comment2,comment3,ML_comment,SML_comment" | 
| 67395 
b39d596b77ce
more accurate spell-checking for nested quotations / antiquotations, notably in formal comments;
 wenzelm parents: 
67273diff
changeset | 328 | -- "included markup elements for spell-checker (separated by commas)" | 
| 
b39d596b77ce
more accurate spell-checking for nested quotations / antiquotations, notably in formal comments;
 wenzelm parents: 
67273diff
changeset | 329 | |
| 77606 | 330 | public option spell_checker_exclude : string = "document_marker,antiquoted,raw_text" | 
| 67395 
b39d596b77ce
more accurate spell-checking for nested quotations / antiquotations, notably in formal comments;
 wenzelm parents: 
67273diff
changeset | 331 | -- "excluded markup elements for spell-checker (separated by commas)" | 
| 65141 | 332 | |
| 333 | ||
| 76190 | 334 | section "Secure Shell (OpenSSH)" | 
| 64130 | 335 | |
| 76190 | 336 | public option ssh_batch_mode : bool = true | 
| 76168 | 337 | -- "enable SSH batch mode (no user interaction)" | 
| 338 | ||
| 76190 | 339 | public option ssh_multiplexing : bool = true | 
| 76148 
769ebb139a32
support port forwarding without multiplexing (for the sake of Windows);
 wenzelm parents: 
76126diff
changeset | 340 | -- "enable multiplexing of SSH sessions (ignored on Windows)" | 
| 
769ebb139a32
support port forwarding without multiplexing (for the sake of Windows);
 wenzelm parents: 
76126diff
changeset | 341 | |
| 76190 | 342 | public option ssh_compression : bool = true | 
| 64130 | 343 | -- "enable SSH compression" | 
| 344 | ||
| 76190 | 345 | public option ssh_alive_interval : real = 30 | 
| 76167 | 346 | -- "time interval to keep SSH server connection alive (seconds, ignore value < 0)" | 
| 65595 | 347 | |
| 76190 | 348 | public option ssh_alive_count_max : int = 3 | 
| 76167 | 349 | -- "maximum number of messages to keep SSH server connection alive (ignore value < 0)" | 
| 67273 
c573cfb2c407
more robust connection: prefer ServerAliveCountMax=3 (ssh default) instead of 1 (jsch default);
 wenzelm parents: 
67194diff
changeset | 350 | |
| 65595 | 351 | |
| 71422 
5d5be87330b5
allow to override repository versions at runtime;
 wenzelm parents: 
71068diff
changeset | 352 | section "Phabricator" | 
| 
5d5be87330b5
allow to override repository versions at runtime;
 wenzelm parents: 
71068diff
changeset | 353 | |
| 74138 | 354 | option phabricator_version_arcanist : string = "4f70fcffa8a5393e210d64f237ffdaa256256d6a" | 
| 71422 
5d5be87330b5
allow to override repository versions at runtime;
 wenzelm parents: 
71068diff
changeset | 355 | -- "repository version for arcanist" | 
| 
5d5be87330b5
allow to override repository versions at runtime;
 wenzelm parents: 
71068diff
changeset | 356 | |
| 74138 | 357 | option phabricator_version_phabricator : string = "193798385bd3a7f72dca255e44f8112f4f8fc155" | 
| 71422 
5d5be87330b5
allow to override repository versions at runtime;
 wenzelm parents: 
71068diff
changeset | 358 | -- "repository version for phabricator" | 
| 
5d5be87330b5
allow to override repository versions at runtime;
 wenzelm parents: 
71068diff
changeset | 359 | |
| 
5d5be87330b5
allow to override repository versions at runtime;
 wenzelm parents: 
71068diff
changeset | 360 | |
| 68221 | 361 | section "Theory Export" | 
| 68154 | 362 | |
| 77603 | 363 | option export_theory : bool = false for content | 
| 70396 | 364 | -- "export theory content to Isabelle/Scala" | 
| 365 | ||
| 77603 | 366 | option export_standard_proofs : bool = false for content | 
| 70914 
05c4c6a99b3f
option to export standardized proof terms (not scalable);
 wenzelm parents: 
70801diff
changeset | 367 | -- "export standardized proof terms to Isabelle/Scala (not scalable)" | 
| 
05c4c6a99b3f
option to export standardized proof terms (not scalable);
 wenzelm parents: 
70801diff
changeset | 368 | |
| 77603 | 369 | option export_proofs : bool = false for content | 
| 70396 | 370 | -- "export proof terms to Isabelle/Scala" | 
| 371 | ||
| 77603 | 372 | option prune_proofs : bool = false for content | 
| 70396 | 373 | -- "prune proof terms after export (do not store in Isabelle/ML)" | 
| 68154 | 374 | |
| 375 | ||
| 69586 
9171d1ce5a35
support for "isabelle update -u mixfix_cartouches";
 wenzelm parents: 
69572diff
changeset | 376 | section "Theory update" | 
| 
9171d1ce5a35
support for "isabelle update -u mixfix_cartouches";
 wenzelm parents: 
69572diff
changeset | 377 | |
| 77603 | 378 | option update_inner_syntax_cartouches : bool = false for content update | 
| 69589 
e15f053a42d8
support for isabelle update -u inner_syntax_cartouches;
 wenzelm parents: 
69586diff
changeset | 379 | -- "update inner syntax (types, terms, etc.) to use cartouches" | 
| 
e15f053a42d8
support for isabelle update -u inner_syntax_cartouches;
 wenzelm parents: 
69586diff
changeset | 380 | |
| 77603 | 381 | option update_mixfix_cartouches : bool = false for content update | 
| 69586 
9171d1ce5a35
support for "isabelle update -u mixfix_cartouches";
 wenzelm parents: 
69572diff
changeset | 382 | -- "update mixfix templates to use cartouches instead of double quotes" | 
| 
9171d1ce5a35
support for "isabelle update -u mixfix_cartouches";
 wenzelm parents: 
69572diff
changeset | 383 | |
| 77603 | 384 | option update_control_cartouches : bool = false for content update | 
| 69592 
a80d8ec6c998
support for isabelle update -u control_cartouches;
 wenzelm parents: 
69589diff
changeset | 385 | -- "update antiquotations to use control symbol with cartouche argument" | 
| 
a80d8ec6c998
support for isabelle update -u control_cartouches;
 wenzelm parents: 
69589diff
changeset | 386 | |
| 77603 | 387 | option update_path_cartouches : bool = false for content update | 
| 69603 | 388 | -- "update file-system paths to use cartouches" | 
| 389 | ||
| 77603 | 390 | option update_cite : bool = false for content update | 
| 76972 | 391 | -- "update cite commands and antiquotations" | 
| 392 | ||
| 69586 
9171d1ce5a35
support for "isabelle update -u mixfix_cartouches";
 wenzelm parents: 
69572diff
changeset | 393 | |
| 68221 | 394 | section "Build Database" | 
| 395 | ||
| 77603 | 396 | option build_database_server : bool = false for connection | 
| 397 | option build_database_user : string = "" for connection | |
| 398 | option build_database_password : string = "" for connection | |
| 399 | option build_database_name : string = "" for connection | |
| 400 | option build_database_host : string = "" for connection | |
| 401 | option build_database_port : int = 0 for connection | |
| 402 | option build_database_ssh_host : string = "" for connection | |
| 403 | option build_database_ssh_user : string = "" for connection | |
| 404 | option build_database_ssh_port : int = 0 for connection | |
| 68221 | 405 | |
| 406 | ||
| 65595 | 407 | section "Build Log Database" | 
| 408 | ||
| 77603 | 409 | option build_log_database_user : string = "" for connection | 
| 410 | option build_log_database_password : string = "" for connection | |
| 411 | option build_log_database_name : string = "" for connection | |
| 412 | option build_log_database_host : string = "" for connection | |
| 413 | option build_log_database_port : int = 0 for connection | |
| 414 | option build_log_ssh_host : string = "" for connection | |
| 415 | option build_log_ssh_user : string = "" for connection | |
| 416 | option build_log_ssh_port : int = 0 for connection | |
| 65782 | 417 | option build_log_history : int = 30 -- "length of relevant history (in days)" | 
| 69572 
09a6a7c04b45
more robust system channel via options that are private to the user;
 wenzelm parents: 
69520diff
changeset | 418 | |
| 
09a6a7c04b45
more robust system channel via options that are private to the user;
 wenzelm parents: 
69520diff
changeset | 419 | |
| 
09a6a7c04b45
more robust system channel via options that are private to the user;
 wenzelm parents: 
69520diff
changeset | 420 | section "Isabelle/Scala/ML system channel" | 
| 
09a6a7c04b45
more robust system channel via options that are private to the user;
 wenzelm parents: 
69520diff
changeset | 421 | |
| 77603 | 422 | option system_channel_address : string = "" for connection | 
| 423 | option system_channel_password : string = "" for connection | |
| 74147 
d030b988d470
provide bash_process server for Isabelle/ML and other external programs;
 wenzelm parents: 
74138diff
changeset | 424 | |
| 
d030b988d470
provide bash_process server for Isabelle/ML and other external programs;
 wenzelm parents: 
74138diff
changeset | 425 | |
| 
d030b988d470
provide bash_process server for Isabelle/ML and other external programs;
 wenzelm parents: 
74138diff
changeset | 426 | section "Bash process execution server" | 
| 
d030b988d470
provide bash_process server for Isabelle/ML and other external programs;
 wenzelm parents: 
74138diff
changeset | 427 | |
| 77603 | 428 | option bash_process_debugging : bool = false for connection | 
| 429 | option bash_process_address : string = "" for connection | |
| 430 | option bash_process_password : string = "" for connection | |
| 78821 
4c5aadf1cb48
prefer Isabelle options for CI mail settings over ci.properties;
 Fabian Huch <huch@in.tum.de> parents: 
78511diff
changeset | 431 | |
| 
4c5aadf1cb48
prefer Isabelle options for CI mail settings over ci.properties;
 Fabian Huch <huch@in.tum.de> parents: 
78511diff
changeset | 432 | |
| 
4c5aadf1cb48
prefer Isabelle options for CI mail settings over ci.properties;
 Fabian Huch <huch@in.tum.de> parents: 
78511diff
changeset | 433 | section "Continuous integration" | 
| 
4c5aadf1cb48
prefer Isabelle options for CI mail settings over ci.properties;
 Fabian Huch <huch@in.tum.de> parents: 
78511diff
changeset | 434 | |
| 
4c5aadf1cb48
prefer Isabelle options for CI mail settings over ci.properties;
 Fabian Huch <huch@in.tum.de> parents: 
78511diff
changeset | 435 | option ci_mail_user : string = "" for connection | 
| 
4c5aadf1cb48
prefer Isabelle options for CI mail settings over ci.properties;
 Fabian Huch <huch@in.tum.de> parents: 
78511diff
changeset | 436 | option ci_mail_password : string = "" for connection | 
| 
4c5aadf1cb48
prefer Isabelle options for CI mail settings over ci.properties;
 Fabian Huch <huch@in.tum.de> parents: 
78511diff
changeset | 437 | option ci_mail_sender : string = "" for connection | 
| 
4c5aadf1cb48
prefer Isabelle options for CI mail settings over ci.properties;
 Fabian Huch <huch@in.tum.de> parents: 
78511diff
changeset | 438 | option ci_mail_smtp_host : string = "" for connection | 
| 
4c5aadf1cb48
prefer Isabelle options for CI mail settings over ci.properties;
 Fabian Huch <huch@in.tum.de> parents: 
78511diff
changeset | 439 | option ci_mail_smtp_port : int = 587 for connection |