1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-02-05 15:11:30 -08:00
Commit graph

3557 commits

Author SHA1 Message Date
Eli Zaretskii
08c042bd26 Document that 'byte-compile-dynamic' is obsolete
* doc/lispref/compile.texi (Dynamic Loading): Document that this
is deprecated.

* etc/NEWS: mark the 'byte-compile-dynamic' entry as documented.
2020-03-07 14:23:23 +02:00
Eli Zaretskii
fdbe7cacfb Document the changes in 'read-answer'
* doc/lispref/minibuf.texi (Multiple Queries): Document the
fact that 'read-answer' can now accept non-character input
events.
2020-03-07 13:40:10 +02:00
Eli Zaretskii
10c58356e4 Document changes in lexical-binding
* doc/lispref/variables.texi (Using Lexical Binding): Document
that lexical-binding is now turned on by default in more cases.

* etc/NEWS: Fix wording of the NEWS entry about the above, and mark it
as fully documented.
2020-03-07 13:32:52 +02:00
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
Štěpán Němec
ff729e3f97 ; bug#39779: Fix some typos in documentation. 2020-02-28 15:21:55 +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
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
Stefan Monnier
4d8d25d641 * doc/lispref/variables.texi (special-variable-p): Clarify limits 2020-02-13 15:01:28 -05:00
Mattias Engdegård
9f6a4bbcc9 Remove the optional KEEP-ORDER argument to regexp-opt
This argument was added for the 'or' clause in rx, but it turned out
to be a bad idea (bug#37659), and there seems to be little other use
for it.

* lisp/emacs-lisp/regexp-opt.el (regexp-opt): Remove KEEP-ORDER.
* doc/lispref/searching.texi (Regexp Functions):
* etc/NEWS: Remove it from the documentation.
* test/lisp/emacs-lisp/regexp-opt-tests.el (regexp-opt-test--match-all)
(regexp-opt-test--check-perm, regexp-opt-test--explain-perm)
(regexp-opt-keep-order, regexp-opt-longest-match): Simplify test.
2020-02-13 20:43:42 +01:00
Eli Zaretskii
027da652a4 Fix display of minibuffer prompt in ido.el
* lisp/minibuffer.el (minibuffer--message-overlay-pos): New
function.
(set-minibuffer-message): Use it to determine where to show the
overlay with the temporary message.
* lisp/ido.el (ido-exhibit): Revert "Render Ido suggestions using
an overlay"; this restores the original code which inserted the
match-status information into the minibuffer, instead of
displaying it in an overlay with an after-string.  Put the special
'minibuffer-message' text property at the beginning of the
inserted text.  (Bug#39379)

* etc/NEWS:
* doc/lispref/display.texi (Displaying Messages):
* doc/lispref/text.texi (Special Properties): Document the
'minibuffer-message' text property and its effect.
2020-02-12 21:39:44 +02:00
Mattias Engdegård
5a21aaff46 rx: Use longest match for all-string 'or' forms (bug#37659)
Revert to the Emacs 26 semantics that always gave the longest match
for rx 'or' forms with only string arguments.  This guarantee was
never well documented, but it is useful and people likely have come to
rely on it.  For example, prior to this change,

 (rx (or ">" ">="))

matched ">" even if the text contained ">=".

* lisp/emacs-lisp/rx.el (rx--translate-or): Don't tell regexp-opt to
preserve the matching order.
* doc/lispref/searching.texi (Rx Constructs): Document the
longest-match guarantee for all-string 'or' forms.
* test/lisp/emacs-lisp/rx-tests.el (rx-or): Update test.
2020-02-12 11:20:47 +01:00
Mattias Engdegård
f27187f963 Clarify lexvar restrictions for add-to-ordered-list, add-to-history
* lisp/subr.el (add-to-ordered-list, add-to-history):
* doc/lispref/lists.texi (List Variables):
* doc/lispref/minibuf.texi (Minibuffer History):
Note in the doc string and manual that the variable arguments to
add-to-ordered-list and add-to-history cannot refer to a lexical
variable (bug#39373).
2020-02-02 12:52:44 +01:00
Mattias Engdegård
d07f177382 Clarify add-to-list documentation (bug#39373)
While add-to-list often works with lexical variables, this is a hack
that isn't always effective; better tell the user not to try.

* doc/lispref/lists.texi (List Variables): Add a note about lexical
variables to the add-to-list description.  Fix the equivalent code.
* lisp/subr.el (add-to-list): Amend doc string.
2020-02-01 22:26:57 +01:00
Mattias Engdegård
2e9a153b26 Moderate recommendation to escape '(' in doc strings
Thanks to 57e2ca5c50 and related changes, opening brackets at the
leftmost column inside doc strings are no longer mistaken for the
start of a defun.

* doc/lispref/tips.texi (Documentation Tips): Clarify recommendation
and move it down the list.
* etc/NEWS: Announce.
2020-01-26 14:52:15 +01:00
Stefan Kangas
baca81e641 * doc/lispref/streams.texi (Output Functions): Improve indexing. 2020-01-25 19:15:32 +01:00
Paul Eggert
7f50698505 Improve doc of eq on bignums etc.
* doc/lispref/numbers.texi (Integer Basics):
* doc/lispref/objects.texi (Integer Type, Equality Predicates):
Be clearer about eq vs eql vs = on bignums, floats, and strings.
2020-01-24 16:58:41 -08:00
Stefan Kangas
d15f2d4cbc Prefer saying "Info manual" to "info page" in docs
Pointed out by Eli Zaretskii in:
https://debbugs.gnu.org/cgi/bugreport.cgi?bug=39215#14
* doc/emacs/Makefile.in:
* doc/lispintro/Makefile.in:
* doc/lispref/Makefile.in:
* doc/misc/Makefile.in:
* lisp/dired-x.el (top-level):
* lisp/gnus/gnus-sum.el (gnus-summary-mode):
* lisp/progmodes/cperl-mode.el (cperl-info-page): Doc fix; prefer
saying "Info manual" over "info page".
2020-01-23 02:36:04 +01:00
Robert Pluim
7e37e61f4b Correct statement about ftcr and recommend HarfBuzz
* doc/lispref/frames.texi (Font and Color Parameters): Correct
statement about availability of ftcr in the presence of HarfBuzz.
Recommend HarfBuzz.
2020-01-21 18:18:50 +01:00
Robert Pluim
06166aa719 Improve explanation of available font backends under X
* frames.texi (Font and Color Parameters): Clarify that you can't
have HarfBuzz and non-HarfBuzz at the same time for xft and cairo
font backends.
2020-01-20 18:01:57 +01:00
Paul Eggert
2391d3f45d ; spelling fixes 2020-01-17 14:24:15 -08:00
Mattias Engdegård
d645628e3c Always use lexical-binding in lisp-interaction-mode (bug#38835)
* lisp/progmodes/elisp-mode.el (lisp-interaction-mode):
Set lexical-binding.
* lisp/startup.el (command-line, startup--get-buffer-create-scratch):
Don't set lexical-binding here.
* doc/lispref/variables.texi:
* etc/NEWS:
Make it clear that lisp-interaction-mode uses lexical-binding.
2020-01-13 18:03:41 +01:00
Michael Albinus
f0ebd919c1 ; * doc/lispref/anti.texi (Antinews): Fix typo. 2020-01-11 14:14:11 +01:00
Eli Zaretskii
e1262d45f9 Update Antinews in ELisp manual
* doc/lispref/anti.texi (Antinews): Rewrite for Emacs 27.
* doc/lispref/elisp.texi (Top): Update the top-level menu item for
Antinews.
2020-01-11 13:36:07 +02:00
Richard Stallman
fd8128f0c1 ; Move the description of define-inline to a different node in functions.texi 2020-01-11 11:48:17 +02:00
Richard Stallman
524441d6b3 Improve wording in the ELisp manual
* doc/lispref/modes.texi (Setting Hooks): Improve and clarify
wording.  (Bug#38818)
2020-01-11 11:38:24 +02:00
Mattias Engdegård
fab3674b36 Revert "Raise default max-specpdl-size value"
This reverts commit bb9402e6e9.
2020-01-01 17:38:41 +01:00
Mattias Engdegård
bb9402e6e9 Raise default max-specpdl-size value
Occasionally, loading cl-generic.el from source requires
max_specpdl_size > 1600 when bootstrapping, and thus fails.
In any case we are very close to the limit.

* src/eval.c (init_eval_once): Raise max_specpdl_size to 1800.
* doc/lispref/variables.texi (Local Variables): Update docs.
2020-01-01 16:43:58 +01:00
Paul Eggert
4cd143aded Fix copyright years by hand
These are dates that admin/update-copyright did not update.
2020-01-01 01:01:53 +00:00
Paul Eggert
365e01cc9f Update copyright year to 2020
Run "TZ=UTC0 admin/update-copyright $(git ls-files)".
2020-01-01 00:59:52 +00:00
Glenn Morris
219d47893a Fixes for makeinfo 4.13
* doc/lispref/customize.texi (Variable Definitions): Fix xref.
* doc/lispref/internals.texi (Writing Emacs Primitives)
(Module Values): Follow xref with comma.
2019-12-29 15:41:52 -08:00
Eli Zaretskii
74261ff301 Rearrange NEWS, add missing documentation
* etc/NEWS: Rearrange and mark entries whether documented or not.

* doc/lispref/streams.texi (Output Variables): Document the new
default of 'print-quoted'.
* doc/lispref/keymaps.texi (Functions for Key Lookup): Document
that KEYMAP arg to 'lookup-key' can also be a list.
* doc/lispref/customize.texi (Variable Definitions): Document the
:local keyword of 'defcustom'.
* doc/lispref/numbers.texi (Float Basics): Document changes in
'logb'.
* doc/lispref/hooks.texi (Standard Hooks): Document
'comint-password-function'.

* doc/emacs/display.texi (Text Scale): Document text-size
adjustment using the mouse wheel.
* doc/emacs/frames.texi (Mouse Commands): Document image scaling
with the mouse wheel.
* doc/emacs/windows.texi (Window Convenience): Document
'global-tab-line-mode'.
* doc/emacs/search.texi (Repeat Isearch, Symbol Search)
(Isearch Yank): Document the new support for numeric arguments in
Isearch commands.
(Special Isearch): Document 'M-s M->' and 'M-s M-<'.
(Search Customizations): Document 'isearch-lazy-count'.  Improve
indexing.
(Not Exiting Isearch): Document the new value of
'isearch-allow-scroll'.
* doc/emacs/maintaining.texi (Xref Commands): Document the new 'g'
key binding.
* doc/emacs/package.texi (Package Installation): Document changes
in 'package-check-signature'.
* doc/emacs/maintaining.texi (VC Change Log): Document
'vc-log-search'.
* doc/emacs/dired.texi (Operating on Files): Document
'dired-vc-rename'.
2019-12-28 15:19:05 +02:00
Eli Zaretskii
32222fb34c Fix documentation of define-obsolete-* functions
* doc/lispref/functions.texi (Obsolete Functions): Make
documentation of functions that obsolete symbols match the
advertised calling conventions.

* lisp/emacs-lisp/byte-run.el (define-obsolete-function-alias)
(define-obsolete-variable-alias, define-obsolete-face-alias):
State in the doc strings that WHEN is a mandatory argument, to be
consistent with the advertised calling convention.  (Bug#38675)
2019-12-28 11:13:25 +02:00
Philipp Stephani
21c3020fce Document some restrictions for module functions.
* doc/lispref/internals.texi (Module Functions): Document some
restrictions for module functions.
2019-12-26 11:31:51 +01:00
Philipp Stephani
e1ce9f3423 Don't recommend using 'module-load' for loading modules.
'module-load' most likely doesn't do what users expect.  Users should
use 'load' and its wrappers, which do the right thing.

* doc/lispref/loading.texi (Dynamic Modules): Document
disadvantages of 'module-load' and recommend normal 'load' and
its wrappers instead.

* doc/lispref/internals.texi (Module Functions): Recommend
'load' over 'module-load'.
2019-12-26 11:08:56 +01:00
Lars Ingebrigtsen
dbf4b5b2d0 Fix manual typo in Special Read Syntax
* doc/lispref/objects.texi (Special Read Syntax): Fix typo.
2019-12-24 17:42:28 +01:00
Philipp Stephani
f8e83d73a2 Document and verify that emacs_limb_t doesn’t have padding bits.
This is a useful property when doing further bit-twiddling with the
magnitude array before/after calling extract_big_integer or
make_big_integer.  For example, constructing an emacs_limb_t object
using repeated shift-and-add should work as expected, but relies on
the type not having padding bits.  Since the C standard already
guarantees that unsigned integers use a pure binary representation,
not having padding bits is enough to guarantee that the type has
unique object representations in the sense of C++’s
std::has_unique_object_representations.

* doc/lispref/internals.texi (Module Values): Document that
emacs_limb_t doesn’t have padding bits.

* src/emacs-module.c: Verify that emacs_limb_t doesn’t have padding
bits.
2019-12-23 15:37:49 +01:00
Martin Rudalics
1e758530b0 Fix documentation of implied frame resizing (Bug#38684)
* src/frame.c (frame_inhibit_implied_resize): Fix doc-string.
* doc/lispref/frames.texi (Implied Frame Resizing): Update and
rewrite section.
2019-12-23 10:50:44 +01:00
Eli Zaretskii
d7ab4edd93 Fix wording of recent documentation changes
* src/xdisp.c (syms_of_xdisp):
* lisp/minibuffer.el (minibuffer-message-clear-timeout):
* etc/NEWS:
* doc/lispref/display.texi (Displaying Messages): Minor
changes of wording of a recent commit.  (Bug#38457)
2019-12-22 21:02:48 +02:00
Juri Linkov
485b423e8f New variable set-message-function to show message at the end of the minibuffer
* doc/lispref/display.texi (Displaying Messages): Document
set-message-function and clear-message-function.

* lisp/minibuffer.el (minibuffer-message-clear-timeout): New defcustom.
(minibuffer-message-timer, minibuffer-message-overlay): New variables.
(set-minibuffer-message, clear-minibuffer-message): New functions.
(set-message-function, clear-message-function): Set variables to
set-minibuffer-message and clear-minibuffer-message respectively.

* src/keyboard.c (read_char): Call clear_message when
Vclear_message_function is a function.

* src/xdisp.c (set_message): Call Vset_message_function when it's a function.
(clear_message): Call Vclear_message_function when it's a function.
(syms_of_xdisp): New variables set-message-function and clear-message-function
(bug#38457).
2019-12-22 00:02:10 +02:00
Stephen Gildea
678a71ea2d backup-by-copying-when-privileged-mismatch applies to file gid, too.
* lisp/files.el (backup-by-copying-when-privileged-mismatch):  In addition
to checking the file uid, a second test is added: if the file gid is not
greater than backup-by-copying-when-privileged-mismatch,
backup-by-copying-when-mismatch will also be forced on.

* doc/emacs/files.texi, doc/lispref/backups.texi: Updated documentation.

Also fixed a typo in the Emacs reference manual, changing "higher" to
"no greater" so that the limit is no longer documented reversed.
2019-12-21 10:51:10 -08:00
Alan Mackenzie
52178a312d Elisp manual: mention parse-partial-sexp as the source of a parser state, etc
* doc/lispref/syntax.texi (Parser State): mention parse-partial-sexp as a
function returning a parser state, and the function to which one supplies a
parser state as an argument for continued parsing.
Refine the documentation of syntax-ppss-context, and correct the text
introducing it and another function.
2019-12-20 19:55:29 +00:00
Mattias Engdegård
d55f2f74f5 More precise 'regexp-opt' documentation
* lisp/emacs-lisp/regexp-opt.el (regexp-opt):
* doc/lispref/searching.texi (Regexp Functions):
Be more specific about how the KEEP-ORDER argument actually works.
If nil, the regexp guarantees a longest match; this is the behaviour
that many callers implicitly rely on.
2019-12-18 12:46:30 +01:00
Juri Linkov
7254b63462 Revert aa89c84e00 (bug#38457)
* src/editfns.c (Fmessage): Don't use minibuffer-message.
(Fmessage_in_echo_area): Remove function message-in-echo-area.
(syms_of_editfns): Remove variable message-in-echo-area.

* lisp/isearch.el (isearch--momentary-message): Remove message-in-echo-area.
* lisp/minibuffer.el (minibuffer-message): Don't record message
in the *Messages* buffer.
(minibuffer-completion-help): Remove message-in-echo-area.

* lisp/subr.el (do-after-load-evaluation): Remove discard-input (bug#38560)
2019-12-16 01:58:14 +02:00
Paul Eggert
9ee5af3150 Adjust intptr_t advice
* doc/lispref/internals.texi (C Integer Types): Say to prefer
uintptr_t when pointer arithmetic might overflow intptr_t.
2019-12-14 14:22:35 -08:00
Eli Zaretskii
a01a722282 Update documentation of pure-space overflow
* doc/lispref/internals.texi (Garbage Collection)
(Pure Storage):
* src/alloc.c (Fgarbage_collect): Update the documentation of
pure-space overflow for when pdumper is used.  (Bug#38492)
2019-12-14 20:02:11 +02:00
Eli Zaretskii
7ebbec03ec Fix cross-references in ELisp manual
* doc/lispref/commands.texi (Misc Events, Special Events): Fix
cross-references.  (Bug#38520)
2019-12-14 13:56:29 +02:00
Mattias Engdegård
82b4e48c59 Allow characters and single-char strings in rx charsets
The `not' and `intersection' forms, and `or' inside these forms,
now accept characters and single-character strings as arguments.
Previously, they had to be wrapped in `any' forms.
This does not add expressive power but is a convenience and is easily
understood.

* doc/lispref/searching.texi (Rx Constructs): Amend the documentation.
* etc/NEWS: Announce the change.
* lisp/emacs-lisp/rx.el (rx--charset-p, rx--translate-not)
(rx--charset-intervals, rx): Accept characters and 1-char strings in
more places.
* test/lisp/emacs-lisp/rx-tests.el (rx-not, rx-charset-or)
(rx-def-in-charset-or, rx-intersection): Test the change.
2019-12-13 13:30:14 +01:00
Mattias Engdegård
f16766a0eb Use or' instead of union' for charset union in rx
Design change suggested by Stefan Monnier.

* doc/lispref/searching.texi (Rx Constructs):
* etc/NEWS: Document.
* lisp/emacs-lisp/rx.el (rx--translate-or): Detect charset arguments.
(rx--charset-p): New.
(rx--translate-not, rx--charset-intervals, rx--translate-union):
Change from `union' to `or'.
(rx--translate-form, rx--builtin-forms, rx): Remove `union'.
* test/lisp/emacs-lisp/rx-tests.el (rx-union, rx-def-in-union)
(rx-intersection): Rename tests and change `union' to `or' and `|'.
2019-12-12 23:47:25 +01:00
Paul Eggert
eb7df2a4e3 Improve tv_nsec doc
* doc/lispref/internals.texi (Module Values):
Document tv_nsec more accurately.
2019-12-10 20:41:55 -08:00