Paul Eggert [Fri, 27 Mar 2015 17:36:15 +0000 (10:36 -0700)]
Assume !BROKEN_NON_BLOCKING_CONNECT
From a suggestion by Eli Zaretskii in:
http://lists.gnu.org/archive/html/emacs-devel/2015-03/msg00824.html
* process.c (NON_BLOCKING_CONNECT): Simplify by assuming that
BROKEN_NON_BLOCKING_CONNECT is not defined.
(SELECT_CAN_DO_WRITE_MASK): Remove, and assume it's now true.
Eli Zaretskii [Fri, 27 Mar 2015 13:16:36 +0000 (16:16 +0300)]
Fix crashes when restoring sub-char-tables from desktop file
src/lread.c (substitute_object_recurse): For sub-char-tables, start
the recursive SUBSTITUTE loop from index of 2, to skip the
non-Lisp members of the sub-char-table. See the discussion at
http://lists.gnu.org/archive/html/emacs-devel/2015-03/msg00520.html
for the details.
Eli Zaretskii [Fri, 27 Mar 2015 09:47:04 +0000 (12:47 +0300)]
Fix the bug number of previous commit: should be bug #20159.
Eli Zaretskii [Fri, 27 Mar 2015 09:44:31 +0000 (12:44 +0300)]
Support non-blocking connect on MS-Windows (Bug#20207)
Based on ideas from Kim F. Storm <storm@cua.dk>, see
http://lists.gnu.org/archive/html/emacs-devel/2006-12/msg00873.html.
src/w32proc.c (reader_thread): If the FILE_CONNECT flag is set, call
'_sys_wait_connect'. If it returns STATUS_CONNECT_FAILED, exit
the thread with code 2.
(sys_select): Support 'wfds' in addition to 'rfds'. If a
descriptor in 'wfds' has its bit set, but the corresponding
fd_info member doesn't have its FILE_CONNECT flag set, ignore the
descriptor. Otherwise, acknowledge a successful non-blocking
connect by resetting the FILE_CONNECT flag and setting cp->status
to STATUS_READ_ACKNOWLEDGED.
src/w32.h (STATUS_CONNECT_FAILED): New enumeration value.
(struct _child_process): New member 'errcode'.
(FILE_CONNECT): New flag.
(_sys_wait_connect): Add prototype.
src/w32.c (pfn_WSAEnumNetworkEvents): New function pointer.
(init_winsock): Load WSAEnumNetworkEvents from winsock DLL.
(set_errno): Map WSAEWOULDBLOCK and WSAENOTCONN.
(sys_connect): Support non-blocking 'connect' calls by setting the
FILE_CONNECT flag in the fd_info member and returning EINPROGRESS.
(_sys_read_ahead): Add debug message if this function is called
for a descriptor that waits for a non-blocking connect to complete.
(_sys_wait_connect): New function.
(sys_read): Support STATUS_CONNECT_FAILED. Return the error code
recorded by _sys_wait_connect when the non-blocking connect
failed. Don't call WSAGetLastError before a call to set_errno had
a chance to use its value, since WSAGetLastError clears the last
error.
nt/inc/ms-w32.h (BROKEN_NON_BLOCKING_CONNECT): Don't define.
Wolfgang Jenkner [Fri, 27 Mar 2015 01:54:39 +0000 (02:54 +0100)]
Preserve face text properties in comint prompt.
Fixes: debbugs:20084
* lisp/font-lock.el (font-lock--remove-face-from-text-property): New
function. Adapted from the previously commented out
remove-single-text-property.
Remove previously unused and commented out auxiliary function
remove-text-property and obsolete comment.
* lisp/comint.el (comint-output-filter): Use it to remove
comint-highlight-prompt.
(comint-snapshot-last-prompt, comint-output-filter): Use
font-lock-prepend-text-property for comint-highlight-prompt.
* test/automated/textprop-tests.el: New file.
(textprop-tests-font-lock--remove-face-from-text-property): New test.
Thus, the original face text property of a prompt "candidate" (the
last line of an output chunk not ending with a newline) is
preserved. This amends the fix for bug#14744.
Daniel Colascione [Thu, 26 Mar 2015 20:44:45 +0000 (13:44 -0700)]
Shut up python-mode's indentation guesser
* lisp/progmodes/python.el
(python-indent-guess-indent-offset-verbose): New defcustom.
(python-indent-guess-indent-offset): Use it.
Stefan Monnier [Thu, 26 Mar 2015 17:32:45 +0000 (13:32 -0400)]
* lisp/emacs-lisp/cl|eieio: Minor tweaks
* lisp/emacs-lisp/cl-macs.el (cl-dolist, cl-dotimes): Silence byte-compiler.
* lisp/emacs-lisp/eieio.el (defclass): Change internal name so as to make
sure only EIEIO files should have "eieio--" prefixes in their .elc.
Boruch Baum [Thu, 26 Mar 2015 01:43:51 +0000 (21:43 -0400)]
* lisp/bookmark.el (bookmark-show-all-annotations): Sort them
Fixes: debbugs:20177
Paul Eggert [Thu, 26 Mar 2015 01:19:29 +0000 (18:19 -0700)]
Spelling fixes
Dmitry Gutov [Wed, 25 Mar 2015 19:54:29 +0000 (21:54 +0200)]
Only escape quotation mark, backslash and cntrl U+0000 to U+001F
* lisp/json.el (json-special-chars): Don't treat `/' specially, there's
no need to.
(json-encode-string): Only escape quotation mark, backslash and
the control characters U+0000 to U+001F.
Stefan Monnier [Wed, 25 Mar 2015 18:28:25 +0000 (14:28 -0400)]
* etc/TODO: Remove obsolete entries.
Artur Malabarba [Wed, 25 Mar 2015 17:48:15 +0000 (17:48 +0000)]
emacs-lisp/checkdoc.el: Don't complain about args starting with _.
Stefan Monnier [Wed, 25 Mar 2015 17:45:34 +0000 (13:45 -0400)]
* international/mule-cmds.el: Show chars in C-x 8 RET completions
* lisp/international/mule-cmds.el (mule--ucs-names-annotation): New func.
(read-char-by-name): Use it.
Stefan Monnier [Wed, 25 Mar 2015 13:47:12 +0000 (09:47 -0400)]
`save-excursion' does not save&restore the mark any more
* src/editfns.c (save_excursion_save): Don't save the mark.
(save_excursion_restore): Don't restore the mark.
(Fsave_excursion): Fix docstring accordingly.
* doc/lispintro/emacs-lisp-intro.texi:
* doc/lispref/positions.texi (Excursions, Narrowing): `save-excursion' does
not save&restore the mark any more.
Stefan Monnier [Wed, 25 Mar 2015 13:34:20 +0000 (09:34 -0400)]
* lisp/xt-mouse.el (xterm-mouse--read-number-from-terminal): Fix last commit.
Stefan Monnier [Wed, 25 Mar 2015 12:53:44 +0000 (08:53 -0400)]
* lisp/erc/erc.el (erc-switch-to-buffer): Fix last change.
Fixes: debbugs:20187
Nicolas Petton [Wed, 25 Mar 2015 08:21:14 +0000 (09:21 +0100)]
* lisp/emacs-lisp/seq.el: Documentation improvements
Glenn Morris [Wed, 25 Mar 2015 06:32:40 +0000 (23:32 -0700)]
* doc/misc/idlwave.texi: Fix typo in previous.
Glenn Morris [Wed, 25 Mar 2015 06:29:34 +0000 (23:29 -0700)]
* doc/misc/newsticker.texi (Supported Formats): Remove dead url.
Glenn Morris [Wed, 25 Mar 2015 06:28:58 +0000 (23:28 -0700)]
* doc/misc/remember.texi (Function Reference): Copyedit.
Glenn Morris [Wed, 25 Mar 2015 06:26:48 +0000 (23:26 -0700)]
browse-url: mark some of the more obsolete stuff as such
* lisp/net/browse-url.el (browse-url-browser-function)
(browse-url-default-browser):
Remove obsolete items from the explicit listing.
(browse-url-new-window-flag, browse-url-of-file-hook): Doc fixes.
(browse-url-netscape-program, browse-url-netscape-arguments)
(browse-url-netscape-startup-arguments)
(browse-url-galeon-program, browse-url-galeon-arguments)
(browse-url-galeon-startup-arguments)
(browse-url-gnome-moz-program, browse-url-gnome-moz-arguments)
(browse-url-galeon-new-window-is-tab)
(browse-url-netscape-new-window-is-tab)
(browse-url-mosaic-program, browse-url-mosaic-arguments)
(browse-url-mosaic-pidfile, browse-url-CCI-port)
(browse-url-CCI-host, browse-url-netscape-version)
(browse-url-netscape, browse-url-netscape-sentinel)
(browse-url-netscape-reload, browse-url-netscape-send)
(browse-url-galeon, browse-url-galeon-sentinel)
(browse-url-gnome-moz, browse-url-mosaic, browse-url-cci)
(browse-url-w3-gnudoit): Make obsolete.
* etc/NEWS: Mention this.
* doc/misc/idlwave.texi (HTML Help Browser Tips): Remove obsolete info.
* lisp/ffap.el (ffap-url-fetcher): Simplify default and doc.
* lisp/x-dnd.el: Comment update.
Olaf Rogalsky [Wed, 25 Mar 2015 01:04:00 +0000 (21:04 -0400)]
* lisp/xt-mouse.el: Add mouse-tracking support.
Fixes: debbugs:19416
* lisp/xt-mouse.el: Add mouse-tracking support.
(xterm-mouse-translate-1): Handle mouse-movement events.
(xterm-mouse--read-event-sequence-1000)
(xterm-mouse--read-event-sequence-1006): Delete functions.
(xterm-mouse--read-event-sequence): New function that handles both at
the same time. Handle mouse-movements.
(xterm-mouse--read-utf8-char, xterm-mouse--read-number-from-terminal):
New functions.
(xterm-mouse-event): Simplify.
(xterm-mouse-tracking-enable-sequence)
(xterm-mouse-tracking-disable-sequence): Enable mouse tracking.
* lisp/mouse.el (mouse-drag-line): Also ignore `vertical-line' prefix events.
Eric Abrahamsen [Tue, 24 Mar 2015 22:12:58 +0000 (22:12 +0000)]
lisp/gnus/nnimap.el: Don't split imap messages back into original group
Michael Albinus [Tue, 24 Mar 2015 19:08:52 +0000 (20:08 +0100)]
Extend Tramp tests
* automated/tramp-tests.el (tramp-test18-file-attributes)
(tramp--test-check-files): Extend tests.
(tramp-test31-utf8): Do not skip for tramp-adb.el.
Michael Albinus [Tue, 24 Mar 2015 19:05:00 +0000 (20:05 +0100)]
Improve special char handling in Tramp
* net/tramp-sh.el (tramp-do-file-attributes-with-ls)
(tramp-do-file-attributes-with-stat): Quote file names in output.
(tramp-do-directory-files-and-attributes-with-stat): Use "//" as marker.
Paul Eggert [Tue, 24 Mar 2015 18:42:53 +0000 (11:42 -0700)]
Fix minor ldexp issues
* doc/lispref/numbers.texi (Float Basics): Improve ldexp documentation.
* src/floatfns.c (Fldexp): Require 2 args. Avoid undefined behavior
if the exponent is out of 'int' range. Improve documentation.
Fixes: bug#20185
Glenn Morris [Tue, 24 Mar 2015 17:58:46 +0000 (13:58 -0400)]
epg-tests.el: Standardize license notice.
Daniel Colascione [Tue, 24 Mar 2015 17:23:14 +0000 (10:23 -0700)]
Make process-running-child-p return foreground process group ID
* etc/NEWS: Mention change to `process-running-child-p`.
* src/process.c (Fprocess_running_child_p): Return number identifier of
the foreground process group if we know it.
Daiki Ueno [Tue, 24 Mar 2015 07:32:08 +0000 (16:32 +0900)]
epg: Fix key generation interface
* epg.el (epg-start-generate-key): Fix typo in "gpg --gen-key"
invocation; make the PARAMETERS documentation clearer.
Daiki Ueno [Tue, 24 Mar 2015 05:46:35 +0000 (14:46 +0900)]
Add tests for epg.el
* automated/epg-tests.el: New file.
* automated/data/epg/pubkey.asc: New file.
* automated/data/epg/seckey.asc: New file.
Stefan Monnier [Tue, 24 Mar 2015 03:40:06 +0000 (23:40 -0400)]
Add cl-struct specific optimizations to pcase.
* lisp/emacs-lisp/cl-macs.el (cl--struct-all-parents)
(cl--pcase-mutually-exclusive-p): New functions.
(pcase--mutually-exclusive-p): Advise to optimize cl-struct patterns.
* lisp/emacs-lisp/pcase.el (pcase--split-pred): Handle quoted string.
Stefan Monnier [Mon, 23 Mar 2015 22:24:30 +0000 (18:24 -0400)]
Add new `cl-struct' and `eieio' pcase patterns.
* lisp/emacs-lisp/cl-macs.el (cl-struct): New pcase pattern.
* lisp/emacs-lisp/eieio.el (eieio-pcase-slot-index-table)
(eieio-pcase-slot-index-from-index-table): New functions.
(eieio): New pcase pattern.
* lisp/emacs-lisp/pcase.el (pcase--make-docstring): New function.
(pcase): Use it to build the docstring.
(pcase-defmacro): Make sure the macro is lazy-loaded.
(\`): Move its docstring from `pcase'.
Eli Zaretskii [Mon, 23 Mar 2015 17:55:23 +0000 (19:55 +0200)]
doc/misc/efaq-w32.texi: Fix comments about font dialog.
Paul Eggert [Mon, 23 Mar 2015 17:30:33 +0000 (10:30 -0700)]
Merge from origin/emacs-24
ad89f85 Another minor improvement in ELisp manual (Bug#20168)
5e2951b Improve docs of 'posn-actual-col-row' (Bug#20169)
1291ce1 Minor documentation fix in ELisp manual (Bug#20174)
33e2236 * display.texi (Useless Whitespace): Fix thinko.
ff3878d * configure.ac: Fix jpeg version check to work with gcc >= 5.
90b46f5 Work for the case nnmail-expiry-target is an nnmh group (bug#20170)
e7f92aa authors.el small additions
0bfe915 * etc/PROBLEMS: Add entry about dir-locals and some auto-mounters.
c3c4b75 Fixes: debbugs:18939
Conflicts:
ChangeLog
doc/lispref/ChangeLog
etc/PROBLEMS
lisp/ChangeLog
lisp/gnus/ChangeLog
lisp/simple.el
Paul Eggert [Mon, 23 Mar 2015 17:17:43 +0000 (10:17 -0700)]
Merge from origin/emacs-24
The following commit was skipped:
a4ff05a ChangeLog fix No need to merge to trunk, since it corrects a backported entry that should not appear in trunk.
Paul Eggert [Mon, 23 Mar 2015 17:17:21 +0000 (10:17 -0700)]
Merge from origin/emacs-24
bb7b23c In `debug' don't try using window on inaccessible frame (Bug#17170).
Conflicts:
lisp/ChangeLog
Paul Eggert [Mon, 23 Mar 2015 17:16:40 +0000 (10:16 -0700)]
Merge from origin/emacs-24
The following commit was skipped:
ae3d733 Backport 20156 fix (stack corruption)
Paul Eggert [Mon, 23 Mar 2015 17:14:19 +0000 (10:14 -0700)]
Merge from origin/emacs-24
e72edc0 Fix lisp/ChangeLog entry from last commit.
Conflicts:
lisp/ChangeLog
Paul Eggert [Mon, 23 Mar 2015 17:14:01 +0000 (10:14 -0700)]
Merge from origin/emacs-24
The following commits were skipped:
17ad6f8 Fix problems caused by calling 'recenter' in auto-revert (Bug#20122)
1c4900d Backport: ruby-mode: Detect regexps after `!'
f74843a Backport: ruby-mode: Change faces used for self, true, false and nil
a5d1f94 Backport: ruby-mode: Expect regexp after { or | too
Eli Zaretskii [Mon, 23 Mar 2015 16:39:38 +0000 (18:39 +0200)]
Another minor improvement in ELisp manual (Bug#20168)
doc/lispref/commands.texi (Accessing Mouse): More accurate description
of 'posn-object-x-y'.
Eli Zaretskii [Mon, 23 Mar 2015 16:35:03 +0000 (18:35 +0200)]
Improve docs of 'posn-actual-col-row' (Bug#20169)
doc/lispref/commands.texi (Accessing Mouse): Expand documentation of
'posn-actual-col-row'.
Eli Zaretskii [Mon, 23 Mar 2015 16:23:47 +0000 (18:23 +0200)]
Minor documentation fix in ELisp manual (Bug#20174)
doc/lispref/commands.texi (Event Input Misc): Fix incorrect usage of @code.
Dmitry Gutov [Mon, 23 Mar 2015 16:00:39 +0000 (18:00 +0200)]
Get rid of json-decode-char0 as well
Fixes: debbugs:20154
* lisp/json.el (json-decode-char0): Delete this alias as well.
(json-read-escaped-char): Don't call it.
Paul Eggert [Mon, 23 Mar 2015 15:55:25 +0000 (08:55 -0700)]
Minor refactoring of new Fmake_process code
* process.c (Fmake_process): Refactor to avoid call to Flength, to
avoid cast to 'char **', and to reduce indenting and reuse of locals.
Stefan Monnier [Mon, 23 Mar 2015 13:12:52 +0000 (09:12 -0400)]
* display.texi (Useless Whitespace): Fix thinko.
Reported by Fabio Pesari.
Andreas Schwab [Mon, 23 Mar 2015 10:55:24 +0000 (11:55 +0100)]
* configure.ac: Fix jpeg version check to work with gcc >= 5.
Daniel Colascione [Mon, 23 Mar 2015 08:50:42 +0000 (01:50 -0700)]
Fix previous commit (again)
Daniel Colascione [Mon, 23 Mar 2015 08:42:56 +0000 (01:42 -0700)]
Fix previous commit
Daniel Colascione [Mon, 23 Mar 2015 08:38:12 +0000 (01:38 -0700)]
Try to avoid fontifying macros in funcall position
* lisp/emacs-lisp/lisp-mode.el
(lisp--el-non-funcall-position-p): New function.
(lisp--el-match-keyword): Use it.
Ben Bacarisse [Mon, 23 Mar 2015 08:02:01 +0000 (08:02 +0000)]
lisp/gnus/nnmh.el (nnmh-request-expire-articles): Work for the case nnmail-expiry-target is an nnmh group (bug#20170)
Daiki Ueno [Mon, 23 Mar 2015 03:40:29 +0000 (12:40 +0900)]
Generalize start-process with keyword args
* src/process.c (Fmake_process): New function.
(create_process, create_pty): Check p->pty_flag instead of
Vprocess_connection_type.
(syms_of_process): Register QCcommand, QCconnection_type, Qpty,
Qpipe, and Smake_process. Unregister Sstart_process.
* lisp/subr.el (start-process): New function, ported from the C
implementation.
* doc/lispref/processes.texi (Asynchronous Processes): Mention
`make-process'.
* etc/NEWS: Mention `make-process'.
Daniel Colascione [Mon, 23 Mar 2015 04:09:21 +0000 (21:09 -0700)]
Automatically adjust process window sizes
* lisp/window.el (window-adjust-process-window-size-function): New
customizable variable.
(window-adjust-process-window-size)
(window-adjust-process-window-size-smallest)
(window-adjust-process-window-size-largest)
(window--process-window-list, window--adjust-process-windows):
New functions.
(window-configuration-change-hook): Add
`window--adjust-process-windows'.
* lisp/term.el (term-mode): Observe result of
`window-adjust-process-window-size-function'.
(term-check-size): Delete.
Jackson Ray Hamilton [Sun, 22 Mar 2015 15:22:29 +0000 (08:22 -0700)]
Have `sgml-attribute-offset' control SGML attribute indentation
Fixes: debbugs:20161
* textmodes/sgml-mode.el (sgml-attribute-offset): New defcustom.
(sgml-calculate-indent): Use `sgml-attribute-offset' for attribute
indentation.
Glenn Morris [Mon, 23 Mar 2015 00:33:49 +0000 (17:33 -0700)]
authors.el small additions
* lisp/emacs-lisp/authors.el (authors-aliases)
(authors-obsolete-files-regexps): Additions.
Glenn Morris [Mon, 23 Mar 2015 00:10:10 +0000 (17:10 -0700)]
* etc/PROBLEMS: Add entry about dir-locals and some auto-mounters.
Glenn Morris [Sun, 22 Mar 2015 23:50:00 +0000 (16:50 -0700)]
json-tests.el: Fix copyright
Dmitry Gutov [Sun, 22 Mar 2015 22:52:07 +0000 (00:52 +0200)]
Add a few tests for jsone.el
* test/automated/json-tests.el: New file.
Dmitry Gutov [Sun, 22 Mar 2015 22:50:58 +0000 (00:50 +0200)]
Rewrite json-encode-string
Fixes: debbugs:20154
* lisp/json.el (json-decode-char0): Delete this alias.
(json-encode-string): Rewrite to improve performance.
(json-encode-char): Fold into `json-encode-string'.
Artur Malabarba [Sun, 22 Mar 2015 19:29:57 +0000 (19:29 +0000)]
* menu-bar.el (menu-bar-update-buffers): Properly count buffers.
Jan D [Sun, 22 Mar 2015 18:31:46 +0000 (19:31 +0100)]
Fixes: debbugs:18939
* simple.el (deactivate-mark): Only modify PRIMARY if we own PRIMARY.
Glenn Morris [Sun, 22 Mar 2015 18:11:27 +0000 (11:11 -0700)]
ChangeLog fix
No need to merge to trunk, since it corrects a backported entry that
should not appear in trunk.
Martin Rudalics [Sun, 22 Mar 2015 11:40:21 +0000 (12:40 +0100)]
In `debug' don't try using window on inaccessible frame (Bug#17170).
* emacs-lisp/debug.el (debug): Don't try using "previous"
window when its not live or on an invisible frame (Bug#17170).
Jan D [Sun, 22 Mar 2015 09:21:45 +0000 (10:21 +0100)]
Backport 20156 fix (stack corruption)
Fixes: debbugs:20156
* src/fontset.c (fontset_pattern_regexp): Backport: Replace + 1 with
+ 3 in alloca (tiny change)
Jan D [Sun, 22 Mar 2015 09:14:36 +0000 (10:14 +0100)]
Fixes: debbugs:20156
* src/fontset.c (fontset_pattern_regexp): Replace + 1 with + 3 for
regexsize.
Eric Abrahamsen [Sat, 21 Mar 2015 23:59:30 +0000 (23:59 +0000)]
lisp/gnus/{registry.el,gnus-registry.el}: Use slot names in references to object slot values
Eli Zaretskii [Sat, 21 Mar 2015 15:44:00 +0000 (17:44 +0200)]
Fix problems with setting system-time-locale on MS-Windows
src/emacs.c (synchronize_locale) [WINDOWSNT]: Ignore 'category' and
always use LC_ALL instead. Fixes problems with setting
system-time-locale to something non-default.
Titus von der Malsburg [Sat, 21 Mar 2015 10:31:29 +0000 (12:31 +0200)]
Add new functions for computing default font dimensions
lisp/window.el (window-font-width, window-font-height)
(window-max-chars-per-line): New functions.
lisp/simple.el (default-font-height): Doc fix.
(default-font-width): New function.
etc/NEWS: Mention `default-font-width', `window-font-height',
`window-font-width', and `window-max-chars-per-line'.
Samer Masterson [Sat, 21 Mar 2015 10:09:30 +0000 (12:09 +0200)]
Documentation and testing tips for CONTRIBUTE
CONTRIBUTE (Test your changes.): New section.
(Document your changes.): Add doc tips.
Eli Zaretskii [Sat, 21 Mar 2015 10:04:39 +0000 (12:04 +0200)]
Fix lisp/ChangeLog entry from last commit.
Mario Lang [Fri, 6 Jun 2014 00:39:22 +0000 (02:39 +0200)]
Fix problems caused by calling 'recenter' in auto-revert (Bug#20122)
lisp/emacs-lisp/tabulated-list.el (tabulated-list-print): Only call
`recenter' if `current-buffer' is equal to `window-buffer'.
(cherry picked from commit
4a8160204325c4b955647fe9e0a944c1f8c705dd)
Tassilo Horn [Sat, 21 Mar 2015 07:52:34 +0000 (08:52 +0100)]
Handle setf methods in elisp font-locking.
* emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-1): Also
recognize (cl-)defmethod with (setf method) name.
Tassilo Horn [Fri, 20 Mar 2015 22:35:22 +0000 (23:35 +0100)]
Fix CL function name font-lock bug.
* emacs-lisp/lisp-mode.el (lisp-cl-font-lock-keywords-1): Fix
false positive in function name font-locking.
Tassilo Horn [Fri, 20 Mar 2015 22:09:06 +0000 (23:09 +0100)]
Fix elisp function name font-lock bug.
* emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-1): Fix
false positive in function name font-locking.
Stefan Monnier [Fri, 20 Mar 2015 20:29:21 +0000 (16:29 -0400)]
(cl-defsubst): Ignore false-positive occurrences of args via &cl-defs
Fixes: debbugs:20149
* lisp/emacs-lisp/cl-macs.el (cl-defsubst): Ignore false-positive
occurrences of args via &cl-defs.
Alan Mackenzie [Fri, 20 Mar 2015 15:39:37 +0000 (15:39 +0000)]
Fix debbugs#20146
* font-lock.el (font-lock-extend-jit-lock-region-after-change):
Return the calculated values, as per spec.
Eric Abrahamsen [Fri, 20 Mar 2015 10:49:41 +0000 (10:49 +0000)]
lisp/gnus/registry.el (registry-prune): Allow registry to reach full size before pruning
Eric Abrahamsen [Fri, 20 Mar 2015 10:49:06 +0000 (10:49 +0000)]
lisp/gnus/registry.el (registry-collect-prune-candidates): Fix call to cl-subseq
Glenn Morris [Fri, 20 Mar 2015 06:02:28 +0000 (23:02 -0700)]
# ChangeLog fixes
Using eg add-change-log-entry-other-window, C-x 4 a, would avoid these issues
Dmitry Gutov [Fri, 20 Mar 2015 05:03:54 +0000 (07:03 +0200)]
ruby-mode: Fix a "required arguments" confusion
* lisp/progmodes/ruby-mode.el (ruby-font-lock-keywords): Move `at_exit'
and `callcc' to the "methods with required arguments" section,
they need a block argument. Remove a `throw' duplicate.
Dmitry Gutov [Fri, 20 Mar 2015 04:05:02 +0000 (06:05 +0200)]
Backport: ruby-mode: Detect regexps after `!'
Fixes: debbugs:19285
* lisp/progmodes/ruby-mode.el (ruby-syntax-before-regexp-re): Detect
regexps after `!'.
(cherry picked from commit
8854b9cf5283cac3e4a5a3726325a82b88c1fcb5)
Dmitry Gutov [Fri, 20 Mar 2015 04:04:54 +0000 (06:04 +0200)]
Backport: ruby-mode: Change faces used for self, true, false and nil
Fixes: debbugs:17733
* lisp/progmodes/ruby-mode.el (ruby-font-lock-keywords): Use
`font-lock-constant-face' for nil, true and false. Highlight
`self' as a keyword.
(cherry picked from commit
e991af9228af77356df1e4ce7e824d5140a3bf8a)
Nobuyoshi Nakada [Fri, 20 Mar 2015 04:04:36 +0000 (06:04 +0200)]
Backport: ruby-mode: Expect regexp after { or | too
Fixes: debbugs:20026
* progmodes/ruby-mode.el (ruby-syntax-before-regexp-re): Expect
beginning of regexp also after open brace or vertical bar.
(cherry picked from commit
dad0fc589c18dd95cf1ac77869a4530e2848c328)
Paul Eggert [Fri, 20 Mar 2015 01:33:59 +0000 (18:33 -0700)]
* configure.ac (_THREAD_SAFE): Simplify (Bug#20136).
Paul Eggert [Thu, 19 Mar 2015 21:14:07 +0000 (14:14 -0700)]
Better port of pthread usage to FreeBSD
* configure.ac (ac_func_list): Omit pthread_sigmask, since
we check for that ourselves rather than relying on gnulib.
(HAVE_PTHREAD, LIB_PTHREAD, _THREAD_SAFE): Port better to FreeBSD,
by also checking for pthread_create, pthread_self, pthread_sigmask.
Tighten the test for pthread_atfork while we're at it.
Fixes: bug#20136
Vibhav Pant [Thu, 19 Mar 2015 20:13:37 +0000 (01:43 +0530)]
Call delete-backward-space interactively.
* lisp/progmodes/cperl-mode.el (cperl-electric-backspace):
Call delete-backward-space interactively instead of delete-char.
* lisp/Changelog: Fix previous changelog.
Paul Eggert [Thu, 19 Mar 2015 19:32:42 +0000 (12:32 -0700)]
Merge from gnulib
This incorporates:
2015-03-19 fdopendir: port better to MinGW
2015-03-18 fdopendir: fix typo in comment
2015-02-24 glob, etc.: port to MSVC v18 on MS-Windows 8.1
* lib/dirent.in.h, lib/fdopendir.c: Update from gnulib.
* lib/dirfd.c, m4/dirfd.m4: New files from gnulib.
* lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
Stefan Monnier [Thu, 19 Mar 2015 17:46:36 +0000 (13:46 -0400)]
* lisp/emacs-lisp/pcase.el (pcase-lambda): Rewrite.
Stefan Monnier [Thu, 19 Mar 2015 14:35:52 +0000 (10:35 -0400)]
Fixes: debbugs:20141
* lisp/emacs-lisp/eieio.el (object-slots): Return slot names as before.
Stefan Monnier [Thu, 19 Mar 2015 03:02:26 +0000 (23:02 -0400)]
EIEIO: Change class's representation to unify instance & class slots
* lisp/emacs-lisp/eieio-core.el (eieio--class): Change field names and order
to match those of cl--class; use cl--slot for both instance slots and
class slots.
(eieio--object-num-slots): Use cl-struct-slot-info.
(eieio--object-class): Rename from eieio--object-class-object.
(eieio--object-class-name): Remove.
(eieio-defclass-internal): Adjust to new slot representation.
Store doc in class rather than in `variable-documentation'.
(eieio--perform-slot-validation-for-default): Change API to take
a slot object.
(eieio--slot-override): New function.
(eieio--add-new-slot): Rewrite.
(eieio-copy-parents-into-subclass): Rewrite.
(eieio--validate-slot-value, eieio--validate-class-slot-value)
(eieio-oref-default, eieio-oset-default)
(eieio--class-slot-name-index, eieio-set-defaults): Adjust to new
slot representation.
(eieio--c3-merge-lists): Simplify.
(eieio--class/struct-parents): New function.
(eieio--class-precedence-bfs): Use it.
* lisp/emacs-lisp/eieio.el (with-slots): Use macroexp-let2.
(object-class-fast): Change recommend replacement.
(eieio-object-class): Rewrite.
(slot-exists-p): Adjust to new slot representation.
(initialize-instance): Adjust to new slot representation.
(object-write): Adjust to new slot representation.
* lisp/emacs-lisp/eieio-base.el (eieio-persistent-convert-list-to-object):
Manually map initargs to slot names.
(eieio-persistent-validate/fix-slot-value): Adjust to new
slot representation.
* lisp/emacs-lisp/eieio-compat.el (eieio--generic-static-symbol-specializers):
Extract from eieio--generic-static-symbol-generalizer.
(eieio--generic-static-symbol-generalizer): Use it.
* lisp/emacs-lisp/eieio-custom.el (eieio-object-value-create)
(eieio-object-value-get): Adjust to new slot representation.
* lisp/emacs-lisp/eieio-datadebug.el (data-debug/eieio-insert-slots):
Declare to silence warnings.
(data-debug-insert-object-button): Avoid `object-slots'.
(data-debug/eieio-insert-slots): Adjust to new slot representation.
* lisp/emacs-lisp/eieio-opt.el (eieio--help-print-slot): New function
extracted from eieio-help-class-slots.
(eieio-help-class-slots): Use it. Adjust to new slot representation.
* test/automated/eieio-test-methodinvoke.el (make-instance): Use new-style
`subclass' specializer for a change.
* test/automated/eieio-test-persist.el (persist-test-save-and-compare):
Adjust to new slot representation.
* test/automated/eieio-tests.el (eieio-test-17-virtual-slot): Don't use
initarg in `oset'.
(eieio-test-32-slot-attribute-override-2): Adjust to new
slot representation.
* lisp/emacs-lisp/cl-preloaded.el (cl--class): Fix type of `parents'.
Vibhav Pant [Thu, 19 Mar 2015 01:15:58 +0000 (06:45 +0530)]
Use delete-char instead of delete-backward-char.
* lisp/leim/quail/hangul.el
* lisp/progmodes/cperl-mode.el: Use delete-char instead of
delete-backward-char, fixes compilation warnings.
Michael Albinus [Wed, 18 Mar 2015 19:32:16 +0000 (20:32 +0100)]
Mark apostrophs with ?/ instead of \037 in Tramp
Fixes: debbugs:20117
* net/tramp-sh.el (tramp-do-directory-files-and-attributes-with-stat):
Mark apostrophs with ?/ instead of \037.
Paul Eggert [Wed, 18 Mar 2015 18:45:36 +0000 (11:45 -0700)]
Merge from origin/emacs-24
1a941d6 Fix incorrect usage of @key in the User Manual (Bug#20135)
14c47d3 doc/misc/efaq-w32.texi: Spell-check.
ac85901 doc/misc/efaq-w32.texi: Remove outdated information and update.
c43762d Fix description of fullscreen mode on MS-Windows (Bug#20110).
ea8cab3 doc/lispref/minibuf.texi (Basic Completion): Fix a typo. (Bug#20108)
2fdec80 Improve indexing in Emacs manual (Bug#20105)
cc11321 Fix --no-bitmap-icon
Conflicts:
doc/emacs/ChangeLog
doc/lispref/ChangeLog
doc/misc/ChangeLog
src/ChangeLog
Eli Zaretskii [Wed, 18 Mar 2015 17:32:22 +0000 (19:32 +0200)]
Fix incorrect usage of @key in the User Manual (Bug#20135)
doc/emacs/misc.texi (Term Mode):
doc/emacs/programs.texi (Basic Indent, Custom C Indent):
doc/emacs/mini.texi (Minibuffer History):
doc/emacs/text.texi (Org Mode):
doc/emacs/display.texi (View Mode): Use @kbd where @key was mistakenly
used.
Stefan Monnier [Wed, 18 Mar 2015 14:49:55 +0000 (10:49 -0400)]
* cl-generic.el (cl-generic-generalizers): Clean up after braindamage
Stefan Monnier [Wed, 18 Mar 2015 14:31:07 +0000 (10:31 -0400)]
Add classes as run-time descriptors of cl-structs.
* lisp/emacs-lisp/cl-preloaded.el (cl--struct-get-class): New function.
(cl--make-slot-desc): New constructor.
(cl--plist-remove, cl--struct-register-child): New functions.
(cl-struct-define): Rewrite.
(cl-structure-class, cl-structure-object, cl-slot-descriptor)
(cl--class): New structs.
(cl--struct-default-parent): Initialize it here.
* lisp/emacs-lisp/cl-macs.el (cl--find-class): New macro.
(cl-defsubst, cl--defsubst-expand, cl--sublis): Move before first use.
(cl--struct-default-parent): New var.
(cl-defstruct): Adjust to new representation of classes; add
default parent. In accessors, signal `wrong-type-argument' rather than
a generic error.
(cl-struct-sequence-type, cl-struct-slot-info)
(cl-struct-slot-offset): Rewrite.
* lisp/emacs-lisp/cl-generic.el (cl--generic-struct-specializers)
(cl-generic-generalizers): Rewrite.
* src/alloc.c (purecopy): Handle hash-tables.
* lisp/emacs-lisp/debug.el (debug--implement-debug-on-entry):
Bind inhibit-debug-on-entry here...
(debug): Instead of here.
* lisp/emacs-lisp/macroexp.el (macroexp--debug-eager): New var.
(internal-macroexpand-for-load): Use it.
* lwlib/xlwmenu.c (pop_up_menu): Remove debugging code.
Dima Kogan [Wed, 18 Mar 2015 07:15:54 +0000 (08:15 +0100)]
Have gud-display-line not display source buffer in gud window.
* lisp/progmodes/gud.el (gud-display-line): Make display-buffer
not reuse selected window. (Bug#17675, Bug#19901, Bug#20034)
Tassilo Horn [Mon, 16 Mar 2015 09:25:14 +0000 (10:25 +0100)]
Improve dynamic elisp keyword font-locking
* emacs-lisp/byte-run.el (macro-declarations-alist): New
declaration no-font-lock-keyword.
(defmacro): Flush font-lock in existing elisp buffers.
* emacs-lisp/lisp-mode.el (lisp--el-update-after-load)
(lisp--el-update-macro-regexp, lisp--el-macro-regexp): Delete
functions and defconst.
(lisp--el-match-keyword): Rename from lisp--el-match-macro.
(lisp--el-font-lock-flush-elisp-buffers): New function.
(lisp-mode-variables): Remove code for updating
lisp--el-macro-regexp, and add
lisp--el-font-lock-flush-elisp-buffers to after-load-functions.
Paul Eggert [Wed, 18 Mar 2015 03:55:02 +0000 (20:55 -0700)]
* lisp/net/browse-url.el: Omit confusing documentation.
Paul Eggert [Wed, 18 Mar 2015 00:09:34 +0000 (17:09 -0700)]
Spelling and wording fixes
Paul Eggert [Tue, 17 Mar 2015 23:55:02 +0000 (16:55 -0700)]
Spacing and punctuation fixes