src/Doc/IsarRef/Outer_Syntax.thy
changeset 55033 8e8243975860
parent 53059 f4811f3628dc
child 55045 99056d23e05b
equal deleted inserted replaced
55032:b49366215417 55033:8e8243975860
   145     @{syntax_def var} & = & @{verbatim "?"}@{text "ident  |  "}@{verbatim "?"}@{text ident}@{verbatim "."}@{text nat} \\
   145     @{syntax_def var} & = & @{verbatim "?"}@{text "ident  |  "}@{verbatim "?"}@{text ident}@{verbatim "."}@{text nat} \\
   146     @{syntax_def typefree} & = & @{verbatim "'"}@{text ident} \\
   146     @{syntax_def typefree} & = & @{verbatim "'"}@{text ident} \\
   147     @{syntax_def typevar} & = & @{verbatim "?"}@{text "typefree  |  "}@{verbatim "?"}@{text typefree}@{verbatim "."}@{text nat} \\
   147     @{syntax_def typevar} & = & @{verbatim "?"}@{text "typefree  |  "}@{verbatim "?"}@{text typefree}@{verbatim "."}@{text nat} \\
   148     @{syntax_def string} & = & @{verbatim "\""} @{text "\<dots>"} @{verbatim "\""} \\
   148     @{syntax_def string} & = & @{verbatim "\""} @{text "\<dots>"} @{verbatim "\""} \\
   149     @{syntax_def altstring} & = & @{verbatim "`"} @{text "\<dots>"} @{verbatim "`"} \\
   149     @{syntax_def altstring} & = & @{verbatim "`"} @{text "\<dots>"} @{verbatim "`"} \\
       
   150     @{syntax_def cartouche} & = & @{verbatim "\<open>"} @{text "\<dots>"} @{verbatim "\<close>"} \\
   150     @{syntax_def verbatim} & = & @{verbatim "{*"} @{text "\<dots>"} @{verbatim "*"}@{verbatim "}"} \\[1ex]
   151     @{syntax_def verbatim} & = & @{verbatim "{*"} @{text "\<dots>"} @{verbatim "*"}@{verbatim "}"} \\[1ex]
   151 
   152 
   152     @{text letter} & = & @{text "latin  |  "}@{verbatim "\\"}@{verbatim "<"}@{text latin}@{verbatim ">"}@{text "  |  "}@{verbatim "\\"}@{verbatim "<"}@{text "latin latin"}@{verbatim ">"}@{text "  |  greek  |"} \\
   153     @{text letter} & = & @{text "latin  |  "}@{verbatim "\\"}@{verbatim "<"}@{text latin}@{verbatim ">"}@{text "  |  "}@{verbatim "\\"}@{verbatim "<"}@{text "latin latin"}@{verbatim ">"}@{text "  |  greek  |"} \\
   153     @{text subscript} & = & @{verbatim "\<^sub>"} \\
   154     @{text subscript} & = & @{verbatim "\<^sub>"} \\
   154     @{text quasiletter} & = & @{text "letter  |  digit  |  "}@{verbatim "_"}@{text "  |  "}@{verbatim "'"} \\
   155     @{text quasiletter} & = & @{text "letter  |  digit  |  "}@{verbatim "_"}@{text "  |  "}@{verbatim "'"} \\
   189   convenient inclusion of quotes without further escapes.  There is no
   190   convenient inclusion of quotes without further escapes.  There is no
   190   way to escape ``@{verbatim "*"}@{verbatim "}"}''.  If the quoted
   191   way to escape ``@{verbatim "*"}@{verbatim "}"}''.  If the quoted
   191   text is {\LaTeX} source, one may usually add some blank or comment
   192   text is {\LaTeX} source, one may usually add some blank or comment
   192   to avoid the critical character sequence.
   193   to avoid the critical character sequence.
   193 
   194 
       
   195   A @{syntax_ref cartouche} consists of arbitrary text, with properly
       
   196   balanced blocks of ``@{verbatim "\<open>"}~@{text "\<dots>"}~@{verbatim
       
   197   "\<close>"}''.  Note that the rendering of cartouche delimiters is
       
   198   usually like this: ``@{text "\<open> \<dots> \<close>"}''.
       
   199 
   194   Source comments take the form @{verbatim "(*"}~@{text
   200   Source comments take the form @{verbatim "(*"}~@{text
   195   "\<dots>"}~@{verbatim "*)"} and may be nested, although the user-interface
   201   "\<dots>"}~@{verbatim "*)"} and may be nested, although the user-interface
   196   might prevent this.  Note that this form indicates source comments
   202   might prevent this.  Note that this form indicates source comments
   197   only, which are stripped after lexical analysis of the input.  The
   203   only, which are stripped after lexical analysis of the input.  The
   198   Isar syntax also provides proper \emph{document comments} that are
   204   Isar syntax also provides proper \emph{document comments} that are