src/Doc/JEdit/JEdit.thy
changeset 54357 157b6eee6a76
parent 54356 9538f51da542
child 54358 0f50303e899f
equal deleted inserted replaced
54356:9538f51da542 54357:157b6eee6a76
    62 
    62 
    63 
    63 
    64 section {* The Isabelle/jEdit Prover IDE *}
    64 section {* The Isabelle/jEdit Prover IDE *}
    65 
    65 
    66 text {*
    66 text {*
    67   \begin{figure}[htbp]
    67   \begin{figure}[htb]
    68   \begin{center}
    68   \begin{center}
    69   \includegraphics[width=\textwidth]{isabelle-jedit}
    69   \includegraphics[width=\textwidth]{isabelle-jedit}
    70   \end{center}
    70   \end{center}
    71   \caption{The Isabelle/jEdit Prover IDE}
    71   \caption{The Isabelle/jEdit Prover IDE}
       
    72   \label{fig:isabelle-jedit}
    72   \end{figure}
    73   \end{figure}
    73 
    74 
    74   Isabelle/jEdit consists of some plugins for the well-known jEdit
    75   Isabelle/jEdit (\figref{fig:isabelle-jedit}) consists of some
    75   text editor \url{http://www.jedit.org}, according to the following
    76   plugins for the well-known jEdit text editor
    76   principles.
    77   \url{http://www.jedit.org}, according to the following principles.
    77 
    78 
    78   \begin{itemize}
    79   \begin{itemize}
    79 
    80 
    80   \item The original jEdit look-and-feel is generally preserved,
    81   \item The original jEdit look-and-feel is generally preserved,
    81   although some default properties are changed to accommodate Isabelle
    82   although some default properties are changed to accommodate Isabelle
   360 
   361 
   361 text {* Prover output consists of \emph{markup} and \emph{messages}.
   362 text {* Prover output consists of \emph{markup} and \emph{messages}.
   362   Both are directly attached to the corresponding positions in the
   363   Both are directly attached to the corresponding positions in the
   363   original source text, and visualized in the text area, e.g.\ as text
   364   original source text, and visualized in the text area, e.g.\ as text
   364   colours for free and bound variables, or as squiggly underline for
   365   colours for free and bound variables, or as squiggly underline for
   365   warnings, errors etc.  In the latter case, the corresponding
   366   warnings, errors etc.\ (see also \figref{fig:output}).  In the
   366   messages are shown by hovering with the mouse over the highlighted
   367   latter case, the corresponding messages are shown by hovering with
   367   text --- although in many situations the user should already get
   368   the mouse over the highlighted text --- although in many situations
   368   some clue by looking at the text highlighting alone.
   369   the user should already get some clue by looking at the text
       
   370   highlighting alone.
       
   371 
       
   372   \begin{figure}[htb]
       
   373   \begin{center}
       
   374   \includegraphics[scale=0.3]{output}
       
   375   \end{center}
       
   376   \caption{Multiple views on prover output: gutter area, text area
       
   377     with popup, overview area, Theories panel, Output panel}
       
   378   \label{fig:output}
       
   379   \end{figure}
   369 
   380 
   370   The ``gutter area'' on the left-hand-side of the text area uses
   381   The ``gutter area'' on the left-hand-side of the text area uses
   371   icons to provide a summary of the messages within the corresponding
   382   icons to provide a summary of the messages within the corresponding
   372   line of text.  Message priorities are used to prefer errors over
   383   line of text.  Message priorities are used to prefer errors over
   373   warnings, warnings over information messages etc.  Plain output is
   384   warnings, warnings over information messages etc.  Plain output is
   427   COMMAND} on Mac OS X.  Hovering with the mouse while the modifier is
   438   COMMAND} on Mac OS X.  Hovering with the mouse while the modifier is
   428   pressed reveals a \emph{tooltip} (grey box over the text with a
   439   pressed reveals a \emph{tooltip} (grey box over the text with a
   429   yellow popup) and/or a \emph{hyperlink} (black rectangle over the
   440   yellow popup) and/or a \emph{hyperlink} (black rectangle over the
   430   text); see also \figref{fig:tooltip}.
   441   text); see also \figref{fig:tooltip}.
   431 
   442 
   432   \begin{figure}[htbp]
   443   \begin{figure}[htb]
   433   \begin{center}
   444   \begin{center}
   434   \includegraphics[scale=0.6]{popup1}
   445   \includegraphics[scale=0.5]{popup1}
   435   \end{center}
   446   \end{center}
   436   \caption{Tooltip and hyperlink for some formal entity}
   447   \caption{Tooltip and hyperlink for some formal entity}
   437   \label{fig:tooltip}
   448   \label{fig:tooltip}
   438   \end{figure}
   449   \end{figure}
   439 
   450 
   440   Tooltip popups use the same rendering principles as the main text
   451   Tooltip popups use the same rendering principles as the main text
   441   area, and further tooltips and/or hyperlinks may be exposed
   452   area, and further tooltips and/or hyperlinks may be exposed
   442   recursively by the same mechanism; see
   453   recursively by the same mechanism; see \figref{fig:nested-tooltips}.
   443   \figref{fig:nested-tooltips}.
   454 
   444 
   455   \begin{figure}[htb]
   445   \begin{figure}[htbp]
       
   446   \begin{center}
   456   \begin{center}
   447   \includegraphics[scale=0.6]{popup2}
   457   \includegraphics[scale=0.5]{popup2}
   448   \end{center}
   458   \end{center}
   449   \caption{Nested tooltips over formal entities}
   459   \caption{Nested tooltips over formal entities}
   450   \label{fig:nested-tooltips}
   460   \label{fig:nested-tooltips}
   451   \end{figure}
   461   \end{figure}
   452 
   462 
   684   any other message, see also \secref{sec:prover-output}.  Some tools
   694   any other message, see also \secref{sec:prover-output}.  Some tools
   685   produce output with \emph{sendback} markup, which means that
   695   produce output with \emph{sendback} markup, which means that
   686   clicking on certain parts of the output inserts that text into the
   696   clicking on certain parts of the output inserts that text into the
   687   source in the proper place.
   697   source in the proper place.
   688 
   698 
   689   \begin{figure}[htbp]
   699   \begin{figure}[htb]
   690   \begin{center}
   700   \begin{center}
   691   \includegraphics[scale=0.5]{auto-tools}
   701   \includegraphics[scale=0.5]{auto-tools}
   692   \end{center}
   702   \end{center}
   693   \caption{Results of automatically tried tools}
   703   \caption{Results of automatically tried tools}
   694   \label{fig:auto-tools}
   704   \label{fig:auto-tools}
   777   elements for important Sledgehammer arguments and options.  Any
   787   elements for important Sledgehammer arguments and options.  Any
   778   number of Sledgehammer panels may be active, according to the
   788   number of Sledgehammer panels may be active, according to the
   779   standard policies of Dockable Window Management in jEdit.  Closing a
   789   standard policies of Dockable Window Management in jEdit.  Closing a
   780   window also cancels the corresponding prover tasks.
   790   window also cancels the corresponding prover tasks.
   781 
   791 
   782   \begin{figure}[htbp]
   792   \begin{figure}[htb]
   783   \begin{center}
   793   \begin{center}
   784   \includegraphics[scale=0.3]{sledgehammer}
   794   \includegraphics[scale=0.3]{sledgehammer}
   785   \end{center}
   795   \end{center}
   786   \caption{An instance of the Sledgehammer panel}
   796   \caption{An instance of the Sledgehammer panel}
   787   \label{fig:sledgehammer}
   797   \label{fig:sledgehammer}
   806   independent view for @{command find_theorems}.  The main text field
   816   independent view for @{command find_theorems}.  The main text field
   807   accepts search criteria according to the syntax @{syntax
   817   accepts search criteria according to the syntax @{syntax
   808   thmcriterium} given in \cite{isabelle-isar-ref}.  Further options of
   818   thmcriterium} given in \cite{isabelle-isar-ref}.  Further options of
   809   @{command find_theorems} are available via GUI elements.
   819   @{command find_theorems} are available via GUI elements.
   810 
   820 
   811   \begin{figure}[htbp]
   821   \begin{figure}[htb]
   812   \begin{center}
   822   \begin{center}
   813   \includegraphics[scale=0.3]{find}
   823   \includegraphics[scale=0.3]{find}
   814   \end{center}
   824   \end{center}
   815   \caption{An instance of the Find panel}
   825   \caption{An instance of the Find panel}
   816   \label{fig:find}
   826   \label{fig:find}