Glenn Morris [Fri, 27 Jun 2014 00:41:23 +0000 (20:41 -0400)]
Replace BOOTSTRAPEMACS with an order-only dependence on bootstrap-emacs
* Makefile.in (src): No more need to pass BOOTSTRAPEMACS.
* src/Makefile.in (.el.elc): Replace suffix rule with pattern rule.
(%.elc): New pattern rule, with order-only prerequisite.
($(lisp)): No more need to depend on BOOTSTRAPEMACS.
($(lispsource)/loaddefs.el): Use an order-only prerequisite
in place of BOOTSTRAPEMACS.
Dmitry Antipov [Thu, 26 Jun 2014 07:13:13 +0000 (11:13 +0400)]
* src/fns.c (Fcompare_strings): Use FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE.
* lisp/calc/calc-alg.el (math-beforep):
* lisp/progmodes/cc-guess.el (c-guess-view-reorder-offsets-alist-in-style):
Simplify because string-lessp can accept symbols as args.
Daiki Ueno [Thu, 26 Jun 2014 07:10:22 +0000 (16:10 +0900)]
package.el: Don't signal "no public key" error if allow-unsigned
* emacs-lisp/package.el (package--check-signature): If
package-check-signature is allow-unsigned, don't signal error when
we can't verify signature because of missing public key
(bug#17625).
Glenn Morris [Thu, 26 Jun 2014 06:35:38 +0000 (23:35 -0700)]
ps-samp.el: Make it slightly less awful
* lisp/ps-samp.el (ps-rmail-mode-hook, ps-gnus-article-prepare-hook)
(ps-vm-mode-hook, ps-gnus-summary-setup, ps-info-mode-hook):
Use [print] key. Only set local values.
(ps-article-subject, ps-article-author): Use standard functions
like mail-fetch-field.
(ps-info-file, ps-info-node): Use match-string.
(ps-jts-ps-setup, ps-jack-setup): Remove, merging into...
(ps-samp-ps-setup): ... new function.
Glenn Morris [Thu, 26 Jun 2014 06:18:53 +0000 (23:18 -0700)]
lib-src/Makefile trivial simplifications
* lib-src/Makefile.in (blessmail): Depend on lisp/mail/blessmail.el.
Use $<, $@.
(regex.o, etags${EXEEXT}, ctags${EXEEXT}, ebrowse${EXEEXT})
(profile${EXEEXT}, make-docfile${EXEEXT}, movemail${EXEEXT})
(pop.o, emacsclient${EXEEXT}, emacsclientw${EXEEXT}, ntlib.o)
(hexl${EXEEXT}, update-game-score${EXEEXT}, emacsclient.res): Use $<.
(ctags${EXEEXT}): Add $srcdir to dependency rather than using VPATH.
Luke Lee [Thu, 26 Jun 2014 05:47:33 +0000 (13:47 +0800)]
HideIfDef mode bug fixes and enhancements. This is #2 of 3 patches based
on the completed work posted on http://www.emacswiki.org/emacs/HideIfDef.
- Supporting argumented macro expansion.
- Stringification, tokenization and concatenation of strings and tokens.
- Add functions to find defines and parse argumented macros into a macro
tree containing macro name, formal parameters and macro body.
- On macro evaluation, macros will be applied with actual parameters and
then got expanded recursively.
- Merge main trunk changes
* lisp/progmodes/hideif.el (hif-string-to-number): Merge changes from
main trunk.
(hif-simple-token-only, hif-tokenize): Commentted in detail mainly for
performance enhancements.
(hif-parse-if-exp): Rename to `hif-parse-exp'. Enhanced for macro
expansion.
(hif-factor, hif-string-concatenation, intern-safe): Support string
concatenation and argumented macro expansion.
(hif-if-valid-identifier-p, hif-define-operator, hif-flatten)
(hif-expand-token-list, hif-get-argument-list, hif-define-macro)
(hif-delimit, hif-macro-supply-arguments, hif-invoke, hif-canonicalize)
(hif-canonicalize-tokens, hif-looking-at-elif, hif-place-macro-invocation)
(hif-parse-macro-arglist): Mostly new functions for supporting argumented
macro expansion.
(hif-string-concatenation, hif-stringify, hif-token-concat)
(hif-token-stringification, hif-token-concatenation): Stringify and
concatentation.
(hif-find-next-relevant): Fix comments
(hif-ifdef-to-endif, hif-looking-at-elif, hif-hide-line): Bug fix for
some cases involving #elif.
(hif-find-define, hif-add-new-defines): New functions for automatically
scanning of defined symbols.
(hide-ifdef-guts): Fix for auto defined symbol scanning.
(hide-ifdef-undef): Fix behavior to match CPP.
Luke Lee [Thu, 26 Jun 2014 04:18:12 +0000 (12:18 +0800)]
HideIfDef mode bug fixes and enhancements. This is #2 of 3 patches based
on the completed work posted on http://www.emacswiki.org/emacs/HideIfDef.
- Supporting argumented macro expansion.
- Stringification, tokenization and concatenation of strings and tokens.
- Add functions to find defines and parse argumented macros into a macro
tree containing macro name, formal parameters and macro body.
- On macro evaluation, macros will be applied with actual parameters and
then got expanded recursively.
- Apply review changes.
* lisp/progmodes/hideif.el (hif-string-to-number): Fix return value bug.
(hif-simple-token-only, hif-tokenize): Commentted in detail mainly for
performance enhancements.
(hif-parse-if-exp): Rename to `hif-parse-exp'. Enhanced for macro
expansion.
(hif-factor, hif-string-concatenation, intern-safe): Support string
concatenation and argumented macro expansion.
(hif-if-valid-identifier-p, hif-define-operator, hif-flatten)
(hif-expand-token-list, hif-get-argument-list, hif-define-macro)
(hif-delimit, hif-macro-supply-arguments, hif-invoke, hif-canonicalize)
(hif-canonicalize-tokens, hif-looking-at-elif, hif-place-macro-invocation)
(hif-parse-macro-arglist): Mostly new functions for supporting argumented
macro expansion.
(hif-string-concatenation, hif-stringify, hif-token-concat)
(hif-token-stringification, hif-token-concatenation): Stringify and
concatentation.
(hif-find-next-relevant): Fix comments
(hif-ifdef-to-endif, hif-looking-at-elif, hif-hide-line): Bug fix for
some cases involving #elif.
(hif-find-define, hif-add-new-defines): New functions for automatically
scanning of defined symbols.
(hide-ifdef-guts): Fix for auto defined symbol scanning.
(hide-ifdef-undef): Fix behavior to match CPP.
Leo Liu [Thu, 26 Jun 2014 04:00:56 +0000 (12:00 +0800)]
* lisp/url/url-handlers.el (url-http-parse-response): Remove unused autoload.
(url-insert-file-contents): Condition on url-http-response-status
for the HTTP/S specific part.
Leo Liu [Wed, 25 Jun 2014 23:53:37 +0000 (07:53 +0800)]
Fix a few packages to work with nil tab-stop-list
* indent.el (indent-accumulate-tab-stops): New function.
* textmodes/picture.el (picture-set-tab-stops):
* ruler-mode.el (ruler-mode-mouse-add-tab-stop)
(ruler-mode-ruler): Fix to work with nil tab-stop-list.
* progmodes/asm-mode.el (asm-calculate-indentation): Use
indent-next-tab-stop.
Glenn Morris [Wed, 25 Jun 2014 23:51:10 +0000 (19:51 -0400)]
lisp/Makefile: Remove cc-*.el dependencies on non-cc files
* lisp/Makefile.in ($(lisp)/progmodes/cc-defs.elc)
($(lisp)/progmodes/cc-fonts.elc, $(lisp)/progmodes/cc-langs.elc)
($(lisp)/progmodes/cc-vars.elc): Drop hand-written deps on non-cc files.
They are not relevant to the original issue (bug#1004),
and cause unnecessary recompilation (bug#2151).
Glenn Morris [Wed, 25 Jun 2014 22:59:37 +0000 (18:59 -0400)]
* flymake-tests.el (flymake-tests--current-face): Tweak previous sleep change.
Using the time-honored principle of "if it doesn't when you do X,
do it again and see what happens".
Stefan Monnier [Wed, 25 Jun 2014 21:59:28 +0000 (17:59 -0400)]
* test/automated/package-test.el (package-test-update-listing)
(package-test-update-archives, package-test-describe-package):
Adjust tests according to new package-list-unsigned.
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.
Stephen Berman [Wed, 25 Jun 2014 12:06:00 +0000 (14:06 +0200)]
* calendar/todo-mode.el: Fix two bugs.
(todo-insert-item--basic): If user cancels item insertion to
another category before setting priority, show original category
whether it is in the same or a different file.
(todo-set-item-priority): After selecting category, instead of
moving point to top, which extends an active region, restore it.
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.
Juri Linkov [Tue, 24 Jun 2014 23:23:41 +0000 (02:23 +0300)]
* lisp/desktop.el (desktop-auto-save-enable)
(desktop-auto-save-disable): New functions.
(desktop-save-mode, desktop-auto-save-timeout): Use them.
(desktop-read): Disable the autosave before loading the desktop,
and enable afterwards.
Stefan Monnier [Tue, 24 Jun 2014 20:16:10 +0000 (16:16 -0400)]
Fix some indentation problem with \; and pipes.
* lisp/progmodes/sh-script.el (sh-mode-syntax-table): Set syntax of ;|&.
(sh-smie--default-forward-token, sh-smie--default-backward-token):
New functions.
(sh-smie-sh-forward-token, sh-smie-sh-backward-token)
(sh-smie-rc-forward-token, sh-smie-rc-backward-token): Use them.
(sh-smie-sh-rules): Fix indentation of a pipe at BOL.
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.