added command, keyword;
authorwenzelm
Tue, 14 Mar 2006 22:06:35 +0100
changeset 19266 2e8ad3f2cd66
parent 19265 cae36e16f3c0
child 19267 fdb4658eab26
added command, keyword; added chunks2;
src/Pure/General/pretty.ML
--- a/src/Pure/General/pretty.ML	Tue Mar 14 22:06:33 2006 +0100
+++ b/src/Pure/General/pretty.ML	Tue Mar 14 22:06:35 2006 +0100
@@ -28,6 +28,8 @@
   type T
   val raw_str: string * real -> T
   val str: string -> T
+  val command: string -> T
+  val keyword: string -> T
   val brk: int -> T
   val fbrk: T
   val blk: int * T list -> T
@@ -37,6 +39,7 @@
   val block: T list -> T
   val strs: string list -> T
   val chunks: T list -> T
+  val chunks2: T list -> T
   val quote: T -> T
   val backquote: T -> T
   val separate: string -> T list -> T list
@@ -190,6 +193,9 @@
 fun raw_str (s, len) = String (s, Real.round len);
 val str = String o apsnd Real.round o Output.output_width;
 
+val command = String o apsnd Real.round o Output.keyword_width true;
+val keyword = String o apsnd Real.round o Output.keyword_width false;
+
 fun brk wd = Break (false, wd);
 val fbrk = Break (true, 2);
 
@@ -213,6 +219,7 @@
 
 val strs = block o breaks o map str;
 fun chunks prts = blk (0, fbreaks prts);
+fun chunks2 prts = blk (0, List.concat (Library.separate [fbrk, fbrk] (map single prts)));
 
 fun quote prt = blk (1, [str "\"", prt, str "\""]);
 fun backquote prt = blk (1, [str "`", prt, str "`"]);