Dmitry Gutov [Sun, 19 Jul 2015 17:40:18 +0000 (20:40 +0300)]
Add xref-after-jump-hook and xref-after-return-hook
* lisp/progmodes/xref.el (xref-after-jump-hook)
(xref-after-return-hook): New hooks.
(xref-pulse-on-jump): Remove, in favor of the above.
(xref-pulse-momentarily): Rename from xref--maybe-pulse.
(xref--pop-to-location, xref--display-position)
(xref-pop-marker-stack): Use the new hooks, as requested in
http://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00213.html
Glenn Morris [Sun, 19 Jul 2015 10:23:59 +0000 (06:23 -0400)]
; Auto-commit of ChangeLog files.
Bozhidar Batsov [Sun, 19 Jul 2015 05:18:56 +0000 (08:18 +0300)]
Correct js-mode's lighter
* lisp/progmodes/js.el (js-mode): Correct the lighter.
Leo Liu [Sun, 19 Jul 2015 04:39:37 +0000 (12:39 +0800)]
Fix a bug in cfengine3-mode
* progmodes/cfengine.el (cfengine3-mode): Handle nil
eldoc-documentation-function.
Julien Danjou [Sun, 19 Jul 2015 00:11:02 +0000 (00:11 +0000)]
sieve-mode: support "body" test command
* lisp/gnus/sieve-mode.el (sieve-font-lock-keywords):
Add missing "body" test command.
Eli Zaretskii [Sat, 18 Jul 2015 18:43:21 +0000 (21:43 +0300)]
Fix info-apropos when the default encoding is Latin-N
* lisp/info.el (Info-find-node-2): Reset the buffer's encoding to
'undecided', so that it is set to the encoding of the Info file we
are about to insert. Otherwise, 'info-apropos' will fail to find
some index nodes in some UTF-8 encoded files, if the buffer's
previous encoding is Latin-N or some such.
Ivan Andrus [Thu, 16 Jul 2015 21:44:20 +0000 (15:44 -0600)]
* epg.el (epg--start): Check that gpgconf can be found before calling it.
Ivan Andrus [Fri, 12 Dec 2014 05:18:20 +0000 (22:18 -0700)]
Expose more file types to OS X that Emacs understands.
* Cocoa/Emacs.base/Contents/Info.plist: Add editor role for sty, dtx,
json, and org files. Export UTIs for el, elc, and org files.
Eli Zaretskii [Sat, 18 Jul 2015 12:17:26 +0000 (15:17 +0300)]
Fix visual-order cursor movement when lines are truncated
* src/xdisp.c (Fmove_point_visually): When lines are truncated,
simulate display in a window of infinite width, to allow move_it_*
functions reach positions outside of normal window dimensions.
Remove code that tried to handle a subset of these situations by
manual iteration of buffer text. (Bug#17777)
Eli Zaretskii [Sat, 18 Jul 2015 10:23:22 +0000 (13:23 +0300)]
Fix following Info cross-references to anchors
* lisp/info.el (Info-read-subfile): Add to the returned value the
length of subfile preamble, after converting it to file's byte
offset, as expected by the caller. Use bufferpos-to-filepos.
(Info-find-node-2): If searching for a node with a
1000-character slop fails, try again with a 10000-character slop,
to account for known bugs in Texinfo 5.0 and 5.1. (Bug#21055)
* lisp/international/mule-util.el (bufferpos-to-filepos): New
function.
* etc/NEWS: Mention bufferpos-to-filepos.
Eli Zaretskii [Sat, 18 Jul 2015 10:02:06 +0000 (13:02 +0300)]
Fix scrolling backwards on TTY frames under scroll-conservatively
* src/xdisp.c (move_it_vertically_backward): Fix off-by-one error
in moving backwards on TTY frames. (Bug#21080)
Dmitry Gutov [Sat, 18 Jul 2015 01:01:01 +0000 (04:01 +0300)]
Consider a jsdoc tag to be a beginning of a paragraph as well
* lisp/progmodes/js.el (js-mode): Change c-paragraph-start to
consider a jsdoc tag to be a beginning of a paragraph as well.
Artur Malabarba [Fri, 17 Jul 2015 22:51:32 +0000 (23:51 +0100)]
* lisp/emacs-lisp/package.el: Fix warnings
Artur Malabarba [Fri, 17 Jul 2015 18:24:15 +0000 (19:24 +0100)]
* lisp/emacs-lisp/package.el (package-buffer-info):
Add author and maintainers to `package-buffer-info'.
Artur Malabarba [Fri, 17 Jul 2015 18:25:39 +0000 (19:25 +0100)]
* lisp/emacs-lisp/package.el: Many small changes
Replace all instances of 'face with 'font-lock-face.
(describe-package-1): Improve some strings and move the summary up the
list.
(package-install-file): Update docstring.
(package-menu-hide-package): Bind to `H'.
Artur Malabarba [Fri, 17 Jul 2015 22:00:24 +0000 (23:00 +0100)]
* lisp/emacs-lisp/package.el (package--with-work-buffer-async):
Fix error handling.
Paul Eggert [Fri, 17 Jul 2015 18:54:24 +0000 (11:54 -0700)]
Fix hang with large yanks This should fix the bug fixed by Mike
Crowe's patch in:
https://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00106.html
A problem in this area has been reported by several users; see
Bug#16737, Bug#17101, Bug#17026, Bug#17172, Bug#19320, Bug#20283.
This fix differs from Mike Crowe's patch in that it should avoid a
race condition that could lose SIGIO signals. ignore_sigio dates
back to the 1980s when some platforms couldn't block signals, and
could only ignore them, which led to races when signals arrived
while being ignored. We shouldn't have to worry about those old
platforms now.
* src/dispextern.h, src/sysdep.c (ignore_sigio): Remove.
* src/emacs.c (shut_down_emacs):
Don't call ignore_sigio; unrequest_sigio should suffice.
* src/keyboard.c (kbd_buffer_store_buffered_event):
Use unrequest_sigio, not ignore_sigio.
(kbd_buffer_get_event):
Call request_sigio when getting the ball rolling again.
Artur Malabarba [Fri, 17 Jul 2015 11:22:24 +0000 (12:22 +0100)]
* lisp/obsolete/longlines.el (longlines-search-function):
Fallback on `isearch-search-fun-default'.
Tassilo Horn [Fri, 17 Jul 2015 11:18:38 +0000 (13:18 +0200)]
Support @-mentions
* rcirc.el (rcirc-completion-at-point): Support completion of
mentions/messages with @nick instead of just nick.
Michael Albinus [Thu, 16 Jul 2015 18:04:07 +0000 (20:04 +0200)]
Fix Bug#20943.
* lisp/autorevert.el (auto-revert-handler): Do not check for
`buffer-modified-p'.
* lisp/files.el (buffer-stale--default-function): Check for
`buffer-modified-p'.
* test/automated/auto-revert-tests.el
(auto-revert-test02-auto-revert-mode-dired): Adapt test.
Ari Roponen [Thu, 16 Jul 2015 14:52:30 +0000 (07:52 -0700)]
Fix delete-dups bug on long lists
* lisp/subr.el (delete-dups):
Don't mistakenly keep some dups when applied to long lists.
Paul Eggert [Thu, 16 Jul 2015 07:48:40 +0000 (00:48 -0700)]
Better heuristic for C stack overflow
Improve the heuristic for distinguishing stack overflows from
other SIGSEGV causes (Bug#21004). Corinna Vinschen explained that
the getrlimit method wasn't portable to Cygwin; see:
https://www.cygwin.com/ml/cygwin/2015-07/msg00092.html
Corinna suggested pthread_getattr_np but this also has problems.
Instead, replace the low-level system stuff with a simple
heuristic based on known good stack addresses.
* src/eval.c, src/lisp.h (near_C_stack_top): New function.
* src/sysdep.c: Don't include <sys/resource.h>.
(stack_direction): Remove. All uses removed.
(stack_overflow): New function.
(handle_sigsegv): Use it instead of incorrect getrlimit heuristic.
Make SEGV fatal in non-main threads.
Daiki Ueno [Thu, 16 Jul 2015 06:43:03 +0000 (15:43 +0900)]
epg: Automatically start pinentry server
* epg-config.el (epg-gpgconf-program): New variable.
* epg.el (epg--start): Call `pinentry-start' if
allow-emacs-pinentry is set in ~/.gnupg/gpg-agent.conf.
Katsumi Yamaoka [Wed, 15 Jul 2015 23:06:57 +0000 (23:06 +0000)]
* lisp/gnus/nnimap.el: Fix my last bogus change
Reinstall Stefan Monnier's change that was made in
<
83d824bc4041332f338ad7e5e830f443535aa300>.
Paul Eggert [Wed, 15 Jul 2015 05:29:16 +0000 (22:29 -0700)]
Merge from gnulib
This incorporates:
2015-07-05 acl-permissions: Document FreeBSD ACL_TYPE_NFS4 acls
2015-07-05 acl-permissions: Fix on FreeBSD
2015-07-05 file-has-acl, acl-permissions: fix some more HP-UX typos
* lib/acl-internal.c, lib/acl-internal.h, lib/get-permissions.c:
* lib/set-permissions.c: Copy from gnulib.
Paul Eggert [Wed, 15 Jul 2015 05:19:45 +0000 (22:19 -0700)]
Port to stricter C99
* src/keyboard.h (kbd_buffer_store_event_hold):
Don't return a void expression.
Xue Fuqiao [Wed, 15 Jul 2015 04:08:29 +0000 (12:08 +0800)]
* doc/emacs/frames.texi (Creating Frames): Fix the command `C-x 5 m' runs.
Michael Albinus [Tue, 14 Jul 2015 16:23:39 +0000 (18:23 +0200)]
New autorevert tests.
* test/automated/auto-revert-tests.el: New file.
Paul Eggert [Tue, 14 Jul 2015 13:59:26 +0000 (06:59 -0700)]
Clear gcprolist etc. after stack overflow
After stack overflow, command_loop calls init_eval, and this needs to
clear gcprolist and byte_stack_list (Bug#20996).
* src/alloc.c (init_alloc):
Move gcprolist and byte_stack_list initialization from here ...
* src/eval.c (init_eval): ... to here.
Xue Fuqiao [Mon, 13 Jul 2015 11:05:32 +0000 (19:05 +0800)]
* doc/emacs/windows.texi (Pop Up Window): Fix the description of `C-x 4 m'.
YAMAMOTO Mitsuharu [Mon, 13 Jul 2015 10:14:25 +0000 (19:14 +0900)]
Avoid deprecated enums in mac-ct font backend driver
* src/macfont.m (mac_font_copy_default_descriptors_for_language)
(mac_ctfont_get_advance_width_for_glyph)
(mac_ctfont_get_bounding_rect_for_glyph): Avoid deprecated enums.
YAMAMOTO Mitsuharu [Mon, 13 Jul 2015 09:55:47 +0000 (18:55 +0900)]
Cache font family in mac-ct font backend driver
* src/macfont.m (macfont_family_cache): New variable.
(syms_of_macfont): Initialize it.
(macfont_available_families_cache): New variable.
(macfont_invalidate_family_cache, macfont_get_family_cache_if_present)
(macfont_set_family_cache, macfont_invalidate_available_families_cache)
(macfont_handle_font_change_notification)
(macfont_init_font_change_handler)
(macfont_copy_available_families_cache): New functions.
(macfont_create_family_with_symbol): Use font family caches.
(macfont_list, macfont_list_family): Use
macfont_copy_available_families_cache instead of
mac_font_create_available_families.
Xue Fuqiao [Mon, 13 Jul 2015 06:53:21 +0000 (14:53 +0800)]
; Minor doc fix
Dmitry Gutov [Mon, 13 Jul 2015 01:27:32 +0000 (04:27 +0300)]
Show the default value in the prompt
* lisp/progmodes/xref.el: Add `M-?' binding for
xref-find-references. Declare functions `grep-read-files' and
`grep-expand-template'.
(xref--read-identifier): Show the default value in the prompt.
Dmitry Gutov [Sun, 12 Jul 2015 15:35:08 +0000 (18:35 +0300)]
When called with prefix argument, ask for file patterns to search as well
* lisp/progmodes/xref.el (xref-find-regexp): When called with
prefix argument, ask for file patterns to search as well. When
prompting for the directory, require an existing one.
(xref-collect-matches): Add a new argument, FILES. Use it in the
above function.
Dmitry Gutov [Sun, 12 Jul 2015 14:18:09 +0000 (17:18 +0300)]
Add `project-ignores'
* lisp/progmodes/project.el (project-ignores): New generic
function, and an implementation for the VC project type.
* lisp/progmodes/xref.el (xref--rgrep-command): Split, as a
variant of rgrep-default-command that handles a generic list of
ignores.
(xref-collect-matches): Use it, and pass through to it the value
of the newly added argument.
(xref-find-regexp): Handle ignored paths within the project.
Remove outdated comment.
* lisp/vc/vc.el (vc-default-ignore-completion-table):
Skip the comments and the empty lines.
Xue Fuqiao [Sun, 12 Jul 2015 12:53:46 +0000 (20:53 +0800)]
* doc/emacs/buffers.texi (Misc Buffer): Add a cross reference.
Glenn Morris [Sun, 12 Jul 2015 10:23:58 +0000 (06:23 -0400)]
; Auto-commit of ChangeLog files.
Eric Abrahamsen [Sat, 11 Jul 2015 23:48:09 +0000 (23:48 +0000)]
gnus-registry.el: Correct function argument order
* lisp/gnus/gnus-registry.el (gnus-registry--set/remove-mark):
Reverse the order of function arguments.
Dmitry Gutov [Sat, 11 Jul 2015 15:56:42 +0000 (18:56 +0300)]
Bind grep-highlight-matches to nil
* lisp/progmodes/xref.el (xref-collect-matches):
Bind grep-highlight-matches to nil (bug#20728).
Nikolaus Rath [Sat, 11 Jul 2015 06:01:43 +0000 (06:01 +0000)]
nnimap.el: Fix IMAP message size parsing
* lisp/gnus/nnimap.el (nnimap-transform-headers):
Don't assume that UID comes before RFC822.SIZE.
Stefan Monnier [Fri, 10 Jul 2015 20:17:13 +0000 (16:17 -0400)]
* lisp/gnus/nnimap.el: Clean up "unused var" warnings
(auth-source-creation-prompts): Declare.
(nnimap-retrieve-headers, nnimap-status-message)
(nnimap-request-create-group, nnimap-request-delete-group)
(nnimap-close-group, nnimap-request-move-article)
(nnimap-request-accept-article, nnimap-request-newgroups)
(nnimap-request-post, nnimap-dummy-active-number)
(nnimap-save-mail-spec, nnimap-get-groups): Add _ to unused vars.
(nnimap-parse-flags): Remove unused var `p'.
(nnimap-retrieve-group-data-early): Remove unused var `groups'.
(nnimap-flags-to-marks): Remove unused var `totalp'.
Andy Moreton [Fri, 10 Jul 2015 12:48:11 +0000 (15:48 +0300)]
* src/w32heap.c (DUMPED_HEAP_SIZE): Bump to 20MB.
Copyright-paperwork-exempt: yes
YAMAMOTO Mitsuharu [Fri, 10 Jul 2015 09:04:34 +0000 (18:04 +0900)]
* src/macfont.m (macfont_list): Ignore font families lacking font descriptors.
Dmitry Gutov [Fri, 10 Jul 2015 01:38:16 +0000 (04:38 +0300)]
Don't check the exit status, it can be misleading
* lisp/progmodes/xref.el (xref-collect-matches): Don't check the
exit status, it can be misleading.
Dmitry Gutov [Fri, 10 Jul 2015 01:34:41 +0000 (04:34 +0300)]
Introduce a Project API
* lisp/progmodes/project.el: New file.
* lisp/cedet/ede.el: (project-try-ede): New function.
(project-root): New implementation.
* lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
Set project-search-path-function.
(elisp--xref-find-references): Delegate some logic to
project-search-path.
(elisp-search-path): New function.
(elisp-xref-find): Don't implement `matches' anymore.
* lisp/progmodes/etags.el: Don't implement `matches'.
Delegate some logic to project-search-path.
(etags-search-path): New function.
* lisp/progmodes/xref.el (xref-find-function):
Remove `matches' from the API.
(xref-find-regexp): Move whatever common logic was in elisp and
etags implementations, and search the directories returned by
project-directories and project-search-path.
Nicolas Petton [Thu, 9 Jul 2015 17:49:24 +0000 (19:49 +0200)]
* test/automated/map-tests.el (test-map-delete-return-value): Uncomment test.
Nicolas Petton [Thu, 9 Jul 2015 17:43:41 +0000 (19:43 +0200)]
Add support for gv.el in map.el
* lisp/emacs-lisp/map.el (map-elt, map-delete): Declare a gv-expander.
* lisp/emacs-lisp/map.el (map-put): Refactor using `setf' and `map-elt'.
* test/automated/map-tests.el: Update tests to work with the new
implementations of map-elt and map-put.
Glenn Morris [Thu, 9 Jul 2015 17:18:57 +0000 (13:18 -0400)]
* lisp/emacs-lisp/debug.el (debug-help-follow): Use describe-symbol.
Dmitry Gutov [Thu, 9 Jul 2015 12:28:04 +0000 (15:28 +0300)]
Syntax-propertize until the end of the line first
* lisp/progmodes/xref.el (xref--collect-match): Syntax-propertize
until the end of the line first.
Xue Fuqiao [Thu, 9 Jul 2015 12:24:53 +0000 (20:24 +0800)]
; Improve documentation of image-goto-frame
Xue Fuqiao [Thu, 9 Jul 2015 11:40:41 +0000 (19:40 +0800)]
* doc/emacs/files.texi (File Archives): Add a cross reference.
Nikolaus Rath [Thu, 9 Jul 2015 03:54:03 +0000 (03:54 +0000)]
nnimap.el: Handle plain value for nnimap-stream
* lisp/gnus/nnimap.el (nnimap-open-connection-1): Always query
capabilities, so that a 'plain value for the `nnimap-stream' server
variable is handled correctly.
* doc/misc/gnus.texi (Customizing the IMAP Connection):
Document the 'plain option.
Leo Liu [Thu, 9 Jul 2015 02:18:00 +0000 (10:18 +0800)]
Fix bug in thing-at-point--bounds-of-well-formed-url
* lisp/thingatpt.el (thing-at-point--bounds-of-well-formed-url): Make
sure boundary contains current point.
Dmitry Gutov [Thu, 9 Jul 2015 02:15:50 +0000 (05:15 +0300)]
* lisp/progmodes/xref.el (xref-collect-matches): Use `nreverse' in the end.
Dmitry Gutov [Wed, 8 Jul 2015 22:38:29 +0000 (01:38 +0300)]
Declare whitespace-line-column a safe file-local
* lisp/whitespace.el (whitespace-line-column): Declare to be a
safe file-local when the value is an integer.
Eric Abrahamsen [Wed, 8 Jul 2015 22:28:50 +0000 (22:28 +0000)]
gnus-group.el: Check if group names are already strings
* lisp/gnus/gnus-group.el (gnus-group-group-name):
The group name may already be a string.
Specifically, in the group list reached from the *Server* buffer,
the 'gnus-group text property returns a string. Everywhere else
it returns a symbol.
Eric Abrahamsen [Wed, 8 Jul 2015 22:28:24 +0000 (22:28 +0000)]
nnimap.el: Remove unused let variables
* lisp/gnus/nnimap.el (nnimap-request-group): Variables are not used.
Eli Zaretskii [Wed, 8 Jul 2015 16:16:49 +0000 (19:16 +0300)]
Support "maximized" property of runemacs's shortcut
* nt/runemacs.c (WinMain): If runemacs is invoked "maximized", pass
the '--maximized' switch to Emacs.
Eli Zaretskii [Wed, 8 Jul 2015 14:22:15 +0000 (17:22 +0300)]
Support "minimized" property of runemacs's shortcut
* nt/runemacs.c (WinMain): If runemacs is invoked "minimized",
pass the '--iconic' switch to Emacs. (Bug#20991)
Xue Fuqiao [Wed, 8 Jul 2015 11:17:38 +0000 (19:17 +0800)]
Doc fixes
* doc/emacs/files.texi (Diff Mode): Fix the description of `C-c
C-w' in Diff mode.
* doc/emacs/arevert-xtra.texi (Auto Reverting the Buffer Menu):
Add a cross reference.
; * doc/emacs/search.texi (Regexp Backslash): Minor fix.
Dmitry Gutov [Wed, 8 Jul 2015 10:57:15 +0000 (13:57 +0300)]
; Fix a typo
Nicolas Richard [Wed, 8 Jul 2015 05:54:28 +0000 (07:54 +0200)]
* lisp/obsolete/landmark.el: Add Obsolete-since header
Glenn Morris [Tue, 7 Jul 2015 17:56:40 +0000 (13:56 -0400)]
* test/automated/ert-tests.el (ert-test-deftest):
Update for recent changes.
Stefan Monnier [Tue, 7 Jul 2015 15:37:04 +0000 (11:37 -0400)]
(gv-setter, gv-synthetic-place, gv-delay-error): New funs/macros
* lisp/emacs-lisp/gv.el (gv-setter): New function.
(gv-invalid-place): New error.
(gv-get): Use them.
(gv-synthetic-place, gv-delay-error): New places.
* lisp/emacs-lisp/cl-generic.el (cl--generic-setf-rewrite): Remove.
(cl-defgeneric, cl-defmethod): Use gv-setter.
Fabrice Popineau [Tue, 7 Jul 2015 15:06:53 +0000 (18:06 +0300)]
Make vc-tests work with MSYS svn program
* lisp/vc/vc-svn.el (vc-svn-create-repo): Fix the file:// URL when
svn is an MSYS program.
Ken Brown [Tue, 7 Jul 2015 14:24:09 +0000 (10:24 -0400)]
Improve recent change to emacsclient on Cygwin
* lisp/server.el (server-process-filter): Remove redundant check
that 'cygwin-convert-file-name-from-windows' is defined as a
function on Cygwin. Don't call that function unless its argument
starts with a drive letter.
Artur Malabarba [Tue, 7 Jul 2015 13:59:47 +0000 (14:59 +0100)]
* lisp/emacs-lisp/package.el (package-compute-transaction): Bug fix
Fix void variable due to `found-something' being in the wrong `let'.
Nicolas Richard [Tue, 7 Jul 2015 10:38:02 +0000 (12:38 +0200)]
; * ChangeLog.2: Add full path for changes I introduced in
6689b53 and
a4760a3
Nicolas Richard [Mon, 29 Jun 2015 08:58:46 +0000 (10:58 +0200)]
* lisp/play/landmark.el: Move to lisp/obsolete/
; * etc/NEWS: Mention the change.
Martin Rudalics [Tue, 7 Jul 2015 06:45:21 +0000 (08:45 +0200)]
Have `x-show-tip' handle `right' and `bottom' frame parameters.
* src/nsfns.m (compute_tip_xy, Fx_show_tip)
* src/w32fns.c (compute_tip_xy, Fx_show_tip)
* src/xfns.c (compute_tip_xy, Fx_show_tip): Allow aligning
tooltips also via `right' and `bottom' frame parameters.
Stefan Monnier [Tue, 7 Jul 2015 06:14:16 +0000 (02:14 -0400)]
Add online-help support to describe types
* lisp/help-fns.el (describe-symbol-backends): Move to help-mode.el.
(describe-symbol): Improve the selection of default.
* lisp/help-mode.el: Require cl-lib.
(describe-symbol-backends): Move from help-fns.el.
(help-make-xrefs): Use it.
* lisp/emacs-lisp/cl-extra.el (describe-symbol-backends): Add entry
for types.
(cl--typedef-regexp): New const.
(find-function-regexp-alist): Add entry for types.
(cl-help-type, cl-type-definition): New buttons.
(cl-find-class): New function.
(cl-describe-type): New command.
(cl--describe-class, cl--describe-class-slot)
(cl--describe-class-slots): New functions, moved from eieio-opt.el.
* lisp/emacs-lisp/cl-generic.el (cl--generic-method-documentation)
(cl--generic-all-functions, cl--generic-specializers-apply-to-type-p):
New functions. Moved from eieio-opt.el.
(cl--generic-class-parents): New function, extracted from
cl--generic-struct-specializers.
(cl--generic-struct-specializers): Use it.
* lisp/emacs-lisp/cl-macs.el (cl-defstruct): Use pcase-dolist.
Improve constructor's docstrings.
(cl-struct-unknown-slot): New error.
(cl-struct-slot-offset): Use it.
* lisp/emacs-lisp/cl-preloaded.el (cl-struct-define): Record the type
definition in current-load-list.
* lisp/emacs-lisp/eieio-core.el (eieio--known-slot-names): New var.
(eieio--add-new-slot): Set it.
(eieio-defclass-internal): Use new name for current-load-list.
(eieio-oref): Add compiler-macro to warn about unknown slots.
* lisp/emacs-lisp/eieio.el (defclass): Update eieio--known-slot-names
as compile-time as well. Improve constructor docstrings.
* lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
(eieio--help-print-slot, eieio-help-class-slots): Move to cl-extra.el.
(eieio-class-def): Remove button.
(eieio-help-constructor): Use new name for load-history element.
(eieio--specializers-apply-to-class-p, eieio-all-generic-functions)
(eieio-method-documentation): Move to cl-generic.el.
(eieio-display-method-list): Use new names.
* lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression):
Add "define-linline".
(lisp-fdefs): Remove "defsubst".
(el-fdefs): Add "defsubst", "cl-defsubst", and "define-linline".
* lisp/emacs-lisp/macroexp.el (macroexp--warned): New var.
(macroexp--warn-and-return): Use it to avoid inf-loops.
Add `compile-only' argument.
Fabián Ezequiel Gallina [Mon, 6 Jul 2015 23:08:01 +0000 (20:08 -0300)]
python.el: Fix local/remote shell environment setup
* lisp/progmodes/python.el (python-shell-with-environment): Fix
remote/local environment setup.
* test/automated/python-tests.el (python-shell-with-environment-1)
(python-shell-with-environment-2): New tests.
Glenn Morris [Mon, 6 Jul 2015 20:35:45 +0000 (16:35 -0400)]
* lisp/simple.el (set-variable): Tweak recent doc fix.
Ken Brown [Mon, 6 Jul 2015 20:00:37 +0000 (16:00 -0400)]
* src/sysdep.c (handle_sigsegv) [CYGWIN]: Increase STACK_DANGER_ZONE
Glenn Morris [Mon, 6 Jul 2015 19:30:51 +0000 (15:30 -0400)]
* lisp/simple.el (set-variable): Use user-error for type mismatch.
Ken Brown [Mon, 6 Jul 2015 19:08:47 +0000 (15:08 -0400)]
* src/emacs.c (main): Don't increase the stack size on Cygwin
Stefan Monnier [Mon, 6 Jul 2015 17:25:26 +0000 (13:25 -0400)]
(describe-symbol): Rewrite describe-function-or-variable
* lisp/help-fns.el (describe-symbol-backends): New var.
(help-xref-stack-item): Declare.
(describe-symbol): Rename from describe-function-or-variable.
Rewrite using describe-symbol-backends instead of help-xref-interned.
* lisp/help.el (help-map): Use it.
* lisp/help-mode.el (help-symbol, help-follow-symbol): Use it.
(help-xref-interned): Make it into an obsolete alias.
Stefan Monnier [Mon, 6 Jul 2015 15:55:37 +0000 (11:55 -0400)]
(eieio-persistent-save): Don't ignore `file' arg (bug#20972)
* lisp/emacs-lisp/eieio-base.el (eieio-persistent-save): Don't ignore
`file' arg. Always use utf-8-emacs. Use with-temp-buffer and cl-letf.
Wolfgang Jenkner [Mon, 6 Jul 2015 13:10:27 +0000 (15:10 +0200)]
; Auto-commit of loaddefs files.
Wolfgang Jenkner [Mon, 6 Jul 2015 13:10:03 +0000 (15:10 +0200)]
Fix parsing glitches in dired-mark-sexp (bug#13575)
* lisp/dired-x.el (dired-x--string-to-number): New function.
(dired-mark-sexp): Use it. Tweak dired-re-inode-size. Fix usage
of directory-listing-before-filename-regexp. Consider
forward-word harmful and replace it. Add more verbiage in
comments and doc string.
Fabián Ezequiel Gallina [Mon, 6 Jul 2015 10:57:14 +0000 (07:57 -0300)]
python.el: Respect process environment for remote shells
* lisp/progmodes/python.el
(python-shell-calculate-process-environment): Calculate
process-environment or tramp-remote-process-environment depending
whether current file is remote.
(python-shell-calculate-exec-path): Calculate exec-path or
tramp-remote-path depending whether current file is remote.
(python-shell-with-environment): New macro.
(python-shell-prompt-detect, python-shell-calculate-command)
(python-shell-make-comint, python-check): Use it.
Paul Eggert [Mon, 6 Jul 2015 06:16:19 +0000 (23:16 -0700)]
; Spelling fixes
Fabián Ezequiel Gallina [Mon, 6 Jul 2015 05:34:44 +0000 (02:34 -0300)]
python.el: Avoid making let-bound defvars buffer local (Bug#18244)
* lisp/progmodes/python.el (python-shell--interpreter)
(python-shell--interpreter-args): New vars.
(inferior-python-mode, python-shell-make-comint): Use them.
Fabián Ezequiel Gallina [Mon, 6 Jul 2015 05:02:06 +0000 (02:02 -0300)]
; python.el: Replace `eval-when-compile` with `eval-and-compile`
Fabián Ezequiel Gallina [Mon, 6 Jul 2015 04:59:02 +0000 (01:59 -0300)]
python.el: Fixes for IPython 3.x (Bug#20580)
* lisp/progmodes/python.el:
(python-shell-completion-native-setup): Fix IPython 3.x setup.
(python-shell-completion-native-get-completions): Fix timeout
logic.
Fabián Ezequiel Gallina [Mon, 6 Jul 2015 04:03:46 +0000 (01:03 -0300)]
python.el: Fix mark-defun behavior (Bug#19665)
* lisp/progmodes/python.el: (python-mark-defun): New function.
* test/automated/python-tests.el (python-mark-defun-1)
(python-mark-defun-2, python-mark-defun-3): New tests.
Glenn Morris [Mon, 6 Jul 2015 02:25:04 +0000 (19:25 -0700)]
* lisp/progmodes/f90.el (f90-type-def-re): Handle attribute lists
such as "extends(parent), private". (Bug#20969)
* test/automated/f90.el (f90-test-bug20969, f90-test-bug20969b):
New tests.
Paul Eggert [Mon, 6 Jul 2015 02:19:13 +0000 (19:19 -0700)]
Avoid duplicate calls to current_timespec
* src/process.c (wait_reading_process_output):
Cache current_timespec results as long as we're not waiting.
Ian Kelling [Mon, 6 Jul 2015 01:14:25 +0000 (18:14 -0700)]
Avoid returning early reading process output due to SIGIO
* src/process.c (wait_reading_process_output): Extend the behavior of
not breaking due to not finding output when a timer has lowered the
timeout to include when SIGIO lowers the timeout.
Ian Kelling [Mon, 6 Jul 2015 00:00:26 +0000 (17:00 -0700)]
Don't return as fast reading any process output
* src/process.c (wait_reading_process_output):
The patch for Bug#17647 returns too fast sometimes when reading
from any processes. Revert part of it, and limit the timeout more
sensibly (Bug#20978).
Ian Kelling [Sun, 5 Jul 2015 22:55:19 +0000 (15:55 -0700)]
Refactor timeouts in wait_reading_process_output
* src/process.c (wait_reading_process_output):
Simplify timeouts with an enum. Remove a redundant condition.
(Bug#20978)
Ian Kelling [Sun, 5 Jul 2015 22:38:29 +0000 (15:38 -0700)]
; Rename local var nsecs to adaptive_nsecs
* src/process.c (wait_reading_process_output): Rename inner nsecs to
adaptive_nsecs. There is already an nsecs, and this function is
confusing enough (Bug#20978).
Ian Kelling [Sun, 5 Jul 2015 22:35:23 +0000 (15:35 -0700)]
; Rename local var to match function name
* src/process.c (wait_reading_process_output, status_notify):
Previously the function wait_reading_process_input was renamed to the
more logical wait_reading_process_output. Make its local variables
consistent with that change (Bug#20978).
Ian Kelling [Sun, 5 Jul 2015 22:30:27 +0000 (15:30 -0700)]
Remove ADAPTIVE_READ_BUFFERING ifdef
* src/process.c (make-process, make-pipe-process, deactivate_process)
(wait_reading_process_output, read_process_output, send_process)
(init_process_emacs): ifdef ADAPTIVE_READ_BUFFERING was originally
added in case there was an operating system in which it was not
useful. That was 11 years ago and it hasn't happened. Make
development easier by not considering the effect of changes on a
theoretical OS where this is disabled (Bug#20978).
Ian Kelling [Sun, 5 Jul 2015 22:23:35 +0000 (15:23 -0700)]
; Minor cleanup of wait_reading_process_output
* src/process.c (wait_reading_process_output):
Simplify logic. Fix DOS version comments (Bug#20978).
Glenn Morris [Mon, 6 Jul 2015 00:21:42 +0000 (17:21 -0700)]
* lisp/simple.el (set-variable): Doc fix.
Glenn Morris [Mon, 6 Jul 2015 00:16:01 +0000 (17:16 -0700)]
* lisp/progmodes/fortran.el (fortran-line-length): Doc fix.
Ian Kelling [Sun, 5 Jul 2015 22:14:12 +0000 (15:14 -0700)]
accept-process-output fix
This is a followon to the fix for Bug#17647 (Bug#20976).
* src/process.c (status_notify): Fix too high return in some cases.
Artur Malabarba [Sun, 5 Jul 2015 15:44:22 +0000 (16:44 +0100)]
* lisp/character-fold.el (character-fold-table):
Only fold decompositions if at least one character is non-spacing.
(Bug#20975)