aboutsummaryrefslogtreecommitdiff
path: root/generic/proof-menu.el
AgeCommit message (Collapse)Author
2021-04-16add feature to omit complete opaque proofsHendrik Tews
This commit adds a feature to recognize complete opaque proofs in the asserted region and to replace them with an admitted proof. This can drastically improve the processing time for the asserted region at the cost of not checking the omitted proofs. Omitted proofs are displayed slightly darker compared to other parts of the locked region. With this commit, the feature is supported for Coq for files in which proofs are started with some form of Proof and ended with either Qed, Defined, Admitted or Abort. To enable, configure proof-omit-proofs-option or click Proof General -> Quick Options -> Processing -> Omit Proofs.
2021-02-25feat: Add proof-upgrade-menu triggering proof-upgrade-elpa-packagesErik Martin-Dorel
* require package.el (in a safe way thanks to `proof-try-require`)
2021-01-31fix typos and unicode single quotations in doc stringsHendrik Tews
Backported those typos that were fixed only in the manual texi sources and not in the doc strings, from which the text was imported. Convert a few symbols quoted with curved unicode single quotations to ascii, such that make magic recognizes them.
2019-05-16proof-assistant-format: Support format character "%l" a.k.a. lambdaErik Martin-Dorel
This patch allows one to load the `coq-diffs' option at Coq startup, provided the ambient Coq version is >= 8.10. This additional "lambda" format is needed because [Set Diffs "on".] is neither: - a boolean setting from Coq side (there are three possible values) - a string setting from Emacs side (it is implemented as a radio/symbol option) - a cross-version compatible Coq setting.
2019-05-16Highlight diffs in goals and some error messagesJim Fehrle
using Coq's proof diffs feature.
2018-12-25Reduce the impact of proof-site, in case PG is not usedStefan Monnier
* generic/proof-autoloads.el: Remove `require`s; not needed. * generic/proof-site.el: Don't require `pg-vars`. (proof-ready-for-assistant): Move to proof-script.el. * generic/proof-menu.el (proof-assistant-format): Make dynamically scoped var explicit (preparation for lexical-binding). * generic/proof-script.el: Require `pg-vars`. (proof-ready-for-assistant): Move from proof-site.el. * generic/proof-syntax.el (proof-replace-regexp-in-string): * generic/proof-shell.el (proof-shell-live-buffer): Don't mark it as inlinable: it's not performance sensitive.
2018-12-15Cosmetic cleanup of coq-smie, coq-syntax, and coq-abbrev.Stefan Monnier
Fix a few more cl.el leftovers. Get rid of remaining use of iso-2022. Use SMIE unconditionally. * coq/coq-abbrev.el: Use lexical-binding. (coq-install-abbrevs): Delete, only keep the relevant contents. (proof-defstringset-fn): Remove. Fold changes into the main version. * coq/coq-indent.el (coq-find-real-start): Use forward-comment. * coq/coq-smie.el: Use lexical-binding. Assume `smie` is available. (coq--string-suffix-p): Rename from coq-string-suffix-p. Use string-suffix-p for it when available. (string-suffix-p): Never define here. Change all users to use coq--string-suffix-p instead. (coq-smie-.-deambiguate): Use forward-comment. Remove unused var `beg`. (coq-backward-token-fast-nogluing-dot-friends) (coq-forward-token-fast-nogluing-dot-friends): Remove unused var `tok-other`. (coq-smie-search-token-backward): Remove unused var `p`. (coq-smie-:=-deambiguate, coq-smie-backward-token): Prefer char-before over looking-back. (coq-smie-rules): Use `pcase` over deprecated cl's `case`. * coq/coq-syntax.el: Use lexical-binding. (coq-count-match): Rewrite so it doesn't do needless heap-allocation. (coq-module-opening-p, coq-section-command-p, coq-goal-command-str-p): Use case-fold-search rather than proof-string-match. (coq-goal-command-regexp): Forward-declare. (coq-save-command-regexp-strict): Move before first use. (coq-reserved-regexp): Use a single \_< ... \_>. (coq-detect-hyps-positions): Limit search for looking-back. * coq/coq.el: Remove SMIE declarations since SMIE is always used. (coq-use-smie): Remove, unused. (coq-smie): Always require. * generic/pg-pbrpm.el: Fix leftover cl.el uses. * generic/proof-utils.el (proof-defstringset-fn): Fix copy&paste error in the docstring, improve interactive prompt. * lib/maths-menu.el: Use utf-8 and lexical-binding.
2018-12-15Use cl-caddr instead of caddrClément Pit-Claudel
Hopefully fixes #409. Reported-By: @lysxia
2018-12-13Use `cl-lib` instead of `cl` everywhereStefan Monnier
Use lexical-binding in a few files where it was easy. Don't require `proof-compat` when it's not used. * coq/coq-db.el: Use lexical-binding. * coq/coq-system.el: Use lexical-binding. (coq--extract-prog-args): Use concatenated-args rather than recomputing it. * coq/coq.el: Require `span` to silence some warnings. * generic/pg-user.el: Use lexical-binding. (complete, add-completion, completion-min-length): Silence warnings. * generic/pg-xml.el: Use lexical-binding. (pg-xml-string-of): Prefer mapconcat to reduce+concat. * generic/proof-depends.el: Use lexical-binding. (proof-dep-split-deps): Use `push`. * generic/proof-shell.el: Require `span` to silence some warnings. (proof-shell-invisible-command): Don't use lexical-let just to build a wasteful η-redex! * lib/holes.el: Use lexical-binding. Remove redundant :group args. * lib/span.el: Use lexical-binding. (span-read-only-hook): Use user-error. (span-raise): Remove, unused.
2018-12-12Cleanup patch; Moving defvar to toplevelStefan Monnier
Move `defvar`s used to silence warnings outside of eval-when-compile. Make sure they don't actually give a value to the var. * pg-init.el: Simplify. Use (if t ...) to avoid running `require` at compile-time. Don't add subdirs to load-path here since this code is never used. (pg-init--script-full-path, pg-init--pg-root): Inline their definition into their sole user. * generic/proof-utils.el (proof-resize-window-tofit): Inline definitions of window-leftmost-p and window-rightmost-p previously in proof-compat.el. * lib/proof-compat.el (proof-running-on-win32): Remove, not used. (mac-key-mode): Remove, there's no carbon-emacs-package-version in Emacs≥24.3. (pg-custom-undeclare-variable): Use dolist. (save-selected-frame): Remove, save-selected-window also saves&restores the selected frame at the same time. Update all users (which already used save-selected-window around it). (window-leftmost-p, window-rightmost-p, window-bottom-p) (find-coding-system): Remove, unused. * hol-light/hol-light.el (caml-font-lock-keywords): Don't try to defvar it to a dummy value and... (hol-light): ...check its existence before using it instead. * coq/coq.el (coq-may-use-prettify): Simplify initialization.
2018-08-23Fix most doc issues raised by (checkdoc)Erik Martin-Dorel
2018-02-21Update copyright messages and improve the header of elisp files.Erik Martin-Dorel
2018-02-20Bind C-c C-m (= C-c RET) to proof-goto-point [tty] (#228)Erik Martin-Dorel
Close ProofGeneral/PG#31
2017-05-24Remove mmm and ML4PG contribs and remove references to them in code and docsPaul Steckler
2017-03-08Fix incorrect uses of defvarClément Pit--Claudel
It didn't really matter that these variables were defined and set to nil during compilation, since we ran compilation in a clean Emacs in --batch mode; it does matter now, however, since package.el compiles PG in the user's currently running Emacs instance.
2017-01-19save settings not defined with defpacustom (fixes #142)Hendrik Tews
- infrastructure for saving/resetting customizations not defined with defpacustom - improve Coq -> Auto Compilation menu - polish documentation and manual
2014-12-22Fixed a compilation issue + small display glitch in coqpgPierre Courtieu
2012-08-16Add option proof-layout-windows-on-visit-file, addressing Trac #444David Aspinall
2012-01-03merge ProofTreeBranch into main trunk:Hendrik Tews
- add support for proof-tree displays (currently Coq only) - new file generic/proof-tree.el contains generic code - Coq specific code has been added to coq/coq.el Changes to existing Proof General functions: - proof-shell-exec-loop and proof-shell-filter-manage-output call proof-tree display functions, when the proof-tree display is on - proof-shell-exec-loop returns t if proof-action-list is empty _or_ contains only items for updating the proof-tree - proof-shell-should-be-silent returns nil when the proof-tree display is on - coq-last-prompt-info, coq-last-prompt-info-safe return as additional 4th element the name of the current proof
2011-10-13Patch from Tom Prince to fix Emacs 24 byte compilation (replace ↵David Aspinall
interactive-p with called-interactively-p)
2011-08-24Capitalize menu itemsDavid Aspinall
2011-08-23Remove PG prefix from toolbar button names (needed for disambiguity in older ↵David Aspinall
Emacsen, displayed in Emacs 24 UI)
2011-04-13Add proof-output-tooltips option to turn off output highlighting for people ↵David Aspinall
who read or edit by waving mouse at text
2011-01-31Only make settings commands for dynamic settings which differ from their ↵David Aspinall
defaults
2011-01-31Make proof-assistant-settings follow currently available dynamic settings, ↵David Aspinall
and keep possibly customized variables bound. Closes Trac #387.
2011-01-31Improve handling of dynamic preferences. Addresses Trac #387.David Aspinall
2011-01-12Remove commentDavid Aspinall
2011-01-11Add additional support for pgipfloat typeDavid Aspinall
2010-12-16Patch to add pgipfloat type.David Aspinall
2010-10-04Move mouse button bindings to avoid clashes (patch from Trac #365, Erik ↵David Aspinall
Martin-Dorel)
2010-09-21Adjust menu layout for Quick Options. Add Document Centred and Default ↵David Aspinall
convenience commands.
2010-08-27Implement the eagerly anticipated Beyond Script Management Feature No.2 ↵David Aspinall
(i.e., automatic preview of next command)
2010-08-24Split proof-assistant-settings-cmds and proof-assistant-settings-cmdDavid Aspinall
2010-08-22Use C-c C-H for proof-help as suggested in Trac #341, since C-c h clashes ↵David Aspinall
with holes mode (unfortunately).
2010-08-22Move binding of proof-help from C-c C-h to C-c h (see Trac #341)David Aspinall
2010-08-19Add Fast Process Buffer optionDavid Aspinall
2010-08-15Preliminary and experimental support for automatically sending commands.David Aspinall
2010-08-08Checkdoc cleanupsDavid Aspinall
2010-08-03Move key binding for proof assistant keymap (fixes compilation bug)David Aspinall
2010-08-03Add support for basic "movie" recording. See http://mws.cs.ru.nl/proviola.David Aspinall
2009-12-03Rework script span element hiding to avoid buffer-invisibility-spec. Add ↵David Aspinall
command elements.
2009-12-02Add proof-sticky-errors to quick options menu.David Aspinall
2009-12-01Remove mention of `proof-script-use-old-parser'.David Aspinall
2009-12-01proof-splice-separator -> mapconcat builtinDavid Aspinall
2009-11-24reverse settings within each group, to prevent upside-down presentation;Makarius Wenzel
2009-09-29Clean up hints about buffer displayDavid Aspinall
2009-09-28Menu entry <PA>-set-command invisible when function undefined (not inactive)David Aspinall
2009-09-27Trace buffer: do not show this trace-output-regexp not setDavid Aspinall
2009-09-27Rotate Output Buffers: do not show this if in three window modeDavid Aspinall
2009-09-27Follow Upper Case Convention for menu entriesDavid Aspinall