--- a/src/Pure/System/isabelle_system.scala Thu May 20 10:43:46 2010 +0200
+++ b/src/Pure/System/isabelle_system.scala Thu May 20 11:36:30 2010 +0200
@@ -150,6 +150,15 @@
def platform_file(path: String) = new File(platform_path(path))
+ /* try_read */
+
+ def try_read(path: String): String =
+ {
+ val file = platform_file(path)
+ if (file.isFile) Source.fromFile(file).mkString else ""
+ }
+
+
/* source files */
private def try_file(file: File) = if (file.isFile) Some(file) else None
@@ -304,11 +313,8 @@
/* symbols */
private def read_symbols(path: String): List[String] =
- {
- val file = platform_file(path)
- if (file.isFile) Source.fromFile(file).getLines("\n").toList
- else Nil
- }
+ Library.chunks(try_read(path)).map(_.toString).toList
+
val symbols = new Symbol.Interpretation(
read_symbols("$ISABELLE_HOME/etc/symbols") :::
read_symbols("$ISABELLE_HOME_USER/etc/symbols"))