Stefan Monnier [Wed, 25 Jun 2014 18:11:45 +0000 (14:11 -0400)]
* lisp/play/landmark.el: Use lexical-binding and avoid `intangible'.
(landmark--last-pos): New var.
(landmark--intangible-chars): New const.
(landmark--intangible): New function.
(landmark-mode, landmark-move): Use it.
(landmark-mode): Remove properties.
(landmark-plot-square, landmark-point-square, landmark-goto-xy)
(landmark-cross-qtuple):
Don't worry about `intangible' any more.
(landmark-click, landmark-point-y): Same; and don't assume point-min==1.
(landmark-init-display): Don't set `intangible' and `point-entered'.
(square): Remove. Inline it instead.
(landmark--distance): Rename from `distance'.
(landmark-calc-distance-of-robot-from): Rename from
calc-distance-of-robot-from.
(landmark-calc-smell-internal): Rename from calc-smell-internal.
Dmitry Antipov [Wed, 25 Jun 2014 12:11:08 +0000 (16:11 +0400)]
Consistently use validate_subarray to verify substring.
* fns.c (validate_substring): Not static any more. Adjust to
use ptrdiff_t, not EMACS_INT, becase string and vector limits
can't exceed ptrdiff_t even if EMACS_INT is wider.
* lisp.h (validate_subarray): Add prototype.
* coding.c (Fundecodable_char_position):
* composite.c (Fcomposition_get_gstring, Fcompose_string_internal):
Use validate_subarray. Adjust comment to mention substring.
Dmitry Antipov [Wed, 25 Jun 2014 10:36:51 +0000 (14:36 +0400)]
Do not allow out-of-range character position in Fcompare_strings.
* src/fns.c (validate_subarray): Add prototype.
(Fcompare_substring): Use validate_subarray to check ranges.
Adjust comment to mention that the semantics was changed. Also see
http://lists.gnu.org/archive/html/emacs-devel/2014-06/msg00447.html.
* lisp/files.el (dir-locals-find-file, file-relative-name):
* lisp/info.el (Info-complete-menu-item):
* lisp/minibuffer.el (completion-table-subvert): Prefer string-prefix-p
to compare-strings to avoid out-of-range errors.
* lisp/subr.el (string-prefix-p): Adjust to match strict range
checking in compare-strings.
* test/automated/fns-tests.el (fns-tests-compare-string): New test.
Glenn Morris [Wed, 25 Jun 2014 06:03:13 +0000 (23:03 -0700)]
admin/unidata: small Makefile simplifications
* admin/unidata/Makefile.in (${top_srcdir}/src/macuvs.h): Make and load .elc.
(.el.elc): Replace with pattern rule.
(%.elc): New.
(unidata.txt): Use $<.
(compile): Remove.
(${DSTDIR}/charprop.el): Use order-only prereqs rather than a sub-make.
Leonard Randall [Tue, 24 Jun 2014 19:39:22 +0000 (21:39 +0200)]
Make search in reftex-using-biblatex-p non-greedy.
* textmodes/reftex-parse.el (reftex-using-biblatex-p): Make search
for comment lines non-greedy and stopping at newlines to fix stack
overflows with large files.
Paul Eggert [Tue, 24 Jun 2014 08:10:48 +0000 (01:10 -0700)]
Be more consistent about the 'Qfoo' naming convention.
* image.c (Fimagemagick_types):
* lisp.h (lisp_h_CHECK_TYPE, CHECK_TYPE, CHECK_ARRAY):
* process.c (Fmake_network_process):
Rename C local identifier 'Qfoo to avoid giving the false
impression that it stands for the symbol 'foo'.
Eli Zaretskii [Tue, 24 Jun 2014 07:10:47 +0000 (00:10 -0700)]
Backport Unicode 7 update of character- and script-related databases
* lisp/international/characters.el (char-script-table):
Update for scripts added and codepoint ranges changed in Unicode 7.0.
* lisp/international/fontset.el (script-representative-chars):
Add representative characters for scripts added in Unicode 7.0.
(otf-script-alist): Synchronize with the latest registry of OTF script tags.
Eli Zaretskii [Mon, 23 Jun 2014 15:27:16 +0000 (18:27 +0300)]
Update various character- and script-related databases per Unicode 7.0.
lisp/international/fontset.el (script-representative-chars): Add
representative characters for scripts added in Unicode 7.0.
(otf-script-alist): Synchronize with the latest registry of OTF
script tags.
lisp/international/characters.el (char-script-table): Update for
scripts added and codepoint ranges changed in Unicode 7.0.
Glenn Morris [Mon, 23 Jun 2014 06:43:20 +0000 (23:43 -0700)]
Misc small doc/ Makefile cleanup
* emacs/Makefile.in (mkinfodir): Remove.
(.dvi.ps): Replace with pattern rule.
(${buildinfodir}): New rule.
($(buildinfodir)/emacs.info): Use order-only prereq for output dir. Use $<.
(emacs.dvi, emacs.pdf, emacs.html, emacs-xtra.dvi, emacs-xtra.pdf): Use $<.
(%.ps): New rule.
* lispintro/Makefile.in (mkinfodir): Remove.
(.dvi.ps): Replace with explicit rule.
(${buildinfodir}): New rule.
(${buildinfodir}/eintr.info): Use order-only prereq for output dir. Use $<.
(emacs-lisp-intro.dvi, emacs-lisp-intro.pdf, emacs-lisp-intro.html): Use $<.
(emacs-lisp-intro.ps): New rule.
* lispref/Makefile.in (mkinfodir): Remove.
(.dvi.ps): Replace with explicit rule.
(html): Declare as PHONY.
(${buildinfodir}): New rule.
($(buildinfodir)/elisp.info): Use order-only prereq for output dir. Use $<.
(elisp.dvi, elisp.html, elisp.pdf): Use $<.
(elisp.ps): New rule.
Eli Barzilay [Mon, 23 Jun 2014 05:14:23 +0000 (01:14 -0400)]
* calculator.el (calculator-standard-displayer): Fix bug in use of
`calculator-groupize-number'.
(calculator-funcall): Fix broken `cl-flet' use by moving it into the
`eval' code, so it works in v24.3.1 too.
(calculator-last-input): Comment to clarify purpose.
Also add back a ChangeLog blurb for previous commit 2014-06-15T04:52:34Z!eli@barzilay.org.
Michael Albinus [Sun, 22 Jun 2014 09:20:38 +0000 (11:20 +0200)]
* net/tramp-adb.el (tramp-adb-handle-process-file):
* net/tramp-sh.el (tramp-sh-handle-process-file):
* net/tramp-smb.el (tramp-smb-handle-process-file): Do not raise
the output buffer when DISPLAY is non-nil.
Fix completion retrieval parsing.
* progmodes/python.el (python-mode):
(python-util-strip-string): New function.
(python-shell-completion-get-completions): Use it.
* automated/python-tests.el (python-util-strip-string-1): New test.
Eli Zaretskii [Sat, 21 Jun 2014 12:30:02 +0000 (15:30 +0300)]
Fix bug #17823 with vertical-motion in lines with line-prefix.
src/indent.c (Fvertical_motion): Move to the goal column, if any,
with a single call to move_it_in_display_line, not in two calls.
Doing this with two calls causes move_it_in_display_line apply the
line-prefix handling twice instead of just once.
Enhancements for outline integration.
* lisp/progmodes/python.el (python-mode): Properly set
outline-heading-end-regexp so that comments after colons for
defuns are supported.
Eli Zaretskii [Fri, 20 Jun 2014 08:47:10 +0000 (11:47 +0300)]
Fix bug #17801 with extraneous newlines after inserting markup in Texinfo mode.
lisp/textmodes/texinfo.el (texinfo-mode): Set skeleton-end-newline
locally to nil.
(texinfo-insert-block, texinfo-insert-@end)
(texinfo-insert-@example, texinfo-insert-@quotation): Adjust to
local setting of skeleton-end-newline by adding an explicit \n to
the skeletons where appropriate.
Stefan Monnier [Fri, 20 Jun 2014 01:05:40 +0000 (21:05 -0400)]
* lisp/emacs-lisp/smie.el (smie--hanging-eolp-function): New var.
(smie-indent--hanging-p): Use it.
* lisp/progmodes/sh-script.el (sh-set-shell): Set it.
Stefan Monnier [Thu, 19 Jun 2014 22:07:09 +0000 (18:07 -0400)]
* cedet/semantic/ia.el (semantic-ia-complete-symbol-menu): Use posn-at-point
instead of senator-completion-menu-point-as-event; un-comment, tho keep
the "no smart completion" fallback commented since it still doesn't work.
Dmitry Antipov [Thu, 19 Jun 2014 16:52:20 +0000 (20:52 +0400)]
Minor cleanup of fonset code.
* fontset.c (FONTSET_ID, set_fontset_id, FONTSET_NAME)
(set_fontset_name, FONTSET_ASCII, set_fontset_ascii)
(FONTSET_BASE, set_fontset_base, FONTSET_FRAME)
(set_fontset_frame, FONTSET_NOFONT_FACE, set_fontset_nofont_face)
(FONTSET_DEFAULT, set_fontset_default, FONTSET_FALLBACK)
(set_fontset_fallback): Reorder extra slots and avoid unused slots.
(free_realized_fontset): Remove because a no-op since 2008.
(free_face_fontset): Adjust user.
(syms_of_fontset): Shrink fontset by one extra slot.
* lisp/emacs-lisp/lisp-mode.el (lisp-string-after-doc-keyword-p): New fun.
(lisp-string-in-doc-position-p): New function, extracted from
lisp-font-lock-syntactic-face-function.
(lisp-font-lock-syntactic-face-function): Use them.
Stefan Monnier [Wed, 18 Jun 2014 19:38:00 +0000 (15:38 -0400)]
* lisp/play/bubbles.el (bubbles--initialize, bubbles--show-scores)
(bubbles--game-over): Don't add `intangible' properties since they
didn't work anyway.
Eli Zaretskii [Wed, 18 Jun 2014 15:15:52 +0000 (18:15 +0300)]
Fix bug #17790 with compilation against giflib 5.1.0 and later.
src/image.c [5 < GIFLIB_MAJOR + (1 <= GIFLIB_MINOR)]: Declare the
prototype of DGifCloseFile as appropriate for older and newer
versions of giflib.
(gif_close): New function, encapsulates the differences in the
calling sequence of DGifCloseFile before v5.1.0 and after it.
(gif_load): Call gif_close instead of DGifCloseFile. Divulge the
error string where appropriate.
lisp/term/w32-win.el (dynamic-library-alist): Support giflib 5.1.0
and later.
Juri Linkov [Wed, 18 Jun 2014 08:48:49 +0000 (11:48 +0300)]
* lisp/vc/diff-mode.el (diff-changed): Empty face definition
to use `diff-removed' and `diff-added' on tty as well.
(diff-context): Use darker color on light background and
lighter color on dark background.
Juri Linkov [Wed, 18 Jun 2014 08:33:57 +0000 (11:33 +0300)]
* lisp/vc/diff-mode.el (diff-refine-changed): Rename from
`diff-refine-change' for consistency with `diff-changed'.
(diff-refine-change): Add obsolete face alias.
* lisp/vc/smerge-mode.el (smerge-refined-changed): Rename from
`smerge-refined-change'.
(smerge-refined-change): Add obsolete face alias.
Stefan Monnier [Tue, 17 Jun 2014 19:33:58 +0000 (15:33 -0400)]
* lisp/rect.el (rectangle-preview): New custom.
(rectangle): New group.
(rectangle--pos-cols): Add `window' argument.
(rectangle--string-preview-state, rectangle--string-preview-window):
New vars.
(rectangle--string-flush-preview, rectangle--string-erase-preview)
(rectangle--space-to, rectangle--string-preview): New functions.
(string-rectangle): Use them.
(rectangle--inhibit-region-highlight): New var.
(rectangle--highlight-for-redisplay): Obey it. Make sure
`apply-on-region' uses the point-crutches of the right window.
Use :align-to rather than multiple spaces.
Dmitry Antipov [Tue, 17 Jun 2014 03:14:00 +0000 (07:14 +0400)]
* fileio.c (Fread_file_name): Do not pass redundant args and ...
* callint.c (read_file_name): ... convert to static here.
* lisp.h (Fread_file_name): Do not EXFUN it.
* composite.c (CHAR_COMPOSABLE_P): Replace unsafe macro with ...
(char_composable_p): ... static function. All users changed.
Eli Zaretskii [Mon, 16 Jun 2014 19:38:28 +0000 (22:38 +0300)]
A better fix for bug #17777 with visual-order cursor movement.
src/xdisp.c (Fmove_point_visually): Instead of testing for keyboard
macro execution, make sure point didn't move since last complete
redisplay, as the condition for using the glyph matrix
information.
Dmitry Antipov [Mon, 16 Jun 2014 08:49:09 +0000 (12:49 +0400)]
Do not ask for XRender extension each time XFT font is opened.
* xftfont.c (xftfont_open): Move call to XRenderQueryExtension ...
* xterm.c (x_term_init) [HAVE_XFT]: ... to here. Adjust comment.
Andrea Rossetti [Mon, 16 Jun 2014 06:37:37 +0000 (08:37 +0200)]
In ruler-mode fix calculation of column from mouse position (Bug#17768).
* ruler-mode.el (ruler-mode-window-col)
(ruler-mode-mouse-set-left-margin)
(ruler-mode-mouse-set-right-margin): Fix calculation of column
from mouse position (Bug#17768).
Ron Schnell [Mon, 16 Jun 2014 05:05:05 +0000 (01:05 -0400)]
* play/dunnet.el (dun-doassign): Fixed bug where UNIX variable assignment without varname or rhs causes crash.
* play/dunnet.el (dun-ftp): Fixed bug where blank ftp password is allowed, making it impossible to win endgame.
* play/dunnet.el (dun-unix-verbs): Added ssh as alias to rlogin, because nobody knows what rlogin is anymore.
* play/dunnet.el (dun-help): Bumped version number, updated contact info.