Dmitry Gutov [Sun, 16 Jun 2019 00:49:46 +0000 (03:49 +0300)]
Fix regressions in xref-find-definitions and ...-other-window
* lisp/progmodes/xref.el:
(xref--display-buffer-in-other-window)
(xref--display-buffer-in-window): New functions.
(xref--show-pos-in-buf): Use them (bug#33870)
Noam Postavsky [Wed, 12 Jun 2019 11:31:23 +0000 (07:31 -0400)]
Always try to display tree-widget with images (Bug#36147)
Checking the result of display-images-p doesn't make sense if the
display capabilities when loading the file are different from the
display used to actually look at the widget (which is easily possible
now that Emacs supports both tty and graphic frames in the same
instance).
* lisp/tree-widget.el (tree-widget-image-enable): Default to t,
always. This still shows text on displays that can't show images.
Glenn Morris [Sat, 15 Jun 2019 16:50:32 +0000 (09:50 -0700)]
Merge from origin/emacs-26
f53ce87 ; ChangeLog.3 update eca2677 Fix description of 'display-buffer-in-previous-window' again ... 7be50cd Consistently use @minus{} for negative arguments
Eli Zaretskii [Sat, 15 Jun 2019 16:28:51 +0000 (19:28 +0300)]
Improve error message when dmpstruct.h needs to be updated
* src/pdumper.c (dump_cons, dump_interval_tree, dump_string)
(dump_marker, dump_overlay, dump_finalizer)
(dump_bignum, dump_float, dump_fwd_int, dump_fwd_bool)
(dump_fwd_obj, dump_fwd_buffer_obj, dump_fwd_kboard_obj)
(dump_fwd, dump_blv, dump_symbol, dump_vectorlike_generic)
(dump_hash_table, dump_buffer, dump_bool_vector, dump_subr)
(dump_vectorlike, dump_object, dump_charset) [CHECK_STRUCTS]:
Make the error message more specific where to find the comment
to CHECK_STRUCTS.
* lisp/mail/feedmail.el (feedmail-queue-send-edit-prompt-inner):
Return the helper function (instead of the symbol `helper') so
that the caller can actually call it.
* lisp/eshell/esh-cmd.el (pcomplete--here): Declare function to
avoid byte compilation warning, which is what erc-notify.el also
does in a similar situation.
Avoid printing entering/leaving messages in second stage bootstrap
* src/Makefile.in (%.elc): Default to not printing the
entering/leaving lines when compiling .el files in the second
stage of bootstrapping Emacs. V=1 will output them.
* lisp/calendar/cal-china.el (entry):
* lisp/calendar/cal-hebrew.el (entry): Suppress warning about
dynamically bound `entry', which has to be bound for
diary-chinese-anniversary and diary-hebrew-birthday to work.
These function can be used in the sexp part of users' diary files.
Michael Albinus [Sat, 15 Jun 2019 09:08:05 +0000 (11:08 +0200)]
Tag remote autorevert tests as unstable
* test/lisp/autorevert-tests.el (auto-revert--timeout):
Derive value from `auto-revert-interval'.
(auto-revert--deftest-remote): Tag it as `:unstable'.
(auto-revert-test05-global-notify, auto-revert-test06-write-file):
Suppress final newline. Use `auto-revert--timeout'.
* test/lisp/net/tramp-tests.el (tramp-test42-auto-load):
Expect a failed result if remote file access is not enabled,
as it happens while doing the test on Windows.
* src/xterm.c (x_scroll_run) [USE_CAIRO]: Use FRAME_CR_CONTEXT or surface type
for conditions to call XCopyArea rather than FRAME_X_DOUBLE_BUFFERED_P.
Set compositing operator to CAIRO_OPERATOR_SOURCE when copying image.
Michael Albinus [Fri, 14 Jun 2019 17:45:00 +0000 (19:45 +0200)]
Fix problem in remote file notification
* lisp/net/tramp-sh.el (tramp-sh-gio-monitor-process-filter)
(tramp-sh-gvfs-monitor-dir-process-filter)
(tramp-sh-inotifywait-process-filter): Do not kill the process.
Let `file-notify-rm-watch' do the job.
* test/lisp/filenotify-tests.el (file-notify-test03-events)
(file-notify-test05-file-validity)
(file-notify-test09-watched-file-in-watched-dir): Do not
special-case remote files.
* lisp/cedet/semantic/senator.el (senator-register): New class.
(register-val-jump-to, register-val-describe)
(register-val-insert): New methods.
(senator-copy-tag-to-register): Use this instead of the deprecated
registerv-make function.
* lisp/cedet/srecode/srt-mode.el (srecode/insert): Require to
avoid compilation warning about unknown slot. Remove function
declarations that point to that file.
* lisp/cedet/srecode/find.el (srecode/compile): Require to
avoid compilation warning about unknown slot. Remove function
declarations that point to that file.
* lisp/cedet/srecode/dictionary.el (srecode/fields): Require to
avoid compilation warning about unknown slot. Remove function
declarations that point to that file.
* lisp/cedet/srecode/ctxt.el (srecode/dictionary): Require to
avoid compilation warning about unknown slot. Remove function
declarations that point to that file.
Move functions from semantic.el to analyze.el to avoid warnings
* lisp/cedet/semantic.el (semantic-analyze-completion-at-point-function)
(semantic-analyze-notc-completion-at-point-function)
(semantic-analyze-nolongprefix-completion-at-point-function): Add
autoloads for the moved functions.
* lisp/cedet/semantic/analyze.el
(semantic-analyze-completion-at-point-function)
(semantic-analyze-notc-completion-at-point-function)
(semantic-analyze-nolongprefix-completion-at-point-function): Move
here from semantic.el to avoid getting compilation warnings about
unknown slot `bounds'.
Adjust erc functions after previous erc-pre-send-function change
* lisp/erc/erc-goodies.el (noncommands): Use
erc-pre-send-functions instead of the hook.
(erc-send-distinguish-noncommands): Adjust function to new interface.
* lisp/erc/erc.el (erc-send-this): Really make obsolete.
(erc-pre-send-functions): Change to a list of functions to allow
erc-goodies and erc-ring to work as before.
Obsolete erc-send-pre-hook and add new erc-pre-send-function
* lisp/erc/erc.el (erc-send-pre-hook): Make obsolete.
(erc-send-input): Ditto.
(erc-pre-send-function): New function.
(erc-send-input): Use the new function, and silence byte
compilation warning about the dynamic variable `str' used by the
now-obsolete hook.
* lisp/mail/rmailmm.el (rmail-mime-insert-bulk): Remove apparently
superfluous call to string-as-unibyte -- the buffer should be
unibyte already at this point.
Eli Zaretskii [Fri, 14 Jun 2019 06:40:40 +0000 (09:40 +0300)]
Remove failing test erroneously added in backport
* test/src/thread-tests.el (threads-test-bug33073): Remove
test which cannot work on the emacs-26 branch. Do not merge
to master. Reported by Juanma Barranquero <lekktu@gmail.com>.
* lisp/emacs-lisp/eieio-core.el (eieio--slot-name-index): Remove
comment about issuing a byte compilation warning about accessing
slots via :initarg -- it was implemented a few months later.
* lisp/cedet/semantic/chart.el (semantic/db-typecache)
(semantic/scope): Require to avoid byte compilation warnings about
undefined slots. Remove declare-functions from these packages.
* lisp/cedet/ede/linux.el (semantic/db): Require to avoid warnings
about unknown slot lexical-table, and remove declare-functions
from the now-required semantic/db.
Alan Mackenzie [Thu, 13 Jun 2019 14:07:06 +0000 (14:07 +0000)]
Depessimize bits of CC Mode for long C macros.
* lisp/progmodes/cc-engine.el (c-end-of-macro): Check for being in a
degenerate zero length "macro", when setting the macro cache.
(c-determine-+ve-limit): Add in a missing goto-char form for when start-pos is
non-nil.
(c-back-over-member-initializers): Add a search limit parameter.
* lisp/progmodes/cc-fonts.el (c-get-fontification-context): Add a search limit
to c-go-up-list-backward.
(c-font-lock-cut-off-declarators): Add a search limit to
c-back-over-member-initializers.
* lisp/progmodes/cc-mode.el (c-before-change-check-unbalanced-strings): Don't
set c-new-END to the end of logical line (which might be a long macro).
(c-after-change-mark-abnormal-strings): Calculate end-hwm in place of the
setting of c-new-END (above). Use this as a search limit rather than
c-new-END.
Fix erc-dcc server-close code and fix compilation warning
* lisp/erc/erc-dcc.el (erc-dcc-get-filter): We receive unibyte
data, so no need to convert to unibyte.
(erc-dcc-send-filter): Kill the process before killing the buffer
so that we're not queried about killing the process.
* lisp/emacs-lisp/disass.el (disassemble-1): Remove a
string-as-unibyte that probably doesn't do anything, because the
string in question should be unibyte anyway. If the assert fails,
revert the patch.
Alan Mackenzie [Thu, 13 Jun 2019 10:06:33 +0000 (10:06 +0000)]
CC Mode: replace an erroneous re-search-forward with search-forward
Move two declarations to a more suitable point in the cc-engine.el.
* lisp/progmodes/cc-engine.el (c-after-change-unmark-raw-strings): Change an
re-search-forward to search-forward.
(c-semi-lit-near-cache, c-semi-near-cache-limit): Move the declarations.
Eli Zaretskii [Thu, 13 Jun 2019 09:41:37 +0000 (12:41 +0300)]
Fix display of Hebrew text with precomposed characters
* lisp/language/hebrew.el (base): Include precomposed
Hebrew characters from the Alphabetic Presentation Forms in
the composition patterns. (Bug#36171)
Eli Zaretskii [Thu, 13 Jun 2019 08:49:30 +0000 (11:49 +0300)]
Fix text shaping of precomposed characters with HarfBuzz
* src/hbfont.c (hbfont_shape): Fix setting TO of lglyph for
the case when Lisp shape-gstring function performed some
compositions by itself. This happens with hebrew.el. See
https://lists.freedesktop.org/archives/harfbuzz/2019-June/007396.html
for the details of the problem this solves.