Commit graph

78482 commits

Author SHA1 Message Date
Andrea Corallo
48d43f579e * Improve constraint simplification logic in comp-cstr.el
* lisp/emacs-lisp/comp-cstr.el (with-comp-cstr-accessors):
	Simplify.
	(comp-cstr-empty-p): New Funchion.
	(comp-split-pos-neg): Minor.
	(comp-normalize-typeset): Logic update.
	(comp-union-typesets): Minor.
	(comp-intersect-two-typesets): New functio.
	(comp-intersect-typesets): Logic update.
	(comp-range-union, comp-range-intersection): Minor.
	(comp-cstr-union-homogeneous, comp-cstr-union-1-no-mem)
	(comp-cstr-intersection-homogeneous)
	(comp-cstr-intersection-no-mem, comp-cstr-negation)
	(comp-type-spec-to-cstr, comp-cstr-to-type-spec): Logic update.

* lisp/emacs-lisp/comp-cstr.el (with-comp-cstr-accessors): Simplify.
2020-12-21 20:21:33 +01:00
Andrea Corallo
bad18f509d * Improve comp-fwprop pass
Wire-up comp-cstr.el routines in fwprop and constraint mvars also on
the else side of branches.

	* lisp/emacs-lisp/comp.el (comp-emit-assume)
	(comp-cond-cstr-target-mvar, comp-cond-cstr-func)
	(comp-fwprop-insn): Logic update.
	(comp-mvar-value-vld-p, comp-mvar-propagate, comp-fwprop-call):
	Handle neg slot.
2020-12-21 19:00:39 +01:00
Andrea Corallo
2a117ad3d7 * Add mvar pretty print support when dumping LIMPLE
* lisp/emacs-lisp/comp.el (comp-prettyformat-mvar)
	(comp-prettyformat-insn): New function.
	(comp-log-func): Update to use `comp-prettyformat-insn'.
	(comp-finalize-phis): Change LIMPLE phi format to ease
	`comp-prettyformat-insn' destructuring.
2020-12-21 18:23:46 +01:00
Andrea Corallo
f244c21902 Merge remote-tracking branch 'savannah/master' into HEAD 2020-12-20 22:08:42 +01:00
Andrea Corallo
72c1a41573 Have native compiler always preserve multibyte strings (bug#45342)
* lisp/emacs-lisp/comp.el (comp-final): Escape multibyte string
	when offloading compilation to child process.
	* test/src/comp-test-funcs.el (comp-test-45342-f): New function
	* test/src/comp-tests.el (bug-45342): New test
2020-12-20 21:21:39 +01:00
Juri Linkov
1a7033f1f3 * lisp/simple.el (goto-line-read-args): Use number-at-point (bug#45199)
* lisp/subr.el (goto-char--read-natnum-interactive): Add the value of
point to the end of default values, and move function slightly higher.
2020-12-20 22:05:51 +02:00
Michael Albinus
ecb5ebf156 Improve make-process in Tramp
* doc/misc/tramp.texi (Remote processes): Remove INSIDE_EMACS
restriction.
(Frequently Asked Questions, External packages): Add indices.

* etc/NEWS: 'start-process-shell-command' and
'start-file-process-shell-command' do not support the old calling
conventions any longer.

* lisp/subr.el (start-process-shell-command)
(start-file-process-shell-command): Remove old calling conventions.

* lisp/net/tramp-compat.el (remote-file-error): Remove, it isn't
necessary.

* lisp/net/tramp.el (tramp-handle-make-process): Remove special shell
handling.  Support environment variables.

* test/lisp/net/tramp-tests.el
(tramp--test--deftest-direct-async-process): Skip for mock method.
(tramp--test-async-shell-command): Suppress `shell-command-sentinel'.
(tramp-test32-shell-command, tramp-test33-environment-variables):
Adapt tests.
(tramp-test32-shell-command-direct-async)
(tramp-test33-environment-variables-direct-async): New tests.
2020-12-20 19:45:11 +01:00
Basil L. Contovounesios
1a0a11f7d2 Inhibit buffer hooks in temporary buffers
Give get-buffer-create an optional argument to inhibit buffer hooks
in internal or temporary buffers for efficiency (bug#34765).

* etc/NEWS: Announce new parameter of get-buffer-create and
generate-new-buffer, and that with-temp-buffer and with-temp-file
now inhibit buffer hooks.

* doc/lispref/buffers.texi (Buffer Names): Fix typo.
(Creating Buffers): Document new parameter of get-buffer-create and
generate-new-buffer.
(Buffer List, Killing Buffers): Document when buffer hooks are
inhibited.
(Current Buffer):
* doc/lispref/files.texi (Writing to Files): Document that
with-temp-buffer and with-temp-file inhibit buffer hooks.
* doc/lispref/internals.texi (Buffer Internals): Document
inhibit_buffer_hooks flag.  Remove stale comment.
* doc/misc/gnus-faq.texi (FAQ 5-8):
* lisp/simple.el (shell-command-on-region): Fix indentation.

* lisp/files.el (kill-buffer-hook): Document when hook is inhibited.
(create-file-buffer):
* lisp/gnus/gnus-uu.el (gnus-uu-unshar-article):
* lisp/international/mule.el (load-with-code-conversion):
* lisp/mh-e/mh-xface.el (mh-x-image-url-fetch-image):
* lisp/net/imap.el (imap-open):
* lisp/net/mailcap.el (mailcap-maybe-eval):
* lisp/progmodes/flymake-proc.el
(flymake-proc--read-file-to-temp-buffer)
(flymake-proc--copy-buffer-to-temp-buffer): Simplify.

* lisp/subr.el (generate-new-buffer): Forward new optional argument
to inhibit buffer hooks to get-buffer-create.
(with-temp-file, with-temp-buffer, with-output-to-string):
* lisp/json.el (json-encode-string): Inhibit buffer hooks in buffer
used.

* src/buffer.c (run_buffer_list_update_hook): New helper function.
(Fget_buffer_create): Use it.  Add optional argument to set
inhibit_buffer_hooks flag instead of comparing the buffer name to
Vcode_conversion_workbuf_name.  All callers changed.
(Fmake_indirect_buffer, Frename_buffer, Fbury_buffer_internal)
(record_buffer): Use run_buffer_list_update_hook.
(Fkill_buffer): Document when buffer hooks are inhibited.  Use
run_buffer_list_update_hook.
(init_buffer_once): Inhibit buffer hooks in Vprin1_to_string_buffer.
(Vkill_buffer_query_functions, Vbuffer_list_update_hook): Document
when hooks are inhibited.
* src/buffer.h (struct buffer): Update inhibit_buffer_hooks
commentary.
* src/coding.h (Vcode_conversion_workbuf_name):
* src/coding.c (Vcode_conversion_workbuf_name): Make static again
since it is no longer needed in src/buffer.c.
(code_conversion_restore, code_conversion_save, syms_of_coding):
Prefer boolean over integer constants.
* src/fileio.c (Finsert_file_contents): Inhibit buffer hooks in
" *code-converting-work*" buffer.
* src/window.c (Fselect_window): Fix grammar.  Mention
window-selection-change-functions alongside buffer-list-update-hook.

* test/src/buffer-tests.el: Fix requires.
(buffer-tests-inhibit-buffer-hooks): New test.
2020-12-20 17:32:24 +00:00
Eric Abrahamsen
87b82a1969 Fix default value of gnus-registry-register-all: should be t
* lisp/gnus/gnus-registry.el (gnus-registry-register-all): This was
meant to default to t; only an oversight during code review left it as
nil.
2020-12-19 15:26:48 -08:00
Dmitry Gutov
32e781b2f1 Jamie Beardslee <beardsleejamie@gmail.com>
* lisp/progmodes/project.el (project-execute-extended-command):
New command.
(project-prefix-map): Binding for it.

Copyright-paperwork-exempt: yes
2020-12-20 00:16:48 +02:00
Juri Linkov
b9edbaed01 * lisp/image-mode.el: Use one timer and lock for slow remote calls (bug#45256)
* lisp/image-mode.el (image-auto-resize-timer): New variable.
(image--window-state-change): Cancel previous timer and
remember new timer in image-auto-resize-timer.
(image--window-state-change): New variable.
(image-fit-to-window): When image-fit-to-window-lock is nil,
call image-toggle-display-image ignoring 'remote-file-error'.
2020-12-19 22:19:18 +02:00
Juri Linkov
5fe04f6b07 No need to set isearch-input-method-function in isearch-transient-input-method 2020-12-19 22:12:32 +02:00
Stefan Kangas
7c3d3b8335 Convert apropos-internal from C to Lisp (Bug#44529)
This runs insignificantly faster in C, and is already fast enough on
reasonably modern hardware.  We might as well lift it to Lisp.
This benchmark can be used to verify:

  (benchmark-run 10 (apropos-command "test"))
  => (0.12032415399999999 2 0.014772391999999995) ; C
  => (0.13513192100000002 2 0.017216643000000004) ; Lisp

* lisp/subr.el (apropos-internal): New defun, converted from C.
* src/keymap.c (Fapropos_internal): Remove defun.
(apropos_accum): Remove function.
(apropos_predicate, apropos_accumulate): Remove variables.
(syms_of_keymap): Remove defsubr for Fapropos_internal, and
definitions of the above variables.
* test/src/keymap-tests.el (keymap-apropos-internal)
(keymap-apropos-internal/predicate): Move tests from here...
* test/lisp/subr-tests.el (apropos-apropos-internal)
(apropos-apropos-internal/predicate): ...to here.
2020-12-19 19:54:46 +01:00
Stefan Kangas
34a73666d9 Shorten some over-wide docstrings in functions and macros
* lisp/allout-widgets.el (allout-widgets-tally-string):
* lisp/array.el (array-mode):
* lisp/calc/calc-units.el (calc-spn):
* lisp/cedet/ede/generic.el (ede-generic-new-autoloader):
* lisp/cedet/semantic/analyze.el (semantic-analyze-find-tag-sequence-default)
(semantic-analyze-find-tag-sequence):
* lisp/cedet/semantic/bovine/c.el (semantic-c-evaluate-symbol-for-hideif):
* lisp/cedet/semantic/bovine/make.el (semantic-lex-make-command):
* lisp/cedet/semantic/db-typecache.el (semanticdb-typecache-include-tags):
* lisp/cedet/semantic/doc.el (semantic-documentation-for-tag):
* lisp/cedet/semantic/tag-ls.el (semantic--tag-attribute-similar-p):
* lisp/emacs-lisp/advice.el (ad-map-arglists):
* lisp/emacs-lisp/bytecomp.el (byte-constant2)
(byte-save-restriction, byte-catch-OBSOLETE, byte-unwind-protect):
* lisp/emacs-lisp/cl-generic.el (cl-generic-combine-methods):
* lisp/emacs-lisp/seq.el (seq-partition, seq-set-equal-p)
(seq-filter):
* lisp/faces.el (face-attribute-specified-or, face-equal):
* lisp/info.el (Info-prev-reference-or-link)
(Info-next-reference-or-link):
* lisp/isearch.el (with-isearch-suspended):
* lisp/kmacro.el (kmacro-step-edit-macro, kmacro-set-counter):
* lisp/org/org-agenda.el (org-agenda-filter-by-category):
* lisp/ses.el (ses-cell-symbol):
* lisp/w32-fns.el (w32-shell-dos-semantics): Shorten doc strings to
not exceed 80-column limits.  (Bug#44858)
2020-12-19 18:21:06 +01:00
Stefan Kangas
f88a7897a8 Shorten over-wide docstrings in variables
* lisp/cedet/semantic/util-modes.el (semantic-highlight-func-popup-menu):
* lisp/emacs-lisp/elint.el (elint-top-form-logged):
* lisp/erc/erc-dcc.el (erc-dcc-list):
* lisp/expand.el (expand-pos):
* lisp/font-lock.el (cpp-font-lock-keywords-source-depth):
* lisp/gnus/gnus-sum.el (gnus-sort-gathered-threads-function):
* lisp/gnus/message.el (message-cite-style-thunderbird):
* lisp/gnus/nnmh.el (nnmh-be-safe):
* lisp/gnus/nntp.el (nntp-open-telnet-envuser):
* lisp/international/mule-cmds.el (current-transient-input-method):
* lisp/net/tramp.el (tramp-file-name-structure):
* lisp/org/ob-R.el (org-babel-R-write-object-command):
* lisp/org/org-attach.el (org-attach-after-change-hook):
* lisp/org/org.el (org-stamp-time-of-day-regexp):
* lisp/progmodes/elisp-mode.el (elisp-xref-find-def-functions):
* lisp/progmodes/ruby-mode.el (ruby-block-mid-re):
* lisp/progmodes/verilog-mode.el (verilog-cache-enabled):
* lisp/term.el (term-scroll-end):
* lisp/textmodes/table.el (table-command-remap-alist)
(table-inhibit-auto-fill-paragraph, table-command-remap-alist):
* lisp/vc/ediff-diff.el (ediff-ignore-similar-regions):
* lisp/vc/ediff-wind.el (ediff-mouse-pixel-threshold):
* lisp/vc/smerge-mode.el (smerge-refine-ignore-whitespace):
* lisp/vc/vc.el (vc-log-short-style):
* lisp/view.el (view-exit-action): Shorten doc strings to not exceed
80-column limits.  (Bug#44858)
2020-12-19 18:21:06 +01:00
Stefan Kangas
5ab5c38987 Shorten over-wide docstrings in defcustoms
* lisp/calc/calc.el (calc-embedded-announce-formula-alist)
(calc-embedded-open-formula, calc-embedded-close-formula)
(calc-matrix-mode):
* lisp/cedet/semantic/imenu.el (semantic-imenu-sort-bucket-function):
* lisp/emacs-lisp/find-func.el (find-feature-regexp):
* lisp/emulation/cua-base.el (cua-paste-pop-rotate-temporarily):
* lisp/emulation/viper-init.el (viper-fast-keyseq-timeout)
(viper-related-files-and-buffers-ring):
* lisp/emulation/viper-keym.el (viper-want-ctl-h-help):
* lisp/gnus/gnus-art.el (gnus-article-banner-alist):
* lisp/gnus/gnus-group.el (gnus-keep-same-level):
* lisp/gnus/gnus-score.el (gnus-adaptive-word-length-limit):
* lisp/gnus/gnus-sum.el (gnus-inhibit-user-auto-expire):
* lisp/gnus/gnus-uu.el (gnus-uu-ignore-files-by-type)
(gnus-uu-do-not-unpack-archives)
(gnus-uu-unmark-articles-not-decoded)
(gnus-uu-correct-stripped-uucode, gnus-uu-save-in-digest)
(gnus-uu-post-include-before-composing):
* lisp/gnus/gnus.el (gnus-use-long-file-name)
(gnus-install-group-spam-parameters):
* lisp/gnus/message.el (message-cite-style):
* lisp/gnus/nnmail.el
(nnmail-split-fancy-with-parent-ignore-groups)
(nnmail-cache-ignore-groups):
* lisp/ido.el (ido-rewrite-file-prompt-functions):
* lisp/mail/feedmail.el (feedmail-fiddle-plex-user-list)
(feedmail-spray-address-fiddle-plex-list):
* lisp/mh-e/mh-e.el (mh-annotate-msg-hook):
* lisp/net/imap.el (imap-process-connection-type):
* lisp/net/rcirc.el (rcirc-omit-threshold):
* lisp/net/tramp-sh.el (tramp-copy-size-limit):
* lisp/nxml/nxml-mode.el (nxml-default-buffer-file-coding-system):
* lisp/obsolete/landmark.el (landmark-max-stall-time):
* lisp/obsolete/tls.el (tls-checktrust):
* lisp/org/org-indent.el
(org-indent-mode-turns-off-org-adapt-indentation)
(org-indent-mode-turns-on-hiding-stars):
* lisp/org/org-protocol.el (org-protocol-project-alist):
* lisp/progmodes/cc-vars.el (c-doc-comment-style):
* lisp/progmodes/cperl-mode.el (cperl-indent-subs-specially):
* lisp/progmodes/flymake-proc.el (flymake-proc-allowed-file-name-masks):
* lisp/progmodes/hideif.el (hide-ifdef-expand-reinclusion-protection):
* lisp/simple.el (minibuffer-history-case-insensitive-variables):
* lisp/tab-bar.el (tab-bar-close-last-tab-choice):
* lisp/textmodes/reftex-vars.el
(reftex-special-environment-functions):
* lisp/vc/ediff-init.el (ediff-startup-hook, ediff-cleanup-hook)
(ediff-metachars):
* lisp/vc/ediff-merg.el (ediff-show-clashes-only):
* lisp/vc/ediff-mult.el (ediff-default-filtering-regexp): Shorten doc
strings to not exceed 80-column limits.  (Bug#44858)
2020-12-19 18:21:06 +01:00
Mattias Engdegård
4c7df434a0 Correct units and spacing in memory-report
* lisp/emacs-lisp/memory-report.el (memory-report--format):
Use IEC unit prefixes and a space before.
2020-12-19 16:48:02 +01:00
Eli Zaretskii
64d97212f4 Fix over-wide doc strings
* lisp/vc/ediff-init.el (ediff-before-flag-bol)
(ediff-after-flag-eol, ediff-before-flag-mol):
* lisp/org/org-ctags.el (org-ctags-open-link-functions):
* lisp/mail/feedmail.el (feedmail-sendmail-f-doesnt-sell-me-out):
* lisp/language/ethio-util.el (ethio-use-three-dot-question)
(ethio-quote-vowel-always, ethio-W-sixth-always):
* lisp/gnus/nnvirtual.el (nnvirtual-mapping-table)
(nnvirtual-mapping-offsets, nnvirtual-mapping-reads)
(nnvirtual-mapping-marks, nnvirtual-info-installed):
* lisp/gnus/gnus.el (charset):
* lisp/gnus/deuglify.el (gnus-outlook-deuglify-unwrap-stop-chars)
(gnus-outlook-deuglify-no-wrap-chars)
(gnus-outlook-deuglify-attrib-cut-regexp): Fix doc strings to not
exceed 80-column limits.  (Bug#44858)
2020-12-19 13:18:11 +02:00
Andrea Corallo
49f81d6a53 Fix Windows libgccjit library name (bug#45303).
* lisp/term/w32-win.el (dynamic-library-alist): Fix Windows
	libgccjit library name.
	* src/emacs.c (syms_of_emacs): Likewise.
2020-12-19 07:40:24 +01:00
Roland Winkler
9f7e0a3e7d bibtex-mode: Permit user-defined schemes for sorting entries.
* lisp/textmodes/bibtex.el (bibtex-maintain-sorted-entries):
New allowed value (INDEX-FUN PREDICATE).
(bibtex-entry-index, bibtex-lessp): Use it.
(bibtex-init-sort): Rename from bibtex-init-sort-entry-class-alist.
2020-12-18 22:26:40 -06:00
Stefan Monnier
c7fdc17c16 * lisp/emacs-lisp/package.el (package-quickstart-refresh): Fix last change
Actually allow byte-compiling the file.
Reported by Basil L. Contovounesios <contovob@tcd.ie>.
2020-12-18 18:29:52 -05:00
Glenn Morris
8d2d8d7f53 Merge from origin/emacs-27
48b9c47805 Minor fixes in authors.el and in tarball-making instructions
d7a4ceaa1e ; Add a new item to TODO
64fe805b19 Improve documentation of 'query-replace'
7cacf5da47 Update to Org 9.4.3

# Conflicts:
#	admin/authors.el
2020-12-18 08:55:06 -08:00
João Távora
fdaaf886b7 Document that flymake-diag-region saves match data
The typical use of this function (which is parsing compiler diagnostic
messages), lends itself too easily to one the problems in bug#29193.
Make it a friendlier API.

* doc/misc/flymake.texi (Flymake utility functions): Document that
flymake-diag-region saves match data.

* lisp/progmodes/flymake.el (flymake-diag-region): Document that
this saves match data.
2020-12-18 15:38:35 +00:00
Stefan Monnier
eeade2b647 * lisp/emacs-lisp/package.el: Byte compile the quickstart file
Earlier tests had found problems when byte-compiling the file,
but later investigations indicated the problem was not
directly related.  The performance difference is appreciable.

(package-quickstart-refresh): Byte compile the file.
(package-activate-all): Load byte-compiled version if available.
(package--quickstart-maybe-refresh): Delete the byte-compiled file as well.
2020-12-18 10:02:15 -05:00
Stefan Monnier
eaea03546a * lisp/progmodes/which-func.el (which-func-update): Bind non-essential 2020-12-18 09:16:29 -05:00
Mattias Engdegård
46394dff7f Follow good regexp practice
These were found by relint 1.19.

* lisp/help-fns.el (help-fns--first-release): Use string-end instead
of line-end when matching a file name.
* lisp/org/ob-core.el (org-babel--string-to-number): Put hyphen last
in alternative.
* lisp/org/org-agenda.el (org-agenda-filter): Escape '+' correctly.
2020-12-18 14:35:09 +01:00
Michael Albinus
0ad1c0d51c * lisp/net/tramp.el (tramp-handle-make-process): Handle shell commands. 2020-12-18 13:33:31 +01:00
João Távora
95eaf45ddf Save match data in flymake-diag-region (bug#29193)
* lisp/progmodes/flymake.el (flymake-diag-region): Move
save-match-data up.
2020-12-18 11:29:28 +00:00
Lars Ingebrigtsen
c5f2eb56c0 Fix previous frame-focus server.el change
* lisp/server.el (server-execute): Always give Emacs focus,
whether we open a new frame or not.
2020-12-18 10:24:48 +01:00
Eric Abrahamsen
e3f83a89aa Fix regexp in IMAP search-string preparation
* lisp/gnus/gnus-search.el (gnus-search-run-search): This was failing
to catch all of X-GM-RAW.
2020-12-17 19:16:52 -08:00
Dmitry Gutov
fa4c2768cf flymake-diag-region: Fix the recent test breakage
* lisp/progmodes/flymake.el (flymake-diag-region):
Make sure to save the match data (bug#29193).
2020-12-18 04:05:18 +02:00
Stefan Monnier
5ada3eecec * lisp/org/org-refile.el (org-copy): Fix missing obsoletion version 2020-12-17 18:21:47 -05:00
Michael Albinus
ddff5d3d87 Some minor Tramp changes
* doc/lispref/os.texi (Timers): Speak about `remote-file-error'.

* doc/misc/tramp.texi (Frequently Asked Questions): Speak about
`remote-file-error'.
(External packages): New subsection "Timers".

* lisp/net/tramp-adb.el (tramp-adb-handle-make-process):
* lisp/net/tramp-sh.el (tramp-sh-handle-make-process): Adapt error
function.  Handle coding.

* lisp/net/tramp.el (tramp-handle-make-process): Adapt error function.
2020-12-17 18:52:23 +01:00
Stefan Kangas
d428cc1b92 Remove incorrect comment from erc-goodies.el
* lisp/erc/erc-goodies.el (erc-move-to-prompt-setup): Remove incorrect
comment; the XEmacs compat code has been removed.
2020-12-17 19:19:57 +01:00
Lars Ingebrigtsen
526abadd07 Fix fallback use of write-file in ido-mode
* lisp/ido.el (ido-file-internal): Make `write-file' respect the
directory we've navigated to (bug#28513).
2020-12-17 12:32:36 +01:00
Philipp Stephani
7fad959114 Ensure that byte compilation works for relative files (Bug#45287).
* lisp/emacs-lisp/bytecomp.el (byte-compile-file): Don’t fail if
target filename doesn’t contain a directory name.

* test/lisp/emacs-lisp/bytecomp-tests.el
(bytecomp-tests--target-file-no-directory): New unit test.
2020-12-17 12:19:27 +01:00
Lars Ingebrigtsen
32d76c0cbc Default the init file to init.el, not init
* lisp/startup.el (startup--load-user-init-file): Make the default
init file be "init.el", not "init" (bug#45197).
2020-12-17 12:17:23 +01:00
Pankaj Jangid
c51d9140be Fix resetting of gnus-pick-line-number
* lisp/gnus/gnus-sum.el (gnus-summary-read-group-1): Move setting
gnus-pick-line-number from here (bug#45269)...
(gnus-summary-prepare): To here.  This ensures that the number is
reset when regenerating the buffer, for instance when limiting it.
2020-12-16 23:34:20 +01:00
Juri Linkov
922e43ad7d Don't show minibuffer keybindings for suggestions in read-extended-command
* lisp/simple.el (read-extended-command): Use 'affixation-function'
instead of 'annotation-function'.  (Bug#45035)
(read-extended-command--affixation): New function created from
'read-extended-command--annotation'.
2020-12-16 23:27:11 +02:00
Juri Linkov
67fb182cfa Give affixation-function higher priority over annotation-function (bug#45234)
* doc/lispref/minibuf.texi (Completion Variables)
(Programmed Completion): Describe precedence rules
of affixation-function and annotation-function.

* lisp/minibuffer.el (completion-metadata)
(completion-extra-properties): Describe precedence rules
of affixation-function and annotation-function.
(minibuffer-completion-help): First try to apply
affixation-function, if there is no such function,
try annotation-function.
2020-12-16 23:19:46 +02:00
Bastien Guerry
7cacf5da47 Update to Org 9.4.3
Fix 
2020-12-16 19:17:58 +01:00
Harald Jörg
32d85e3079 CPerl-mode: don't treat <<>> as starting a here-doc
* lisp/progmodes/cperl-mode.el (cperl-find-pods-heres): Detect
the "<<>>" operator (Bug#42455).

* test/lisp/progmodes/cperl-mode-tests.el
(cperl-test-bug-45255): Verify that <<>> does not start a
HERE-doc.
2020-12-16 16:31:02 +01:00
E. Choroba
6eb6357423 Update short docs in cperl-mode
* lisp/progmodes/cperl-mode.el (cperl-short-docs):
Update with some missing entries.  (Bug#45254)
2020-12-16 16:22:33 +01:00
Stefan Kangas
d1b1a5c0e6 ; * lisp/play/5x5.el: Fix my last change. 2020-12-16 15:21:39 +01:00
Dmitry Gutov
fda9a2bbfd (flymake-diag-region): Fall back to (end-of-thing 'symbol)
* lisp/progmodes/flymake.el (flymake-diag-region):
Fall back to (end-of-thing 'symbol) (bug#29193).
2020-12-16 02:49:35 +02:00
Glenn Morris
cbdd48a07b Merge from origin/emacs-27
668f0a7f84 Fix point location when completing in gdb-mi.el
2dbc95063b Update to Org 9.4.2
f22856a5c5 Update to Org 9.4.1

# Conflicts:
#	doc/misc/org.texi
#	lisp/org/ob-core.el
#	lisp/org/ob-ruby.el
#	lisp/org/ob-screen.el
#	lisp/org/ol-gnus.el
#	lisp/org/ol.el
#	lisp/org/org.el
2020-12-15 09:24:21 -08:00
Glenn Morris
6a2c13280c Merge from origin/emacs-27
62a6934af9 Fix crash when using XRender and restoring image from X (b...
de032d41c6 Bind k to image-kill-buffer in doc-view-mode-map.
2020-12-15 09:23:37 -08:00
Eli Zaretskii
f3e2148310 Fix setting breakpoints in "M-x gdb" when a source file is missing
* lisp/progmodes/gdb-mi.el (gdb-get-location): Fix control flow
logic when "fullname" is not found.  Unquote and unescape the full
file name by calling gdb-mi--c-string-from-string.  FLAG is a
string, not a character.  (Bug#15051)
2020-12-15 19:19:43 +02:00
Alan Mackenzie
92c56300c3 CC Mode: Optimize for scrolling large buffers containing few braces
This fixes bug .  It particularly pertains to .h files which contain
only macro definitions.  Many of these files are to be found, for example, in
the driver sections of the Linux kernel.

* lisp/progmodes/cc-engine.el (c-beginning-of-statement-1, c-on-identifier)
(c-syntactic-skip-backward, c-find-decl-prefix-search, c-find-decl-spots)
(c-forward-name, c-back-over-list-of-member-inits)
(c-back-over-member-initializers, c-looking-at-inexpr-block)
(c-guess-basic-syntax): Give search limits to, or amend existing ones to
c-backward-syntactic-ws, c-forward-syntactic-ws, c-backward-token-2,
c-beginning-of-statement-1.
(c-determine-limit-no-macro): New function.
(c-determine-limit-get-base): Remove unlimted invocation of
c-backward-syntactic-ws.
(c-determine-limit): Exclude movement between two different macros.  Use new
function c-determine-limit-no-macro.
(c-back-over-list-of-member-inits): New parameter `limit'.

* lisp/progmodes/cc-fonts.el (c-font-lock-complex-decl-prepare)
(c-font-lock-declarations, c-font-lock-c++-using): Give search limits to, or
amend existing ones to c-backward-syntactic-ws, c-beginning-of-decl-1.

* lisp/progmodes/cc-mode.el (c-unfind-coalesced-tokens, c-before-changer)
(c-fl-decl-end): Give search limits to, or amend existing ones to
c-backward-syntactic-ws, c-forward-syntactic-ws, skip-chars-backward,
skip-chars-forward.
2020-12-15 12:14:50 +00:00
Michael Albinus
c8aad8cc11 Revert last change in tramp-maybe-open-connection)
* lisp/net/tramp-sh.el (tramp-maybe-open-connection): Revert last change,
it causes trouble.
2020-12-15 12:50:50 +01:00