Glenn Morris [Mon, 25 Nov 2013 02:36:41 +0000 (18:36 -0800)]
Further tweaks to the setting of Vload_path
This is giving me a headache...
* src/lread.c (load_path_default): Change the sense of the argument.
(init_lread): When EMACSLOADPATH is set, do not ignore changes
from dump_path. When it is not, avoid checking dump_path twice.
Bozhidar Batsov [Sun, 24 Nov 2013 09:31:51 +0000 (11:31 +0200)]
* lisp/emacs-lisp/helpers.el: Add some string helpers.
(string-trim-left): Removes leading whitespace.
(string-trim-right): Removes trailing whitespace.
(string-trim): Removes leading and trailing whitespace.
Glenn Morris [Sat, 23 Nov 2013 20:46:43 +0000 (12:46 -0800)]
Stop some python tests leaving temp-files behind
* test/automated/python-tests.el (python-shell-make-comint-1)
(python-shell-make-comint-2, python-shell-get-process-1):
Suppress creation of some temp-files.
Glenn Morris [Sat, 23 Nov 2013 20:42:38 +0000 (12:42 -0800)]
Use skip-unless in some python tests
* test/automated/python-tests.el (python-shell-parse-command-1)
(python-shell-make-comint-1, python-shell-make-comint-2)
(python-shell-get-process-1)
(python-shell-internal-get-or-create-process-1):
Skip rather than fail if prereqs not found.
Glenn Morris [Sat, 23 Nov 2013 02:58:28 +0000 (18:58 -0800)]
* src/process.c (get_process): Explicit error for dead buffers
That seems more in keeping with the existing behavior of this function
in other situations.
Glenn Morris [Sat, 23 Nov 2013 01:55:16 +0000 (17:55 -0800)]
Empty elements in EMACSLOADPATH now stand for the default
* src/lread.c (load_path_check): Take path to check as argument.
(load_path_default): New, split from init_lread.
(init_lread): Move calc of default load-path to load_path_default.
Empty elements in EMACSLOADPATH now stand for the default.
(load-path): Doc fix.
* src/emacs.c (decode_env_path): Add option to treat empty elements
as nil rather than ".".
* src/callproc.c (init_callproc_1, init_callproc):
* src/image.c (Vx_bitmap_file_path):
* src/lisp.h (decode_env_path):
* lread.c (Vsource_directory):
Update for new argument spec of decode_env_path.
* leim/Makefile.in (RUN_EMACS): Empty EMACSLOADPATH rather than unsetting.
* lisp/Makefile.in (emacs): Empty EMACSLOADPATH rather than unsetting.
* test/automated/Makefile.in (emacs):
Empty EMACSLOADPATH rather than unsetting.
* doc/emacs/cmdargs.texi (General Variables):
Empty elements in EMACSLOADPATH now mean the default load-path.
* doc/lispref/loading.texi (Library Search):
Empty elements in EMACSLOADPATH now mean the default load-path.
Leo Liu [Fri, 22 Nov 2013 08:09:40 +0000 (16:09 +0800)]
* progmodes/octave.el (octave-help-mode): Adapt to change to
help-mode-finish to use derived-mode-p on 2013-09-17.
(inferior-octave-prompt): Also match octave-gui.
Leo Liu [Fri, 22 Nov 2013 02:02:42 +0000 (10:02 +0800)]
* progmodes/octave.el (inferior-octave-process-live-p): New helper.
(inferior-octave-startup, inferior-octave-check-process)
(inferior-octave-track-window-width-change)
(octave-completion-at-point, octave-eldoc-function): Use it.
(octave-kill-process): Provide confirmation.
Paul Eggert [Thu, 21 Nov 2013 07:50:57 +0000 (23:50 -0800)]
Fix some dependency problems that cause unnecessary recompiles.
Problem reported by RMS in
<http://lists.gnu.org/archive/html/emacs-devel/2013-11/msg00421.html>.
* configure.ac (OLDXMENU_TARGET, OLDXMENU, LIBXMENU, OLDXMENU_DEPS):
Remove.
(LIBXMENU_DIR, LIBXMENU_BASE): New vars.
* src/Makefile.in (OLDXMENU_TARGET, OLDXMENU, OLDXMENU_DEPS)
(really-lwlib, really-oldXMenu, stamp-oldxmenu)
(../src/$(OLDXMENU), $(OLDXMENU)): Remove.
(LIBXMENU_DIR, LIBXMENU_BASE): New macros.
(LIBXMENU): Use them.
(temacs$(EXEEXT)): Depend on $(LIBXMENU), not stamp-oldxmenu.
($(lwlibdir)/liblw.a, $(oldXMenudir)/libXMenu11.a, FORCE): New targets.
(boostrap-clean): No need to remove stamp-oldxmenu.
Paul Eggert [Thu, 21 Nov 2013 06:46:59 +0000 (22:46 -0800)]
Fix recently introduced bool vector overrun.
This was due to an optimization that went awry.
Reported by Glenn Morris in
<http://lists.gnu.org/archive/html/emacs-devel/2013-11/msg00622.html>.
* alloc.c (make_uninit_bool_vector): Don't allocate a dummy word
for empty vectors, undoing the 2013-11-18 change.
* data.c (bool_vector_binop_driver): Rely on this.
Fix bug that occasionally overran the destination.
* lisp.h (struct Lisp_Bool_vector): Document this.
Dani Moncayo [Wed, 20 Nov 2013 01:48:50 +0000 (20:48 -0500)]
* Makefile.in (msys_to_w32, msys_lisppath_to_w32): Remove.
(msys_w32prefix_subst): Rename from msys_prefix_subst.
Operate on w32prefixpattern.
(epaths-force-w32): Use build-aux/msys-to-w32.
Leo Liu [Tue, 19 Nov 2013 02:34:04 +0000 (10:34 +0800)]
* window.el (display-buffer-alist, display-buffer): Document the
new parameter no-display-ok.
* progmodes/compile.el (compilation-start)
(compilation-goto-locus, compilation-find-file): Pass
no-display-ok and handle nil value from display-buffer.
Paul Eggert [Mon, 18 Nov 2013 18:56:42 +0000 (10:56 -0800)]
Improve API of recently-added bool vector functions.
The old API had (bool-vector-count-matches A B)
and (bool-vector-count-matches-at A B I), which gave the
misleading impression that the two functions were variants, one
with a location I. The new API has (bool-vector-count-population A)
and (bool-vector-count-consecutive A B I) to make the distinction
clearer. The first function no longer has a B argument, since the
caller can easily determine the number of nils if the length and
number of ts is known.
* src/data.c (Fbool_vector_count_population): Rename from
bool_vector_count_matches, and accept just 1 argument.
(Fbool_vector_count_consecutive): Rename from
Fbool_vector_count_matches_at.
* test/automated/data-tests.el: Adjust to API changes.
Paul Eggert [Mon, 18 Nov 2013 18:37:25 +0000 (10:37 -0800)]
Always allocate at least one bits_word per bool vector.
See Daniel Colascione in:
http://lists.gnu.org/archive/html/emacs-devel/2013-11/msg00518.html
* alloc.c (make_uninit_bool_vector): Always allocate at least one word.
* data.c (bool_vector_binop_driver): Rely on this. Tune.
* lisp.h (struct Lisp_Bool_vector): Document this.
Eli Zaretskii [Mon, 18 Nov 2013 16:29:49 +0000 (18:29 +0200)]
Fix bug #15841 with assertion violations due to newline cache.
src/insdel.c (invalidate_buffer_caches): New function, consolidated
from part of prepare_to_modify_buffer.
(insert_from_gap, prepare_to_modify_buffer):
src/coding.c (code_convert_region, code_convert_string): Call
invalidate_buffer_caches.
src/lisp.h (invalidate_buffer_caches): Add prototype.
Stefan Monnier [Sun, 17 Nov 2013 23:01:23 +0000 (18:01 -0500)]
* lisp/progmodes/gdb-mi.el: Avoid backtracking in regexp matcher.
(gdb--string-regexp): New constant.
(gdb-tooltip-print, gdb-var-evaluate-expression-handler)
(gdbmi-bnf-stream-record, gdb-jsonify-buffer): Use it.
(gdb-source-file-regexp, gdb-prompt-name-regexp): Use it and change
submatch 1.
(gdb-get-source-file-list, gdb-get-prompt, gdb-get-source-file):
Adjust use accordingly.
(gdb-breakpoints-list-handler-custom): Pre-build the y/n string.
Eli Zaretskii [Sun, 17 Nov 2013 21:02:09 +0000 (23:02 +0200)]
Fix bug #15913 with disappearing mouse highlight on MS-Windows.
src/w32term.c (x_update_window_end): Don't invalidate the entire
mouse-highlight info, just signal frame_up_to_date_hook that mouse
highlight needs to be redisplayed.
Paul Eggert [Sun, 17 Nov 2013 07:51:24 +0000 (23:51 -0800)]
Spelling fixes.
* lisp/org/ob-python.el (org-babel-python-with-earmuffs):
Rename from org-babel-python-with-earmufs. All uses changed.
(org-babel-python-without-earmuffs):
Rename from org-babel-python-without-earmufs. All uses changed.
Paul Eggert [Sun, 17 Nov 2013 03:58:30 +0000 (19:58 -0800)]
* configure.ac (DEBUGGER_SEES_C_MACROS): Remove.
* src/lisp.h (DEBUGGER_SEES_C_MACROS): Likewise.
It apparently doesn't work for GCC 3, and I suppose it's more
trouble than it's worth to worry about this.
Ted Zlatanov [Sat, 16 Nov 2013 22:36:14 +0000 (17:36 -0500)]
Add CFEngine 3 ElDoc, completion, and compilation glue to cf-promises.
* progmodes/cfengine.el: Version bump.
(cfengine-cf-promises): New defcustom to locate cf-promises.
(cfengine3-vartypes): Add new "data" type.
(cfengine3--current-word): New function to get current name-like
word or its bounds.
(cfengine3--current-function): New function to look up a CFEngine
function's definition.
(cfengine3-format-function-docstring): New function.
(cfengine3-make-syntax-cache): New function.
(cfengine3-documentation-function): New function: ElDoc glue.
(cfengine3-completion-function): New function: completion glue.
(cfengine3-mode): Set `compile-command',
`eldoc-documentation-function', and add to
`completion-at-point-functions'.
Barry O'Reilly [Sat, 16 Nov 2013 20:27:24 +0000 (15:27 -0500)]
* semantic/fw.el (semantic-exit-on-input)
(semantic-throw-on-input): Restore point before
accept-process-output because timers which redisplay can run.
(Bug#15045)