Summary of Changes for Proof General 3.0 from 2.1 ================================================= Generic Changes --------------- * New function C-c C-f (proof-find) to invoke some prover-specific mechanism to search for theories. * Whenever scripting is triggered in a new file, a cd command is sent to the proof assistant to switch to the right directory (in case other files are included). * [XEmacs only] Toolbar has six new buttons (State, Context, Info, Command, Help, Stop) which invoke commands previously available on keys/menus. Also a new "Find" button for proof-find. * [XEmacs only] Toolbar enablers have been added. Buttons are automatically enabled or disabled as appropriate. This requires XEmacs 20.4 or better for reliable working. * Menus and keybindings have been reorganized. Now keybindings invoke the same functions as the toolbar. In particular, C-c C-n and C-c C-u are simplified so that they always process or retract exactly one command, rather than one command beyond point. Moreover, C-c C-u does not take an optional argument to delete the retracted text (it was too easy for the user to accidently type C-u C-c C-u !) * Command C-c C-t (proof-try-command) removed in favour of C-c C-v (proof-execute-minibuffer-cmd), which now uses the filter proof-state-preserving-p to check that a command is safe. * Terminal string now automatically added to command for C-c C-v * [XEmacs only] New function control-button1 (proof-mouse-track-insert) copies individual commands (highlighted regions) from an open proof. When a proof is closed, it behaves as mouse-track-insert (the default XEmacs behaviour of control-button1). * Switching scripting buffers is now more flexible. When scripting is turned off in a partly-finished buffer, the user is prompted whether to retract or process the buffer. Automatic retraction or completion can be selected by configuring the option proof-auto-action-when-deactivating-scripting. (To be compatible with the file operations in a proof assistant, Proof General only allows completely processed or completely unprocessed scripts in non-active buffers). * New function C-c C-s (proof-toggle-active-scripting) to switch scripting on or off in current buffer. This is a handy way to discard or finish off scripting in an unfinished buffer triggering the deactivation mechanism mentioned above. Switching on scripting in a buffer may cause the proof assistant to load files it depends on, so it is also handy to see what happens before scripting begins in the buffer. * Cleaned up example files so all demonstrate same theorem "conj_comms". Would be nice to add more theorems to compare scripts/proofs in different systems. Please send in example scripts! * Shorter buffer names for convenience. * Removed transparent gif (text logo) from splash screen because XEmacs can't display it nicely. * Documentation updates. Coq Changes ----------- * Set proof-{qed,save}-commands so the toolbar functions work. * Generic command C-c C-f (proof-find-theorems) replaces Coq specific command C-c C-s (coq-Search). LEGO Changes ------------ * Proofs which have no save command are now closed off automatically when a new goal is begun, mirroring the behaviour of LEGO. Isabelle and Isar Changes ------------------------- * Several tweaks for input syntax. * Recognize goals of the old form val prems = goal ... and saves of the old form val thm = result. * Proofs which are "unfinished", i.e. have no qed or result, are now closed off automatically when a new goal is begun, mirroring the behaviour of Isabelle. * Confusing display of only last error is fixed: multiple error messages are now coalesced properly. Only in the developers' release ------------------------------- * Provisional instantiation of Proof General for Plastic (http://www.dur.ac.uk/CARG/plastic.html) by Paul Callaghan