157 \isamarkupsection{Installing standalone Isabelle executables \label{sec:tool-install}% |
157 \isamarkupsection{Installing standalone Isabelle executables \label{sec:tool-install}% |
158 } |
158 } |
159 \isamarkuptrue% |
159 \isamarkuptrue% |
160 % |
160 % |
161 \begin{isamarkuptext}% |
161 \begin{isamarkuptext}% |
162 By default, the Isabelle binaries (\hyperlink{executable.isabelle}{\mbox{\isa{\isatt{isabelle}}}}, |
162 By default, the Isabelle binaries (\hyperlink{executable.isabelle-process}{\mbox{\isa{\isatt{isabelle{\isacharminus}process}}}}, |
163 \hyperlink{executable.isatool}{\mbox{\isa{\isatt{isatool}}}} etc.) are just run from their location within |
163 \hyperlink{executable.isatool}{\mbox{\isa{\isatt{isatool}}}} etc.) are just run from their location within |
164 the distribution directory, probably indirectly by the shell through |
164 the distribution directory, probably indirectly by the shell through |
165 its \verb|PATH|. Other schemes of installation are supported |
165 its \hyperlink{setting.PATH}{\mbox{\isa{\isatt{PATH}}}}. Other schemes of installation are supported by |
166 by the \indexdef{}{tool}{install}\hypertarget{tool.install}{\hyperlink{tool.install}{\mbox{\isa{\isatt{install}}}}} utility: |
166 the \indexdef{}{tool}{install}\hypertarget{tool.install}{\hyperlink{tool.install}{\mbox{\isa{\isatt{install}}}}} utility: |
167 \begin{ttbox} |
167 \begin{ttbox} |
168 Usage: install [OPTIONS] |
168 Usage: install [OPTIONS] |
169 |
169 |
170 Options are: |
170 Options are: |
171 -d DISTDIR use DISTDIR as Isabelle distribution |
171 -d DISTDIR use DISTDIR as Isabelle distribution |
178 |
178 |
179 The \verb|-d| option overrides the current Isabelle |
179 The \verb|-d| option overrides the current Isabelle |
180 distribution directory as determined by \hyperlink{setting.ISABELLE-HOME}{\mbox{\isa{\isatt{ISABELLE{\isacharunderscore}HOME}}}}. |
180 distribution directory as determined by \hyperlink{setting.ISABELLE-HOME}{\mbox{\isa{\isatt{ISABELLE{\isacharunderscore}HOME}}}}. |
181 |
181 |
182 The \verb|-p| option installs executable wrapper scripts for |
182 The \verb|-p| option installs executable wrapper scripts for |
183 \hyperlink{executable.isabelle}{\mbox{\isa{\isatt{isabelle}}}}, \hyperlink{executable.isatool}{\mbox{\isa{\isatt{isatool}}}}, \hyperlink{executable.Isabelle}{\mbox{\isa{\isatt{Isabelle}}}}, containing proper absolute references to the Isabelle |
183 \hyperlink{executable.isabelle-process}{\mbox{\isa{\isatt{isabelle{\isacharminus}process}}}}, \hyperlink{executable.isatool}{\mbox{\isa{\isatt{isatool}}}}, |
184 distribution directory. A typical \verb|DIR| specification |
184 \hyperlink{executable.Isabelle}{\mbox{\isa{\isatt{Isabelle}}}}, containing proper absolute references to the |
185 would be some directory expected to be in the shell's \verb|PATH|, such as \verb|/usr/local/bin|. It is important to |
185 Isabelle distribution directory. A typical \verb|DIR| |
186 note that a plain manual copy of the original Isabelle executables |
186 specification would be some directory expected to be in the shell's |
187 does not work, since it disrupts the integrity of the Isabelle |
187 \hyperlink{setting.PATH}{\mbox{\isa{\isatt{PATH}}}}, such as \verb|/usr/local/bin|. It is |
188 distribution.% |
188 important to note that a plain manual copy of the original Isabelle |
|
189 executables does not work, since it disrupts the integrity of the |
|
190 Isabelle distribution.% |
189 \end{isamarkuptext}% |
191 \end{isamarkuptext}% |
190 \isamarkuptrue% |
192 \isamarkuptrue% |
191 % |
193 % |
192 \isamarkupsection{Creating instances of the Isabelle logo% |
194 \isamarkupsection{Creating instances of the Isabelle logo% |
193 } |
195 } |
204 Options are: |
206 Options are: |
205 -o OUTFILE set output file (default determined from NAME) |
207 -o OUTFILE set output file (default determined from NAME) |
206 -q quiet mode |
208 -q quiet mode |
207 \end{ttbox} |
209 \end{ttbox} |
208 You are encouraged to use this to create a derived logo for your |
210 You are encouraged to use this to create a derived logo for your |
209 Isabelle project. For example, \verb|isatool logo Bali| |
211 Isabelle project. For example, \verb|isatool| \hyperlink{tool.logo}{\mbox{\isa{\isatt{logo}}}}~\verb|Bali| creates \verb|isabelle_bali.eps|.% |
210 creates \verb|isabelle_bali.eps|.% |
|
211 \end{isamarkuptext}% |
212 \end{isamarkuptext}% |
212 \isamarkuptrue% |
213 \isamarkuptrue% |
213 % |
214 % |
214 \isamarkupsection{Isabelle's version of make \label{sec:tool-make}% |
215 \isamarkupsection{Isabelle's version of make \label{sec:tool-make}% |
215 } |
216 } |
244 \isamarkuptrue% |
245 \isamarkuptrue% |
245 % |
246 % |
246 \begin{isamarkuptext}% |
247 \begin{isamarkuptext}% |
247 Refer to the \verb|IsaMakefile|s of the Isabelle distribution's |
248 Refer to the \verb|IsaMakefile|s of the Isabelle distribution's |
248 object-logics as a model for your own developments. For example, |
249 object-logics as a model for your own developments. For example, |
249 see \verb|src/FOL/IsaMakefile|.% |
250 see \hyperlink{file.~~/src/FOL/IsaMakefile}{\mbox{\isa{\isatt{{\isachartilde}{\isachartilde}{\isacharslash}src{\isacharslash}FOL{\isacharslash}IsaMakefile}}}}.% |
250 \end{isamarkuptext}% |
251 \end{isamarkuptext}% |
251 \isamarkuptrue% |
252 \isamarkuptrue% |
252 % |
253 % |
253 \isamarkupsection{Make all logics% |
254 \isamarkupsection{Make all logics% |
254 } |
255 } |
307 \end{ttbox} |
308 \end{ttbox} |
308 |
309 |
309 The \verb|-l| option specifies the logic image. The |
310 The \verb|-l| option specifies the logic image. The |
310 \verb|-m| option specifies additional print modes. The The |
311 \verb|-m| option specifies additional print modes. The The |
311 \verb|-p| option specifies an alternative line editor (such |
312 \verb|-p| option specifies an alternative line editor (such |
312 as the \hyperlink{executable.rlwrap}{\mbox{\isa{\isatt{rlwrap}}}} wrapper for GNU readline); the fall-back |
313 as the \indexdef{}{executable}{rlwrap}\hypertarget{executable.rlwrap}{\hyperlink{executable.rlwrap}{\mbox{\isa{\isatt{rlwrap}}}}} wrapper for GNU readline); the |
313 is to use raw standard input.% |
314 fall-back is to use raw standard input.% |
314 \end{isamarkuptext}% |
315 \end{isamarkuptext}% |
315 \isamarkuptrue% |
316 \isamarkuptrue% |
316 % |
317 % |
317 \isamarkupsection{Remove awkward symbol names from theory sources% |
318 \isamarkupsection{Remove awkward symbol names from theory sources% |
318 } |
319 } |
382 Parsing YXML is pretty straight-forward: split the text into chunks |
383 Parsing YXML is pretty straight-forward: split the text into chunks |
383 separated by \isa{{\isachardoublequote}\isactrlbold X{\isachardoublequote}}, then split each chunk into |
384 separated by \isa{{\isachardoublequote}\isactrlbold X{\isachardoublequote}}, then split each chunk into |
384 sub-chunks separated by \isa{{\isachardoublequote}\isactrlbold Y{\isachardoublequote}}. Markup chunks start |
385 sub-chunks separated by \isa{{\isachardoublequote}\isactrlbold Y{\isachardoublequote}}. Markup chunks start |
385 with an empty sub-chunk, and a second empty sub-chunk indicates |
386 with an empty sub-chunk, and a second empty sub-chunk indicates |
386 close of an element. Any other non-empty chunk consists of plain |
387 close of an element. Any other non-empty chunk consists of plain |
387 text. |
388 text. For example, see \hyperlink{file.~~/src/Pure/General/yxml.ML}{\mbox{\isa{\isatt{{\isachartilde}{\isachartilde}{\isacharslash}src{\isacharslash}Pure{\isacharslash}General{\isacharslash}yxml{\isachardot}ML}}}} or |
|
389 \hyperlink{file.~~/src/Pure/General/yxml.scala}{\mbox{\isa{\isatt{{\isachartilde}{\isachartilde}{\isacharslash}src{\isacharslash}Pure{\isacharslash}General{\isacharslash}yxml{\isachardot}scala}}}}. |
388 |
390 |
389 YXML documents may be detected quickly by checking that the first |
391 YXML documents may be detected quickly by checking that the first |
390 two characters are \isa{{\isachardoublequote}\isactrlbold X\isactrlbold Y{\isachardoublequote}}.% |
392 two characters are \isa{{\isachardoublequote}\isactrlbold X\isactrlbold Y{\isachardoublequote}}.% |
391 \end{isamarkuptext}% |
393 \end{isamarkuptext}% |
392 \isamarkuptrue% |
394 \isamarkuptrue% |