Commit graph

31 commits

Author SHA1 Message Date
John Shahid
ee3e432300 Optionally add argument description in minor mode DOC (bug#10754)
Add a paragraph to minor mode's docstring documenting the mode's ARG
usage if the supplied docstring doesn't already contain the word "ARG".

* easy-mmode.el (easy-mmode--arg-docstring): New const.
(easy-mmode--arg-docstring): New function.
(define-minor-mode): Use them.

Remove argument documentation from all minor modes.
2018-07-01 23:34:53 -04:00
João Távora
6353387835 Electric-pair-mode lets modes choose how to skip whitespace
cc-mode.el-based major-modes with stricter syntax for invalid
NL-terminated strings might choose to have electric-pair-mode skip
some of whitespace into non-string-syntax regions, for the sake of
letting electric-pair-mode chomp that whitespace and make the string
valid again.

* lisp/elec-pair.el (electric-pair-post-self-insert-function): Call it.
(electric-pair-skip-whitespace-function): New buffer-local variable.
2018-06-19 02:19:24 +01:00
Eli Zaretskii
f138bca8ca Improve documentation of 'electric-pair-mode'
* lisp/elec-pair.el (electric-pair-mode):
* doc/emacs/programs.texi (Matching): Document the operation of
electric-pair-mode when there's an active region.  (Bug#30502)
2018-02-17 19:28:01 +02:00
Paul Eggert
5c7dd8a783 Update copyright year to 2018
Run admin/update-copyright.
2018-01-01 00:57:59 -08:00
Noam Postavsky
89cfdbf729 Don't mess up syntax-ppss cache in electric-pair (Bug#29710)
In Emacs 25 and above, calling `scan-sexps', `parse-partial-sexp', or
similar may update the syntax-ppss cache if
`parse-sexp-lookup-properties' is non-nil.  Therefore, when calling
any of these functions with a different than normal syntax-table, the
cache must be cleaned afterwards.
* lisp/elec-pair.el (electric-pair--with-uncached-syntax): New macro.
(electric-pair--syntax-ppss, electric-pair--balance-info): Use it.
2017-12-16 21:02:38 -05:00
Paul Eggert
bc511a64f6 Prefer HTTPS to FTP and HTTP in documentation
Most of this change is to boilerplate commentary such as license URLs.
This change was prompted by ftp://ftp.gnu.org's going-away party,
planned for November.  Change these FTP URLs to https://ftp.gnu.org
instead.  Make similar changes for URLs to other organizations moving
away from FTP.  Also, change HTTP to HTTPS for URLs to gnu.org and
fsf.org when this works, as this will further help defend against
man-in-the-middle attacks (for this part I omitted the MS-DOS and
MS-Windows sources and the test tarballs to keep the workload down).
HTTPS is not fully working to lists.gnu.org so I left those URLs alone
for now.
2017-09-13 15:54:37 -07:00
João Távora
7098823b42 Fix default value of electric-pair-pairs and electric-pair-text-pairs
Fixes: debbugs:24901

A previous change, titled "Add support for curly quotation marks to
electric-pair-mode", attempted to add these characters to the default
value of these variables.  But it did so in a quoted list, preventing
evaluation of the relevant expressions and resulting in an invalid
format.

* lisp/elec-pair.el (electric-pair-pairs, electric-pair-text-pairs):
Use backquote and comma.
2017-08-18 23:43:48 +01:00
Noam Postavsky
39e6692efe * lisp/elec-pair.el (electric-pair-text-pairs): Don't autoload (Bug#24901).
* lisp/progmodes/elisp-mode.el (emacs-lisp-mode): Require `elec-pair'
explicitly in the interactive case.
2017-08-18 23:42:12 +01:00
Paul Eggert
bcf244ef9b Merge from origin/emacs-25
2e2a806 Fix copyright years by hand
5badc81 Update copyright year to 2017
2017-01-01 01:10:47 -08:00
Paul Eggert
5badc81c1c Update copyright year to 2017
Run admin/update-copyright.
2016-12-31 19:42:26 -08:00
Reuben Thomas
b6a8025eed Add support for curly quotation marks to electric-pair-mode
* lisp/elec-pair.el (electric-pair-pairs, electric-pair-text-pairs): Add
entries for left/right single/double quotation marks, from
electric-quote-chars. Note that this is safe for single quotation marks,
unlike with the ASCII apostrophe, since, although the right quotation
mark can be used as an apostrophe, it is the left quotation mark that is
typed to get a pair (Bug#24901).
2016-12-02 14:43:58 +00:00
Paul Eggert
0e963201d0 Update copyright year to 2016
Run admin/update-copyright.
2016-01-01 01:34:24 -08:00
Glenn Morris
d5152a7eef Address some compilation warnings.
* lisp/elec-pair.el (electric-pair-post-self-insert-function):
* lisp/vc/vc-git.el (vc-git-file-type-as-string):
Replace 't' with '_' in pcase.
2015-06-16 20:28:48 -04:00
Tom Willemse
ef6302ff1a * lisp/elec-pair.el (electric-pair-post-self-insert-function): Do not use `chomp' as a function.
Fixes: debbugs:19505
Copyright-paperwork-exempt: yes
2015-04-18 18:07:16 -07:00
Tom Willemse
40b3dcd2c0 New `electric-pair-local-mode'
Fixes: big#19528

* lisp/elec-pair.el (electric-pair-local-mode): New command.
(electric-pair-mode): Mention `electric-pair-local-mode' in the
docstring.
2015-03-28 15:16:13 +00:00
Paul Eggert
7e09ef09a4 Update copyright year to 2015
Run admin/update-copyright.
2015-01-01 14:26:41 -08:00
João Távora
498d3768d1 Fix bug in Electric Pair mode
* lisp/elec-pair.el (electric-pair--syntax-ppss): Simplify and fix
possible bug.
2014-04-13 11:27:32 +01:00
Paul Eggert
10ee3b3f17 Spelling fixes.
* automated/electric-tests.el: Fix spelling error in test name.
(whitespace-skipping-for-quotes-not-outside):
Rename from whitespace-skipping-for-quotes-not-ouside.
2014-04-10 12:12:34 -07:00
João Távora
190f899aed Improve on previous quote autopairing change
Backported from trunk 2014-04-04T23:31:02Z!joaotavora@gmail.com

* lisp/elec-pair.el:
(electric-pair--syntax-ppss): When inside comments parse from
comment beginning.
(electric-pair--balance-info): Fix typo in comment.
(electric-pair--in-unterminated-string-p): Delete.
(electric-pair--unbalanced-strings-p): New function.
(electric-pair-string-bound-function): New var.
(electric-pair-inhibit-if-helps-balance): Decide quote pairing
according to `electric-pair--in-unterminated-string-p'

* test/automated/electric-tests.el (define-electric-pair-test): Don't
overtest..
(inhibit-in-mismatched-string-inside-ruby-comments): New test.
(inhibit-in-mismatched-string-inside-c-comments): New test.
2014-04-07 08:29:50 +01:00
João Távora
528c33b528 Inhibit quote autopairing more frequently
Backported from trunk 2014-04-02T09:59:06Z!joaotavora@gmail.com

* lisp/elec-pair.el (electric-pair-inhibit-if-helps-balance): Inhibit
quote pairing if point-max is inside an unterminated string.
(electric-pair--looking-at-unterminated-string-p):
Delete.
(electric-pair--in-unterminated-string-p): New function.

* test/automated/electric-tests.el (inhibit-if-strings-mismatched):
New test, change from `inhibit-only-of-next-is-mismatched'.
2014-04-07 08:24:03 +01:00
João Távora
be41113814 Fix electric-pair-delete-adjacent-pairs in modes binding backspace.
* lisp/elec-pair.el (electric-pair-backward-delete-char): Delete.
(electric-pair-backward-delete-char-untabify): Delete.
(electric-pair-mode-map): Bind backspace to a menu item filtering
a new `electric-pair-delete-pair' command.
(electric-pair-delete-pair): New command.

Fixes: debbugs:16981
2014-04-07 00:37:17 +01:00
João Távora
89f20f76d8 Fix electric-pair-skip-whitespace with quotes in text-mode
* lisp/elec-pair.el (electric-pair-post-self-insert-function): Don't
skip whitespace for quote syntax when `electric-pair-text-pairs'
and `electric-pair-pairs' were used.

* test/automated/electric-tests.el (electric-pair-define-test-form):
More readable test docstrings.
(whitespace-skipping-for-quotes-not-ouside)
(whitespace-skipping-for-quotes-only-inside)
(whitespace-skipping-not-without-proper-syntax):

Fixes: debbugs:17183
2014-04-07 00:09:19 +01:00
Juanma Barranquero
025f2c8156 lisp/elec-pair.el: Fix typos.
(electric-pair-text-syntax-table, electric-pair-syntax-info)
(electric-pair--syntax-ppss, electric-pair--balance-info)
(electric-pair-mode): Fix docstring typos.
(electric-pair--looking-at-unterminated-string-p): Doc fix.
(electric-pair--inside-string-p): Doc fix.  Use `let', not `let*'.
2014-02-23 01:19:11 +01:00
Juanma Barranquero
ee0761cad3 lisp/elec-pair.el: Fix bug#16799.
(electric-pair-syntax-info): Do not check syntax
before the start of buffer/region.
2014-02-20 11:33:32 +01:00
João Távora
5dca7759a7 Fix `electric-pair-backward-delete-char' error at bob
* lisp/elec-pair.el (electric-pair-backward-delete-char): Don't error
when at beginning of (possibly narrowed) buffer.
2014-02-03 00:28:57 +00:00
Paul Eggert
da5ecfa9b9 Spelling fixes.
* lib-src/Makefile.in (regex.o): Remove reference to no-longer-used macros
CONFIG_BROKETS and INHIBIT_STRING_HEADER.  "BROKETS" was a
misspelling anyway....
* src/nsterm.h (updateCollectionBehavior): Rename from
updateCollectionBehaviour.  All uses changed.
2014-01-04 18:56:08 -08:00
Paul Eggert
ba3189039a Update copyright year to 2014 by running admin/update-copyright. 2014-01-01 07:43:34 +00:00
João Távora
e9d6c46ab5 Fix bug #16272 when inserting newline at point-min in electric-pair-mode.
* elec-pair.el (electric-pair-post-self-insert-function): Don't
open extra newlines at beginning of buffer.
2013-12-28 19:26:54 +00:00
Paul Eggert
7e99158aac Spelling and typo fixes. 2013-12-27 22:37:35 -08:00
Glenn Morris
9c61f806fb Misc small custom fixes
The value of defcustom's const should not be quoted!

* lisp/desktop.el (desktop-restore-in-current-display):
* lisp/newcomment.el (comment-empty-lines):
* lisp/progmodes/idlwave.el (idlwave-scan-all-buffers-for-routine-info)
(idlwave-pad-keyword):
* lisp/progmodes/tcl.el (tcl-tab-always-indent):
* lisp/textmodes/reftex-vars.el (reftex-index-default-tag):
* lisp/elec-pair.el (electric-pair-skip-whitespace):
* lisp/progmodes/cfengine.el (cfengine-cf-promises):
* lisp/cedet/ede/linux.el (project-linux-build-directory-default)
(project-linux-architecture-default):
* lisp/erc/erc-button.el (erc-button-alist):
* lisp/gnus/auth-source.el (auth-sources):
* lisp/gnus/nnmairix.el (nnmairix-propagate-marks-upon-close):
* lisp/url/url-history.el (url-history-track):
* lisp/url/url-vars.el (url-honor-refresh-requests):
Fix custom types.

* lisp/net/tls.el (tls-certtool-program): Fix default value.
2013-12-27 17:24:15 -08:00
Stefan Monnier
7514d3f806 * lisp/electric.el: Move all electric-pair-* to elec-pair.el.
* lisp/elec-pair.el: New file, split from electric.el.
2013-12-27 07:53:57 -05:00