diff -r 56d70f7ce4a4 -r 36c8c32346cb src/Doc/System/Sessions.thy --- a/src/Doc/System/Sessions.thy Sun Sep 08 17:15:46 2019 +0200 +++ b/src/Doc/System/Sessions.thy Sun Sep 08 17:49:35 2019 +0200 @@ -53,9 +53,9 @@ ; @{syntax_def session_entry}: @'session' @{syntax system_name} groups? dir? '=' \ - (@{syntax system_name} '+')? description? directories? \ - options? (sessions?) (theories*) (document_files*) \ - (export_files*) + (@{syntax system_name} '+')? description? options? \ + sessions? directories? (theories*) \ + (document_files*) (export_files*) ; groups: '(' (@{syntax name} +) ')' ; @@ -63,8 +63,6 @@ ; description: @'description' @{syntax text} ; - directories: @'directories' ((dir ('(' @'overlapping' ')')?) +) - ; options: @'options' opts ; opts: '[' ( (@{syntax name} '=' value | @{syntax name}) + ',' ) ']' @@ -73,6 +71,8 @@ ; sessions: @'sessions' (@{syntax system_name}+) ; + directories: @'directories' ((dir ('(' @'overlapping' ')')?) +) + ; theories: @'theories' opts? (theory_entry+) ; theory_entry: @{syntax system_name} ('(' @'global' ')')? @@ -110,16 +110,6 @@ \<^descr> \isakeyword{description}~\text\ is a free-form annotation for this session. - \<^descr> \isakeyword{directories}~\dirs\ specifies additional directories for - import of theory files via \isakeyword{theories} within \<^verbatim>\ROOT\ or - \<^theory_text>\imports\ within a theory; \dirs\ are relative to the main session - directory (cf.\ \isakeyword{session} \dots \isakeyword{in}~\dir\). These - directories should be exclusively assigned to a unique session, without - implicit sharing of file-system locations, but - \isakeyword{directories}~\dir\~(\isakeyword{overlapping}) is tolerant in - this respect (it might cause problems in the Prover IDE @{cite - "isabelle-jedit"} to assign session-qualified theory names to open files). - \<^descr> \isakeyword{options}~\[x = a, y = b, z]\ defines separate options (\secref{sec:system-options}) that are used when processing this session, but \<^emph>\without\ propagation to child sessions. Note that \z\ abbreviates \z = @@ -134,6 +124,16 @@ Theories that are imported from other sessions are excluded from the current session document. + \<^descr> \isakeyword{directories}~\dirs\ specifies additional directories for + import of theory files via \isakeyword{theories} within \<^verbatim>\ROOT\ or + \<^theory_text>\imports\ within a theory; \dirs\ are relative to the main session + directory (cf.\ \isakeyword{session} \dots \isakeyword{in}~\dir\). These + directories should be exclusively assigned to a unique session, without + implicit sharing of file-system locations, but + \isakeyword{directories}~\dir\~(\isakeyword{overlapping}) is tolerant in + this respect (it might cause problems in the Prover IDE @{cite + "isabelle-jedit"} to assign session-qualified theory names to open files). + \<^descr> \isakeyword{theories}~\options names\ specifies a block of theories that are processed within an environment that is augmented by the given options, in addition to the global session options given before. Any number of blocks