[isabelle-dev] Remaining uses of Proof General?
Makarius
makarius at sketis.net
Fri May 2 16:16:07 CEST 2014
On Tue, 29 Apr 2014, Andreas Lochbihler wrote:
>> text ‹
>> @{term ‹A \un B›}
>> ›
>>
>> Here the \un works as expected -- the cartouche remains intact
>> independently of its
>> content, as long as the funny parentheses are nested properly.
> But this correct nesting is exactly the problem. When I type \un while
> writing the above, the closing parenthesis are not there yet. The prover sees
> something like
>
> text {* @{term "A \un
>
> lemma foo: "..." by ...
But why? In the ancient times, input was always sequential, as depth-first
traversal of the intended tree structure. In less ancient times, some
people proposed rigid structural editors to make it impossible to escape
from nested boxes (still seen today in TeXmacs), although that is a bit
awkward. In the past 10 years or so, the standard IDE approach has
arrived somewhere in the middle: the user is free to type intermediate
non-sense, but the editor makes it easy to get it right by default.
Isabelle/jEdit still lacks serious templating, but there are beginnings of
it in the completion mechanism. The outer quotations and antiquotations
have specific support already: a single keystroke ` offers a template for
a well-formed cartouche, and the @{ prefix completes to a well-formed @{}
with the cursor in the middle. Even Proof General had C-c C-a C-a for
isar-antiquote already.
Makarius
More information about the isabelle-dev
mailing list