| author | wenzelm | 
| Fri, 12 Jul 2013 21:13:57 +0200 | |
| changeset 52630 | fe411c1dc180 | 
| parent 51617 | 4e49bba9772d | 
| child 52675 | f3a6b1d0915e | 
| permissions | -rw-r--r-- | 
| 50687 | 1 | /* Title: Pure/Tools/main.scala | 
| 47663 
20e0865ae9e7
default Isabelle application wrapper -- JVM entry point for Isabelle.exe;
 wenzelm parents: diff
changeset | 2 | Author: Makarius | 
| 
20e0865ae9e7
default Isabelle application wrapper -- JVM entry point for Isabelle.exe;
 wenzelm parents: diff
changeset | 3 | |
| 
20e0865ae9e7
default Isabelle application wrapper -- JVM entry point for Isabelle.exe;
 wenzelm parents: diff
changeset | 4 | Default Isabelle application wrapper. | 
| 
20e0865ae9e7
default Isabelle application wrapper -- JVM entry point for Isabelle.exe;
 wenzelm parents: diff
changeset | 5 | */ | 
| 
20e0865ae9e7
default Isabelle application wrapper -- JVM entry point for Isabelle.exe;
 wenzelm parents: diff
changeset | 6 | |
| 
20e0865ae9e7
default Isabelle application wrapper -- JVM entry point for Isabelle.exe;
 wenzelm parents: diff
changeset | 7 | package isabelle | 
| 
20e0865ae9e7
default Isabelle application wrapper -- JVM entry point for Isabelle.exe;
 wenzelm parents: diff
changeset | 8 | |
| 
20e0865ae9e7
default Isabelle application wrapper -- JVM entry point for Isabelle.exe;
 wenzelm parents: diff
changeset | 9 | import scala.swing.TextArea | 
| 
20e0865ae9e7
default Isabelle application wrapper -- JVM entry point for Isabelle.exe;
 wenzelm parents: diff
changeset | 10 | |
| 
20e0865ae9e7
default Isabelle application wrapper -- JVM entry point for Isabelle.exe;
 wenzelm parents: diff
changeset | 11 | |
| 
20e0865ae9e7
default Isabelle application wrapper -- JVM entry point for Isabelle.exe;
 wenzelm parents: diff
changeset | 12 | object Main | 
| 
20e0865ae9e7
default Isabelle application wrapper -- JVM entry point for Isabelle.exe;
 wenzelm parents: diff
changeset | 13 | {
 | 
| 48275 | 14 | def main(args: Array[String]) | 
| 47663 
20e0865ae9e7
default Isabelle application wrapper -- JVM entry point for Isabelle.exe;
 wenzelm parents: diff
changeset | 15 |   {
 | 
| 
20e0865ae9e7
default Isabelle application wrapper -- JVM entry point for Isabelle.exe;
 wenzelm parents: diff
changeset | 16 | val (out, rc) = | 
| 
20e0865ae9e7
default Isabelle application wrapper -- JVM entry point for Isabelle.exe;
 wenzelm parents: diff
changeset | 17 |       try {
 | 
| 51617 | 18 | GUI.init_laf() | 
| 47663 
20e0865ae9e7
default Isabelle application wrapper -- JVM entry point for Isabelle.exe;
 wenzelm parents: diff
changeset | 19 | Isabelle_System.init() | 
| 50805 
69439c9defec
prefer system build mode in main application wrappers, to produce heaps insided distribution directory;
 wenzelm parents: 
50687diff
changeset | 20 |         Isabelle_System.isabelle_tool("jedit", ("-s" :: args.toList): _*)
 | 
| 47663 
20e0865ae9e7
default Isabelle application wrapper -- JVM entry point for Isabelle.exe;
 wenzelm parents: diff
changeset | 21 | } | 
| 
20e0865ae9e7
default Isabelle application wrapper -- JVM entry point for Isabelle.exe;
 wenzelm parents: diff
changeset | 22 |       catch { case exn: Throwable => (Exn.message(exn), 2) }
 | 
| 
20e0865ae9e7
default Isabelle application wrapper -- JVM entry point for Isabelle.exe;
 wenzelm parents: diff
changeset | 23 | |
| 47867 
dd9cbe708e6b
some attempts to make critical errors fit on screen;
 wenzelm parents: 
47664diff
changeset | 24 | if (rc != 0) | 
| 51616 | 25 | GUI.dialog(null, "Isabelle", "Isabelle output", | 
| 26 | GUI.scrollable_text(out + "\nReturn code: " + rc)) | |
| 47663 
20e0865ae9e7
default Isabelle application wrapper -- JVM entry point for Isabelle.exe;
 wenzelm parents: diff
changeset | 27 | |
| 48192 | 28 | sys.exit(rc) | 
| 47663 
20e0865ae9e7
default Isabelle application wrapper -- JVM entry point for Isabelle.exe;
 wenzelm parents: diff
changeset | 29 | } | 
| 
20e0865ae9e7
default Isabelle application wrapper -- JVM entry point for Isabelle.exe;
 wenzelm parents: diff
changeset | 30 | } | 
| 
20e0865ae9e7
default Isabelle application wrapper -- JVM entry point for Isabelle.exe;
 wenzelm parents: diff
changeset | 31 |