Paul Eggert [Sat, 28 Dec 2013 00:40:58 +0000 (16:40 -0800)]
Fix problem with MAKE and xcrun configuration.
* configure.ac: Don't set MAKE unless 'make' doesn't work.
Set it only in the environment, not in the makefile.
Problem reported by Glenn Morris in:
http://lists.gnu.org/archive/html/emacs-devel/2013-12/msg00969.html
Jarek Czekalski [Fri, 27 Dec 2013 20:58:21 +0000 (21:58 +0100)]
Shell completion for filenames from current directory, related docs.
* lisp/shell.el Shell completion now matches executable filenames from
the current buffer's directory, on systems in which this behaviour
is the default (windows-nt, ms-dos).
* src/callproc.c (Vexec_path): Document that exec-directory is in it.
* doc/emacs/mini.texi (Completion Options): Add a link to Shell Options.
* doc/emacs/misc.texi (Shell Mode): Move documentation of
shell-completion-fignore from Shell Mode to Shell Options.
Paul Eggert [Fri, 27 Dec 2013 19:14:10 +0000 (11:14 -0800)]
Port xcrun configuration to GNU/Linux.
* configure.ac (xcsdkdir): Default to empty.
(XCRUN): Don't require Darwin for xcrun. Move xcrun checking to
just before AM_INIT_AUTOMAKE, to make the dependency between it
and automake clearer.
(CC): Don't use AC_PROG_CC twice; only the first use expands to the
shell code that is wanted, which breaks 'configure' on non-Darwin
platforms. Instead, fix CC by hand if it's not found.
Paul Eggert [Fri, 27 Dec 2013 03:25:43 +0000 (19:25 -0800)]
Sync better from sources.
* CXTERM-DIC/ARRAY30.tit, CXTERM-DIC/4Corner.tit:
* CXTERM-DIC/QJ.tit, CXTERM-DIC/QJ-b5.tit:
Omit blank lines not present in the original.
* CXTERM-DIC/CCDOSPY.tit:
* CXTERM-DIC/PY-b5.tit:
* CXTERM-DIC/SW.tit, CXTERM-DIC/TONEPY.tit:
* MISC-DIC/pinyin.map, MISC-DIC/ziranma.cin:
Clarify which header lines were added for Emacs.
* CXTERM-DIC/README:
Clarify what changes we made, and where the files came from.
* MISC-DIC/README, MISC-DIC/pinyin.map, MISC-DIC/ziranma.cin:
Update URLs.
* SKK-DIC/SKK-JISYO.L: Update from upstream.
* net/shr.el (shr-find-fill-point): Don't try to fill if the
indentation level is larger than the width, because that will
infloop.
(shr-insert): Fill repeatedly long texts, so that Japanese is
formatted correctly.
Martin Rudalics [Thu, 26 Dec 2013 11:31:42 +0000 (12:31 +0100)]
Some more tinkering with Bug#16051.
* window.c (resize_frame_windows): Don't let the size of the
root window drop below the frame's default character size.
Never ever delete any subwindows - let the window manager do the
clipping.
* w32fns.c (x_set_tool_bar_lines): Rewrite calculation of number
of toolbar lines needed when they exceed the height of the root
window.
(unwind_create_frame_1): New function.
(Fx_create_frame): Generally inhibit calling the window
configuration change hook here. Remove extra call to
change_frame_size - it's not needed when we don't run the
configuration change hook.
Paul Eggert [Thu, 26 Dec 2013 08:57:28 +0000 (00:57 -0800)]
Fix core dumps with gcc -fsanitize=address and GNU/Linux.
On my Fedora 19 platform the core dumps were so big that
my desktop became nearly catatonic.
* configure.ac: Check whether addresses are sanitized.
(CANNOT_DUMP): Warn if addresses are sanitized and not CANNOT_DUMP.
(DOUG_LEA_MALLOC): Do not define if addresses are sanitized.
(SYSTEM_MALLOC): Define if addresses are sanitized.
* src/alloc.c (no_sanitize_memcpy) [MAX_SAVE_STACK > 0]: New function.
(Fgarbage_collect) [MAX_SAVE_STACK > 0]: Use it.
(USE_ALIGNED_MALLOC): Do not define if addresses are sanitized.
(mark_memory): Use ATTRIBUTE_NO_SANITIZE_ADDRESS rather than
a clang-only syntax.
* src/conf_post.h (__has_feature): New macro, if not already defined.
(ADDRESS_SANITIZER, ADDRESS_SANITIZER_WORKAROUND)
(ATTRIBUTE_NO_SANITIZE_ADDRESS): New macros.
(shr-char-kinsoku-bol-p): The quotation mark isn't a kinsoky BOL char.
(shr-find-fill-point): Remove the special checks for the quotation
mark, since `shr-char-kinsoku-bol-p' should now return the right
thing.
* lisp/progmodes/python.el:
(python-nav--lisp-forward-sexp): New function.
(python-nav--lisp-forward-sexp-safe): Use it. Rename from
python-nav-lisp-forward-sexp-safe.
(python-nav--forward-sexp): New argument SAFE allows switching
forward sexp movement behavior for parens.
(python-nav-forward-sexp): Throw errors on unterminated parens.
(python-nav-backward-sexp, python-nav-forward-sexp-safe)
(python-nav-backward-sexp-safe): New functions.
(python-shell-buffer-substring): Use
`python-nav-forward-sexp-safe'.
* test/automated/python-tests.el
(python-nav-lisp-forward-sexp-safe-1): Remove test.
(python-nav-forward-sexp-safe-1): New test.
* doc/lispref/keymaps.texi (Active Keymaps): Re-organize the text.
(Searching Keymaps): Rewrite the pseudo-code for 24.4 changes.
(Controlling Active Maps): Note that set-transient-map uses
overriding-terminal-local-map.
* doc/lispref/nonascii.texi (Specifying Coding Systems): Don't refer to
emacs-mule-dos.
(Lisp and Coding Systems): Describe emacs-mule return value in
modern terms.
* doc/lispref/tips.texi (Coding Conventions): Tweak the coding system tip;
Emacs now uses utf-8 by default for Emacs Lisp source files.
* doc/emacs/glossary.texi (Glossary): Define MULE in modern terms.
Chong Yidong [Wed, 25 Dec 2013 03:05:11 +0000 (11:05 +0800)]
Document `eval' changes.
* doc/lispref/eval.texi (Eval): Document the LEXICAL arg to eval.
* doc/lispref/variables.texi (Variables, Void Variables): Use "scoping rule"
terminology consistently.
(Variable Scoping): Add index entries, and use "dynamic scope"
terminology in place of "indefinite scope" to reduce confusion.
(Lexical Binding): Document lexical environment format.
(Using Lexical Binding): Add index entries for error messages.
Eli Zaretskii [Tue, 24 Dec 2013 17:21:06 +0000 (19:21 +0200)]
Minor fixes in w32-shell-execute.
src/w32fns.c (Fw32_shell_execute): Ensure DOCUMENT is an absolute
file name when it is submitted to ShellExecute. Simplify code.
Don't test DOCUMENT for being a string, as that is enforced by
CHECK_STRING. Doc fix.
Tassilo Horn [Tue, 24 Dec 2013 15:30:59 +0000 (16:30 +0100)]
Fix missing arg in pcase example.
* doc/lispref/control.texi (Pattern matching case statement): Fix missing
argument in simple expression language sample. Add
some sample programs written in that language. Mention that
`pcase' requires lexical binding.
Eli Zaretskii [Mon, 23 Dec 2013 19:24:25 +0000 (21:24 +0200)]
Last portion of fix for bug #16051 with redisplay loops.
src/xdisp.c (redisplay_tool_bar): Modify the tool-bar-lines frame parameter
only when the new size is different from the old one, and the new
size can be achieved given the frame height.
Eli Zaretskii [Mon, 23 Dec 2013 16:36:34 +0000 (18:36 +0200)]
Fix most of bug #16051 with redisplay loops when resizing tool-bar.
src/xdisp.c (tool_bar_height): Use WINDOW_PIXEL_WIDTH to set up the
iterator X limits, not FRAME_TOTAL_COLS, for consistency with what
redisplay_tool_bar does. Improve and fix commentary.
(hscroll_window_tree): Don't assume w->cursor.vpos is within the
limits of the glyph matrices.
Martin Rudalics [Sun, 22 Dec 2013 15:19:09 +0000 (16:19 +0100)]
Handle Bug#16207 by being more restrictive when running hooks.
* window.c (unwind_change_frame): New function.
(Fset_window_configuration): Don't run configuration change hook
while the frame configuration is unsafe. Call select_window
twice.