aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
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-15Prepend cl- to more c[ad]+r instancesClément Pit-Claudel
2018-12-15Use cl-caddr instead of caddrClément Pit-Claudel
Hopefully fixes #409. Reported-By: @lysxia
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-14Fixes the fix of #407. Is this temporary.Pierre Courtieu
This fix is not completely satisfying for the following reason: 1- I had to add a new hook in generic code. But I don't see how we could avoid this: the computation of options must happen AFTER the proof-prog-name is asked to the user, because this computation depends on the version of coq. 2- We should fix the synchronization between coq-prog-name and proof-prog-name. Either remove coq-prog-name and use only proof-prog-name, or have the generic coq always point to some (proof-ass-sym prog-name).
2018-12-14Merge branch 'master' of github.com:ProofGeneral/PGPierre Courtieu
2018-12-14Fix #407: -topfile added if coq > v8.10alpha.Pierre Courtieu
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-11-15Merge pull request #402 from Chobbes/modelineClément Pit-Claudel
Remove code that hides mode-line.
2018-11-12Remove code that hides mode-line.Calvin Beck
2018-11-01Merge pull request #397 from Chobbes/masterClément Pit-Claudel
Ignore all ephemeral buffers and buffers not backed by a file
2018-11-01Ignore ephemeral buffers, and buffers not pointed at files.Calvin Beck
This helps with, for example, org-src-fontification buffers. https://lists.gnu.org/archive/html/emacs-orgmode/2016-03/msg00354.html
2018-10-30Merge pull request #396 from dbp/coqproject-localClément Pit-Claudel
Use non-remote path to expand paths in _CoqProject when file is remote.
2018-10-30Use non-remote path to expand paths in _CoqProject when file is remote.Daniel Patterson
When editing a remote file, the `coqtop` process will itself be remote, which means that the paths that are passed to it should be _local_, not remote. Otherwise, paths like '/ssh:hostname:/path/to/dir' get passed to `coqtop`, which has no idea what's going on. This relates to #203.
2018-09-27Merge pull request #393 from anton-trunov/fix-coqproject-argClément Pit-Claudel
Fix parsing of -arg in _CoqProject file
2018-09-27Fix parsing of -arg in _CoqProject fileAnton Trunov
The result of parsing was in reverse, see https://github.com/ProofGeneral/PG/issues/392\#issuecomment-425227314
2018-09-01Reloading proof-autoloads is safe; don't forbid itClément Pit-Claudel
Fixes GH-386. Reported-by: @mrkkrp
2018-08-30Merge pull request #384 from ProofGeneral/update-install-guideErik Martin-Dorel
Update installation instructions for MELPA in README.md
2018-08-30Add MELPA badgeErik Martin-Dorel
2018-08-30Update the section of supported PAsErik Martin-Dorel
2018-08-30README.md: Update installation instructionsErik Martin-Dorel
2018-08-25Merge pull request #169 from ProofGeneral/help-span-extendedErik Martin-Dorel
Fix #158 by extending helpspan
2018-08-23ProofGeneral.texi: Add EasyCrypt in the introErik Martin-Dorel
2018-08-23Update AUTHORS file for EasyCryptErik Martin-Dorel
2018-08-23Merge pull request #380 from ProofGeneral/prepare-melpaErik Martin-Dorel
Prepare PG for MELPA
2018-08-23Run make autoloadsErik Martin-Dorel
2018-08-23Update AUTHORS, fixing 2 typosErik Martin-Dorel
2018-08-23Add link to the latex-pretty-symbols package mentioned by @craffErik Martin-Dorel
Fix the typo reported by @siddharthist as well
2018-08-23Fix most doc issues raised by (checkdoc)Erik Martin-Dorel
2018-08-23pg-init.el: Add metadata asked by (package-lint-current-buffer)Erik Martin-Dorel
2018-08-23Update Info dir file (so there’s no unwanted line break)Erik Martin-Dorel
2018-08-22Bump version from 4.4.1~pre to 4.5-gitErik Martin-Dorel
This commit ensures the version number is (version-to-list)-compliant.
2018-08-22Set the minimal supported version of emacs to 24.3 instead of 24.4Erik Martin-Dorel
This agrees with the minimal version of GNU Emacs currently tested by Travis CI, as well as with the version packaged in Ubuntu 14.04 LTS Reference: https://github.com/ProofGeneral/PG/issues/368#issuecomment-397561986
2018-08-22Merge pull request #200 from craff/masterErik Martin-Dorel
Update phox support
2018-08-21Merge pull request #379 from tchajed/variant-keywordClément Pit-Claudel
Support the Variant vernacular
2018-08-18Merge branch 'master' of github.com:ProofGeneral/PGPierre Courtieu
2018-08-18Fix #7980, keep option order unchanged.Pierre Courtieu
2018-08-17Support the Variant vernacularTej Chajed
Syntactically looks much like an Inductive, though it is non-recursive so "where" (mutual recursion) is not supported.
2018-08-15Merge pull request #378 from user454322/patch-1Clément Pit-Claudel
Fix typo in INSTALL file
2018-08-15Update INSTALLJavier
2018-08-07Merge pull request #375 from jmgrosen/masterClément Pit-Claudel
Add coq-Print-Ltac to print an Ltac term
2018-08-07Add coq-Print-Ltac to print an Ltac termJohn Grosen
2018-06-15Fixing last commit.Pierre Courtieu
2018-06-15Fix #368 (emacs < 25 split-string has no trim arg).Pierre Courtieu
Copied some code from company-coq.
2018-06-13small fix on hyp overlays.Pierre Courtieu
2018-06-13Fix multiple hyp overlays.Pierre Courtieu
queries would trigger re-generarion of overlays. Now overlays are generated if there are no overlays already.
2018-06-13Fix the fix #355.Pierre Courtieu
The fix was bad: no ore hyps were foldable/highlightable.
2018-06-11Small bug unhighlighting.Pierre Courtieu
Selecting the unhighlightied hyps showed a different region color. Setting the face to nil is better.
2018-06-11fix #355 + probable bug.Pierre Courtieu
By renaming the arg load-path into loadpath I notice that a coq-load-path was used instead of it.