src/Doc/JEdit/JEdit.thy
changeset 62251 460273b88e64
parent 62250 9cf61c91b274
child 62253 91363e4c196d
equal deleted inserted replaced
62250:9cf61c91b274 62251:460273b88e64
  1556 section \<open>Automatically tried tools \label{sec:auto-tools}\<close>
  1556 section \<open>Automatically tried tools \label{sec:auto-tools}\<close>
  1557 
  1557 
  1558 text \<open>
  1558 text \<open>
  1559   Continuous document processing works asynchronously in the background.
  1559   Continuous document processing works asynchronously in the background.
  1560   Visible document source that has been evaluated may get augmented by
  1560   Visible document source that has been evaluated may get augmented by
  1561   additional results of \<^emph>\<open>asynchronous print functions\<close>. The canonical example
  1561   additional results of \<^emph>\<open>asynchronous print functions\<close>. An example for that
  1562   is proof state output, which is always enabled. More heavy-weight print
  1562   is proof state output, if that is enabled in the Output panel
  1563   functions may be applied, in order to prove or disprove parts of the formal
  1563   (\secref{sec:output}). More heavy-weight print functions may be applied as
  1564   text by other means.
  1564   well, e.g.\ to prove or disprove parts of the formal text by other means.
  1565 
  1565 
  1566   Isabelle/HOL provides various automatically tried tools that operate on
  1566   Isabelle/HOL provides various automatically tried tools that operate on
  1567   outermost goal statements (e.g.\ @{command lemma}, @{command theorem}),
  1567   outermost goal statements (e.g.\ @{command lemma}, @{command theorem}),
  1568   independently of the state of the current proof attempt. They work
  1568   independently of the state of the current proof attempt. They work
  1569   implicitly without any arguments. Results are output as \<^emph>\<open>information
  1569   implicitly without any arguments. Results are output as \<^emph>\<open>information
  1570   messages\<close>, which are indicated in the text area by blue squiggles and a blue
  1570   messages\<close>, which are indicated in the text area by blue squiggles and a blue
  1571   information sign in the gutter (see \figref{fig:auto-tools}). The message
  1571   information sign in the gutter (see \figref{fig:auto-tools}). The message
  1572   content may be shown as for other output (see also \secref{sec:output}).
  1572   content may be shown as for other output (see also \secref{sec:output}).
  1573   Some tools produce output with \<^emph>\<open>sendback\<close> markup, which means that clicking
  1573   Some tools produce output with \<^emph>\<open>sendback\<close> markup, which means that clicking
  1574   on certain parts of the output inserts that text into the source in the
  1574   on certain parts of the text inserts that into the source in the proper
  1575   proper place.
  1575   place.
  1576 
  1576 
  1577   \begin{figure}[!htb]
  1577   \begin{figure}[!htb]
  1578   \begin{center}
  1578   \begin{center}
  1579   \includegraphics[scale=0.333]{auto-tools}
  1579   \includegraphics[scale=0.333]{auto-tools}
  1580   \end{center}
  1580   \end{center}
  1716 
  1716 
  1717 
  1717 
  1718 section \<open>Markdown structure\<close>
  1718 section \<open>Markdown structure\<close>
  1719 
  1719 
  1720 text \<open>
  1720 text \<open>
  1721   FIXME
  1721   Document text is internally structured in paragraphs and nested lists, using
  1722   \figref{fig:markdown-document}
  1722   notation that is similar to Markdown\<^footnote>\<open>@{url "http://commonmark.org"}\<close>. There
       
  1723   are special control symbols for items of different kinds of lists,
       
  1724   corresponding to \<^verbatim>\<open>itemize\<close>, \<^verbatim>\<open>enumerate\<close>, \<^verbatim>\<open>description\<close> in {\LaTeX}. This
       
  1725   is illustrated in for \<^verbatim>\<open>itemize\<close> in \figref{fig:markdown-document}.
  1723 
  1726 
  1724   \begin{figure}[!htb]
  1727   \begin{figure}[!htb]
  1725   \begin{center}
  1728   \begin{center}
  1726   \includegraphics[scale=0.333]{markdown-document}
  1729   \includegraphics[scale=0.333]{markdown-document}
  1727   \end{center}
  1730   \end{center}
  1728   \caption{Markdown structure within document text}
  1731   \caption{Markdown structure within document text}
  1729   \label{fig:markdown-document}
  1732   \label{fig:markdown-document}
  1730   \end{figure}
  1733   \end{figure}
       
  1734 
       
  1735   Items take colour according to the depth of nested lists. This helps to
       
  1736   explore the implicit rules for list structure interactively. There is also
       
  1737   markup for individual paragraphs in the text: it may be explored via mouse
       
  1738   hovering with \<^verbatim>\<open>CONTROL\<close> / \<^verbatim>\<open>COMMAND\<close> as usual
       
  1739   (\secref{sec:tooltips-hyperlinks}).
  1731 \<close>
  1740 \<close>
  1732 
  1741 
  1733 
  1742 
  1734 section \<open>Citations and Bib{\TeX} entries \label{sec:bibtex}\<close>
  1743 section \<open>Citations and Bib{\TeX} entries \label{sec:bibtex}\<close>
  1735 
  1744 
  1806   individual command timings are shown as well. A double-click on a theory
  1815   individual command timings are shown as well. A double-click on a theory
  1807   node or command moves the editor focus to that particular source position.
  1816   node or command moves the editor focus to that particular source position.
  1808 
  1817 
  1809   It is also possible to reveal individual timing information via some tooltip
  1818   It is also possible to reveal individual timing information via some tooltip
  1810   for the corresponding command keyword, using the technique of mouse hovering
  1819   for the corresponding command keyword, using the technique of mouse hovering
  1811   with \<^verbatim>\<open>CONTROL\<close>~/ \<^verbatim>\<open>COMMAND\<close> modifier key as explained in
  1820   with \<^verbatim>\<open>CONTROL\<close>~/ \<^verbatim>\<open>COMMAND\<close> modifier (\secref{sec:tooltips-hyperlinks}).
  1812   \secref{sec:tooltips-hyperlinks}. Actual display of timing depends on the
  1821   Actual display of timing depends on the global option @{system_option_ref
  1813   global option @{system_option_ref jedit_timing_threshold}, which can be
  1822   jedit_timing_threshold}, which can be configured in \<^emph>\<open>Plugin Options~/
  1814   configured in \<^emph>\<open>Plugin Options~/ Isabelle~/ General\<close>.
  1823   Isabelle~/ General\<close>.
  1815 
  1824 
  1816   \<^medskip>
  1825   \<^medskip>
  1817   The \<^emph>\<open>Monitor\<close> panel visualizes various data collections about recent
  1826   The \<^emph>\<open>Monitor\<close> panel visualizes various data collections about recent
  1818   activity of the Isabelle/ML task farm and the underlying ML runtime system.
  1827   activity of the Isabelle/ML task farm and the underlying ML runtime system.
  1819   The display is continuously updated according to @{system_option_ref
  1828   The display is continuously updated according to @{system_option_ref
  1825 
  1834 
  1826 
  1835 
  1827 section \<open>Low-level output\<close>
  1836 section \<open>Low-level output\<close>
  1828 
  1837 
  1829 text \<open>
  1838 text \<open>
  1830   Prover output is normally shown directly in the main text area or secondary
  1839   Prover output is normally shown directly in the main text area or specific
  1831   \<^emph>\<open>Output\<close> panels, as explained in \secref{sec:output}.
  1840   panels like \<^emph>\<open>Output\<close> (\secref{sec:output}) or \<^emph>\<open>State\<close>
  1832 
  1841   (\secref{sec:state-output}). Beyond this, it is occasionally useful to
  1833   Beyond this, it is occasionally useful to inspect low-level output channels
  1842   inspect low-level output channels via some of the following additional
  1834   via some of the following additional panels:
  1843   panels:
  1835 
  1844 
  1836   \<^item> \<^emph>\<open>Protocol\<close> shows internal messages between the Isabelle/Scala and
  1845   \<^item> \<^emph>\<open>Protocol\<close> shows internal messages between the Isabelle/Scala and
  1837   Isabelle/ML side of the PIDE document editing protocol. Recording of
  1846   Isabelle/ML side of the PIDE document editing protocol. Recording of
  1838   messages starts with the first activation of the corresponding dockable
  1847   messages starts with the first activation of the corresponding dockable
  1839   window; earlier messages are lost.
  1848   window; earlier messages are lost.