Paul Eggert [Tue, 3 Mar 2015 22:35:41 +0000 (14:35 -0800)]
Merge from origin/emacs-24
c0ba590 Fix vertical-motion and posn-at-point when word-wrap is a323b93 Better multi-line input support in comint.el 008a04a todo-mode.el: Restore point on setting item done (Bug#19727) 9615c0d doc/misc/erc.texi: fix typo c648717 Update ERC docs and update MAINTANERS to include myself d825f66 Fix filling circle/ellipse in Artist Mode (Bug#19763)
Paul Eggert [Tue, 3 Mar 2015 22:29:22 +0000 (14:29 -0800)]
Merge from origin/emacs-24
ec26c23 authors.el: Add missing ignored and renamed files e589765 A more thorough fix for bug#19307 4e8d586 Fix last commit d6fee01 Tramp: Don't use a tempfile for ControlPath. 27e11c0 Fix display of overlay strings with faces after ellipsis (Bug#19307) e9a7e10 Fix redrawing of mode lines when exposed (Bug#19721) 50f3811 net/tramp.el (tramp-ssh-controlmaster-options): Use "%C"
* doc/lispref/control.texi (Generators): Correct missing word. Clarify which
forms are legal in which parts of `unwind-protect'. Fix orphaned
close parenthesis.
* lisp/emacs-lisp/generator.el: Make globals conform to elisp
style throughout. Use more efficient font-lock patterns.
(cps-inhibit-atomic-optimization): Rename from
`cps-disable-atomic-optimization'.
(cps--gensym): New macro; replaces `cl-gensym' throughout.
(cps-generate-evaluator): Move the `iter-yield' local macro
definition here
(iter-defun, iter-lambda): from here.
* test/automated/generator-tests.el (cps-test-iter-close-finalizer):
Rename `gc-precise-p' to `gc-precise'.
* test/automated/generator-tests.el (cps-testcase): Use
`cps-inhibit-atomic-optimization' instead of
`cps-disable-atomic-optimization'.
Martin Rudalics [Tue, 3 Mar 2015 10:32:19 +0000 (11:32 +0100)]
Fix calculation of total window sizes after font size changes (Bug#19972).
* frame.c (adjust_frame_size): If the pixel sizes remain
unchanged but the number of lines or columns of the frame
changes, run `window--pixel-to-total' (Bug#19972).
(Qwindow_pixel_to_total): DEFSYM it.
* window.el (window--dump-frame): For pixel height return total
number of frame's lines.
* doc/lispref/objects.texi (Finalizer Type): New section
(Type Predicates): Mention finalizers in `type-of' documentation.
* doc/lispref/elisp.texi (Top): Link to finalizer type.
* src/data.c (Ftype_of): Make `type-of' work with finalizers.
(syms_of_data): Register Qfinalizer.
* src/print.c (print_object): Print whether a finalizer has
been called.
* test/automated/finalizer-tests.el (finalizer-object-type): Test that
`type-of' works correctly for finalizers.
Michael Albinus [Sun, 1 Mar 2015 17:05:19 +0000 (18:05 +0100)]
Extend vc-tests.el
* automated/vc-tests.el (vc-test--create-repo): Add check for
`vc-responsible-backend'.
(vc-test--register): Do not print a message when unsupported.
(vc-test--state, vc-test--working-revision): Rework. Raise no
error in case of inconsistent result, but document everything.
(vc-test--checkout-model): New defun.
(vc-test-*-checkout-model): New tests.
Eli Zaretskii [Sat, 28 Feb 2015 12:25:35 +0000 (14:25 +0200)]
Improve [:alpha:] and [:alnum:] for multibyte characters (Bug#19878)
src/character.c (alphabeticp, decimalnump): New functions.
src/character.h (alphabeticp, decimalnump): Add prototypes.
src/regex.c (ISALNUM, ISALPHA): Check Unicode character properties
for multibyte characters by calling alphabeticp and decimalnump.
(BIT_ALPHA, BIT_ALNUM): New bit masks.
(re_wctype_to_bit): Return them when the class is RECC_ALPHA or
RECC_ALNUM.
(re_match_2_internal): Call ISALPHA and ISALNUM when appropriate.
doc/lispref/searching.texi (Char Classes): Update the documentation of
[:alpha:] and [:alnum:].
etc/NEWS: Mention the changes in [:alpha:] and [:alnum:].
Eli Zaretskii [Sat, 28 Feb 2015 12:03:34 +0000 (14:03 +0200)]
Better decoding of HTML payload in Rmail
lisp/mail/rmailmm.el (rmail-mime-insert-html): Decode HTML payload
when the charset is only given by the HTML <head>, and allow to
specify the encoding with "C-x RET c".
Jan D [Fri, 27 Feb 2015 17:46:26 +0000 (18:46 +0100)]
Adjust offset and border calculations for X.
* xfns.c (x_real_pos_and_offsets): Take outer_border as arg also.
Initialize all args. Get outer_border from window attributes.
Fix typo for top_offset_y.
(x_real_positions): Adjust for new arg to x_real_pos_and_offsets.
(Fx_frame_geometry): Get outer_border also. Use attrs.width/height.
* xmenu.c (x_menu_show): Adjust for new arg to x_real_pos_and_offsets.
* xterm.h (x_real_pos_and_offsets): Take outer_border as arg also.
Mark Laws [Fri, 27 Feb 2015 10:43:30 +0000 (12:43 +0200)]
Support daemon mode on MS-Windows (bug#19688)
src/emacs.c <w32_daemon_event> [WINDOWSNT]: New global var.
(main) [WINDOWSNT]: Initialize it to NULL. Create the event to
signal clients we are ready for connections.
(Fdaemon_initialized): Use DAEMON_RUNNING.
[WINDOWSNT]: MS-Windows specific code to signal clients we are
ready for connections.
src/lisp.h (DAEMON_RUNNING): New macro, encapsulates Posix and
MS-Windows conditions for running in daemon mode.
src/minibuf.c (read_minibuf): Use DAEMON_RUNNING.
src/keyboard.c (kbd_buffer_get_event): Use DAEMON_RUNNING.
src/dispnew.c (init_display) [WINDOWSNT]: Initialize frames/terminal
even in daemon mode.
nt/inc/ms-w32.h (W32_DAEMON_EVENT): New macro.
lib-src/emacsclient.c (decode_options) [WINDOWSNT]: Don't reject empty
arguments for --alternate-editor.
(print_help_and_exit) [WINDOWSNT]: Don't refrain from advertising
empty arguments for --alternate-editor.
(start_daemon_and_retry_set_socket) [WINDOWSNT]: MS-Windows
specific code to start Emacs in daemon mode and wait for it to be
ready for client connections.
lisp/server.el (server-process-filter): Force GUI frames on
MS-Windows in daemon mode, even if a TTY frame was requested.
lisp/frameset.el (frameset-keep-original-display-p): Don't assume
windows-nt cannot be in daemon mode.
lisp/frame.el (window-system-for-display): Don't assume windows-nt
cannot be in daemon mode.
Paul Eggert [Fri, 27 Feb 2015 08:04:39 +0000 (00:04 -0800)]
Don't require GNU putenv
* configure.ac: Use system putenv even if it lacks GNU features, as
we don't need them. This works around a bug in FreeBSD 10.1 getenv. Fixes: bug#19874
Oscar Fuentes [Thu, 26 Feb 2015 14:46:12 +0000 (15:46 +0100)]
Use vc-switches on vc-*-annotate-command
This also removes switch "-C -C" from vc-git-annotate-command.
Fixes: debbugs:17945
* vc/vc.el (vc-annotate-switches): New defcustom.
* vc/vc-bzr.el (vc-bzr-annotate-switches): New defcustom.
(vc-bzr-annotate-command): Use it.
* vc/vc-cvs.el (vc-cvs-annotate-switches): New defcustom.
(vc-cvs-annotate-command): Use it.
* vc/vc-git.el (vc-git-annotate-switches): New defcustom.
(vc-git-annotate-command): Use it.
* vc/vc-hg.el (vc-hg-annotate-switches): New defcustom.
(vc-hg-annotate-command): Use it.
* vc/vc-mtn.el (vc-mtn-annotate-switches): New defcustom.
(vc-mtn-annotate-command): Use it.
* vc/vc-svn.el (vc-svn-annotate-switches): New defcustom.
(vc-svn-annotate-command): Use it.
Paul Eggert [Thu, 26 Feb 2015 06:53:56 +0000 (22:53 -0800)]
Merge from origin/emacs-24
e726f20 Handle "#" operator properly inside macro. Fix coding bug. 618931b Handle dead frame in menu-bar-non-minibuffer-window-p. (Bug#19728) 017a03a Document MS-Windows file-name idiosyncrasies (Bug#19463) f3faf4f Fix description of Customize buffer in Emacs manual. 1c1d0b7 Fix a typo in the Emacs manual's Hungry Delete description. be7fb82 src/dispextern.h (FACE_FOR_CHAR): Fix the commentary. 33c4409 Spelling fixes 6c8231e python.el: Handle tabs in python-indent-dedent-line. 41c3b92 * lisp/progmodes/python.el: Respect user indentation after comment. 868df45 Avoid compiler warnings in decode_env_path. b28c979 Fix XEmacs version typo in comment and ChangeLog 989fb32 Improve solution of bug #19701 6310530 Fix refilling of list of language environments in User Manual c4c447d Restore XEmacs compatibility
Paul Eggert [Thu, 26 Feb 2015 06:52:01 +0000 (22:52 -0800)]
Merge from origin/emacs-24
The following commits were skipped:
b75358e Merge remote-tracking branch 'origin/emacs-24' into emacs-24 c96c93f [Backport] lisp/gnus/message.el (message-smtpmail-send-it): Make non-standard mail header separators work with smtpmail 972282f [Backport] lisp/gnus/message.el (message-smtpmail-send-it): Make non-standard mail header separators work with smtpmail
Katsumi Yamaoka [Thu, 26 Feb 2015 03:24:48 +0000 (03:24 +0000)]
Gnus: Improve parts deletion and stripping behavior
* gnus-art.el (gnus-article-edit-part): Make jumping to the next part
really work when deleting or stripping.
(gnus-mime-buttonize-attachments-in-header): Make header attachment
buttons identical to the one in the article body so as to work deleting
and stripping.
* w32fns.c (x_real_positions): Remove setting of x_pixels_diff,
y_pixels_diff.
* xfns.c (x_real_pos_and_offsets): New function, basically the code
from x_real_positions.
(x_real_positions): Call x_real_pos_and_offsets.
(x_relative_mouse_position): Use XTranslateCoordinates instead of
OUTER_TO_INNER_DIFF macros.
(Fx_frame_geometry): Get offsets with x_real_pos_and_offsets,
border from window attributes. Adjust tool bar and menu widths.
* xmenu.c (create_and_show_popup_menu): Use XTranslateCoordinates
instead of OUTER_TO_INNER_DIFF macros.
Oleh Krehel [Fri, 13 Feb 2015 13:59:31 +0000 (14:59 +0100)]
check-declare.el: Use compilation-style warnings
* lisp/emacs-lisp/check-declare.el (check-declare-warn): Add
file-line-column info to the warning.
(check-declare-files): Make sure that `check-declare-warning-buffer'
is in `compilation-mode'. Make the order of the errors that same as in
the file. Add code to ensure that `first-error' will work properly.
Oleh Krehel [Fri, 13 Feb 2015 13:34:17 +0000 (14:34 +0100)]
check-declare.el (check-declare-ext-errors): New defcustom.
* emacs-lisp/check-declare.el (check-declare): New defgroup.
(check-declare-verify): When `check-declare-ext-errors' is non-nil,
warn about an unfound function, instead of saying "skipping external
file".
Katsumi Yamaoka [Wed, 25 Feb 2015 02:39:47 +0000 (02:39 +0000)]
Gnus: Revert my bogus changes (2014-06-05)
* mm-decode.el (mm-shr)
* mm-view.el (mm-inline-text-html-render-with-w3m):
Revert my bogus change that made the start marker of a part
the "moves after insertion" type.
Paul Eggert [Wed, 25 Feb 2015 00:34:13 +0000 (16:34 -0800)]
Backtrace after malloc arena is corrupted
Without this change, if the malloc arena is corrupted and then
'backtrace' is called, the backtrace can crash because 'backtrace'
calls 'malloc'. For more, please see:
https://sourceware.org/ml/libc-alpha/2015-02/msg00678.html
* emacs.c (main): Initialize tables used by 'backtrace'.
* sysdep.c (emacs_backtrace): Document the newly used part of the API.
Samer Masterson [Tue, 24 Feb 2015 19:03:54 +0000 (14:03 -0500)]
* lisp/eshell: Fix history substitution error
Fixes: debbugs:18960
* lisp/eshell/em-hist.el (eshell-hist-parse-word-designator):
Return args joined with " ".
* lisp/eshell/em-pred.el (eshell-parse-modifiers): Correct docstring.
(eshell-hist-parse-modifier): Pass mod a list instead of a string.
Glenn Morris [Tue, 24 Feb 2015 07:13:49 +0000 (23:13 -0800)]
f90.el: add some support for continued strings without leading '&'
* lisp/progmodes/f90.el (f90-beginning-of-subprogram)
(f90-end-of-subprogram, f90-match-end):
Handle continued strings where the continuation does not start
with "&" and happens to match our regexp.
* test/automated/f90.el (f90-test-bug-19809): New test.
Paul Eggert [Mon, 23 Feb 2015 18:09:51 +0000 (10:09 -0800)]
Use ${EXEEXT} more uniformly in makefiles
When porting Emacs to run on NaCl, we need to make sure that we always
call it with the proper extension (.nexe in this case) during the build.
* leim/Makefile.in, lib-src/Makefile.in, lisp/Makefile.in (EMACS):
Append ${EXEEXT}.
(tiny change)
Magnus Henoch [Mon, 23 Feb 2015 09:09:46 +0000 (09:09 +0000)]
Fix SCRAM-SHA-1 SASL mechanism
The symbol used in sasl-mechanism-alist needs to match the name that
can be required. Move sasl-make-mechanism call to end of file, to
ensure that it can refer to the specified step functions.
* net/sasl.el (sasl-mechanism-alist): Refer to sasl-scram-rfc
instead of sasl-scram-sha-1, as the former is the name that can be
required.
* net/sasl-scram-rfc.el (sasl-scram-sha-1-steps)
(sasl-scram-sha-1-client-final-message)
(sasl-scram-sha-1-authenticate-server): Move to end of file.
and :documentation. Change return value format accordingly.
* lisp/emacs-lisp/cl-generic.el (cl--generic-lambda):
* lisp/emacs-lisp/pcase.el (pcase-lambda): Adjust accordingly.
* lisp/emacs-lisp/cl-macs.el (cl--transform-lambda): Use macroexp-parse-body.
Paul Eggert [Sun, 22 Feb 2015 04:00:16 +0000 (20:00 -0800)]
Spelling fixes
* lisp/cedet/semantic/doc.el (semantic-documentation-comment-preceding-tag):
Rename from semantic-documentation-comment-preceeding-tag. All
uses changed. Leave an obsolete alias behind.
* src/lisp.h (DEFINE_NON_NIL_Q_SYMBOL_MACROS):
Rename from DEFINE_NONNIL_Q_SYMBOL_MACROS. All uses changed.
Michael Albinus [Sat, 21 Feb 2015 12:11:55 +0000 (13:11 +0100)]
Support file notifications for dired auto-revert
* autorevert.el (auto-revert-notify-add-watch)
(auto-revert-notify-handler, auto-revert-buffers): Handle also
buffers without an associated file, like dired buffers.
* lisp/progmodes/verilog-mode.el (verilog-mode-version): Update.
(vector-skip-list): Remove.
(verilog-auto-inst-port, verilog-auto-inst-port-list)
(verilog-auto-inst, verilog-auto-inst-param):
Use arguments rather than vector-skip.
(verilog-auto-inst-port): Fix AUTOINST interfaces to not show modport
if signal attachment is itself a modport. Reported by Matthew Lovell.
Jan Djärv [Fri, 20 Feb 2015 07:46:38 +0000 (08:46 +0100)]
Avoid endless loop when handling fatal signal.
* src/emacs.c (terminate_due_to_signal): Move totally_unblock_input after
setting fatal_error_in_progress, so gobble_input and *read_socket are
not read if there are pending_signals.