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
Simen Heggestøyl [Tue, 17 Mar 2015 22:11:55 +0000 (23:11 +0100)]
Update CSS property list
* textmodes/css-mode.el (css-extract-keyword-list): Remove function in
favor of manual extraction.
(css-extract-parse-val-grammar): Remove function in favor of
manual extraction.
(css-extract-props-and-vals): Remove function in favor of manual
extraction.
(css-at-ids): Update list of CSS at-rule ids.
(css-property-ids): Update list of CSS properties.
Simen Heggestøyl [Tue, 17 Mar 2015 21:58:13 +0000 (22:58 +0100)]
Add support for completion in `css-mode'
* textmodes/css-mode.el (css--complete-property): New function for
completing CSS properties.
(css--complete-pseudo-element-or-class): New function for
completing CSS pseudo-elements and pseudo-classes.
(css--complete-at-rule): New function for completing CSS at-rules.
(css-completion-at-point): New function providing completion for
`css-mode'.
(css-mode): Add support for completion.
Simen Heggestøyl [Tue, 17 Mar 2015 21:33:36 +0000 (22:33 +0100)]
Discriminate between pseudo-classes and -elements
* textmodes/css-mode.el (css--font-lock-keywords): Discriminate
between pseudo-classes and pseudo-elements.
(css-pseudo-ids): Remove.
(css-pseudo-class-ids): New variable.
(css-pseudo-element-ids): New variable.
Bozhidar Batsov [Tue, 17 Mar 2015 21:40:20 +0000 (23:40 +0200)]
Separate Kernel methods with required args from those without
Bozhidar Batsov [Tue, 17 Mar 2015 20:41:36 +0000 (22:41 +0200)]
Font-lock more Kernel methods as built-in
Michael Albinus [Tue, 17 Mar 2015 19:07:38 +0000 (20:07 +0100)]
Avoid leading tabs in shell scripts, sent by Tramp.
Fixes: debbugs:20118
* tramp-sh.el (tramp-maybe-send-script): Avoid leading tabs in
shell scripts.
Eli Zaretskii [Tue, 17 Mar 2015 18:38:48 +0000 (20:38 +0200)]
lisp/mouse.el: Fix last change.
Eli Zaretskii [Tue, 17 Mar 2015 18:32:04 +0000 (20:32 +0200)]
Merge branch 'master' of git.savannah.gnu.org:/srv/git/emacs
Stefan Monnier [Tue, 17 Mar 2015 18:30:42 +0000 (14:30 -0400)]
* cl-macs.el (cl--transform-lambda): Refine last change.
Fixes: debbugs:20125
* test/automated/cl-lib-tests.el: Use lexical-binding.
(cl-lib-arglist-performance): Refine test to the case where one of the
fields has a non-nil default value. Use existing `mystruct' defstruct.
(cl-lib-struct-accessors): Use `pcase' to be a bit more flexible in the
accepted outputs.
Eli Zaretskii [Tue, 17 Mar 2015 18:29:55 +0000 (20:29 +0200)]
Resurrect the lost optional fixed font menu on w32
lisp/mouse.el (mouse-appearance-menu): If w32-use-w32-font-dialog is
nil, construct a menu of fixed fonts. This resurrects a feature
lost in Emacs 23.
lisp/w32-vars.el (w32-use-w32-font-dialog): Add a ':set' function to
reset mouse-appearance-menu-map, so the font dialog is recomputed
the next time the menu is requested.
(w32-fixed-font-alist): Fix to use correct names of Courier fonts.
Michael Albinus [Tue, 17 Mar 2015 09:18:10 +0000 (10:18 +0100)]
Change test for ControlPath in order to avoid DNS timeouts.
Fixes: debbugs:20015
* net/tramp-sh.el (tramp-ssh-controlmaster-options): Change test
for ControlPath in order to avoid DNS timeouts.
Alan Mackenzie [Mon, 16 Mar 2015 22:10:00 +0000 (22:10 +0000)]
Edebug: Allow "S" to work during trace mode. Fixes debbugs #20074.
Also display the overlay arrow in go and go-nonstop modes.
* emacs-lisp/edebug.el (edebug--display-1): Move the
`input-pending' test to after trace mode's `sit-for'.
(edebug--recursive-edit): Insert "(sit-for 0)" after
"(edebug-overlay-arrow)".
Ken Brown [Mon, 16 Mar 2015 16:25:42 +0000 (12:25 -0400)]
Don't test "\t" in file names on Cygwin.
Fixes: debbugs:20119
* test/automated/tramp-tests.el (tramp--test-special-characters): Don't
test "\t" in file names on Cygwin.
Stefan Monnier [Mon, 16 Mar 2015 20:11:38 +0000 (16:11 -0400)]
* lisp/emacs-lisp/cl-macs.el (cl--transform-lambda): Optimize &aux.
Rework to avoid cl--do-arglist in more cases; add comments to explain what's
going on.
(cl--do-&aux): New function extracted from cl--do-arglist.
(cl--do-arglist): Use it.
* lisp/emacs-lisp/cl-generic.el: Add Version: header, for ELPA purposes.
Stefan Monnier [Mon, 16 Mar 2015 18:49:01 +0000 (14:49 -0400)]
Add `predicate' arg to `read-buffer' and use it for erc-iswitchb
Fixes: debbugs:20116
* src/minibuf.c (Fread_buffer): Add `predicate' argument.
* src/callint.c (Fcall_interactively): Adjust calls accordingly.
* lisp/erc/erc.el (erc-switch-to-buffer): Rename from erc-iswitchb and rewrite
using read-buffer.
(erc--buffer-p): New function, extracted from erc-buffer-filter.
(erc-buffer-filter): Use it.
(erc-with-all-buffers-of-server): Silence compile warning if the return
value is unused.
(erc-is-valid-nick-p, erc-common-server-suffixes, erc-get-arglist)
(erc-command-name, erc-popup-input-buffer): Use \` and \' to match
beg/end of string.
* lisp/obsolete/iswitchb.el (iswitchb-read-buffer): Add `predicate' arg.
* lisp/isearchb.el (isearchb-iswitchb): Adjust accordingly.
* lisp/ido.el (ido-read-buffer): Add `predicate' argument.
* lisp/misearch.el (unload-function-defs-list): Declare before use.
Vibhav Pant [Mon, 16 Mar 2015 23:57:23 +0000 (05:27 +0530)]
Fixes: debbugs:19335
* net/browse-url.el (browse-url-browser-function): Add "Conkeror".
(browse-url-conkeror-program, browse-url-conkeror-arguments)
(browse-url-conkeror-new-window-is-buffer): New defcustoms.
(browse-url-default-browser): Check for `browse-url-conkeror'
and call `browse-url-conkeror-program'.
(browse-url-conkeror): New command.
(bug#19863)
* etc/NEWS: Mention added support for Conkeror.
Vibhav Pant [Mon, 16 Mar 2015 23:31:59 +0000 (05:01 +0530)]
Add 'clear' functionality to eshell.
* eshell/esh-mode.el (eshell/clear): New function.
* etc/NEWS: Mention new built-in command.
Eli Zaretskii [Mon, 16 Mar 2015 18:01:38 +0000 (20:01 +0200)]
doc/misc/efaq-w32.texi: Spell-check.
Eli Zaretskii [Mon, 16 Mar 2015 17:46:45 +0000 (19:46 +0200)]
doc/misc/efaq-w32.texi: Remove outdated information and update.
Alan Mackenzie [Mon, 16 Mar 2015 14:48:09 +0000 (14:48 +0000)]
Make Edebug work with Follow Mode.
* emacs-lisp/edebug.el (edebug--display-1): Remove call to
edebug-adjust-window.
(edebug--recursive-edit): Don't bind pre/post-command-hooks to nil
over the recursive edit.
(edebug-adjust-window): Remove.
Martin Rudalics [Sun, 15 Mar 2015 19:17:09 +0000 (20:17 +0100)]
Fix description of fullscreen mode on MS-Windows (Bug#20110).
* efaq.texi (Fullscreen mode on MS-Windows): Fix description (Bug#20110).
Stefan Monnier [Sun, 15 Mar 2015 18:21:04 +0000 (14:21 -0400)]
(url-insert-file-contents): Set buffer-file-coding-system
Fixes: debbugs:20010
* lisp/url/url-handlers.el (url-insert-file-contents): Call
after-insert-file-set-coding like insert-file-contents, to set
buffer-file-coding-system.
Eli Zaretskii [Sun, 15 Mar 2015 17:17:46 +0000 (19:17 +0200)]
Fix subtle problems with linum-mode and invisible text
src/xdisp.c (handle_invisible_prop): Fix up it->position even when
we are going to load overlays at the beginning of the invisible
text.
(setup_for_ellipsis): Reset the ignore_overlay_strings_at_pos_p
flag also here.
(next_overlay_string): Set the overlay_strings_at_end_processed_p
flag only if the overlays just processed were actually loaded at
EOB.