src/Doc/JEdit/JEdit.thy
changeset 66681 0879f2045965
parent 66574 e16b27bd3f76
child 66683 01189e46dc55
equal deleted inserted replaced
66680:74a1b722507e 66681:0879f2045965
   718     Action @{action "isabelle.newline"} (shortcut \<^verbatim>\<open>ENTER\<close>) indents the old
   718     Action @{action "isabelle.newline"} (shortcut \<^verbatim>\<open>ENTER\<close>) indents the old
   719     and the new line according to command keywords only: this leads to precise
   719     and the new line according to command keywords only: this leads to precise
   720     alignment of the main Isar language elements. This depends on option
   720     alignment of the main Isar language elements. This depends on option
   721     @{system_option_def "jedit_indent_newline"} (enabled by default).
   721     @{system_option_def "jedit_indent_newline"} (enabled by default).
   722 
   722 
       
   723     Regular input (via keyboard or completion) indents the current line
       
   724     whenever an new keyword is emerging the start of the line. This depends on
       
   725     option @{system_option_def "jedit_indent_input"} (enabled by default).
       
   726 
   723     \<^descr>[Semantic indentation] adds additional white space to unstructured proof
   727     \<^descr>[Semantic indentation] adds additional white space to unstructured proof
   724     scripts (\<^theory_text>\<open>apply\<close> etc.) via number of subgoals. This requires information
   728     scripts (\<^theory_text>\<open>apply\<close> etc.) via number of subgoals. This requires information
   725     of ongoing document processing and may thus lag behind, when the user is
   729     of ongoing document processing and may thus lag behind, when the user is
   726     editing too quickly; see also option @{system_option_def
   730     editing too quickly; see also option @{system_option_def
   727     "jedit_script_indent"} and @{system_option_def
   731     "jedit_script_indent"} and @{system_option_def
   728     "jedit_script_indent_limit"}.
   732     "jedit_script_indent_limit"}.
   729 
   733 
   730   The above options are accessible in the menu \<^emph>\<open>Plugins / Plugin Options /
   734   The above options are accessible in the menu \<^emph>\<open>Plugins / Plugin Options /
   731   Isabelle / General\<close>.
   735   Isabelle / General\<close>. A prerequisite for advanced indentation is \<^emph>\<open>Utilities
   732 
   736   / Buffer Options / Automatic indentation\<close>: it needs to be set to \<^verbatim>\<open>full\<close>
   733   \<^medskip> Automatic indentation has a tendency to produce trailing whitespace. That
   737   (default).
   734   can be purged manually with the jEdit action @{action "remove-trailing-ws"}
       
   735   (shortcut \<^verbatim>\<open>C+e r\<close>). Moreover, the \<^emph>\<open>WhiteSpace\<close> plugin provides some
       
   736   aggressive options to trim whitespace on buffer-save.
       
   737 \<close>
   738 \<close>
   738 
   739 
   739 
   740 
   740 section \<open>SideKick parsers \label{sec:sidekick}\<close>
   741 section \<open>SideKick parsers \label{sec:sidekick}\<close>
   741 
   742