aboutsummaryrefslogtreecommitdiff
path: root/coq/coq-db.el
AgeCommit message (Collapse)Author
2021-04-08Fixing hypothesis folding GUI.Pierre Courtieu
2019-05-16Highlight diffs in goals and some error messagesJim Fehrle
using Coq's proof diffs feature.
2018-12-26Make coq-mode work without generic/proof-*Stefan Monnier
Revise the various `require`s to avoid spurious dependencies, and tweak the code here and there to eliminate the remaining dependencies. * coq/coq-db.el: Don't require proof-config nor proof-syntax. (coq-build-opt-regexp-from-db): Avoid proof-regexp-alt-list. * coq/coq-indent.el: Use lexical-binding. Don't require coq-syntax. Comment out all the code that's not used any more. (coq-empty-command-p): Use forward-comment instead of coq-find-not-in-comment-backward. Fix paren typos. (coq-script-parse-cmdend-forward, coq-script-parse-cmdend-backward): Use forward-comment i.s.o proof-script-generic-parse-find-comment-end. Use syntax-ppss i.s.o proof-buffer-syntactic-context. (coq-find-current-start): Explicit case-fold-search i.s.o proof-looking-at. * coq/coq-mode.el (coq-mode): Set comment-start/end. * coq/coq-smie.el: Require coq-syntax explicitly. (coq-smie-detect-goal-command, coq-smie-module-deambiguate): Explicit case-fold-search i.s.o proof-looking-at. (coq-indent-basic): New custom var. (coq-smie-rules): Use it in case PG is not loaded. * coq/coq-syntax.el: Don't require proof-syntax, proof-utils, and span. (coq-goal-command-p): Use overlay-get i.s.o span-property. (coq-save-command-regexp-strict, coq-save-command-regexp): Use \` and regexp-opt i.s.o proof-anchor-regexp and proof-ids-to-regexp. (coq-save-command-p): Explicit case-fold-search i.s.o proof-string-match. (coq--regexp-alt-list-symb): Rename from proof-regexp-alt-list-symb. Use mapconcat i.s.o proof-regexp-alt-list. (coq-save-with-hole-regexp): Use regexp-opt i.s.o proof-regexp-alt-list. (coq-goal-command-regexp, coq-goal-with-hole-regexp) (coq-decl-with-hole-regexp, coq-defn-with-hole-regexp) (coq-font-lock-keywords-1): Use mapconcat i.s.o proof-regexp-alt-list. (coq-find-first-hyp, coq-detect-hyps-positions-in-goals): Use current buffer i.s.o proof-goals-buffer. (coq-with-altered-syntax-table): Fix broken use of unwind-protect. * coq/coq.el (coq-detect-hyps-in-goals): Change buffer before calling coq-find-first-hyp and coq-detect-hyps-positions-in-goals. (coq-pg-setup): Use comment-start/end. * generic/pg-goals.el: Require proof-script explicitly instead of autoloading via proof-insert-sendback-command. * generic/pg-pbrpm.el: Require proof-script explicitly instead of autoloading via proof-insert-pbp-command. * generic/pg-pgip.el: Require proof-script explicitly. * generic/proof-depends.el: Require proof-script explicitly instead of autoloading via pg-set-span-helphighlights. * generic/proof-script.el (pg-set-span-helphighlights) (proof-insert-pbp-command, proof-insert-sendback-command) (proof-script-generic-parse-find-comment-end): Don't autoload. * generic/proof-syntax.el (proof-ids-to-regexp): Simplify. * lib/span.el (span-delete): η-reduce.
2018-12-14Fix remaining uses of CL; Make files more declarativeStefan Monnier
Emacs occasionally loads Elisp files just to get more info (e.g. for C-h f), so loading a file should "no effect". Fix the most obvious such effects: the splash screen and the autotests by moving those effects into a function. * coq/coq-autotest.el: Make it declarative. Use lexical-binding. (coq-autotest): New function holding the code that used to be at top-level. * generic/proof.el: Use lexical-binding. Don't call proof-splash-message just because we're being loaded. * generic/proof-script.el: Use lexical-scoping; fix all warnings. (pg-show-all-portions): Simplify the code with a closure. (proof-activate-scripting): Declare activated-interactively as dyn-scoped. (proof--splash-done): New var. (proof-mode): Call proof-splash-message upon first use. * generic/proof-splash.el (proof-splash-message): Don't check byte-compile-current-file now that we're only called when the mode is activated. * acl2/acl2.el (auto-mode-alist): Use `add-to-list` and \'. * coq/coq-db.el (coq-build-menu-from-db-internal): Avoid silly O(N²). * coq/coq-seq-compile.el: * coq/coq-par-test.el: * coq/coq-par-compile.el: Fix leftover uses of CL's `assert`. * generic/proof-utils.el: * generic/pg-movie.el: * etc/testsuite/pg-test.el: * coq/coq-syntax.el: Fix leftover uses of CL's `incf`. * generic/pg-autotest.el: Fix leftover uses of CL's `decf`. * obsolete/plastic/plastic.el (plastic-preprocessing): Fix leftover use of CL's `loop`. * generic/pg-user.el (proof-add-completions): Do nothing if no proof-assistant is set yet (i.e. during byte-compilation). (byte-compile-current-file): No need to test this any more. * generic/proof-syntax.el (proof-regexp-alt-list): Use mapconcat. Remove unnecessary "\\(?:...\\)". (proof-regexp-alt): Redefine in terms of proof-regexp-alt-list.
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-08-23Fix most doc issues raised by (checkdoc)Erik Martin-Dorel
2018-06-08Changed the look of folding/unfolding hyps.Pierre Courtieu
2018-04-22small fix of face `coq-symbol-face'stardiviner
2018-02-21Update copyright messages and improve the header of elisp files.Erik Martin-Dorel
2017-11-06Prettier cheat face (background + box).Pierre Courtieu
2017-11-06Fix #135.Pierre Courtieu
2016-07-22Adding the option to highlight susual symbols.Pierre Courtieu
This may look ugly to the majority, so I let it off by default. I find it helpfull to have structuring symbols bold.
2016-03-05Highlight ltac:(), constr:(), and uconstr:()Clément Pit--Claudel
Also refactor coq-font-lock-keywords-1 slightly.
2015-11-23Introduce a coq-question-mark-faceClément Pit--Claudel
Closes #12
2015-04-14bold unicode biders + Fixing highlighting in goals and response buffers + ↵Pierre Courtieu
cleaning.
2015-04-07Added comment.Pierre Courtieu
2015-03-13Added a command to send Queries to coq, with completion (C-c C-a C-q).Pierre Courtieu
Should replace C-c C-v at some point. Needs to have a complete list of such queries. Obeys C-u prefix for Printing all flag.
2012-09-06Fixed a bug with function name "eval" (end of).Pierre Courtieu
2012-08-16Fix lambda quoteDavid Aspinall
2011-06-07Summary: coq-smie: improve indentation.Stefan Monnier
* coq.el (coq-smie-grammar): Add rules for {|...|}, Let, Record, Module..End, Section..End, and BeginSubproof..EndSubproof. (coq-smie-search-token): New function. (coq-smie-forward-token, coq-smie-backward-token): Recognize {| and |}. Distinguish Module definition from Module introduction. Merge "Module Type" and "Module". (coq-smie-rules): Refine list-intro. Improve indentation after "with". Add Function, Let and Record to the := case. Indent within Module..End and friends. Improve indentation of record def. Indent forall's body by 2. Better indent Lemmas. * coq-db.el (coq-build-abbrev-table-from-db): Mark those abbrevs as `system'. * coq-abbrev.el (coq-install-abbrevs): Don't bind save-abbrevs since it's not needed any more.
2010-10-04Fixes in strings/comments from Erik Martin-DorelDavid Aspinall
2010-09-28Fixed colorization bug #356, introduced by a previous fix of bug 140.Pierre Courtieu
2010-09-22Fix some bugs in coq regexp generationDavid Aspinall
2010-09-08Fix compileDavid Aspinall
2010-09-03First fix of bug introduced by the last font-lock fix. Not finished.Pierre Courtieu
2010-08-30Style fixesDavid Aspinall
2009-09-17Added some more syntax keywords. Made admit tactic with its own redPierre Courtieu
culpabilizing face.
2009-09-16Fix compile warningsDavid Aspinall
2009-09-07Require cl for compilation. Rearrange docs.David Aspinall
2009-09-05Clean whitespaceDavid Aspinall
2009-08-31Made customizable holes mode completion in abbreviations.Pierre Courtieu
2008-10-22Fixing parenthesis not accepted by recent emacs anymore. fix by StefanPierre Courtieu
Monnier.
2008-01-28Fixed a problem with a wrong side effect on syntax databases (whenPierre Courtieu
sorting for menus).
2008-01-15Many compatibility updates, bug fixes, rearrangements for compilation.David Aspinall
2008-01-03Fixed abbrev installation. + small fixes.Pierre Courtieu
2007-12-14Require for defface macroDavid Aspinall
2007-12-14Fix compilation problems and rearrange startup settings for ↵David Aspinall
coq-prog-name,coq-prog-args
2007-11-20adding coq-solve tacticsAssia Mahboubi
2007-11-07Menu are now correctly sorted.Pierre Courtieu
2007-11-07Debugging font-lock regexps. Bad order: longer regexp should be putPierre Courtieu
first.
2007-10-30Fixed small colorizing bugs (when keywords contain sub words colorizedPierre Courtieu
in another color). Reported by Assia Mahboubi.
2006-09-07Updated.David Aspinall
2006-08-25Small fixes.Pierre Courtieu
2006-08-25Changed default coq version (8.1)Pierre Courtieu
Small fixes in docstrings.
2006-08-23Cleaning in coq and lib, fixed licenses and docstrings.Pierre Courtieu
Added one or two details to docstring of generic variables.