Commit graph

70250 commits

Author SHA1 Message Date
Stefan Monnier
97fc87a392 * lisp/vc/vc-hg.el, lisp/vc/vc-git.el: Flush the 'vc-functions' cache. 2018-01-18 20:11:34 -05:00
Juri Linkov
5ec3853326 Improve "*Process List*" and "*Local Variables*". (Bug#30016)
* lisp/files.el (save-buffers-kill-emacs): Display "*Process List*"
buffer at bottom.
(hack-local-variables-confirm): Display "*Local Variables*" buffer
at bottom.

* lisp/simple.el (process-menu-mode): Increase buffer column width
from 15 to 25.
2018-01-18 23:43:38 +02:00
Lars Ingebrigtsen
70a4f9ee21 Bind up/down in ecomplete
* lisp/ecomplete.el (ecomplete-display-matches): Allow using
up/down in addition to M-p/M-n.
2018-01-18 12:16:30 +01:00
Martin Rudalics
e462308f03 Fix some tooltip related problems
Replace 'tooltip' frame parameter with a 'tooltip' member in
the frame structure.  For GTK+ builds use 'tip_last_frame' to
find the frame for which the currently visible tooltip was
made.  For modeline help-echoing have tooltips show applicable
actions only.

* lisp/bindings.el (mode-line-default-help-echo): New function
as default value of homonymous option.
* src/dispextern.h (tip_frame, tip_window): Remove
declarations.
* src/frame.c (make_frame): Initialize new frame structure
member 'tooltip'.
(Fframe_list, other_frames): Rewrite with new macro
FRAME_TOOLTIP_P.
* src/frame.h (struct frame): New member 'tooltip'.
(FRAME_TOOLTIP_P): New macro.
* src/gtkutil.c (xg_prepare_tooltip, xg_hide_tooltip): Rewrite
using boolean return values.
* src/nsfns.m (tip_frame): Remove declaration.
* src/w32fns.c (w32_display_monitor_attributes_list)
(w32_display_monitor_attributes_list_fallback): Rewrite with
new macro FRAME_TOOLTIP_P.
(tip_last_string, tip_last_frame, tip_last_parms): New Lisp
scalars replacing Lisp vector last_show_tip_args.
(x_create_tip_frame): Set new frame's 'tooltip' structure
member to true.
(x_hide_tip): Additionally test tip_frame for liveness.
(Fx_show_tip): Handle last_show_tip_args to tip_last_frame,
tip_last_string and tip_last_parms conversion.
(syms_of_w32fns): staticpro tip_last_frame, tip_last_string
and tip_last_parms instead of last_show_tip_args.
* src/w32term.c (w32_read_socket, x_new_font): Rewrite with
new macro FRAME_TOOLTIP_P.
* src/w32term.h (tip_window): Add external declaration.
* src/xdisp.c (x_consider_frame_title, prepare_menu_bars)
(should_produce_line_number): Rewrite with new macro
FRAME_TOOLTIP_P.
(note_mode_line_or_margin_highlight): If
`mode-line-default-help-echo' specifies a function, call it to
produce help echo string.
* src/xfns.c (x_make_monitor_attribute_list)
(Fx_display_monitor_attributes_list): Rewrite with
new macro FRAME_TOOLTIP_P.
(tip_last_string, tip_last_frame, tip_last_parms): New Lisp
scalars replacing Lisp vector last_show_tip_args.
(x_create_tip_frame): Set new frame's 'tooltip' structure
member to true.
(x_hide_tip): Rewrite with additional tests of frames for
liveness and taking into account that for GTK+ tips the
reference frame is now stored in tip_last_frame instead of
tip_frame.
(Fx_show_tip): Handle last_show_tip_args to tip_last_frame,
tip_last_string and tip_last_parms conversion.  For GTK+ store
FRAME argument in tip_last-frame.
(syms_of_xfns): staticpro tip_last_frame, tip_last_string
and tip_last_parms instead of last_show_tip_args.
* src/xterm.c (x_update_begin, handle_one_xevent, x_new_font)
(x_set_window_size): Rewrite with new macro FRAME_TOOLTIP_P.
* src/xterm.h (tip_window): Add external declaration.
* etc/NEWS: Mention new modeline tooltips behavior.
2018-01-18 10:36:47 +01:00
Glenn Morris
6e9f20b3ff Small cus-start fix for custom-delayed-init-variables
* lisp/cus-start.el (custom-delayed-init-variables):
Only modify it during startup.
2018-01-16 21:20:43 -05:00
Lars Ingebrigtsen
f121b5d7f3 Introduce a variable to control ecomplete sorting
* lisp/ecomplete.el (ecomplete-sort-predicate): New variable.
(ecomplete-get-matches): Use it.
2018-01-17 00:17:23 +01:00
Alan Mackenzie
b02a06317b C++ Mode: Fontify correctly uniform initialisation with inner parentheses.
E.g.: someStruct x ( (nullptr != y) ? 3 : 4 )
Also fontify declarations of function pointers correctly.

* lisp/progmodes/cc-engine.el (c-forward-decl-or-cast-1): While testing for a
typeless declaration, additionally test the variable `got-prefix' to
recognize a function pointer in parentheses.  Allow c-fdoc-shift-type-backward
to be invoked when we have nested parens.
2018-01-16 21:59:03 +00:00
Lars Ingebrigtsen
743323e570 Add documentation to ecomplete.el
* lisp/ecomplete.el: Add doc strings and document the format.
2018-01-16 14:53:28 +01:00
Stefan Monnier
81b5131e11 * lisp/ielm.el (ielm-eval-input): Use cl-print. 2018-01-15 17:04:05 -05:00
Glenn Morris
400b72cb6e Merge from origin/emacs-26
98e5fb9bf3 (origin/emacs-26) Remove incorrect documentation in comint.el
8ba5b85161 An overdue update of src/emacs-icon.h
155b211133 Minor copyedit in ELisp manual
2018-01-15 13:53:40 -08:00
Glenn Morris
9bd8f01cd6 Merge from origin/emacs-26
2c0cfa6455 * ChangeLog.3: Update
4387bb44ae Update authors
bce51bd6f7 * lisp/gnus/message.el (message-do-auto-fill): Prevent do-...
bd2a2a1e84 Improve documentation of etags
7ba75b9637 Teach etags new interpreters for some languages
1f7f03742d * lisp/emacs-lisp/generator.el (iter-defun): Add 'doc-stri...
dbb4aac212 * lisp/emacs-lisp/syntax.el (syntax-propertize): Fix bug#2...
80463a43da Improve documentation of fill-separate-heterogeneous-words...
4bd2416d55 Fix documentation of some x-* functions
9c2b11484f Inherit query-on-exit flag to stderr process (Bug#30031)
3efb1e7def Fix Bug#30057
a9b884c60f Tag some unstable tests, and skip by default (bug#24503)

# Conflicts:
#	test/lisp/emacs-lisp/eieio-tests/eieio-tests.el
2018-01-15 13:53:40 -08:00
Charles A. Roelli
98e5fb9bf3 Remove incorrect documentation in comint.el
* lisp/comint.el (comint-interrupt-subjob, comint-kill-subjob)
(comint-quit-subjob, comint-stop-subjob): Remove incorrect
documentation.  (Bug#30079)
2018-01-15 21:14:05 +01:00
Stefan Monnier
8e05cb61a2 * lisp/mail/smtpmail.el (smtpmail-send-data-1): No string-as-multibyte
This is not needed any more since unibyte strings will be sent as-is
anyway by process-send-string.
(smtpmail-via-smtp): Avoid set-buffer-process-coding-system.
2018-01-15 13:15:12 -05:00
Stefan Monnier
fe258a4b88 (set-buffer-process-coding-system): Mark as interactive-only.
* lisp/international/mule.el (set-buffer-process-coding-system):
Mark as interactive-only.
2018-01-15 13:14:37 -05:00
Shuguang Sun
7a81586bd7 Fix Bug#29149 in dired-aux.el
* lisp/dired-aux.el (dired-shell-stuff-it): Handle remote
commands on w32 properly.  (Bug#29149)
2018-01-14 10:00:24 +01:00
Michael Albinus
9b2c3c190a Fix Bug#29149 in shell.el
* lisp/shell.el (shell): Change order of `file-local-name' and
`expand-file-name' calls.  Otherwise, the local file name
would be extended by a drive letter, even when it is a remote
file, seen from w32.  (Bug#29149)
2018-01-14 10:00:11 +01:00
Nicolas Petton
752fba992b
; * Update ldefs-boot.el 2018-01-13 22:07:12 +01:00
Shuguang Sun
7f52a102ad Fix Bug#29149 in dired-aux.el
* lisp/dired-aux.el (dired-shell-stuff-it): Handle remote
commands on w32 properly.  (Bug#29149)
2018-01-13 17:52:04 +01:00
Michael Albinus
45ebf3afc6 Fix Bug#29149 in shell.el
* lisp/shell.el (shell): Change order of `file-local-name' and
`expand-file-name' calls.  Otherwise, the local file name
would be extended by a drive letter, even when it is a remote
file, seen from w32.  (Bug#29149)
2018-01-13 17:48:10 +01:00
Michael Albinus
1a5293e724 Improve Tramp robustness
* lisp/net/tramp.el (tramp-message, tramp-process-actions)
(tramp-read-passwd, tramp-interrupt-process):
* lisp/net/tramp-adb.el (tramp-adb-maybe-open-connection):
* lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-notify-add-watch)
(tramp-gvfs-maybe-open-connection):
* lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band)
(tramp-process-sentinel)
(tramp-sh-handle-file-notify-add-watch)
(tramp-barf-if-no-shell-prompt, tramp-maybe-open-connection)
* lisp/net/tramp-smb.el (tramp-smb-handle-copy-directory)
(tramp-smb-handle-file-acl, tramp-smb-handle-set-file-acl)
(tramp-smb-maybe-open-connection): Use process property rather
than connection property "vector".

* lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-notify-add-watch):
Fix scoping error.  Let error traces use process buffer.

* lisp/net/tramp-sh.el (tramp-sh-handle-file-notify-add-watch):
Move "inotifywait" up.  GVFS based monitoring is not stable.
Let error traces use process buffer.
(tramp-sh-gvfs-monitor-dir-process-filter): Check more error
messages.
(tramp-get-remote-gvfs-monitor-dir): Search also for "gio".

* lisp/net/tramp.el (tramp-get-debug-buffer):
Use `special-mode-map' as parent map in debug buffer.
(tramp-message): Ensure, that proper process buffer is dumped
in error case.
2018-01-13 12:07:28 +01:00
Nicolas Petton
e9e32d3475
; * Update ldefs-boot.el 2018-01-12 22:53:44 +01:00
Katsumi Yamaoka
bce51bd6f7 * lisp/gnus/message.el (message-do-auto-fill): Prevent do-auto-fill from
adding extra citation mark (bug#29767, but it is a different bug).
2018-01-12 03:54:07 +00:00
Juri Linkov
30e6e312d9 * lisp/frame.el (toggle-frame-maximized/fullscreen): Add frame arg.
(Bug#29986)
2018-01-12 00:14:35 +02:00
Juri Linkov
ad283dfb22 * lisp/windmove.el (windmove-default-keybindings): Allow list of modifiers.
(Bug#29985)
2018-01-12 00:10:39 +02:00
Stefan Monnier
ccedc6797e * lisp/mail/smtpmail.el: Use lexical-binding and cl-generic
(smtpmail-auth-supported): Mark it as non-constant.
(smtpmail-try-auth-methods): Remove unused var 'ret'.
Test non-nullness of mech user and password before calling
smtpmail-try-auth-method.
(smtpmail-try-auth-method): Make it into a generic function.
(smtpmail-via-smtp): Remove unused var 'response-code'.
2018-01-11 11:56:43 -05:00
Stefan Monnier
fe15532eef * lisp/org/org-element.el: Add comment about use of internal functions 2018-01-11 11:33:03 -05:00
Stefan Monnier
1f7f03742d * lisp/emacs-lisp/generator.el (iter-defun): Add 'doc-string' prop. 2018-01-11 11:24:38 -05:00
Stefan Monnier
dbb4aac212 * lisp/emacs-lisp/syntax.el (syntax-propertize): Fix bug#29767 2018-01-11 10:11:39 -05:00
Glenn Morris
e911587fb6 Remove some more face aliases obsolete since 22.1
* lisp/generic-x.el (show-tabs-tab-face, show-tabs-space-face):
* lisp/eshell/em-prompt.el (eshell-prompt-face):
* lisp/vc/smerge-mode.el (smerge-base-face, smerge-markers-face):
Remove face "-face" aliases, obsolete since 22.1.
2018-01-10 15:47:33 -05:00
Glenn Morris
9e1664335c Remove message.el face aliases obsolete since 22.1
* lisp/gnus/message.el: Remove face "-face" aliases,
obsolete since 22.1.
2018-01-10 15:45:55 -05:00
Glenn Morris
66d83ce011 Remove Gnus face aliases obsolete since 22.1
* lisp/gnus/gnus-art.el, lisp/gnus/gnus-cite.el:
* lisp/gnus/gnus-srvr.el, lisp/gnus/gnus.el:
* lisp/gnus/spam.el: Remove face "-face" aliases, obsolete since 22.1.
2018-01-10 15:39:06 -05:00
Charles A. Roelli
80463a43da Improve documentation of fill-separate-heterogeneous-words-with-space
* lisp/textmodes/fill.el
(fill-separate-heterogeneous-words-with-space): Fix grammar.
2018-01-10 21:30:43 +01:00
Eli Zaretskii
4bd2416d55 Fix documentation of some x-* functions
* lisp/term/pc-win.el (x-display-pixel-width)
(x-display-pixel-height, x-display-planes)
(x-display-color-cells, x-server-max-request-size)
(x-server-vendor, x-server-version, x-display-screens)
(x-display-mm-height, x-display-mm-width)
(x-display-backing-store, x-display-visual-class): Provide doc
strings, so that 'makedoc' produces non-empty documentation in
etc/DOC for these functions.  (Bug#30068)
2018-01-10 21:24:58 +02:00
Glenn Morris
bea8dc81eb ; lisp/progmodes/cc-cmds.el: Comment. 2018-01-10 13:48:20 -05:00
Glenn Morris
a44fee314f Remove obsolete variable sun-raw-prefix-hooks
* lisp/term/sun.el (sun-raw-prefix-hooks): Remove, obsolete since 21.1.
(terminal-init-sun): No longer consult sun-raw-prefix-hooks.
2018-01-10 13:47:42 -05:00
Stefan Monnier
b877e9aa02 * lisp/calendar/appt.el: Use lexical-binding
(appt-display-message): Remove unused variable 'err'.
(appt-check): Fix typo in search for a function on a hook.
(number, original-date): Move declaration into 'appt-make-list'.
2018-01-10 11:45:33 -05:00
Stefan Monnier
feea2b5b0d * lisp/calendar/diary-lib.el: Fix bug#30051
(diary-list-entries): Dynamically bind 'number' and 'original-date' around
diary-hook as documented in the docstring.
2018-01-10 11:40:21 -05:00
Glenn Morris
27b754d6b3 Remove some obsolete calendar functions and variables
* lisp/calendar/cal-tex.el (cal-tex-list-holidays):
Remove alias, obsolete since 24.4.
* lisp/calendar/calendar.el (calendar-mode):
No longer use calendar-font-lock-keywords.
(calendar-font-lock-keywords): Delete variable, obsolete since 24.4.
; * lisp/calendar/holidays.el: Comment.
2018-01-09 23:01:24 -08:00
Glenn Morris
641b817c5c Remove some obsolete compat code in supercite.el
* lisp/mail/supercite.el (sc-ask, sc-cite-original):
Remove obsolete compat code.  This file uses modern features.
2018-01-09 22:58:08 -08:00
Glenn Morris
d697faca37 Remove some obsolete compat code in f90.el
* lisp/progmodes/f90.el (f90-mark-subprogram, f90-indent-region)
(f90-fill-region): Remove obsolete compat code.
This file uses modern features.
2018-01-09 22:56:31 -08:00
Glenn Morris
a94cbaab9f Remove some obsolete compat code in fortran.el
* lisp/progmodes/fortran.el (fortran-abbrev-start):
Remove obsolete compat code.  This file uses modern features.
2018-01-09 22:54:46 -08:00
Paul Eggert
ddb26f79b2 Merge from origin/emacs-26
7668717d6f Merge from Gnulib
9e4d523427 * lisp/epg.el (epg-start-sign): Replace obsolete functions.
26c58f31a8 Small fix for erc-logging-enabled
34b41e3bc6 Quieten semantic normal usage
e25f961e37 Avoid irrelevant hyperlink in doc string of 'epa-pinentry-...
ec2636513c * doc/misc/tramp.texi (Remote processes): Mention gdb rest...
918a052a42 Query background for gnome terminal version 3.22 (Bug#29716)
1dfc27576a Make pixel-wise scrolling less laggy
f92264fc2a Fix child frame placement issues (bug#29953)
a5f718c4c5 ; * doc/lispref/text.texi (Change Hooks): Fix last change.
e876f5f9fb Describe the precise interaction of complex primitives wit...
3a22097cf6 Fix valgrind report in call-interactively
d5f1c87bfe * src/editfns.c (Fsave_excursion): Doc fix.  (Bug#30001)
b8d74c4578 Fix mark-defun when there's no spaces between successive d...
a377c652b5 Fix Dired display and operations on file names with raw bytes
d9d6e8a04c ; Comments related to src/termcap.c
f8a07fa6b1 Improve documentation of 'gdb-many-windows'
f82400798e Fix failures in smerge-mode on MS-Windows
2018-01-09 15:29:25 -08:00
Paul Eggert
646c8e56f8 Merge from origin/emacs-26
d382d2bfc5 * etc/DEBUG (Getting control to the debugger): Fix grammar.
687af4c8e8 * lisp/vc/vc.el (vc-region-history): log-view-vc-fileset h...
43e2aafae3 Don't bind dframe events on load (Bug#29599)
ab31bf3c5f * lisp/textmodes/picture.el (picture-mode-exit): Doc fix. ...
ed44d92fa6 * lisp/textmodes/picture.el (picture-open-line): Doc fix. ...
b87a772612 Fix description of 'emacs-internal'
a5256da588 Update PROBLEMS with selection-related issues
c59ecb005e New customization variable for python-mode indentation (Bu...
4e20c8f220 Fix menu keyboard shortcuts on macOS (Bug#29595)

# Conflicts:
#	etc/NEWS
2018-01-09 15:29:25 -08:00
Glenn Morris
9e4d523427 * lisp/epg.el (epg-start-sign): Replace obsolete functions. 2018-01-09 15:10:43 -05:00
Glenn Morris
26c58f31a8 Small fix for erc-logging-enabled
* lisp/erc/erc-log.el (erc-logging-enabled):
Respect buffer-locality of erc-enable-logging variable.
2018-01-09 14:48:29 -05:00
Glenn Morris
34b41e3bc6 Quieten semantic normal usage
* lisp/cedet/semantic/lex.el (semantic-flex): Mark obsolete at
compile time in the normal way, not at run-time.  (Bug#30035)
2018-01-09 13:54:11 -05:00
Michael Albinus
fd21bf0c41 Fix Bug#30038
* lisp/net/tramp.el (tramp-make-tramp-file-name): Check, that
method is not empty.  (Bug#30038)
2018-01-09 09:46:28 +01:00
Eli Zaretskii
e25f961e37 Avoid irrelevant hyperlink in doc string of 'epa-pinentry-mode'
* lisp/epa.el (epa-pinentry-mode): Doc fix.  (Bug#30025)
2018-01-08 23:26:11 +02:00
Tino Calancha
a0365437c9 cl-loop: Add missing guard condition
Consider the expansion of `cl-loop' with a `for' clause and more
than one internal variables, X, Y, processed in parallel.
Each step updates X and Y right after update the loop variable, K; if
either X or Y depend on K, then some forms of the body are
evaluated with the wrong K (Bug#29799).

For instance, consider the following code:
(cl-loop for k below 2
         for x = (progn (message "k = %d" k) 1)
         and y = 1)

This code should show in *Messages*:
k = 0
k = 1

Instead, the code shows:
k = 0
k = 1
k = 2

To prevent this we must ensure that the loop condition is still
satisfied right after update the loop variable.
In the macro expansion of the example above, right after:
(setq k (+ k 1))

evaluate the rest of the body forms iif the condition
(< k 2)
is still valid.

* lisp/emacs-lisp/cl-macs.el (cl--loop-guard-cond): New variable.
(cl--parse-loop-clause): Set it non-nil if the loop contains
a for/as clause.
(cl-loop): After update the loop variable, evaluate the remaining of
the body forms just if the loop condition is still valid (Bug#29799).

* test/lisp/emacs-lisp/cl-macs-tests.el (cl-macs-loop-for-as-equals-and):
New test.
2018-01-08 19:15:28 +09:00
Noam Postavsky
918a052a42 Query background for gnome terminal version 3.22 (Bug#29716)
* lisp/term/xterm.el (xterm--version-handler): Use
xterm--report-background-handler for terminals reporting minor version
4000 and above.
2018-01-07 20:21:46 -05:00