author | wenzelm |
Thu, 02 Nov 2017 11:25:37 +0100 | |
changeset 66988 | 7f8c1dd7576a |
parent 66987 | 352b23c97ac8 |
child 67524 | a23c3ec2ff28 |
permissions | -rwxr-xr-x |
34333 | 1 |
#!/usr/bin/env bash |
2 |
# |
|
34664 | 3 |
# Author: Makarius |
4 |
# |
|
5 |
# DESCRIPTION: Isabelle/jEdit interface wrapper |
|
6 |
||
34333 | 7 |
|
43285 | 8 |
## sources |
9 |
||
66457
9098c36abd1a
separate base plugin for important services that should be always available, despite startup errors of the main plugin;
wenzelm
parents:
66120
diff
changeset
|
10 |
declare -a SOURCES_BASE=( |
66591
6efa351190d0
more robust: provide docking framework via base plugin;
wenzelm
parents:
66590
diff
changeset
|
11 |
"src-base/dockable.scala" |
66457
9098c36abd1a
separate base plugin for important services that should be always available, despite startup errors of the main plugin;
wenzelm
parents:
66120
diff
changeset
|
12 |
"src-base/isabelle_encoding.scala" |
66591
6efa351190d0
more robust: provide docking framework via base plugin;
wenzelm
parents:
66590
diff
changeset
|
13 |
"src-base/jedit_lib.scala" |
6efa351190d0
more robust: provide docking framework via base plugin;
wenzelm
parents:
66590
diff
changeset
|
14 |
"src-base/pide_docking_framework.scala" |
66457
9098c36abd1a
separate base plugin for important services that should be always available, despite startup errors of the main plugin;
wenzelm
parents:
66120
diff
changeset
|
15 |
"src-base/plugin.scala" |
66555
39257f39c7da
more robust: fall-back for SyntaxUtilities.StyleExtender when Isabelle plugin is unloaded;
wenzelm
parents:
66457
diff
changeset
|
16 |
"src-base/syntax_style.scala" |
66457
9098c36abd1a
separate base plugin for important services that should be always available, despite startup errors of the main plugin;
wenzelm
parents:
66120
diff
changeset
|
17 |
) |
9098c36abd1a
separate base plugin for important services that should be always available, despite startup errors of the main plugin;
wenzelm
parents:
66120
diff
changeset
|
18 |
|
9098c36abd1a
separate base plugin for important services that should be always available, despite startup errors of the main plugin;
wenzelm
parents:
66120
diff
changeset
|
19 |
declare -a RESOURCES_BASE=( |
9098c36abd1a
separate base plugin for important services that should be always available, despite startup errors of the main plugin;
wenzelm
parents:
66120
diff
changeset
|
20 |
"src-base/Isabelle_Base.props" |
9098c36abd1a
separate base plugin for important services that should be always available, despite startup errors of the main plugin;
wenzelm
parents:
66120
diff
changeset
|
21 |
"src-base/services.xml" |
9098c36abd1a
separate base plugin for important services that should be always available, despite startup errors of the main plugin;
wenzelm
parents:
66120
diff
changeset
|
22 |
) |
9098c36abd1a
separate base plugin for important services that should be always available, despite startup errors of the main plugin;
wenzelm
parents:
66120
diff
changeset
|
23 |
|
43320 | 24 |
declare -a SOURCES=( |
50450
358b6020f8b6
generalized notion of active area, where sendback is just one application;
wenzelm
parents:
50433
diff
changeset
|
25 |
"src/active.scala" |
53023
f127e949389f
Completion popup based on javax.swing.PopupFactory, which has better cross-platform chances than JWindow (cf. org/gjt/jedit/gui/CompletionPopup.java);
wenzelm
parents:
52981
diff
changeset
|
26 |
"src/completion_popup.scala" |
56585 | 27 |
"src/context_menu.scala" |
60749 | 28 |
"src/debugger_dockable.scala" |
43285 | 29 |
"src/document_model.scala" |
30 |
"src/document_view.scala" |
|
52445 | 31 |
"src/documentation_dockable.scala" |
50542
58bd88159f8f
fold handling within Pretty_Text_Area, based on formal document content, which is static here;
wenzelm
parents:
50450
diff
changeset
|
32 |
"src/fold_handling.scala" |
55825 | 33 |
"src/font_info.scala" |
49570 | 34 |
"src/graphview_dockable.scala" |
49726 | 35 |
"src/info_dockable.scala" |
50208 | 36 |
"src/isabelle.scala" |
43285 | 37 |
"src/isabelle_encoding.scala" |
38 |
"src/isabelle_options.scala" |
|
39 |
"src/isabelle_sidekick.scala" |
|
66120 | 40 |
"src/jedit_bibtex.scala" |
52971
31926d2c04ee
tuned signature -- more abstract PIDE editor operations;
wenzelm
parents:
52934
diff
changeset
|
41 |
"src/jedit_editor.scala" |
49406 | 42 |
"src/jedit_lib.scala" |
50202 | 43 |
"src/jedit_options.scala" |
64621 | 44 |
"src/jedit_rendering.scala" |
56208 | 45 |
"src/jedit_resources.scala" |
62973 | 46 |
"src/jedit_sessions.scala" |
65139 | 47 |
"src/jedit_spell_checker.scala" |
63734
133e3e84e6fb
some support for merge of Isabelle/jEdit shortcuts wrt. jEdit keymap;
wenzelm
parents:
63422
diff
changeset
|
48 |
"src/keymap_merge.scala" |
50433
9131dadb2bf7
basic monitor panel, using the powerful jfreechart library;
wenzelm
parents:
50416
diff
changeset
|
49 |
"src/monitor_dockable.scala" |
43285 | 50 |
"src/output_dockable.scala" |
51 |
"src/plugin.scala" |
|
49398
0fa4389c04f9
alternative output panel, based on Pretty_Text_Area, based on JEditEmbeddedTextArea;
wenzelm
parents:
49246
diff
changeset
|
52 |
"src/pretty_text_area.scala" |
49702 | 53 |
"src/pretty_tooltip.scala" |
52934
bfb6873df88e
separate Process_Indicator -- simplified/clarified version of org.gjt.sp.jedit.gui.AnimatedIcon;
wenzelm
parents:
52908
diff
changeset
|
54 |
"src/process_indicator.scala" |
43285 | 55 |
"src/protocol_dockable.scala" |
56879
ee2b61f37ad9
renamed "Find" to "Query", with more general operations;
wenzelm
parents:
56764
diff
changeset
|
56 |
"src/query_dockable.scala" |
43285 | 57 |
"src/raw_output_dockable.scala" |
49411 | 58 |
"src/rich_text_area.scala" |
43285 | 59 |
"src/scala_console.scala" |
61288 | 60 |
"src/session_build.scala" |
55316
885500f4aa6a
interactive simplifier trace: new panel in Isabelle/jEdit to inspect and modify simplification state
Lars Hupel <lars.hupel@mytum.de>
parents:
54682
diff
changeset
|
61 |
"src/simplifier_trace_dockable.scala" |
885500f4aa6a
interactive simplifier trace: new panel in Isabelle/jEdit to inspect and modify simplification state
Lars Hupel <lars.hupel@mytum.de>
parents:
54682
diff
changeset
|
62 |
"src/simplifier_trace_window.scala" |
58529 | 63 |
"src/sledgehammer_dockable.scala" |
61208 | 64 |
"src/state_dockable.scala" |
50143
4ff5d795ed08
dockable with buttons for symbols, grouped and sorted in tabs according to ~~/etc/symbols;
immler
parents:
50120
diff
changeset
|
65 |
"src/symbols_dockable.scala" |
65258 | 66 |
"src/syntax_style.scala" |
48021
d899be1cfe6d
separate syslog dockable -- discontinued tendency of sub-window management via tabs;
wenzelm
parents:
48014
diff
changeset
|
67 |
"src/syslog_dockable.scala" |
46572 | 68 |
"src/text_overview.scala" |
63422 | 69 |
"src/text_structure.scala" |
50299 | 70 |
"src/theories_dockable.scala" |
51533 | 71 |
"src/timing_dockable.scala" |
43414 | 72 |
"src/token_markup.scala" |
43285 | 73 |
) |
74 |
||
43320 | 75 |
declare -a RESOURCES=( |
43286 | 76 |
"src/actions.xml" |
77 |
"src/dockables.xml" |
|
78 |
"src/Isabelle.props" |
|
50306 | 79 |
"src/jEdit.props" |
43286 | 80 |
"src/services.xml" |
55500 | 81 |
"src/modes/isabelle-ml.xml" |
52540 | 82 |
"src/modes/isabelle-news.xml" |
83 |
"src/modes/isabelle-options.xml" |
|
84 |
"src/modes/isabelle-root.xml" |
|
85 |
"src/modes/isabelle.xml" |
|
56277
c4f75e733812
separate "sml" mode, suppress old "ml" mode altogether;
wenzelm
parents:
56208
diff
changeset
|
86 |
"src/modes/sml.xml" |
43285 | 87 |
) |
88 |
||
89 |
||
34333 | 90 |
## diagnostics |
91 |
||
34664 | 92 |
PRG="$(basename "$0")" |
93 |
||
43284
04d473e883df
build jedit as part of regular startup script (in that case depending on jedit_build component);
wenzelm
parents:
41380
diff
changeset
|
94 |
function usage() |
34333 | 95 |
{ |
96 |
echo |
|
34664 | 97 |
echo "Usage: isabelle $PRG [OPTIONS] [FILES ...]" |
34333 | 98 |
echo |
99 |
echo " Options are:" |
|
66988 | 100 |
echo " -A specify ancestor for base session image (default: parent)" |
66977 | 101 |
echo " -B use base session image, with theories from other sessions" |
66987
352b23c97ac8
support focus_session, for much faster startup of Isabelle/jEdit;
wenzelm
parents:
66977
diff
changeset
|
102 |
echo " -F focus on selected logic session: ignore unrelated theories" |
62039 | 103 |
echo " -D NAME=X set JVM system property" |
66683 | 104 |
echo " -J OPTION add JVM runtime option" |
105 |
echo " (default $JEDIT_JAVA_SYSTEM_OPTIONS $JEDIT_JAVA_OPTIONS)" |
|
66973
829c3133c4ca
added isabelle jedit options -B, -P, clarified -R;
wenzelm
parents:
66906
diff
changeset
|
106 |
echo " -P use parent session image" |
829c3133c4ca
added isabelle jedit options -B, -P, clarified -R;
wenzelm
parents:
66906
diff
changeset
|
107 |
echo " -R open ROOT entry of logic session" |
66987
352b23c97ac8
support focus_session, for much faster startup of Isabelle/jEdit;
wenzelm
parents:
66977
diff
changeset
|
108 |
echo " -S NAME edit specified logic session, same as abbreviates -B -F -R -l NAME" |
43285 | 109 |
echo " -b build only" |
48791 | 110 |
echo " -d DIR include session directory" |
43285 | 111 |
echo " -f fresh build" |
34333 | 112 |
echo " -j OPTION add jEdit runtime option" |
66683 | 113 |
echo " (default $JEDIT_OPTIONS)" |
50403
87868964733c
more uniform default logic, using settings, options, args etc.;
wenzelm
parents:
50373
diff
changeset
|
114 |
echo " -l NAME logic session name" |
34333 | 115 |
echo " -m MODE add print mode for output" |
57086 | 116 |
echo " -n no build of session image on startup" |
63986
c7a4b03727ae
options for process policy, notably for multiprocessor machines;
wenzelm
parents:
63734
diff
changeset
|
117 |
echo " -p CMD ML process command prefix (process policy)" |
50373 | 118 |
echo " -s system build mode for session image" |
34333 | 119 |
echo |
61171 | 120 |
echo " Start jEdit with Isabelle plugin setup and open FILES" |
61512
933463440449
more uniform command-line for "isabelle jedit" and the isabelle.Main app wrapper;
wenzelm
parents:
61511
diff
changeset
|
121 |
echo " (default \"$USER_HOME/Scratch.thy\" or \":\" for empty buffer)." |
34333 | 122 |
echo |
123 |
exit 1 |
|
124 |
} |
|
125 |
||
43284
04d473e883df
build jedit as part of regular startup script (in that case depending on jedit_build component);
wenzelm
parents:
41380
diff
changeset
|
126 |
function fail() |
34333 | 127 |
{ |
128 |
echo "$1" >&2 |
|
129 |
exit 2 |
|
130 |
} |
|
131 |
||
43284
04d473e883df
build jedit as part of regular startup script (in that case depending on jedit_build component);
wenzelm
parents:
41380
diff
changeset
|
132 |
function failed() |
04d473e883df
build jedit as part of regular startup script (in that case depending on jedit_build component);
wenzelm
parents:
41380
diff
changeset
|
133 |
{ |
04d473e883df
build jedit as part of regular startup script (in that case depending on jedit_build component);
wenzelm
parents:
41380
diff
changeset
|
134 |
fail "Failed!" |
04d473e883df
build jedit as part of regular startup script (in that case depending on jedit_build component);
wenzelm
parents:
41380
diff
changeset
|
135 |
} |
04d473e883df
build jedit as part of regular startup script (in that case depending on jedit_build component);
wenzelm
parents:
41380
diff
changeset
|
136 |
|
34333 | 137 |
|
138 |
## process command line |
|
139 |
||
140 |
# options |
|
141 |
||
43285 | 142 |
BUILD_ONLY=false |
143 |
BUILD_JARS="jars" |
|
63986
c7a4b03727ae
options for process policy, notably for multiprocessor machines;
wenzelm
parents:
63734
diff
changeset
|
144 |
ML_PROCESS_POLICY="" |
66988 | 145 |
JEDIT_LOGIC_ANCESTOR="" |
66973
829c3133c4ca
added isabelle jedit options -B, -P, clarified -R;
wenzelm
parents:
66906
diff
changeset
|
146 |
JEDIT_LOGIC_BASE="" |
66987
352b23c97ac8
support focus_session, for much faster startup of Isabelle/jEdit;
wenzelm
parents:
66977
diff
changeset
|
147 |
JEDIT_LOGIC_FOCUS="" |
48791 | 148 |
JEDIT_SESSION_DIRS="" |
66574
e16b27bd3f76
reverted 6acb28e5ba41: permissiveness of 1e5ae735e026 should be sufficient;
wenzelm
parents:
66555
diff
changeset
|
149 |
JEDIT_LOGIC_ROOT="" |
66973
829c3133c4ca
added isabelle jedit options -B, -P, clarified -R;
wenzelm
parents:
66906
diff
changeset
|
150 |
JEDIT_LOGIC_PARENT="" |
50403
87868964733c
more uniform default logic, using settings, options, args etc.;
wenzelm
parents:
50373
diff
changeset
|
151 |
JEDIT_LOGIC="" |
34333 | 152 |
JEDIT_PRINT_MODE="" |
53449 | 153 |
JEDIT_BUILD_MODE="normal" |
34333 | 154 |
|
43284
04d473e883df
build jedit as part of regular startup script (in that case depending on jedit_build component);
wenzelm
parents:
41380
diff
changeset
|
155 |
function getoptions() |
34780 | 156 |
{ |
157 |
OPTIND=1 |
|
66988 | 158 |
while getopts "A:BFD:J:PRS:bd:fj:l:m:np:s" OPT |
34780 | 159 |
do |
160 |
case "$OPT" in |
|
66988 | 161 |
A) |
162 |
JEDIT_LOGIC_ANCESTOR="$OPTARG" |
|
163 |
;; |
|
66973
829c3133c4ca
added isabelle jedit options -B, -P, clarified -R;
wenzelm
parents:
66906
diff
changeset
|
164 |
B) |
829c3133c4ca
added isabelle jedit options -B, -P, clarified -R;
wenzelm
parents:
66906
diff
changeset
|
165 |
JEDIT_LOGIC_BASE="true" |
829c3133c4ca
added isabelle jedit options -B, -P, clarified -R;
wenzelm
parents:
66906
diff
changeset
|
166 |
JEDIT_LOGIC_PARENT="" |
829c3133c4ca
added isabelle jedit options -B, -P, clarified -R;
wenzelm
parents:
66906
diff
changeset
|
167 |
;; |
62039 | 168 |
D) |
169 |
JAVA_ARGS["${#JAVA_ARGS[@]}"]="-D$OPTARG" |
|
170 |
;; |
|
66987
352b23c97ac8
support focus_session, for much faster startup of Isabelle/jEdit;
wenzelm
parents:
66977
diff
changeset
|
171 |
F) |
352b23c97ac8
support focus_session, for much faster startup of Isabelle/jEdit;
wenzelm
parents:
66977
diff
changeset
|
172 |
JEDIT_LOGIC_FOCUS="true" |
352b23c97ac8
support focus_session, for much faster startup of Isabelle/jEdit;
wenzelm
parents:
66977
diff
changeset
|
173 |
;; |
34780 | 174 |
J) |
175 |
JAVA_ARGS["${#JAVA_ARGS[@]}"]="$OPTARG" |
|
176 |
;; |
|
66973
829c3133c4ca
added isabelle jedit options -B, -P, clarified -R;
wenzelm
parents:
66906
diff
changeset
|
177 |
P) |
829c3133c4ca
added isabelle jedit options -B, -P, clarified -R;
wenzelm
parents:
66906
diff
changeset
|
178 |
JEDIT_LOGIC_PARENT="true" |
829c3133c4ca
added isabelle jedit options -B, -P, clarified -R;
wenzelm
parents:
66906
diff
changeset
|
179 |
JEDIT_LOGIC_BASE="" |
829c3133c4ca
added isabelle jedit options -B, -P, clarified -R;
wenzelm
parents:
66906
diff
changeset
|
180 |
;; |
64602 | 181 |
R) |
66574
e16b27bd3f76
reverted 6acb28e5ba41: permissiveness of 1e5ae735e026 should be sufficient;
wenzelm
parents:
66555
diff
changeset
|
182 |
JEDIT_LOGIC_ROOT="true" |
64602 | 183 |
;; |
66987
352b23c97ac8
support focus_session, for much faster startup of Isabelle/jEdit;
wenzelm
parents:
66977
diff
changeset
|
184 |
S) |
352b23c97ac8
support focus_session, for much faster startup of Isabelle/jEdit;
wenzelm
parents:
66977
diff
changeset
|
185 |
JEDIT_LOGIC="$OPTARG" |
352b23c97ac8
support focus_session, for much faster startup of Isabelle/jEdit;
wenzelm
parents:
66977
diff
changeset
|
186 |
JEDIT_LOGIC_BASE="true" |
352b23c97ac8
support focus_session, for much faster startup of Isabelle/jEdit;
wenzelm
parents:
66977
diff
changeset
|
187 |
JEDIT_LOGIC_PARENT="" |
352b23c97ac8
support focus_session, for much faster startup of Isabelle/jEdit;
wenzelm
parents:
66977
diff
changeset
|
188 |
JEDIT_LOGIC_FOCUS="true" |
352b23c97ac8
support focus_session, for much faster startup of Isabelle/jEdit;
wenzelm
parents:
66977
diff
changeset
|
189 |
JEDIT_LOGIC_ROOT="true" |
352b23c97ac8
support focus_session, for much faster startup of Isabelle/jEdit;
wenzelm
parents:
66977
diff
changeset
|
190 |
;; |
43285 | 191 |
b) |
192 |
BUILD_ONLY=true |
|
193 |
;; |
|
48791 | 194 |
d) |
195 |
if [ -z "$JEDIT_SESSION_DIRS" ]; then |
|
196 |
JEDIT_SESSION_DIRS="$OPTARG" |
|
197 |
else |
|
198 |
JEDIT_SESSION_DIRS="$JEDIT_SESSION_DIRS:$OPTARG" |
|
199 |
fi |
|
200 |
;; |
|
43285 | 201 |
f) |
202 |
BUILD_JARS="jars_fresh" |
|
203 |
;; |
|
34780 | 204 |
j) |
205 |
ARGS["${#ARGS[@]}"]="$OPTARG" |
|
206 |
;; |
|
207 |
l) |
|
208 |
JEDIT_LOGIC="$OPTARG" |
|
209 |
;; |
|
210 |
m) |
|
211 |
if [ -z "$JEDIT_PRINT_MODE" ]; then |
|
212 |
JEDIT_PRINT_MODE="$OPTARG" |
|
213 |
else |
|
214 |
JEDIT_PRINT_MODE="$JEDIT_PRINT_MODE,$OPTARG" |
|
215 |
fi |
|
216 |
;; |
|
50405
366c4a602500
clarified build_dialog: regular up-to-date check (extra cost of approx. 5s startup for HOL);
wenzelm
parents:
50403
diff
changeset
|
217 |
n) |
53449 | 218 |
JEDIT_BUILD_MODE="none" |
50405
366c4a602500
clarified build_dialog: regular up-to-date check (extra cost of approx. 5s startup for HOL);
wenzelm
parents:
50403
diff
changeset
|
219 |
;; |
63986
c7a4b03727ae
options for process policy, notably for multiprocessor machines;
wenzelm
parents:
63734
diff
changeset
|
220 |
p) |
c7a4b03727ae
options for process policy, notably for multiprocessor machines;
wenzelm
parents:
63734
diff
changeset
|
221 |
ML_PROCESS_POLICY="$OPTARG" |
c7a4b03727ae
options for process policy, notably for multiprocessor machines;
wenzelm
parents:
63734
diff
changeset
|
222 |
;; |
50373 | 223 |
s) |
53449 | 224 |
JEDIT_BUILD_MODE="system" |
50373 | 225 |
;; |
34780 | 226 |
\?) |
227 |
usage |
|
228 |
;; |
|
229 |
esac |
|
230 |
done |
|
231 |
} |
|
34581
abab3a577e10
slightly more robust treatment of options via arrays;
wenzelm
parents:
34412
diff
changeset
|
232 |
|
66906 | 233 |
eval "declare -a JAVA_ARGS=($JEDIT_JAVA_SYSTEM_OPTIONS $JEDIT_JAVA_OPTIONS)" |
34843
eb8806a2e348
define scala.home, for more robust startup of Scala tools, notably the compiler;
wenzelm
parents:
34790
diff
changeset
|
234 |
|
53446
4adb2cce5fc6
use JEDIT_OPTIONS only once (in isabelle.Main.start_jedit);
wenzelm
parents:
53445
diff
changeset
|
235 |
declare -a ARGS=() |
34333 | 236 |
|
34780 | 237 |
declare -a OPTIONS; eval "OPTIONS=($ISABELLE_JEDIT_OPTIONS)" |
238 |
getoptions "${OPTIONS[@]}" |
|
239 |
||
240 |
getoptions "$@" |
|
34333 | 241 |
shift $(($OPTIND - 1)) |
242 |
||
243 |
||
244 |
# args |
|
245 |
||
61512
933463440449
more uniform command-line for "isabelle jedit" and the isabelle.Main app wrapper;
wenzelm
parents:
61511
diff
changeset
|
246 |
while [ "$#" -gt 0 ]; do |
933463440449
more uniform command-line for "isabelle jedit" and the isabelle.Main app wrapper;
wenzelm
parents:
61511
diff
changeset
|
247 |
ARGS["${#ARGS[@]}"]="$(platform_path "$1")" |
933463440449
more uniform command-line for "isabelle jedit" and the isabelle.Main app wrapper;
wenzelm
parents:
61511
diff
changeset
|
248 |
shift |
933463440449
more uniform command-line for "isabelle jedit" and the isabelle.Main app wrapper;
wenzelm
parents:
61511
diff
changeset
|
249 |
done |
34333 | 250 |
|
251 |
||
43284
04d473e883df
build jedit as part of regular startup script (in that case depending on jedit_build component);
wenzelm
parents:
41380
diff
changeset
|
252 |
## dependencies |
04d473e883df
build jedit as part of regular startup script (in that case depending on jedit_build component);
wenzelm
parents:
41380
diff
changeset
|
253 |
|
49953 | 254 |
if [ -e "$ISABELLE_HOME/Admin/build" ]; then |
62589
b5783412bfed
prefer plain "isabelle" from PATH within Isabelle settings environment;
wenzelm
parents:
62039
diff
changeset
|
255 |
isabelle browser -b || exit $? |
57032
cf570f3ecdc1
incorporate isabelle.graphview into Pure.jar, which saves 20..30s build time;
wenzelm
parents:
56906
diff
changeset
|
256 |
"$ISABELLE_HOME/Admin/build" "$BUILD_JARS" || exit $? |
49953 | 257 |
fi |
43413 | 258 |
|
53577 | 259 |
PURE_JAR="$ISABELLE_HOME/lib/classes/Pure.jar" |
43413 | 260 |
|
43285 | 261 |
pushd "$JEDIT_HOME" >/dev/null || failed |
43284
04d473e883df
build jedit as part of regular startup script (in that case depending on jedit_build component);
wenzelm
parents:
41380
diff
changeset
|
262 |
|
04d473e883df
build jedit as part of regular startup script (in that case depending on jedit_build component);
wenzelm
parents:
41380
diff
changeset
|
263 |
JEDIT_JAR="$ISABELLE_JEDIT_BUILD_HOME/contrib/$ISABELLE_JEDIT_BUILD_VERSION/jedit.jar" |
04d473e883df
build jedit as part of regular startup script (in that case depending on jedit_build component);
wenzelm
parents:
41380
diff
changeset
|
264 |
|
04d473e883df
build jedit as part of regular startup script (in that case depending on jedit_build component);
wenzelm
parents:
41380
diff
changeset
|
265 |
JEDIT_JARS=( |
56421
1ffd7eaa778b
updated to jedit_build-20140405: Code2HTML.jar, CommonControls.jar, Console.jar, kappalayout.jar, Navigator.jar, SideKick.jar, doc with jEdit manuals (ant dist-manuals);
wenzelm
parents:
56277
diff
changeset
|
266 |
"$ISABELLE_JEDIT_BUILD_HOME/contrib/Code2HTML.jar" |
1ffd7eaa778b
updated to jedit_build-20140405: Code2HTML.jar, CommonControls.jar, Console.jar, kappalayout.jar, Navigator.jar, SideKick.jar, doc with jEdit manuals (ant dist-manuals);
wenzelm
parents:
56277
diff
changeset
|
267 |
"$ISABELLE_JEDIT_BUILD_HOME/contrib/CommonControls.jar" |
53445
811db2b751ed
warm start of Isabelle/jEdit from Isabelle/Scala;
wenzelm
parents:
53441
diff
changeset
|
268 |
"$ISABELLE_JEDIT_BUILD_HOME/contrib/Console.jar" |
811db2b751ed
warm start of Isabelle/jEdit from Isabelle/Scala;
wenzelm
parents:
53441
diff
changeset
|
269 |
"$ISABELLE_JEDIT_BUILD_HOME/contrib/ErrorList.jar" |
811db2b751ed
warm start of Isabelle/jEdit from Isabelle/Scala;
wenzelm
parents:
53441
diff
changeset
|
270 |
"$ISABELLE_JEDIT_BUILD_HOME/contrib/Highlight.jar" |
56421
1ffd7eaa778b
updated to jedit_build-20140405: Code2HTML.jar, CommonControls.jar, Console.jar, kappalayout.jar, Navigator.jar, SideKick.jar, doc with jEdit manuals (ant dist-manuals);
wenzelm
parents:
56277
diff
changeset
|
271 |
"$ISABELLE_JEDIT_BUILD_HOME/contrib/kappalayout.jar" |
53883
f1c5f857df3d
include MacOSX plugin by default -- disabled by default to avoid multiplatform confusion;
wenzelm
parents:
53882
diff
changeset
|
272 |
"$ISABELLE_JEDIT_BUILD_HOME/contrib/MacOSX.jar" |
56421
1ffd7eaa778b
updated to jedit_build-20140405: Code2HTML.jar, CommonControls.jar, Console.jar, kappalayout.jar, Navigator.jar, SideKick.jar, doc with jEdit manuals (ant dist-manuals);
wenzelm
parents:
56277
diff
changeset
|
273 |
"$ISABELLE_JEDIT_BUILD_HOME/contrib/Navigator.jar" |
53445
811db2b751ed
warm start of Isabelle/jEdit from Isabelle/Scala;
wenzelm
parents:
53441
diff
changeset
|
274 |
"$ISABELLE_JEDIT_BUILD_HOME/contrib/SideKick.jar" |
811db2b751ed
warm start of Isabelle/jEdit from Isabelle/Scala;
wenzelm
parents:
53441
diff
changeset
|
275 |
"$ISABELLE_JEDIT_BUILD_HOME/contrib/idea-icons.jar" |
811db2b751ed
warm start of Isabelle/jEdit from Isabelle/Scala;
wenzelm
parents:
53441
diff
changeset
|
276 |
"$ISABELLE_JEDIT_BUILD_HOME/contrib/jsr305-2.0.0.jar" |
43284
04d473e883df
build jedit as part of regular startup script (in that case depending on jedit_build component);
wenzelm
parents:
41380
diff
changeset
|
277 |
) |
04d473e883df
build jedit as part of regular startup script (in that case depending on jedit_build component);
wenzelm
parents:
41380
diff
changeset
|
278 |
|
04d473e883df
build jedit as part of regular startup script (in that case depending on jedit_build component);
wenzelm
parents:
41380
diff
changeset
|
279 |
|
04d473e883df
build jedit as part of regular startup script (in that case depending on jedit_build component);
wenzelm
parents:
41380
diff
changeset
|
280 |
# target |
04d473e883df
build jedit as part of regular startup script (in that case depending on jedit_build component);
wenzelm
parents:
41380
diff
changeset
|
281 |
|
66457
9098c36abd1a
separate base plugin for important services that should be always available, despite startup errors of the main plugin;
wenzelm
parents:
66120
diff
changeset
|
282 |
TARGET_BASE="dist/jars/Isabelle-jEdit-base.jar" |
43284
04d473e883df
build jedit as part of regular startup script (in that case depending on jedit_build component);
wenzelm
parents:
41380
diff
changeset
|
283 |
TARGET="dist/jars/Isabelle-jEdit.jar" |
04d473e883df
build jedit as part of regular startup script (in that case depending on jedit_build component);
wenzelm
parents:
41380
diff
changeset
|
284 |
|
43384 | 285 |
declare -a UPDATED=() |
286 |
||
43285 | 287 |
if [ "$BUILD_JARS" = jars_fresh ]; then |
288 |
OUTDATED=true |
|
289 |
else |
|
290 |
OUTDATED=false |
|
66457
9098c36abd1a
separate base plugin for important services that should be always available, despite startup errors of the main plugin;
wenzelm
parents:
66120
diff
changeset
|
291 |
if [ ! -e "$TARGET_BASE" -a ! -e "$TARGET" ]; then |
43368
0dc67b3cf8a5
check source dependencies only if jedit_build component is available;
wenzelm
parents:
43320
diff
changeset
|
292 |
OUTDATED=true |
43384 | 293 |
else |
294 |
if [ -n "$ISABELLE_JEDIT_BUILD_HOME" ]; then |
|
49566
66cbf8bb4693
basic integration of graphview into document model;
wenzelm
parents:
49494
diff
changeset
|
295 |
declare -a DEPS=( |
57032
cf570f3ecdc1
incorporate isabelle.graphview into Pure.jar, which saves 20..30s build time;
wenzelm
parents:
56906
diff
changeset
|
296 |
"$JEDIT_JAR" "${JEDIT_JARS[@]}" "$PURE_JAR" |
66457
9098c36abd1a
separate base plugin for important services that should be always available, despite startup errors of the main plugin;
wenzelm
parents:
66120
diff
changeset
|
297 |
"${SOURCES_BASE[@]}" "${RESOURCES_BASE[@]}" |
53576
793a429c63e7
maintain classpath in more elementary manner: turn ISABELLE_CLASSPATH into -classpath option, so that all jars are covered by sun.misc.Launcher.AppClassLoader (e.g. relevant for loading add-on resources);
wenzelm
parents:
53451
diff
changeset
|
298 |
"${SOURCES[@]}" "${RESOURCES[@]}" |
49566
66cbf8bb4693
basic integration of graphview into document model;
wenzelm
parents:
49494
diff
changeset
|
299 |
) |
47666
cf5fe7eb6793
pretend jedit is up-to-date if this is not a repository -- avoid accidental build attempts after touching files etc.;
wenzelm
parents:
47115
diff
changeset
|
300 |
elif [ -e "$ISABELLE_HOME/Admin/build" ]; then |
66457
9098c36abd1a
separate base plugin for important services that should be always available, despite startup errors of the main plugin;
wenzelm
parents:
66120
diff
changeset
|
301 |
declare -a DEPS=( |
9098c36abd1a
separate base plugin for important services that should be always available, despite startup errors of the main plugin;
wenzelm
parents:
66120
diff
changeset
|
302 |
"$PURE_JAR" |
9098c36abd1a
separate base plugin for important services that should be always available, despite startup errors of the main plugin;
wenzelm
parents:
66120
diff
changeset
|
303 |
"${SOURCES_BASE[@]}" "${RESOURCES_BASE[@]}" |
9098c36abd1a
separate base plugin for important services that should be always available, despite startup errors of the main plugin;
wenzelm
parents:
66120
diff
changeset
|
304 |
"${SOURCES[@]}" "${RESOURCES[@]}" |
9098c36abd1a
separate base plugin for important services that should be always available, despite startup errors of the main plugin;
wenzelm
parents:
66120
diff
changeset
|
305 |
) |
43384 | 306 |
else |
47666
cf5fe7eb6793
pretend jedit is up-to-date if this is not a repository -- avoid accidental build attempts after touching files etc.;
wenzelm
parents:
47115
diff
changeset
|
307 |
declare -a DEPS=() |
43384 | 308 |
fi |
309 |
for DEP in "${DEPS[@]}" |
|
43368
0dc67b3cf8a5
check source dependencies only if jedit_build component is available;
wenzelm
parents:
43320
diff
changeset
|
310 |
do |
43384 | 311 |
[ ! -e "$DEP" ] && fail "Missing file: $DEP" |
66457
9098c36abd1a
separate base plugin for important services that should be always available, despite startup errors of the main plugin;
wenzelm
parents:
66120
diff
changeset
|
312 |
[ "$DEP" -nt "$TARGET_BASE" -o "$DEP" -nt "$TARGET" ] && { |
43384 | 313 |
OUTDATED=true |
314 |
UPDATED["${#UPDATED[@]}"]="$DEP" |
|
315 |
} |
|
43368
0dc67b3cf8a5
check source dependencies only if jedit_build component is available;
wenzelm
parents:
43320
diff
changeset
|
316 |
done |
0dc67b3cf8a5
check source dependencies only if jedit_build component is available;
wenzelm
parents:
43320
diff
changeset
|
317 |
fi |
43285 | 318 |
fi |
43284
04d473e883df
build jedit as part of regular startup script (in that case depending on jedit_build component);
wenzelm
parents:
41380
diff
changeset
|
319 |
|
04d473e883df
build jedit as part of regular startup script (in that case depending on jedit_build component);
wenzelm
parents:
41380
diff
changeset
|
320 |
|
04d473e883df
build jedit as part of regular startup script (in that case depending on jedit_build component);
wenzelm
parents:
41380
diff
changeset
|
321 |
# build |
04d473e883df
build jedit as part of regular startup script (in that case depending on jedit_build component);
wenzelm
parents:
41380
diff
changeset
|
322 |
|
66457
9098c36abd1a
separate base plugin for important services that should be always available, despite startup errors of the main plugin;
wenzelm
parents:
66120
diff
changeset
|
323 |
function init_resources () |
9098c36abd1a
separate base plugin for important services that should be always available, despite startup errors of the main plugin;
wenzelm
parents:
66120
diff
changeset
|
324 |
{ |
9098c36abd1a
separate base plugin for important services that should be always available, despite startup errors of the main plugin;
wenzelm
parents:
66120
diff
changeset
|
325 |
mkdir -p dist/classes || failed |
9098c36abd1a
separate base plugin for important services that should be always available, despite startup errors of the main plugin;
wenzelm
parents:
66120
diff
changeset
|
326 |
cp -p -R -f "$@" dist/classes/. |
9098c36abd1a
separate base plugin for important services that should be always available, despite startup errors of the main plugin;
wenzelm
parents:
66120
diff
changeset
|
327 |
} |
9098c36abd1a
separate base plugin for important services that should be always available, despite startup errors of the main plugin;
wenzelm
parents:
66120
diff
changeset
|
328 |
|
9098c36abd1a
separate base plugin for important services that should be always available, despite startup errors of the main plugin;
wenzelm
parents:
66120
diff
changeset
|
329 |
function compile_sources () |
9098c36abd1a
separate base plugin for important services that should be always available, despite startup errors of the main plugin;
wenzelm
parents:
66120
diff
changeset
|
330 |
{ |
9098c36abd1a
separate base plugin for important services that should be always available, despite startup errors of the main plugin;
wenzelm
parents:
66120
diff
changeset
|
331 |
( |
9098c36abd1a
separate base plugin for important services that should be always available, despite startup errors of the main plugin;
wenzelm
parents:
66120
diff
changeset
|
332 |
#FIXME workarounds for scalac 2.11.0 |
9098c36abd1a
separate base plugin for important services that should be always available, despite startup errors of the main plugin;
wenzelm
parents:
66120
diff
changeset
|
333 |
export CYGWIN="nodosfilewarning" |
9098c36abd1a
separate base plugin for important services that should be always available, despite startup errors of the main plugin;
wenzelm
parents:
66120
diff
changeset
|
334 |
function stty() { :; } |
9098c36abd1a
separate base plugin for important services that should be always available, despite startup errors of the main plugin;
wenzelm
parents:
66120
diff
changeset
|
335 |
export -f stty |
9098c36abd1a
separate base plugin for important services that should be always available, despite startup errors of the main plugin;
wenzelm
parents:
66120
diff
changeset
|
336 |
|
9098c36abd1a
separate base plugin for important services that should be always available, despite startup errors of the main plugin;
wenzelm
parents:
66120
diff
changeset
|
337 |
for JAR in "$JEDIT_JAR" "${JEDIT_JARS[@]}" "$PURE_JAR" |
9098c36abd1a
separate base plugin for important services that should be always available, despite startup errors of the main plugin;
wenzelm
parents:
66120
diff
changeset
|
338 |
do |
9098c36abd1a
separate base plugin for important services that should be always available, despite startup errors of the main plugin;
wenzelm
parents:
66120
diff
changeset
|
339 |
classpath "$JAR" |
9098c36abd1a
separate base plugin for important services that should be always available, despite startup errors of the main plugin;
wenzelm
parents:
66120
diff
changeset
|
340 |
done |
9098c36abd1a
separate base plugin for important services that should be always available, despite startup errors of the main plugin;
wenzelm
parents:
66120
diff
changeset
|
341 |
export CLASSPATH="$(platform_path "$ISABELLE_CLASSPATH")" |
9098c36abd1a
separate base plugin for important services that should be always available, despite startup errors of the main plugin;
wenzelm
parents:
66120
diff
changeset
|
342 |
isabelle_scala scalac $ISABELLE_SCALAC_OPTIONS -d dist/classes "$@" |
9098c36abd1a
separate base plugin for important services that should be always available, despite startup errors of the main plugin;
wenzelm
parents:
66120
diff
changeset
|
343 |
) || fail "Failed to compile sources" |
9098c36abd1a
separate base plugin for important services that should be always available, despite startup errors of the main plugin;
wenzelm
parents:
66120
diff
changeset
|
344 |
} |
9098c36abd1a
separate base plugin for important services that should be always available, despite startup errors of the main plugin;
wenzelm
parents:
66120
diff
changeset
|
345 |
|
9098c36abd1a
separate base plugin for important services that should be always available, despite startup errors of the main plugin;
wenzelm
parents:
66120
diff
changeset
|
346 |
function make_jar () |
9098c36abd1a
separate base plugin for important services that should be always available, despite startup errors of the main plugin;
wenzelm
parents:
66120
diff
changeset
|
347 |
{ |
9098c36abd1a
separate base plugin for important services that should be always available, despite startup errors of the main plugin;
wenzelm
parents:
66120
diff
changeset
|
348 |
cd dist/classes |
9098c36abd1a
separate base plugin for important services that should be always available, despite startup errors of the main plugin;
wenzelm
parents:
66120
diff
changeset
|
349 |
isabelle_jdk jar cf "../../$1" * || failed |
9098c36abd1a
separate base plugin for important services that should be always available, despite startup errors of the main plugin;
wenzelm
parents:
66120
diff
changeset
|
350 |
cd ../.. |
9098c36abd1a
separate base plugin for important services that should be always available, despite startup errors of the main plugin;
wenzelm
parents:
66120
diff
changeset
|
351 |
rm -rf dist/classes |
9098c36abd1a
separate base plugin for important services that should be always available, despite startup errors of the main plugin;
wenzelm
parents:
66120
diff
changeset
|
352 |
} |
9098c36abd1a
separate base plugin for important services that should be always available, despite startup errors of the main plugin;
wenzelm
parents:
66120
diff
changeset
|
353 |
|
43284
04d473e883df
build jedit as part of regular startup script (in that case depending on jedit_build component);
wenzelm
parents:
41380
diff
changeset
|
354 |
if [ "$OUTDATED" = true ] |
04d473e883df
build jedit as part of regular startup script (in that case depending on jedit_build component);
wenzelm
parents:
41380
diff
changeset
|
355 |
then |
43405 | 356 |
echo "### Building Isabelle/jEdit ..." |
357 |
||
43384 | 358 |
[ "${#UPDATED[@]}" -gt 0 ] && { |
43405 | 359 |
echo "Changed files:" |
43384 | 360 |
for FILE in "${UPDATED[@]}" |
361 |
do |
|
362 |
echo " $FILE" |
|
363 |
done |
|
364 |
} |
|
365 |
||
43284
04d473e883df
build jedit as part of regular startup script (in that case depending on jedit_build component);
wenzelm
parents:
41380
diff
changeset
|
366 |
[ -z "$ISABELLE_JEDIT_BUILD_HOME" ] && \ |
04d473e883df
build jedit as part of regular startup script (in that case depending on jedit_build component);
wenzelm
parents:
41380
diff
changeset
|
367 |
fail "Unknown ISABELLE_JEDIT_BUILD_HOME -- missing auxiliary component" |
04d473e883df
build jedit as part of regular startup script (in that case depending on jedit_build component);
wenzelm
parents:
41380
diff
changeset
|
368 |
|
04d473e883df
build jedit as part of regular startup script (in that case depending on jedit_build component);
wenzelm
parents:
41380
diff
changeset
|
369 |
rm -rf dist || failed |
66457
9098c36abd1a
separate base plugin for important services that should be always available, despite startup errors of the main plugin;
wenzelm
parents:
66120
diff
changeset
|
370 |
mkdir -p dist || failed |
43287 | 371 |
|
46502
3d43d4d4d071
more uniform / portable representation of the idea of "copy_dir" (NB: cp -f dereferences symlinks on GNU/Linux, but does not on old-school Unixen including BSD/Mac OS X);
wenzelm
parents:
45665
diff
changeset
|
372 |
cp -p -R -f "$ISABELLE_JEDIT_BUILD_HOME/contrib/$ISABELLE_JEDIT_BUILD_VERSION/." dist/. |
66457
9098c36abd1a
separate base plugin for important services that should be always available, despite startup errors of the main plugin;
wenzelm
parents:
66120
diff
changeset
|
373 |
|
9098c36abd1a
separate base plugin for important services that should be always available, despite startup errors of the main plugin;
wenzelm
parents:
66120
diff
changeset
|
374 |
init_resources "${RESOURCES_BASE[@]}" |
9098c36abd1a
separate base plugin for important services that should be always available, despite startup errors of the main plugin;
wenzelm
parents:
66120
diff
changeset
|
375 |
compile_sources "${SOURCES_BASE[@]}" |
9098c36abd1a
separate base plugin for important services that should be always available, despite startup errors of the main plugin;
wenzelm
parents:
66120
diff
changeset
|
376 |
make_jar "$TARGET_BASE" |
66590 | 377 |
classpath "$PWD/$TARGET_BASE" |
66457
9098c36abd1a
separate base plugin for important services that should be always available, despite startup errors of the main plugin;
wenzelm
parents:
66120
diff
changeset
|
378 |
|
9098c36abd1a
separate base plugin for important services that should be always available, despite startup errors of the main plugin;
wenzelm
parents:
66120
diff
changeset
|
379 |
init_resources "${RESOURCES[@]}" |
43287 | 380 |
cp src/jEdit.props dist/properties/. |
46502
3d43d4d4d071
more uniform / portable representation of the idea of "copy_dir" (NB: cp -f dereferences symlinks on GNU/Linux, but does not on old-school Unixen including BSD/Mac OS X);
wenzelm
parents:
45665
diff
changeset
|
381 |
cp -p -R -f src/modes/. dist/modes/. |
43284
04d473e883df
build jedit as part of regular startup script (in that case depending on jedit_build component);
wenzelm
parents:
41380
diff
changeset
|
382 |
|
43391 | 383 |
perl -i -e 'while (<>) { |
61305
12378df46752
less ambitious regex -- avoid unclarities of escaping;
wenzelm
parents:
61294
diff
changeset
|
384 |
if (m/FILE="ml.xml"/ or m/FILE_NAME_GLOB="...sml,ml."/) { } |
55500 | 385 |
elsif (m/NAME="javacc"/) { |
62932
db12de2367ca
support ROOT0.ML as well -- independently of ROOT.ML;
wenzelm
parents:
62917
diff
changeset
|
386 |
print qq!<MODE NAME="isabelle" FILE="isabelle.xml" FILE_NAME_GLOB="{*.thy,ROOT0.ML,ROOT.ML}"/>\n\n!; |
62908 | 387 |
print qq!<MODE NAME="isabelle-ml" FILE="isabelle-ml.xml" FILE_NAME_GLOB="*.ML"/>\n\n!; |
388 |
print qq!<MODE NAME="isabelle-news" FILE="isabelle-news.xml"/>\n\n!; |
|
389 |
print qq!<MODE NAME="isabelle-options" FILE="isabelle-options.xml"/>\n\n!; |
|
390 |
print qq!<MODE NAME="isabelle-root" FILE="isabelle-root.xml" FILE_NAME_GLOB="ROOT"/>\n\n!; |
|
55500 | 391 |
print; |
392 |
} |
|
56277
c4f75e733812
separate "sml" mode, suppress old "ml" mode altogether;
wenzelm
parents:
56208
diff
changeset
|
393 |
elsif (m/NAME="sqr"/) { |
c4f75e733812
separate "sml" mode, suppress old "ml" mode altogether;
wenzelm
parents:
56208
diff
changeset
|
394 |
print qq!<MODE NAME="sml" FILE="sml.xml" FILE_NAME_GLOB="*.{sml,sig}"/>\n\n!; |
c4f75e733812
separate "sml" mode, suppress old "ml" mode altogether;
wenzelm
parents:
56208
diff
changeset
|
395 |
print; |
c4f75e733812
separate "sml" mode, suppress old "ml" mode altogether;
wenzelm
parents:
56208
diff
changeset
|
396 |
} |
55500 | 397 |
else { print; } |
398 |
}' dist/modes/catalog |
|
43284
04d473e883df
build jedit as part of regular startup script (in that case depending on jedit_build component);
wenzelm
parents:
41380
diff
changeset
|
399 |
|
54660 | 400 |
cd dist |
401 |
isabelle_jdk jar xf jedit.jar |
|
54676
6b2ca4850b71
uniform use of transparent icons, as for main "apps";
wenzelm
parents:
54667
diff
changeset
|
402 |
cp "$ISABELLE_HOME/lib/logo/isabelle_transparent-32.gif" \ |
54660 | 403 |
"org/gjt/sp/jedit/icons/themes/classic/32x32/apps/isabelle.gif" || failed |
54676
6b2ca4850b71
uniform use of transparent icons, as for main "apps";
wenzelm
parents:
54667
diff
changeset
|
404 |
cp "$ISABELLE_HOME/lib/logo/isabelle_transparent-32.gif" \ |
54660 | 405 |
"org/gjt/sp/jedit/icons/themes/tango/32x32/apps/isabelle.gif" || failed |
54666
391ba1e12360
recover main entry point from d9c88171b393 -- occasionally useful with plain "java -jar jedit.jar";
wenzelm
parents:
54660
diff
changeset
|
406 |
isabelle_jdk jar cfe jedit.jar org.gjt.sp.jedit.jEdit org || failed |
54667 | 407 |
rm -rf META-INF org |
54660 | 408 |
cd .. |
409 |
||
53445
811db2b751ed
warm start of Isabelle/jEdit from Isabelle/Scala;
wenzelm
parents:
53441
diff
changeset
|
410 |
cp -p -R -f "${JEDIT_JARS[@]}" dist/jars/. || failed |
66457
9098c36abd1a
separate base plugin for important services that should be always available, despite startup errors of the main plugin;
wenzelm
parents:
66120
diff
changeset
|
411 |
compile_sources "${SOURCES[@]}" |
9098c36abd1a
separate base plugin for important services that should be always available, despite startup errors of the main plugin;
wenzelm
parents:
66120
diff
changeset
|
412 |
make_jar "$TARGET" |
56422 | 413 |
|
65329 | 414 |
cp "$ISABELLE_JEDIT_BUILD_HOME/doc/jedit5.4.0manual-a4.pdf" dist/doc/jedit-manual.pdf |
56422 | 415 |
cp dist/doc/CHANGES.txt dist/doc/jedit-changes |
416 |
cat > dist/doc/Contents <<EOF |
|
57338 | 417 |
Original jEdit Documentation |
65329 | 418 |
jedit-manual jEdit 5.4 User's Guide |
419 |
jedit-changes jEdit 5.4 Version History |
|
56422 | 420 |
|
421 |
EOF |
|
422 |
||
43284
04d473e883df
build jedit as part of regular startup script (in that case depending on jedit_build component);
wenzelm
parents:
41380
diff
changeset
|
423 |
fi |
04d473e883df
build jedit as part of regular startup script (in that case depending on jedit_build component);
wenzelm
parents:
41380
diff
changeset
|
424 |
|
04d473e883df
build jedit as part of regular startup script (in that case depending on jedit_build component);
wenzelm
parents:
41380
diff
changeset
|
425 |
popd >/dev/null |
04d473e883df
build jedit as part of regular startup script (in that case depending on jedit_build component);
wenzelm
parents:
41380
diff
changeset
|
426 |
|
04d473e883df
build jedit as part of regular startup script (in that case depending on jedit_build component);
wenzelm
parents:
41380
diff
changeset
|
427 |
|
04d473e883df
build jedit as part of regular startup script (in that case depending on jedit_build component);
wenzelm
parents:
41380
diff
changeset
|
428 |
## main |
04d473e883df
build jedit as part of regular startup script (in that case depending on jedit_build component);
wenzelm
parents:
41380
diff
changeset
|
429 |
|
53576
793a429c63e7
maintain classpath in more elementary manner: turn ISABELLE_CLASSPATH into -classpath option, so that all jars are covered by sun.misc.Launcher.AppClassLoader (e.g. relevant for loading add-on resources);
wenzelm
parents:
53451
diff
changeset
|
430 |
if [ "$BUILD_ONLY" = false ] |
793a429c63e7
maintain classpath in more elementary manner: turn ISABELLE_CLASSPATH into -classpath option, so that all jars are covered by sun.misc.Launcher.AppClassLoader (e.g. relevant for loading add-on resources);
wenzelm
parents:
53451
diff
changeset
|
431 |
then |
66988 | 432 |
export JEDIT_SESSION_DIRS JEDIT_LOGIC JEDIT_LOGIC_ANCESTOR JEDIT_LOGIC_BASE JEDIT_LOGIC_FOCUS \ |
66987
352b23c97ac8
support focus_session, for much faster startup of Isabelle/jEdit;
wenzelm
parents:
66977
diff
changeset
|
433 |
JEDIT_LOGIC_PARENT JEDIT_LOGIC_ROOT JEDIT_PRINT_MODE JEDIT_BUILD_MODE |
63986
c7a4b03727ae
options for process policy, notably for multiprocessor machines;
wenzelm
parents:
63734
diff
changeset
|
434 |
export JEDIT_ML_PROCESS_POLICY="$ML_PROCESS_POLICY" |
53576
793a429c63e7
maintain classpath in more elementary manner: turn ISABELLE_CLASSPATH into -classpath option, so that all jars are covered by sun.misc.Launcher.AppClassLoader (e.g. relevant for loading add-on resources);
wenzelm
parents:
53451
diff
changeset
|
435 |
classpath "$JEDIT_HOME/dist/jedit.jar" |
63987
ac96fe9224f6
just one option is enough -- "isabelle jedit" java process may be prefixed directly in the shell;
wenzelm
parents:
63986
diff
changeset
|
436 |
exec isabelle java "${JAVA_ARGS[@]}" isabelle.Main "${ARGS[@]}" |
50416
2e1b47e22fc6
more rigorous "build only" mode: avoid build dialog of logic image and its potential need for GUI display;
wenzelm
parents:
50405
diff
changeset
|
437 |
fi |