1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2025-12-15 10:30:25 -08:00
Commit graph

140125 commits

Author SHA1 Message Date
Mattias Engdegård
49d3cd90bd rx: Improve 'or' compositionality (bug#37659)
Perform 'regexp-opt' on nested 'or' forms, and after expansion of
user-defined and 'eval' forms.  Characters are now turned into strings
for wider 'regexp-opt' scope.  This preserves the longest-match
semantics for string in 'or' forms over composition.

* doc/lispref/searching.texi (Rx Constructs): Document.
* lisp/emacs-lisp/rx.el (rx--normalise-or-arg)
(rx--all-string-or-args): New.
(rx--translate-or): Normalise arguments first, and check for strings
in subforms.
(rx--expand-eval): Extracted from rx--translate-eval.
(rx--translate-eval): Call rx--expand-eval.
* test/lisp/emacs-lisp/rx-tests.el (rx-or, rx-def-in-or): Add tests.
* etc/NEWS: Announce.
2020-03-01 10:47:14 +01:00
Juri Linkov
6b48aedb6b * lisp/tab-line.el: Fix auto-hscrolling (bug#39649)
Distinguish offsets between manual-vs-automatic scrolling
as integers-vs-floats instead of positive-vs-negative integers.

* lisp/tab-line.el (tab-line-format-template): Use 'numberp'
instead of 'integerp', and 'truncate' instead of 'abs'.
(tab-line-format): When the window-buffer was updated, set window-parameter
to float to enable auto-hscroll after it was disabled on manual scrolling.
(tab-line-auto-hscroll-buffer): New variable with internal buffer.
(tab-line-auto-hscroll): Erase in tab-line-auto-hscroll-buffer.
Use 'numberp' instead of 'integerp', 'truncate' instead of 'abs',
and 'float' instead of '-'.
(tab-line-hscroll): Use 'numberp' instead of 'integerp',
and 'truncate' instead of 'abs'.
2020-02-29 23:49:17 +02:00
Nicolas Petton
c5f255d681
; Update lisp/ldefs-boot.el 2020-02-29 22:25:38 +01:00
Eli Zaretskii
60c84ad992 ; * etc/TODO: Fix last change. 2020-02-29 19:30:27 +02:00
Eli Zaretskii
5af9e5baad ; Add an entry to TODO
* etc/TODO: Expand the ligature support entry.  Add a new entry
about better support of Emoji.
2020-02-29 15:10:09 +02:00
Mattias Engdegård
d424195905 Fix rx charset generation
* lisp/emacs-lisp/rx.el (rx--charset-p): Don't overquote.
(rx--generate-alt): Generate '.' for negated newline.
* test/lisp/emacs-lisp/rx-tests.el (rx-any, rx-charset-or): Test.
2020-02-29 10:15:51 +01:00
Eli Zaretskii
9908b5a614 Merge branch 'emacs-27' of git.savannah.gnu.org:/srv/git/emacs into emacs-27 2020-02-29 09:51:43 +02:00
Mattias Engdegård
6dc2ebe00e Fix overquoting in mule.el
* lisp/international/mule.el (sgml-xml-auto-coding-function):
Remove accidental quote.
2020-02-28 22:39:41 +01:00
Paul Eggert
5cca73dd82 * src/timefns.c (time_arith): Omit incorrect comment. 2020-02-28 12:59:16 -08:00
Eli Zaretskii
d767c357ca Merge branch 'emacs-27' of git.savannah.gnu.org:/srv/git/emacs into emacs-27 2020-02-28 18:23:22 +02:00
Mattias Engdegård
4dec693f70 * lisp/vc/vc-cvs.el (vc-cvs-ignore): Copy-edit doc string 2020-02-28 17:03:00 +01:00
Štěpán Němec
ff729e3f97 ; bug#39779: Fix some typos in documentation. 2020-02-28 15:21:55 +02:00
Štěpán Němec
696ee02c3a checkdoc: Don't mistake "cf." for sentence end
* lisp/emacs-lisp/checkdoc.el (checkdoc-sentencespace-region-engine):
Recognize "cf." as an abbreviation, not a sentence end.
2020-02-28 15:17:44 +02:00
Nicolas Petton
d096bab787
Bump Emacs version to 27.0.90
* README:
* configure.ac:
* msdos/sed2v2.inp:
* nt/README.W32: Bump Emacs version.
2020-02-27 18:22:18 +01:00
Nicolas Petton
5b7d226779
* etc/AUTHORS: Update. 2020-02-27 18:21:47 +01:00
Nicolas Petton
4aa758e53d
; ChangeLog.3 update 2020-02-27 18:18:51 +01:00
Nicolas Petton
9261b1ed49
* admin/authors.el (authors-ignored-files): Fix entries. 2020-02-27 18:07:54 +01:00
Nicolas Petton
86e4da6eaf
; ChangeLog.3 update 2020-02-27 17:21:47 +01:00
Nicolas Petton
009c6a1767
; ChangeLog.3 fixes 2020-02-27 17:21:45 +01:00
Eric Abrahamsen
f9e53947c7 Fix documented slot name of eieio-instance-tracker class
* doc/misc/eieio.texi (eieio-instance-tracker): The code has the slot
  name as `tracking-symbol', not `tracker-symbol'.
2020-02-26 15:47:12 -05:00
Robert Pluim
999d75c0c1 Range-check width passed to define-fringe-bitmap
This prevents a crash when attempting to create a zero-width bitmap.

* src/fringe.c (Fdefine_fringe_bitmap): Check value of width,
signal an error if outside documented range (Bug#39662).
2020-02-26 19:18:54 +01:00
Nicolas Petton
29e415d6b0
; ChangeLog.3 fixes 2020-02-26 18:32:43 +01:00
Nicolas Petton
4653baa6a5
; ChangeLog.3 update & fixes. 2020-02-26 17:53:27 +01:00
Nicolas Petton
a95ec6e060
* admin/authors.el: Add missing entries 2020-02-26 17:52:07 +01:00
Noam Postavsky
af519a6348 Define libgnutls-version properly
* src/gnutls.c (syms_of_gnutls) <libgnutls-version>: Define with
DEFVAR_LISP and add docstring, so that this variable will accessible by
help facilities.
2020-02-25 20:12:57 -05:00
Dmitry Gutov
9ec6eb1065 vc-dir-ignore: More accurately choose base directory
* lisp/vc/vc-dir.el:
(vc-dir-ignore): Use it (bug#37189).

* lisp/vc/vc.el:
(vc--ignore-base-dir): Extract from vc-ignore.
2020-02-25 01:03:42 +02:00
Stefan Monnier
e74fb4688b * lisp/emacs-lisp/cursor-sensor.el (cursor-sensor--detect): Change last fix
Make sure we always work in the selected-window's buffer.
2020-02-24 09:55:09 -05:00
Alan Mackenzie
3bce7ec382 CC Mode: Protect against consecutive calls to before-change-functions ...
without an intervening call to after-change-functions.  This would have been a
workaround to bug #38691 had the causes of that bug not been removed.

* lisp/progmodes/cc-mode.el (c-just-done-before-change): Add an extra value to
this variable, 'whole-buffer, this being set by c-before-change as a signal to
c-after-change that although c-before-change has run, it has assumed the
entire buffer as the change region.
(c-before-change, c-after-change): Adapt to the new meaning of the above.
2020-02-23 19:43:56 +00:00
Noam Postavsky
ba7004b2a7 Shorten some ppss struct field names
* lisp/emacs-lisp/syntax.el (ppss): Capitalize docstrings.
(ppss-comment-depth): Renamed from ppss-comment-nesting.
(ppss-quoted-p): Renamed from ppss-after-quote-p.
(ppss-min-depth): Renamed from ppss-minimum-paren-depth.
(ppss-open-parens): Renamed from ppss-open-paren-positions.
* etc/NEWS: Announce the ppss-* accessors.
2020-02-23 09:03:18 -05:00
Alan Mackenzie
693749c60f Java Mode: Fix fontification of variable decl inside `for'
* lisp/progmodes/cc-engine.el (c-forward-declarator): In place of a test for
C++ Mode, test for either C++ Mode or Java Mode.
2020-02-23 12:41:20 +00:00
Alan Mackenzie
884b68ca2c CC Mode: Fontify foo in "const auto foo :" correctly
* lisp/progmodes/cc-engine.el (c-forward-decl-or-cast-1): While attempting to
find a declaration's identifier, recast the latest found id. as that
identifier when there is no other type identifier and the result of the most
recent c-forward-type call is 'maybe or 'found.  In the latter case, remove
the id. from the found types list, too.
2020-02-23 11:00:28 +00:00
Juri Linkov
aff8bca77c * lisp/replace.el (occur-engine-line): Revert part of fb16313025 (bug#39597)
; Do not merge to master.
2020-02-23 02:34:45 +02:00
Dmitry Gutov
dd5756436c Move more logic to vc-ignore from vc-default-ignore
* lisp/vc/vc-dir.el (vc-dir-ignore):
Pass relative file names to vc-ignore.

* lisp/vc/vc.el (vc-ignore): Move the responsibility of
constructing the ignore pattern (right now, most often a relative
file name) using a file name received from the user, here.
(vc-default-ignore): ...from here (bug#37189, see discussion).
Also clarify the docstring.
2020-02-23 01:51:38 +02:00
Eli Zaretskii
2aed279be1 Warn about the likes of "[:alnum:]" in regexps
* doc/lispref/searching.texi (Char Classes): Warn about erroneous
usage of named character classes.  Suggested by Stephen Leake
<stephen_leake@stephe-leake.org>.
2020-02-22 11:07:42 +02:00
Wolfgang Scherer
0273f261a7 Don't write absolute filenames and duplicate strings to CVS ignore files
* lisp/vc/vc-cvs.el (vc-cvs-ignore): Expand filename correctly
and pass on only the basename as the pattern.
(vc-cvs-append-to-ignore) Do not write duplicate strings to
.cvsignore.  New optional parameter SORT to more explicitly
control sorting of the ignore entries.  (Bug#37215)
* lisp/vc/pcvs.el (cvs-mode-ignore): Call 'vc-cvs-append-to-ignore'
with SORT argument.
2020-02-22 10:52:07 +02:00
Federico Tedin
d7c22338d2 Fix cursor-sensor--detect when current buf != selected window's buf
* lisp/emacs-lisp/cursor-sensor.el (cursor-sensor--detect): Avoid
trying to read text properties from position taken from another
buffer.  (Bug#38740)
2020-02-21 11:11:05 +02:00
Eli Zaretskii
2e39fc83bb * doc/emacs/sending.texi (Mail Sending): Fix index entries. 2020-02-21 11:03:08 +02:00
Allen Li
b410f902d5 Document 'message-send-mail-function' in the Emacs manual
Most of the manual here addresses Message mode, yet talks about
'send-mail-function' which is used for Mail mode.
Fixing this completely requires more involved work, but for now at
least document the difference here.

* doc/emacs/sending.texi (Mail Sending): Mention
'message-send-mail-function'.  (Bug#39639)
2020-02-21 11:01:25 +02:00
Allen Li
ac0546612d Fix reference to 'message-send-and-exit' in Emacs manual
Most of the manual here addresses Message mode, and C-c C-c directly
above cites the Message mode command, not the Mail mode command.

* doc/emacs/sending.texi (Mail Sending): Fix reference.  (Bug#39639)
2020-02-21 10:58:46 +02:00
Steven Allen
cd6a9b8f65 Skip shell prompt on current line in Eshell even if it's protected
When the eshell prompt is protected (e.g., with rear non-sticky,
inhibited movements, etc.), 'beginning-of-line' won't move to the
actual beginning of the line and therefore won't skip over the
prompt.
* lisp/eshell/em-prompt.el (eshell-previous-prompt): Use
'forward-line' to go to the beginning of the line, even if it's
protected.  (Bug#39627)
2020-02-21 10:51:51 +02:00
Mattias Engdegård
9f08524748 Fix broken regexps
Incorrect escaping prevented these from working as intended.
Found by relint.

* lisp/progmodes/cc-defs.el (c-search-backward-char-property):
Add missing backslash.
* lisp/progmodes/simula.el (simula-mode):
Remove one backslash too many.
2020-02-20 11:25:25 +01:00
Paul Eggert
1d10885763 ; spelling and comment fix 2020-02-19 17:55:03 -08:00
Paul Eggert
614203bc80 ; make change-history-commit 2020-02-19 17:50:44 -08:00
Paul Eggert
28399e585e * Makefile.in (PREFERRED_BRANCH): Now emacs-27. 2020-02-19 17:41:24 -08:00
Paul Eggert
62afbc513a Fix bug when visiting euc-jp-encoded directories
Problem reported by Ken Sasaki (Bug#39672).
* src/fileio.c (Ffile_directory_p):
Encode filename before giving it to file_directory_p.
This fixes a typo introduced in
2019-09-18T02:18:14Z!eggert@cs.ucla.edu.
2020-02-19 17:22:27 -08:00
Paul Eggert
a2c4eeeecd Clarify when fixnums are used.
* doc/lispref/numbers.texi (Integer Basics): Clarify.
Based on a suggestion by Noam Postavsky (Bug#39557#32).
2020-02-17 13:54:36 -08:00
Paul Eggert
4e5ac4b0c6 Reorder discussion of integer basics
* doc/lispref/numbers.texi (Integer Basics): Put the fixnum/bignum
discussion at the end of the section, not at the start (Bug#39557).
2020-02-17 13:37:14 -08:00
Mattias Engdegård
f765aad28b Make OMake support slightly less expensive (bug#39595)
When run with -p or -P, OMake regurgitates error messages that
prevented further progress, indented by 6 spaces.  Use that fact
to ameliorate the modification done to other error message regexps.

* lisp/progmodes/compile.el (compilation-parse-errors):
When 'omake' is enabled, allow error messages to be indented by 0 or 6
spaces instead of any number of spaces, to avoid pathological
behaviour.
(compilation-error-regexp-alist-alist): Anchor the 'omake' pattern to
bol for performance.  Repair the 'ruby-Test::Unit' pattern, which
relied on the previously over-generous 'omake' hack.
* etc/compilation.txt (OMake): Add examples.
* test/lisp/progmodes/compile-tests.el (compile-tests--test-regexps-data)
(compile-test-error-regexps): Add test for OMake (indented error).
2020-02-17 11:23:41 +01:00
Mattias Engdegård
39410cfc5a Speed up 'msft' and 'watcom' compilation error regexps
They have similar structure, and both suffer from being able to
match leading spaces in multiple ways which leads to bad performance
when backtracking (bug#39595).

* lisp/progmodes/compile.el (compilation-error-regexp-alist-alist):
Improved 'msft' and 'watcom' regexps.
2020-02-17 11:23:41 +01:00
Mattias Engdegård
96a269d045 Speed up 'maven' compilation error message regexp
Anchor the regexp at line-start to prevent quadratic behaviour when
it doesn't match (bug#39595).  It's unclear whether the type tag, like
[ERROR], is always present; we keep it optional just in case.

* lisp/progmodes/compile.el (compilation-error-regexp-alist-alist):
Rewrite 'maven' regexp, using rx for clarity.
* etc/compilation.txt (maven): More examples.
* test/lisp/progmodes/compile-tests.el
(compile-tests--test-regexps-data): No leading spaces; they seems to
stem from a misunderstanding in bug#11517.
2020-02-17 11:23:41 +01:00