diff -r 957f69b9b7df -r f952f2679a11 ProgTutorial/output_tutorial.ML --- a/ProgTutorial/output_tutorial.ML Sun Aug 22 22:56:52 2010 +0800 +++ b/ProgTutorial/output_tutorial.ML Sat Aug 28 13:27:16 2010 +0800 @@ -9,20 +9,20 @@ val linenos = Unsynchronized.ref false -fun output txt = +fun output ctxt txt = let val prts = map Pretty.str txt in prts - |> (if ! Thy_Output.quotes then map Pretty.quote else I) - |> (if ! Thy_Output.display then - map (Output.output o Pretty.string_of o Pretty.indent (! Thy_Output.indent)) + |> (if Config.get ctxt Thy_Output.quotes then map Pretty.quote else I) + |> (if Config.get ctxt Thy_Output.display then + map (Output.output o Pretty.string_of o Pretty.indent (Config.get ctxt Thy_Output.indent)) #> space_implode "\\isasep\\isanewline%\n" #> (if ! linenos then (enclose "\\begin{linenos}%\n" "%\n\\end{linenos}") else I) #> (if ! gray then (enclose "\\begin{graybox}%\n" "%\n\\end{graybox}") else I) #> enclose "\\begin{isabelle}%\n" "%\n\\end{isabelle}" else - map (Output.output o (if ! Thy_Output.break then Pretty.string_of else Pretty.str_of)) + map (Output.output o (if Config.get ctxt Thy_Output.break then Pretty.string_of else Pretty.str_of)) #> space_implode "\\isasep\\isanewline%\n" #> enclose "\\isa{" "}") end @@ -74,8 +74,8 @@ Struct s => implode ["\\index[str]{{\\tt\\slshape{}", get_word s, "}!", get_indstring m, "}"] | _ => "") -fun output_indexed ind txt = - txt |> output +fun output_indexed ctxt ind txt = + txt |> output ctxt |> prefix (get_index ind) |> prefix (get_str_index ind) @@ -84,8 +84,9 @@ | boolean "false" = false | boolean s = error ("Bad boolean value: " ^ quote s); -val _ = Thy_Output.add_options - [("gray", Library.setmp_CRITICAL gray o boolean), - ("linenos", Library.setmp_CRITICAL linenos o boolean)] +val _ = Thy_Output.add_option "gray" + (Thy_Output.add_wrapper o Library.setmp_CRITICAL gray o boolean) +val _ = Thy_Output.add_option "linenos" + (Thy_Output.add_wrapper o Library.setmp_CRITICAL linenos o boolean) end \ No newline at end of file