aboutsummaryrefslogtreecommitdiffhomepage
path: root/generic/proof-utils.el
Commit message (Collapse)AuthorAge
* * coq-mode.el: New file to make coq-mode independent from PGGravatar Stefan Monnier2018-12-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Move the part of coq.el that is not specific to ProofGeneral into coq-mode.el to make `coq-mode` into a major mode that can work without PG. * coq/coq-mode.el: New file, with code extracted from coq.el. (coq-use-pg): New var. (coq-near-comment-region): Complete rewrite. * Makefile.devel (autoloads): Add `coq` to the scanned subdirectories. * generic/proof-autoloads.el: Regenerate. * generic/proof-site.el: Don't override pre-existing major-mode definitions. * coq/coq-syntax.el (coq-init-syntax-table): Delete function. Setup the syntax-table while loading coq-mode.el instead. * coq/coq-system.el (coq-prog-name, get-coq-library-directory) (coq-library-directory, coq-tags): Move to coq-mode.el. * coq/coq.el: Set proof-assistant when loaded. (coq-may-use-prettify, coq-outline-regexp) (coq-outline-heading-end-regexp, coq-mode) (coq-prettify-symbols-alist, coq-fill-paragraph-function) (coq-adaptive-fill-function): Move to coq-mode.el. (coq-shell-mode-syntax-table, coq-response-mode-syntax-table) (coq-goals-mode-syntax-table): Just reuse the already setup coq-mode-syntax-table... (coq-shell-mode-config, coq-goals-mode-config, coq-response-config): ... instead of calling coq-init-syntax-table. (coq-get-comment-region): Delete, not used any more. (coq-pg-mode-map): New var. Move top-level keymap setup here. (coq-pg-setup): Rename from coq-mode-config. Move all the non-PG specific settings to coq-mode. * generic/proof-script.el (proof-mode): Simplify call to proof-splash-message since it does the same extra tests internally. (proof-config-done-related): Don't touch font-lock-defaults if the mode doesn't provide any font-lock-defaults. * isar/isar-syntax.el: Use lexical-binding. (isar-font-lock-fontify-syntactically-region): Make it callable from font0lock-keywords. (isar-font-lock-keywords-1): Call isar-font-lock-fontify-syntactically-region. * generic/proof-syntax.el (font-lock-fontify-keywords-region): Remove advice. (proof-ids): Remove, unused. * lib/bufhist.el (bufhist-erase-buffer): Don't let-bind after-change-functions. * generic/pg-pbrpm.el (pg-pbrpm-auto-select-around-point): Fix one more left-over cl.el use. * generic/proof-utils.el (proof-with-script-buffer): Add edebug spec.
* Cosmetic cleanup of coq-smie, coq-syntax, and coq-abbrev.Gravatar Stefan Monnier2018-12-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* Fix remaining uses of CL; Make files more declarativeGravatar Stefan Monnier2018-12-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* Use `cl-lib` instead of `cl` everywhereGravatar Stefan Monnier2018-12-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* Cleanup patch; Moving defvar to toplevelGravatar Stefan Monnier2018-12-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* Remove code that hides mode-line.Gravatar Calvin Beck2018-11-12
|
* Fix most doc issues raised by (checkdoc)Gravatar Erik Martin-Dorel2018-08-23
|
* Update copyright messages and improve the header of elisp files.Gravatar Erik Martin-Dorel2018-02-21
|
* annoying missing parentheisis in a comment.Gravatar Pierre Courtieu2017-01-24
|
* Fixing #121 + avoid hiding user windows too much.Gravatar Pierre Courtieu2017-01-04
|
* fix error in process filter: Cannot resize windowGravatar Hendrik Tews2016-11-02
|
* Fix reference to log-warning-minimum-levelGravatar psteckler2016-09-16
| | | Fixes #110.
* Fixed double hit terminator. Now it is disabled by default, andGravatar Pierre Courtieu2012-09-05
| | | | | | | | enabling it disables electric-terminator and vice-versa. In case both are non nil at the same time, then electric teminator has priority. If people like it we may propose this to other modes than coq. + fixed window layout policy.
* CommentsGravatar David Aspinall2011-01-31
|
* Bump/relax version numbers. Error for <23, warning for minor version mismatch.Gravatar David Aspinall2011-01-25
|
* Removing a debugging message.Gravatar Pierre Courtieu2011-01-18
|
* Type-check on integer settingsGravatar David Aspinall2011-01-12
|
* Add additional support for pgipfloat typeGravatar David Aspinall2011-01-11
|
* proof-debug: fiddle with warning levels to make *PG Debug* buffer appear, ↵Gravatar David Aspinall2010-10-11
| | | | set it in help mode.
* Remove developers note from docstring of togglersGravatar David Aspinall2010-10-08
|
* CommentGravatar David Aspinall2010-10-01
|
* Coding conventionsGravatar David Aspinall2010-09-29
|
* proof-deftoggle: add declare-function to prevent compiler warningsGravatar David Aspinall2010-09-21
|
* Fixed my last commit where compilation was broken. (function put atGravatar Pierre Courtieu2010-08-25
| | | | the wrong place).
* Fixed the bug of vertical window splitting when the size of the windowGravatar Pierre Courtieu2010-08-25
| | | | | is too small. However if the frame is too small the bug remains (but it is much less probable).
* Bring syntactic context functions togetherGravatar David Aspinall2010-08-25
|
* Move some var+macro to fix compilationGravatar David Aspinall2010-08-11
|
* Support custom syntactic fontification. Split out pa macros.Gravatar David Aspinall2010-08-11
|
* Checkdoc cleanupsGravatar David Aspinall2010-08-08
|
* proof-deftoggle-fn: make ARG optional as suggested by docstringGravatar David Aspinall2010-08-03
|
* proof-save-this-buffer: addedGravatar David Aspinall2009-09-27
|
* Fix compile warningGravatar David Aspinall2009-09-15
|
* Our own buffer for debug messagesGravatar David Aspinall2009-09-11
|
* Move stripping and minibuffer-message function hereGravatar David Aspinall2009-09-10
|
* Experimental changes to queue several commands at once and to allow ↵Gravatar David Aspinall2009-09-10
| | | | pre-processing of commands when they're queued from script
* Move defpacustom here. Move message functions to proof-shell. Fix requires.Gravatar David Aspinall2009-09-10
|
* Clarify requireGravatar David Aspinall2009-09-08
|
* Require on scomintGravatar David Aspinall2009-09-08
|
* proof-clean-buffer: inhibit read onlyGravatar David Aspinall2009-09-06
|
* Remove commentGravatar David Aspinall2009-09-06
|
* Clean whitespaceGravatar David Aspinall2009-09-05
|
* replace-in-string -> replace-regexp-in-stringGravatar David Aspinall2009-09-04
|
* Alternative implementation of pg-remove-specials which does not introduce ↵Gravatar David Aspinall2009-09-04
| | | | restriction.
* proof-files-to-buffers, proof-locate-executable: simplifyGravatar David Aspinall2009-09-04
| | | | | proof-file-to-buffer: use find-buffer-visiting instead proof-looking-at-syntactic-context: moved here from proof-syntax for compilation
* Unnecessary testGravatar David Aspinall2009-08-31
|
* pg-current-word-pos: add for convenience in identifier query functionGravatar David Aspinall2009-08-14
|
* Add proof state hover messages to proof script, along with useful customization.Gravatar David Aspinall2009-05-26
|
* Add proof-shell-strip-output-markup to handle pasting markedup texdt. Minor ↵Gravatar David Aspinall2009-05-26
| | | | cleanups
* Merge changes from Version4Branch.Gravatar David Aspinall2008-07-24
|
* comment: proof-compat not needed for pg-defface-window-systems (but leave in ↵Gravatar David Aspinall2008-01-31
| | | | now)