Glenn Morris [Thu, 17 May 2012 01:23:03 +0000 (21:23 -0400)]
Install a self-contained NS build's libexec directly into the right place
This is rather than installing it in one place then moving it.
* configure.in (archlibdir): Set it for self-contained ns builds.
(libexecdir): Don't expand it now (this is mainly cosmetic).
* Makefile.in (ns_appbindir, ns_appresdir):
Move them before things that may refer to them.
(install-arch-dep): No need to relocate self-contained ns libexec.
* lib-src/Makefile.in (ns_appbindir): New, set by configure.
Paul Eggert [Wed, 16 May 2012 09:01:55 +0000 (02:01 -0700)]
* configure.in: Simplify by removing CPP etc.
(CPP_TEST_OPTIONS, NON_GNU_CPP, cc_specified, SPECIFIED_CFLAGS)
(SPECIFED_CPP, CPP, NON_GNU_CC, AC_PROG_CPP): Remove; not needed.
In particular we no longer need to fiddle with CPP, since we don't
use CPP specially any more.
(gl_EARLY): Invoke this after adjusting CC, so that it uses the
adjusted compiler.
(AC_PROG_INSTALL, AC_PROG_MKDIR_P, AC_PROG_RANLIB): Comment out,
since gl_EARLY and/or Autoconf already does these.
Use for otherchars the same delay used for other word components, so word
is not inmediately checked unless we are in a char that is neither a normal
word component nor an otherchar.
Glenn Morris [Wed, 16 May 2012 06:15:52 +0000 (23:15 -0700)]
Try to fix building with gcc >= 4.6 on Darwin.
Eg, hydra builds have been failing for some time because (?) of this.
In gcc < 4.6, unrecognized -no-fo options just cause a warning.
In 4.6 and later, they cause an error.
* configure.in: (CPP): Do not unconditionally set it on Darwin.
Instead, try to test if -no-cpp-precomp is accepted.
(CPP_TEST_OPTIONS, SPECIFIED_CPP): New.
Stefan Monnier [Wed, 16 May 2012 01:57:20 +0000 (21:57 -0400)]
* lisp/minibuffer.el (completion--sifn-requote): Fix last change.
(minibuffer-local-must-match-filename-map):
Move define-obsolete-variable-alias before its var.
Stefan Monnier [Tue, 15 May 2012 18:07:36 +0000 (14:07 -0400)]
* lisp/minibuffer.el (completion--sifn-requote): Handle sifn's truncation
behavior.
(completion--string-equal-p): New function.
(completion--twq-all): Use it to get better assertion failure data.
Ted Zlatanov [Tue, 15 May 2012 08:47:38 +0000 (04:47 -0400)]
add url-build-query-string and improve url-parse-query-string as per bug#8706
* url/url-util.el (url-build-query-string): New function.
(url-parse-query-string): Allow that '=' is not required and split
URL parameters on ';', not just '&'.
Julien Danjou [Mon, 14 May 2012 15:42:23 +0000 (17:42 +0200)]
Fix a regression in erc-dcc
* erc-dcc.el (erc-dcc-handle-ctcp-send): Fix a regression
introduced on 2011-11-28 when fixing quoted filenames matching,
the regex group was not corrected.
Paul Eggert [Mon, 14 May 2012 15:11:10 +0000 (08:11 -0700)]
* unexaix.c: Port to more-recent AIX compilers.
(report_error, report_error_1, make_hdr, copy_sym)
(mark_x, adjust_lnnoptrs, unrelocate_symbols):
Make arguments const char *, not char *, to avoid violations of C
standard and to fix some AIX warnings reported by Gilles Pion.
Wolfgang Jenkner [Mon, 14 May 2012 05:19:46 +0000 (01:19 -0400)]
* lisp/image-mode.el: Fit to width/height for rotated images.
(image-transform-scale, image-transform-right-angle-fudge): New vars.
(image-transform-width, image-transform-fit-width): New functions.
(image-transform-properties): Use them.
(image-transform-check-size): New function.
(image-toggle-display-image): Use it (for testing).
(image-transform-set-rotation): Reduce angle mod 360.
Delete obsolete comment.
Wolfgang Jenkner [Mon, 14 May 2012 05:15:59 +0000 (01:15 -0400)]
* lisp/image-mode.el: Fix scaling.
(image-transform-resize): Doc fix.
(image-transform-properties): Default scale is 1 and height should
be an integer.
Eli Zaretskii [Sun, 13 May 2012 18:22:35 +0000 (21:22 +0300)]
Fix bug #11464 with pos-visible-in-window-p and R2L text in L2R paragraph.
src/xdisp.c (pos_visible_p): Don't report a position visible when move_it_to
stopped at the last line of window, which happens to be scanned
backwards by the bidi iteration.
Eli Zaretskii [Sun, 13 May 2012 15:35:13 +0000 (18:35 +0300)]
Fix bug #11417 with infloop when left-fringe/right-fringe spec is used on TTY.
src/xdisp.c (handle_stop): Don't call get_overlay_strings_1 if we
already have overlays loaded.
(handle_single_display_spec): Before returning without displaying
fringe bitmap, synchronize the bidi iterator with the main display
iterator, by calling iterate_out_of_display_property.
(iterate_out_of_display_property): Detect buffer iteration by
testing that it->string is a Lisp string.
(get_next_display_element): When the current object is exhausted,
and there's something on it->stack, call set_iterator_to_next to
proceed with what's on the stack, instead of returning zero.
(set_iterator_to_next): If called at the end of a Lisp string,
proceed to consider_string_end without incrementing string
position. Don't increment display vector index past the end of
the display vector.
Chong Yidong [Sun, 13 May 2012 14:23:45 +0000 (22:23 +0800)]
Adapt Electric Buffer Menu to recent Buffer Menu changes.
* lisp/ebuff-menu.el (electric-buffer-list): Put electric buffer menu
command descriptions in this docstring, instead of the docstring
of electric-buffer-menu-mode. Code cleanups.
(electric-buffer-menu-mode): Use define-derived-mode. Rename from
Electric-buffer-menu-mode.
(electric-buffer-update-highlight): Minor code cleanup.
* lisp/emacs-lisp/tabulated-list.el (tabulated-list-format)
(tabulated-list-entries, tabulated-list-padding)
(tabulated-list-sort-key): Make permanent-local.
Glenn Morris [Sat, 12 May 2012 16:44:01 +0000 (09:44 -0700)]
Make doc/misc/Makefile.in look more like the other doc Makefiles
* doc/misc/Makefile.in:
Use explicit $srcdir in all dependencies.
Remove cd $srcdir from rules.
(VPATH): Remove.
(infodir): Set to an absolute path.
(INFO_TARGETS): Use short names.
(mkinfodir): infodir is now absolute.
(echo-info, maintainer-clean): Update for new format of INFO_TARGETS.
Glenn Morris [Fri, 11 May 2012 17:13:18 +0000 (13:13 -0400)]
* Makefile.in (install-arch-indep): Remove dead code.
./lisp/simpl.ele never exists in the _build_ directory,
the Lisp files are always in the _source_ directory.
Even if they were not, it would be wrong to install just
*.el and *.elc, since there are subdirectories in lisp/.
Stefan Monnier [Fri, 11 May 2012 15:05:03 +0000 (11:05 -0400)]
* lisp/term.el: Move keymap initialization code to be more idiomatic.
(term-signals-menu, term-mode-map, term-raw-map, term-raw-escape-map)
(term-terminal-menu): Move initialization into declaration.
(term-escape-char): Let the user set it in her .emacs.
Stefan Monnier [Fri, 11 May 2012 14:24:50 +0000 (10:24 -0400)]
* lisp/progmodes/sh-script.el: Use post-self-insert-hook&electric-pair-mode.
Provide SMIE-based indentation (not enabled by default yet).
(sh-mode-map): Don't bind electric keys.
Use electric-pair-mode instead of skeleton-pair.
(sh-assignment-regexp): Fit within 80 columns.
(sh-indent-supported): Specify actual shell name instead of boolean.
(sh--maybe-here-document): New fun, from sh-maybe-here-document.
(sh-maybe-here-document): Use it. Make obsolete.
(sh-electric-here-document-mode) New minor mode.
(sh-mode): Use it. Don't set sh-indent-supported-here here.
(sh-smie-sh-grammar, sh-smie--sh-operators, sh-smie--sh-operators-re)
(sh-smie--sh-operators-back-re, sh-indent-after-continuation)
(sh-smie-rc-grammar, sh-use-smie): New vars.
(sh-smie--keyword-p, sh-smie--newline-semi-p, sh-smie--sh-keyword-p)
(sh-smie-sh-forward-token, sh-smie--looking-back-at-continuation-p)
(sh-smie-sh-backward-token, sh-smie--continuation-start-indent)
(sh-smie-sh-rules, sh-smie-rc-rules, sh-smie--sh-keyword-in-p)
(sh-smie--rc-after-special-arg-p, sh-smie-rc-backward-token)
(sh-smie-sh-rules, sh-smie--rc-newline-semi-p): New functions.
(sh-set-shell): Use smie-setup if requested.
Eli Zaretskii [Fri, 11 May 2012 14:05:06 +0000 (17:05 +0300)]
Fix display when left-fringe/right-fringe display spec is invalid.
src/xdisp.c (handle_single_display_spec): Return 1 for left-margin
and right-margin display specs even if the spec is invalid or we
are on a TTY, and thus unable to display on the fringes. That's
because the text with the property will not be displayed anyway,
so we need to signal to the caller that this is a "replacing"
display spec. This fixes display when the spec is invalid or we
are on a TTY.
Chong Yidong [Thu, 10 May 2012 06:27:12 +0000 (14:27 +0800)]
Cleanups and improvements for FFAP and URL.
* ffap.el (ffap-url-unwrap-local): Make it work right.
Use url-generic-parse-url, and handle host names and Windows
filenames properly.
(ffap-url-unwrap-remote): Use url-generic-parse-url.
(ffap-url-unwrap-remote): Accept list values, specifying a list of
URL schemes to work on.
(ffap--toggle-read-only): New function.
(ffap-read-only, ffap-read-only-other-window)
(ffap-read-only-other-frame): Use it.
(ffap-fixup-url): Don't check ffap-ftp-regexp, since it is not
necessary for ffap-url-unwrap-remote.
* url-parse.el (url-path-and-query, url-port-if-non-default): New
functions.
(url-generic-parse-url): Don't set the portspec slot if it is not
specified; that is what `url-port' is for.
(url-port): Only require the scheme to be specified to call
url-scheme-get-property.
* url-util.el (url-encode-url): Use url-path-and-query.
Glenn Morris [Thu, 10 May 2012 03:40:20 +0000 (20:40 -0700)]
Install self-contained ns leim files directly to their final destination
This is instead of installing them first in one place, then moving them.
It also fixes the previous change, which was incorrect for
the -disable-ns-self-contained case.
* configure.in (LEIM_INSTALLDIR): New output variable.
* leim/Makefile.in: (install_prefix): New.
(LEIM_INSTALLDIR): New, set by configure.
(install): Use LEIM_INSTALLDIR.
Paul Eggert [Thu, 10 May 2012 00:27:32 +0000 (17:27 -0700)]
etags: pacify gcc -Wstack-protector on Ubuntu 12.04 x86
* etags.c: Include <stdarg.h>.
(error): Declare as printf-style, as that's what it really is.
All uses changed.
(add_regex): Use single char rather than array-of-one char.
Michael Albinus [Wed, 9 May 2012 21:13:43 +0000 (23:13 +0200)]
* dbusbind.c (xd_registered_buses): New internal Lisp object.
Rename all occurences of Vdbus_registered_buses to xd_registered_buses.
(syms_of_dbusbind): Remove declaration of Vdbus_registered_buses.
Initialize xd_registered_buses.
Jason L. Wright [Wed, 9 May 2012 19:12:20 +0000 (21:12 +0200)]
* mail/smtpmail.el (smtpmail-send-command): Send the command and
the following \r\n using a single `process-send-string', since the
Lotus SMTP server refuses to accept any commands if they are sent
with two `process-send-string's.
Paul Eggert [Wed, 9 May 2012 17:51:30 +0000 (10:51 -0700)]
Untag more efficiently if USE_LSB_TAG.
This is based on a proposal by YAMAMOTO Mitsuharu in
<http://lists.gnu.org/archive/html/emacs-devel/2008-01/msg01876.html>.
For an admittedly artificial (nth 8000 longlist) benchmark on
Fedora 15 x86-64, this yields a 25% CPU speedup. Also, it shrinks
Emacs's overall text size by 1%.
* lisp.h (XUNTAG): New macro.
(XCONS, XVECTOR, XSTRING, XSYMBOL, XFLOAT, XMISC, XPROCESS, XWINDOW)
(XTERMINAL, XSUBR, XBUFFER, XCHAR_TABLE, XSUB_CHAR_TABLE, XBOOL_VECTOR)
(XSETTYPED_PSEUDOVECTOR, XHASH_TABLE, TYPED_PSEUDOVECTORP): Use it.
* eval.c (Fautoload):
* font.h (XFONT_SPEC, XFONT_ENTITY, XFONT_OBJECT):
* frame.h (XFRAME): Use XUNTAG.
Paul Eggert [Wed, 9 May 2012 15:07:46 +0000 (08:07 -0700)]
Port recent dbusbind.c changes to 32-bit --with-wide-int.
* dbusbind.c (xd_append_arg, xd_retrieve_arg, Fdbus_message_internal):
Remove unportable assumptions about print widths of types like
dbus_uint32_t.
(xd_get_connection_address, Fdbus_init_bus): Cast Emacs integer to
intptr_t when converting between pointer and integer, to avoid GCC
warnings about wrong width.