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.
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.
Michael Albinus [Sun, 15 Jun 2014 15:56:58 +0000 (17:56 +0200)]
Sync with Tramp 2.2.10.
* test/automated/tramp-tests.el (tramp--test-enabled): Ignore errors.
(tramp--instrument-test-case): Extend docstring.
(tramp-test15-copy-directory): Skip for tramp-smb.el.
(tramp-test21-file-links): Use `file-truename' for directories.
(tramp-test27-start-file-process, tramp-test28-shell-command):
Retrieve process output more robustly.
(tramp--test-check-files): Extend test.
(tramp-test30-special-characters): Skip for tramp-adb.el,
tramp-gvfs.el and tramp-smb.el. Add further file names.
Michael Albinus [Sun, 15 Jun 2014 15:47:35 +0000 (17:47 +0200)]
Sync with Tramp 2.2.10.
* lisp/net/tramp-adb.el (tramp-adb-handle-write-region): Improve messages.
(tramp-adb-maybe-open-connection): Don't set
`tramp-current-*' variables.
* lisp/net/tramp-cache.el (tramp-flush-file-function): Do not flush
file properties of temporary buffers.
* lisp/net/tramp-ftp.el (top): Remove special handling for URL syntax.
* lisp/net/tramp-gvfs.el (tramp-gvfs-methods) <sftp>: Add.
(tramp-gvfs-handle-delete-file): Flush file
properties, not directory properties.
(tramp-gvfs-handle-file-attributes): Use `string-to-number' when
reading "unix::mode".
(tramp-gvfs-handle-file-name-all-completions):
Use "-h" option for "gvfs-ls".
(tramp-gvfs-url-file-name): `user' and `localname' could be nil.
(tramp-gvfs-send-command): Simplify traces.
* lisp/net/tramp-sh.el (vc-handled-backends, vc-bzr-program)
(vc-git-program, vc-hg-program): Declare.
(tramp-methods) <sftp>: Remove. It has never worked satisfactorily.
(tramp-methods) <nc>: Add new method.
(tramp-methods) <telnet>: Redirect stderr to "/dev/null".
(tramp-methods) <plink, plinkx, pscp, psftp>: Improve
`tramp-login-args'.
(tramp-default-user-alist): Add "nc".
(top): Remove completion function for "sftp". Add completion
functions for "nc" and "psftp".
(tramp-do-copy-or-rename-file-out-of-band): Tweak docstring.
Implement support for "nc" method.
(tramp-sh-handle-expand-file-name, tramp-local-coding-commands)
(tramp-remote-coding-commands, tramp-call-local-coding-command):
Tweak docstring.
(tramp-sh-handle-write-region): Tweak error message.
(tramp-sh-handle-vc-registered): Remove backends when the remote
binary does not exist.
(tramp-find-inline-encoding): Do not raise an error.
(tramp-make-copy-program-file-name): Tweak docstring. Handle also
the "nc" case. Quote result also locally.
* lisp/net/tramp-smb.el (tramp-smb-handle-copy-directory)
(tramp-smb-handle-set-file-acl): Use `start-process'.
(tramp-smb-handle-insert-directory): Use progress reporter.
(tramp-smb-handle-rename-file): Flush also file properties of
FILENAME.
* lisp/net/tramp.el (tramp-methods): Tweak docstring.
(tramp-handle-file-accessible-directory-p): Check for
`file-readable-p' instead of `file-executable-p'.
(tramp-check-cached-permissions): Use
`tramp-compat-file-attributes'.
(tramp-call-process): Add new argument VEC. Adapt callees in all
tramp*.el files.
Eli Barzilay [Sun, 15 Jun 2014 04:52:34 +0000 (00:52 -0400)]
* lisp/calculator.el: Lots of revisions
- Kill the calculator buffer after electric mode too.
- Make decimal mode have "," groups, so it's more fitting for use in
money calculations.
- Factorial works with non-integer inputs.
- Swallow less errors.
- Lots of other improvements, but no changes to custom variables, or
other user visible changes (except the above).
Stefan Monnier [Sun, 15 Jun 2014 04:10:40 +0000 (00:10 -0400)]
* lisp/ses.el: Miscellaneous cleanups; use lexical-binding; avoid add-to-list.
(ses-localvars): Remove ses--local-printer-list, unused.
(ses--metaprogramming): New macro. Use it to defvar variables.
(ses-set-localvars): Simplify.
(ses--locprn, ses-cell): Use defstruct. Change ses-cell's
property-list into an alist.
(ses-locprn-get-compiled, ses-locprn-compiled-aset)
(ses-locprn-get-def, ses-locprn-def-aset, ses-locprn-get-number):
Remove; use defstruct accessors/setters instead.
(ses-cell-formula-aset, ses-cell-printer-aset)
(ses-cell-references-aset): Remove, use setf instead.
(ses--alist-get): New function.
(ses-cell-property): Rename from ses-cell-property-get and rewrite.
Use an alist instead of a plist and don't do move-to-front since the
list is always short.
(ses-cell-property-get-fun, ses-cell-property-delq-fun)
(ses-cell-property-set-fun, ses-cell-property-set)
(ses-cell-property-pop-fun, ses-cell-property-get-handle)
(ses-cell-property-handle-car, ses-cell-property-handle-setcar): Remove.
(ses--letref): New macro.
(ses-cell-property-pop): Rewrite.
(ses--cell): Rename from ses-cell and make it into a function.
Make `formula' fallback on `value' if nil.
(ses--local-printer): Rename from ses-local-printer and make it into
a function.
(ses-set-cell): Turn it into a macro so finding the accessor from the
field name is done at compile time.
(ses-repair-cell-reference-all): Test presence of `sym' rather than
`ref' before adding `sym' to :ses-repair-reference.
(ses-calculate-cell): Use ses--letref rather than
ses-cell-property-get-handle.
(ses-write-cells): Use a single prin1-to-string.
(ses-setter-with-undo): New function.
(ses-aset-with-undo, ses-set-with-undo): Rewrite using it.
(ses-unset-with-undo): Remove.
(ses-load): Prefer apply' over `eval'.
(ses-read-printer, ses-set-column-width): Use standard "(default
foo)" format.
Glenn Morris [Sun, 15 Jun 2014 00:17:21 +0000 (17:17 -0700)]
Parallelize clean rules using GNU make features
* Makefile.in: (submake_template): New definition.
(mostlyclean_dirs, clean_dirs, distclean_dirs, maintainer_clean_dirs):
New variables.
(mostlyclean, clean, distclean, bootstrap-clean, maintainer-clean)
(extraclean): Define using each subdirectory as a prequisite.
Glenn Morris [Sat, 14 Jun 2014 23:54:39 +0000 (16:54 -0700)]
Stop cc-mode loading cl at runtime
* lisp/progmodes/cc-langs.el: Require cl-lib.
Replace delete-duplicates and mapcan by cl- versions throughout.
And cl-macroexpand-all by macroexpand-all.
(delete-duplicates, mapcan, cl-macroexpand-all): No need to declare.
Paul Eggert [Sat, 14 Jun 2014 20:24:08 +0000 (13:24 -0700)]
Port part of the AIX fix to Solaris.
* configure.ac (_REENTRANT): Define on Solaris if HAVE_PTHREAD.
This ports part of the recent AIX fix to Solaris. It is needed
for the same reason that _THREAD_SAFE is needed on AIX, e.g., to
make sure that each thread has its own 'errno'.
Eli Zaretskii [Sat, 14 Jun 2014 11:09:10 +0000 (14:09 +0300)]
Fix bug #17777 with keyboard macros and visual-order cursor movement.
src/xdisp.c (Fmove_point_visually): Don't use the glyph matrix
information if we are in the middle of executing a keyboard macro,
since redisplay doesn't update the screen until the macro is
finished.
Paul Eggert [Fri, 13 Jun 2014 15:55:48 +0000 (08:55 -0700)]
Avoid hangs in accept-process-output.
* lisp.h, process.c (wait_reading_process_input):
Return int, not bool. All uses changed.
* process.c (SELECT_CANT_DO_WRITE_MASK):
Remove macro, replacing with ...
(SELECT_CAN_DO_WRITE_MASK): ... new constant, with inverted sense.
All uses changed.
(status_notify): New arg WAIT_PROC. Return int, not void.
All uses changed.