1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-01-06 11:50:51 -08:00
Commit graph

7239 commits

Author SHA1 Message Date
Paul Eggert
46b434a62c Update from Gnulib
* build-aux/config.guess, doc/misc/texinfo.tex:
* lib/mktime-internal.h, lib/mktime.c, lib/timegm.c:
Copy from Gnulib.
* lib/gnulib.mk.in: Regenerate.
2019-04-30 09:45:08 -07:00
Mattias Engdegård
c61bbb4c8e Don't poll auto-revert files that use notification (bug#35418)
It is a waste to periodically poll files that use change notification
in auto-revert mode; stop doing that.  If no files need polling,
turn off the periodic execution entirely to further avoid wasting power.
Use a timer to inhibit immediate reversion for some time after a
notification, for throttling.

This change does not apply to files in global-auto-revert-mode, where
polling is still necessary.  It is disabled by default, and enabled by
setting `auto-revert-avoid-polling' to non-nil.

* lisp/autorevert.el
(toplevel): Require cl-lib.
(auto-revert-avoid-polling, auto-revert--polled-buffers)
(auto-revert--need-polling-p, auto-revert--lockout-interval)
(auto-revert--lockout-timer, auto-revert--end-lockout): New.
(global-auto-revert-mode): Keep notifiers for buffers in auto-revert mode.
(auto-revert-set-timer): Use auto-revert--need-polling-p.
(auto-revert-notify-handler): Restart polling if notification stopped.
Use new lockout timer.
(auto-revert-buffers):
Use auto-revert--polled-buffers and auto-revert--need-polling-p.
(auto-revert-buffers-counter, auto-revert-buffers-counter-lockedout):
Remove.

* etc/NEWS (Changes in Specialized Modes and Packages):
Describe the new auto-revert-avoid-polling variable.

* doc/emacs/files.texi (Reverting):
Add paragraph describing auto-revert-avoid-polling.
2019-04-30 13:25:52 +02:00
Glenn Morris
7c7ee1dd52 Merge from origin/emacs-26
c26d452 (origin/emacs-26) * src/macfont.m (macfont_shape): Use conven...
140e7f8 Recommend using font-lock-face over face (Bug#35044)
7cb5364 Check if mouse_face_overlay was deleted (Bug#35273)

# Conflicts:
#	src/macfont.m
2019-04-29 09:12:53 -07:00
Glenn Morris
6662938619 Merge from origin/emacs-26
0e8d452 ; * doc/lispref/nonascii.texi (Coding System Basics): Fix gra...
25a2ff7 ; Add missing space in custom.texi
9ec18fb * admin/admin.el (set-version): Check for increase in version...
93912ba Be more careful about indent-sexp going over eol (Bug#35286)
2019-04-29 09:08:19 -07:00
Noam Postavsky
140e7f890f Recommend using font-lock-face over face (Bug#35044)
* doc/lispref/modes.texi (Precalculated Fontification): Explain
advantages of using font-lock-face over face.
2019-04-28 17:20:17 -04:00
Philipp Stephani
4d97e1a9ea Export major version of latest Emacs supported by emacs-module.h.
This is useful if module authors want to support multiple versions of
emacs-module.h.

* configure.ac (emacs_major_version): Define substitution.

* src/emacs-module.h.in (EMACS_MAJOR_VERSION): Define macro.

* doc/lispref/internals.texi (Module Initialization): Document
EMACS_MAJOR_VERSION preprocessor macro.

* test/data/emacs-module/mod-test.c (emacs_module_init): Verify
behavior of EMACS_MAJOR_VERSION.
2019-04-28 20:08:25 +02:00
Charles A. Roelli
0e8d452c1c ; * doc/lispref/nonascii.texi (Coding System Basics): Fix grammar. 2019-04-26 21:49:46 +02:00
Michael Albinus
25a2ff72d0 ; Add missing space in custom.texi 2019-04-25 22:49:03 +02:00
Philipp Stephani
b6d8d34aed * doc/lispref/internals.texi (Module Values): Add a GMP example 2019-04-24 13:54:54 +02:00
Philipp Stephani
c4bacb1215 Clarify rounding mode when converting to struct timespec.
* doc/lispref/internals.texi (Module Values): Clarify that the
truncation is towards negative infinity.

* test/data/emacs-module/mod-test.c (Fmod_test_nanoseconds): Add test
function.
(emacs_module_init): Define it.

* test/src/emacs-module-tests.el (mod-test-nanoseconds): New unit test.
2019-04-24 13:41:05 +02:00
Philipp Stephani
e290a7d173 Add module functions to convert from and to big integers.
* src/module-env-27.h: Add new module functions to convert big
integers.

* src/emacs-module.h.in (emacs_mpz): Define if GMP is available.

* src/emacs-module.c (module_extract_big_integer)
(module_make_big_integer): New functions.
(initialize_environment): Use them.

* test/data/emacs-module/mod-test.c (Fmod_test_double): New test
function.
(emacs_module_init): Define it.

* test/src/emacs-module-tests.el (mod-test-double): New unit test.

* doc/lispref/internals.texi (Module Values): Document new functions.
2019-04-24 12:53:54 +02:00
Philipp Stephani
bffceab633 Add conversions to and from struct timespec to module interface.
Time values are a fundamental data type, and such conversions are hard
to implement within modules because of the various forms of time
values in Emacs Lisp.  Adding dedicated conversion functions can
significantly simplify module code dealing with times.

This approach uses nanosecond precision.  While Emacs in theory has
support for higher-precision time values, in practice most languages
and standards, such as POSIX, C, Java, and Go, have settled on
nanosecond-precision integers to represent time.

* src/emacs-module.h.in: Add header for struct timespec.

* src/module-env-27.h: Add module functions for time conversion.

* src/emacs-module.c (module_extract_time, module_make_time): New
functions.
(initialize_environment): Use them.

* test/data/emacs-module/mod-test.c (Fmod_test_add_nanosecond): New
test function.
(emacs_module_init): Define it.

* test/src/emacs-module-tests.el (mod-test-add-nanosecond/valid)
(mod-test-add-nanosecond/nil, mod-test-add-nanosecond/invalid): New
unit tests.

* doc/lispref/internals.texi (Module Values): Document time
conversion functions.
2019-04-24 11:33:52 +02:00
Michael Albinus
e8c07cae5f Remote processes cannot use a pipe process for stderr
* doc/lispref/processes.texi (Asynchronous Processes):
(Accepting Output): Remote processes cannot use a pipe process for
stderr.
2019-04-23 16:07:38 +02:00
Basil L. Contovounesios
3988e93d4b Backport: Improve pure and side-effect-free docs
For discussion, see thread starting at:
https://lists.gnu.org/archive/html/emacs-devel/2019-04/msg00316.html
* doc/lispref/customize.texi (Composite Types): Do not overspecify
:match-alternatives predicates.
* doc/lispref/eval.texi (Intro Eval): Anchor definition of "side
effect" for cross-referencing...
* doc/lispref/functions.texi (What Is a Function): ...from here.
Define what a pure function is.
* doc/lispref/internals.texi (Writing Emacs Primitives): Describe
currently preferred approach to marking primitives as pure and
side-effect-free.
* doc/lispref/symbols.texi (Standard Properties): Expand description
of pure and side-effect-free properties.

(cherry picked from commit 4430a9b54f)
2019-04-22 16:14:33 +01:00
Philipp Stephani
3b4e312cfe Improve documentation around standard error pipes (Bug#35328).
* doc/lispref/processes.texi (Asynchronous Processes): Document
existence and properties of the standard error process.
(Accepting Output): Document that one has to accept output from the
standard error process separately.
2019-04-22 16:07:27 +02:00
Basil L. Contovounesios
4430a9b54f Improve pure and side-effect-free docs
For discussion, see thread starting at:
https://lists.gnu.org/archive/html/emacs-devel/2019-04/msg00316.html
* doc/lispref/customize.texi (Composite Types): Do not overspecify
:match-alternatives predicates.
* doc/lispref/eval.texi (Intro Eval): Anchor definition of "side
effect" for cross-referencing...
* doc/lispref/functions.texi (What Is a Function): ...from here.
Define what a pure function is.
* doc/lispref/internals.texi (Writing Emacs Primitives): Describe
currently preferred approach to marking primitives as pure and
side-effect-free.
* doc/lispref/symbols.texi (Standard Properties): Expand description
of pure and side-effect-free properties.
2019-04-22 13:48:20 +01:00
Glenn Morris
d9664f0d9e Merge from origin/emacs-26
9d7e08d (origin/emacs-26) Avoid false positives and false negatives o...
75b589c Fix markup related to quoting in Info
fd6ff29 Merge branch 'emacs-26' of git.savannah.gnu.org:/srv/git/emac...
cd2204f Add a package: line to c-submit-bug-report.
a992dca ; Remove empty NEWS sections
ea67270 ; Add NEWS sections for 26.3
45b0946 ; Bump Emacs version to 26.2.50
aae8cc3 * admin/admin.el (set-version): Add NEWS headers for a .50 ve...
2019-04-21 07:51:38 -07:00
Eli Zaretskii
75b589c7d2 Fix markup related to quoting in Info
* doc/misc/sc.texi (Citations): Fix markup of '>'.
* doc/misc/mh-e.texi (Speedbar): Fix markup in a @table.
* doc/misc/calc.texi (Yacas Language Mode): Fix a typo.
* doc/emacs/mark.texi (Setting Mark): Remove duplicate
quoting.  (Bug#35202)
2019-04-21 14:56:04 +03:00
Alan Mackenzie
a85befa4aa Fix Pike Mode's autodoc doc comments style's continued lines.
* lisp/progmodes/cc-engine.el (c-forward-sws, c-backward-sws): Recognize
matches of c-doc-line-join-re as syntactic whitespace.
(c-find-decl-prefix-search): Recognize and move over matches of
c-doc-line-join-re as whitespace.
(c-find-decl-spots): Before moving backward a char, check (bobp).  Before
moving forward over a comment, check it isn't possibly a "bright" comment.

* lisp/progmodes/cc-fonts.el (c-get-doc-comment-style): New function,
extracted from c-compose-keywords-list.
(c-compose-keywords-list): Call the above new function.
(pike-font-lock-keywords, pike-font-lock-keywords-2)
(pike-font-lock-keywords-3): Call c-set-doc-comment-res.
(c-doc-line-join-re, c-doc-bright-comment-start-re, c-doc-line-join-end-ch):
New variables.
(c-set-doc-comment-re-element, c-set-doc-comment-char-list): New macros.
(c-set-doc-comment-res): New function.
(c-font-lock-doc-comments): For consistency and repeatability, in a sequence
of C++ style doc comments, don't fontify the region between BOL and the
comment marker.
(autodoc-line-join-re, autodoc-bright-comment-start-re)
(autodoc-line-join-end-ch): New variables.

* lisp/progmodes/cc-mode.el (c-doc-fl-decl-start, c-doc-fl-decl-end): New
functions.
(c-change-expand-fl-region, c-context-expand-fl-region): Call the above two
new functions for extra possibilities for the start and end of a construct.

* doc/misc/cc-mode.texi (Doc Comments): Add a sentence drawing attention to
the possibility of fontifying constructs within a doc comment.
2019-04-20 11:30:55 +00:00
Eli Zaretskii
f90a3360d8 Backport doc improvement in ELisp manual
* doc/lispref/processes.texi (Accepting Output): Backport:
document how do avoid race conditions while waiting for all of
the process's output to arrive.
2019-04-20 10:21:02 +03:00
Eli Zaretskii
280dd6c49d ; Minor improvement in documentation from recent commit
* doc/lispref/processes.texi (Asynchronous Processes): Say
explicitly that it's an error to pass non-nil value for
:stopped when starting a process.  (Bug#30460)
2019-04-19 15:59:49 +03:00
Philipp Stephani
5c5e309527 Remove :stop key from make-process.
This has never worked and caused issues such as Bug#30460.

* src/process.c (Fmake_process): Don't accept :stop key any more.
(syms_of_process): Define needed symbol 'null'.

* test/src/process-tests.el (make-process/stop): New unit test.

* doc/lispref/processes.texi (Asynchronous Processes): Remove :stop
key from manual.
2019-04-19 14:03:16 +02:00
Philipp Stephani
e712a8fe09 Update module documentation for bignum support.
* doc/lispref/internals.texi (Module Values): Update documentation for
'make_integer' and 'extract_integer' for bignum support.
2019-04-18 23:31:00 +02:00
Glenn Morris
0797897f34 Merge from origin/emacs-26
a1c53d4 (origin/emacs-26) * admin/admin.el (make-manuals-dist--1): Up...
d0f745f Document some compilation-mode faces
23ccba0 Mention the assignment form in "Copyright Assignment"
0f5568e Fix confusing wording in the user manual
70ec392 Fix the MSDOS build when running under CWSDPMI
7a608fc * lisp/progmodes/python.el: Be more careful about temp file r...
2019-04-17 09:32:40 -07:00
Glenn Morris
632f489f7d Merge from origin/emacs-26
266c622 Downcase charset
92f3459 Update for Emacs-26
beb4eac * doc/lispref/display.texi (Showing Images): Fix a typo.  (Bu...
2019-04-17 09:32:39 -07:00
Robert Pluim
d0f745f67a Document some compilation-mode faces
* doc/emacs/building.texi (Compilation Mode): Describe faces
available to affect appearance of compilation-mode buffers.
2019-04-16 18:07:31 +02:00
Eli Zaretskii
23ccba0cf9 Mention the assignment form in "Copyright Assignment"
* doc/emacs/trouble.texi (Copyright Assignment): Mention the
copyright assignment form explicitly.  Suggested by Konstantin
Kharlamov <hi-angel@yandex.ru>.
2019-04-16 18:32:18 +03:00
Eli Zaretskii
0f5568ea7c Fix confusing wording in the user manual
* doc/emacs/maintaining.texi (VC Undo): Remove a potentially
inaccurate, outdated, and/or confusing sentence.  (Bug#35290)
2019-04-16 18:27:37 +03:00
Michael Albinus
ba6ed9a48d * doc/misc/tramp.texi: Fix direntry. 2019-04-15 09:35:31 +02:00
Michael Albinus
98a5958f77 Explain ad-hoc multi-hop in the Tramp Quick Start Guide
* doc/misc/tramp.texi (Quick Start Guide): New section "Combining
@option{ssh} or @option{plink} with @option{su} or @option{sudo}".
2019-04-14 19:53:02 +02:00
Paul Eggert
d209d64622 Update from Gnulib
This incorporates:
2019-04-07 Add copyright notices in several files
* build-aux/config.sub, doc/misc/texinfo.tex, lib/_Noreturn.h:
Copy from Gnulib.
* lib/gnulib.mk.in: Regenerate.
2019-04-13 21:13:57 -07:00
Michael Albinus
181e0c0967 * doc/misc/tramp.texi: Fix minor glitches. 2019-04-13 12:34:13 +02:00
Eli Zaretskii
d82d4fb915 Improve documentation of JSONRPC
* doc/lispref/text.texi (JSONRPC Overview)
(Process-based JSONRPC connections)
(JSONRPC JSON object format): Fix wording and markup.  Add
indexing.
2019-04-13 10:42:14 +03:00
Eli Zaretskii
2475687d2f Improve documentation changes of a recent commit
* doc/lispref/text.texi (Parsing JSON): Improve wording of the
documentation of 'json-parse-string' and 'json-parse-buffer'.
* src/json.c (Fjson_parse_string, Fjson_parse_buffer): Doc fix.
(Bug#34763)
2019-04-13 10:07:15 +03:00
Dmitry Gutov
b41c1ca10f Add :array-type option to json-parse-string
* src/json.c (enum json_array_type): New type.
(struct json_configuration): New field array_type.
(json_parse_args): Rename the last argument.  Handle the
:array-type keyword argument (bug#32793).
(Fjson_parse_string): Update the docstring accordingly.
(json_to_lisp): Handle the case of :array-type being `list'.  Add
a call to 'rarely_quit' inside the loop.
(syms_of_json): Define new symbols.
(Fjson_serialize, Fjson_insert, Fjson_parse_string)
(Fjson_parse_buffer): Update the config struct initializers.
2019-04-13 01:33:42 +03:00
Eli Zaretskii
beb4eac654 * doc/lispref/display.texi (Showing Images): Fix a typo. (Bug#35240 2019-04-12 21:46:25 +03:00
Glenn Morris
a25f4d6ef5 Merge from origin/emacs-26
818a68b * etc/HISTORY: Update for Emacs 26.2 release.
e04aa5a ; ChangeLog.3 update
8297e97 * etc/AUTHORS: Update.
8582936 Improve documentation of 'read-command'
dc81c05 ; * CONTRIBUTE: Mention where to ask for the copyright assign...
b77723a Fix an outdated URL in a comment
2019-04-12 07:51:35 -07:00
Glenn Morris
fe6e5af4dd Merge from origin/emacs-26
cb5a340 Update nxml-mode.texi: completion now gives xmlns="-!-"
2019-04-12 07:51:34 -07:00
Eli Zaretskii
85829363f7 Improve documentation of 'read-command'
* src/minibuf.c (Fread_command): Document the return value
when DEFAULT-VALUE is nil and the user enters nothing.
* doc/lispref/minibuf.texi (High-Level Completion): Document
the printed representation of a symbol whose name is empty.
(Bug#3522)
2019-04-11 17:00:44 +03:00
Alex Branham
559f64a0b6 Backport: Update documentation for indent-relative functions
* lisp/indent.el (indent-relative): Document what happens when there
  is no previous nonblank line.
* doc/lispref/text.texi (Relative Indent): Document
  indent-relative-first-indent-point instead of obsolete
  indent-relative-maybe. Fix documentation of which argument from
  'indent-relative' is used.

Bug#34858

(cherry picked from commit 10cd65878c)
2019-04-11 11:41:06 +01:00
Noam Postavsky
cb5a340823 Update nxml-mode.texi: completion now gives xmlns="-!-"
* doc/misc/nxml-mode.texi (Completion): As of 2016-01-16 "* lisp/nxml:
Use standard completion; it also works for company-mode", completing
an attribute when there is only one candidate inserts both quotes.
Update the example accordingly.
2019-04-10 19:33:21 -04:00
Glenn Morris
61cdadf5bc Merge from origin/emacs-26
5999401 (origin/emacs-26) Note that choose-completion-string-function...
8d2f1df Address name conflicts in EIEIO documentation (bug#31660)
2019-04-10 09:07:16 -07:00
Glenn Morris
7f88eecd7c Merge from origin/emacs-26
a5da653 * src/editfns.c (Fnarrow_to_region): Doc fix.  (Bug#35163)
646d33d Fix doc strings of 'vc-version-diff' and 'vc-version-ediff'
a30a6c3 Improve documentation of set-window-start
92ce2dd Improve documentation of window parameters
6dc42c5 Improve commentary in frame.el
a8cffcf Fix typo in a doc string
9e79f19 (emacs-26) ; * src/fontset.c (set-fontset-font): Use uppercas...

# Conflicts:
#	lisp/vc/vc.el
2019-04-10 09:07:16 -07:00
Gemini Lasswell
8d2f1df51a Address name conflicts in EIEIO documentation (bug#31660)
* doc/misc/eieio.texi (Quick Start): Rename the class used in the
example from 'record' to 'person'.
(Building Classes): Advise user to check for name conflicts before
naming a class.  Add a missing apostrophe.
(Making New Objects): Correct grammar.  Rename the class used in the
example from 'record' to 'my-class'.
2019-04-09 18:53:43 -04:00
Michael Albinus
f28c209055 Fix typo in tramp.texi
* doc/misc/tramp.texi (Change file name syntax)
(Frequently Asked Questions): '.' or ',' must follow xref.
2019-04-07 10:10:52 +02:00
Glenn Morris
19919e0f32 * doc/misc/tramp.texi (Remote processes): '.' or ',' must follow xref. 2019-04-06 12:57:44 -07:00
Eli Zaretskii
a30a6c3019 Improve documentation of set-window-start
* doc/lispref/windows.texi (Window Start and End):
* src/window.c (Fset_window_start): Document that reliable
setting of a window start position requires to adjust point to
be visible.  (Bug#34038)
2019-04-06 11:22:13 +03:00
Eli Zaretskii
92ce2dd48b Improve documentation of window parameters
* doc/lispref/windows.texi (Cyclic Window Ordering): Describe
the effect of the 'other-window' window parameter.
(Window Parameters): Improve the descriptions of window
parameters.  Move the detailed description of the
'quit-restore' window parameter from here...
(Quitting Windows): ...to here.  (Bug#35063)
2019-04-06 11:04:37 +03:00
Alex Branham
10cd65878c
Update documentation for indent-relative functions
* lisp/indent.el (indent-relative): Document what happens when there
  is no previous nonblank line.
* doc/lispref/text.texi (Relative Indent): Document
  indent-relative-first-indent-point instead of obsolete
  indent-relative-maybe. Fix documentation of which argument from
  'indent-relative' is used.

Bug#34858
2019-04-05 19:48:21 -05:00
Glenn Morris
652f5d4922 * doc/emacs/emacs.texi (Acknowledgments): Remove duplicate. 2019-04-05 17:03:04 -07:00