1
0
mirror of https://git.savannah.gnu.org/git/emacs.git synced 2024-12-14 09:39:42 +00:00
Commit Graph

105892 Commits

Author SHA1 Message Date
Stefan Monnier
3017f87fbd Don't purify in Fmake_byte_code.
* src/alloc.c (make_byte_code): New function.
(Fmake_byte_code): Use it.  Don't purify here.
* src/lread.c (read1): Use it as well to avoid extra allocation.
2012-06-11 11:13:27 -04:00
Chong Yidong
1b9b4cf4c1 Support transparency for ImageMagick images.
* src/image.c (imagemagick_load_image): Implement transparency.

* doc/lispref/display.texi (ImageMagick Images): ImageMagick now supports the
:background property.
2012-06-11 22:42:55 +08:00
Michael Albinus
05ecb49739 New Tramp features. 2012-06-11 15:22:53 +02:00
Michael Albinus
888a7fc08d Sync with Tramp 2.2.6-pre.
* tramp.texi (all): Use consequently @command{}, @env{} and @kbd{}
where appropriate.
(Ad-hoc multi-hops): New section.
(Remote processes): New subsection "Running remote processes on
Windows hosts".
(History): Add remote commands on Windows, and ad-hoc multi-hop methods.
(External methods): "ControlPersist" must be set to "no" for the
`scpc' method.
(Remote processes): Add a note about `auto-revert-tail-mode'.
(Frequently Asked Questions): Use "scpx" in combination with
"ControlPersist".  Reported by Adam Spiers <emacs@adamspiers.org>.

* trampver.texi: Update release number.
2012-06-11 15:03:39 +02:00
Michael Albinus
2fe4b1254d Sync with Tramp 2.2.6-pre.
* net/tramp-cache.el (tramp-dump-connection-properties): Let-bind
  `print-length' and `print-level' to nil, in order to avoid
  truncation.  Reported by Christopher Schmidt
  <christopher@ristopher.com>.

* net/tramp-cmds.el (tramp-cleanup-connection): Delete also
process.

* net/tramp-compat.el (tramp-compat-condition-case-unless-debug):
New defmacro.
(tramp-compat-copy-directory): Add optional argument
COPY-CONTENTS.  It is not handled yet.

* net/tramp-ftp.el (tramp-disable-ange-ftp): Fix docstring.
(tramp-ftp-file-name-p): Simplify.

* net/tramp-gvfs.el (tramp-gvfs-handle-expand-file-name):
* net/tramp-gw.el (tramp-gw-open-connection): Add hop to
connection vector.

* net/tramp-sh.el (tramp-copy-size-limit): Fix docstring.
(tramp-methods): Do not use `tramp-password-end-of-line'.
(tramp-completion-function-alist-putty): Handle
UNIX case.
(tramp-remote-path): Add "/opt/bin", "/opt/sbin"
and "/opt/local/bin".
(tramp-do-file-attributes-with-stat)
(tramp-do-directory-files-and-attributes-with-stat)
Return uid and gid as real numbers.  They could run out of
integer range on cygwin.
(tramp-do-copy-or-rename-file-out-of-band): Better
trace format.
(tramp-sh-handle-expand-file-name): Handle hops.
(tramp-open-connection-setup-interactive-shell):
Use `tramp-cleanup'.  Move check for busyboxes ...
(tramp-find-shell): ... here.  Simplify
implementation.  Set "remote-shell" property also for alternative
shells.
(tramp-remote-coding-commands): Check "test -c
/dev/stdout".  If failing, a regular file would be written
otherwise.  Reported by
Dmitry Kurochkin <dmitry.kurochkin@gmail.com>.
(tramp-find-inline-encoding): Cache the coding
commands in the process cache.  Apply test command on the remote
side, if defined.
(tramp-find-inline-compress): Cache the compress
commands in the process cache.
(tramp-compute-multi-hops): Save
`tramp-default-proxies-alist'
when requested.  Handle hops.
(tramp-current-connection): New defvar.
(tramp-maybe-open-connection): Use
`tramp-cleanup'.  Throw
`suppress', if there was a failed connection
shortly before.  Handle user interrupt.  (Bug#10187)
(tramp-get-inline-compress,
tramp-get-inline-coding): Read
connection properties from the process cache.

* net/tramp-smb.el (tramp-smb-server-version)
(tramp-smb-wrong-passwd-regexp,
tramp-smb-actions-with-tar): New defconsts.
(tramp-smb-prompt): Extend for powershell prompt.
(tramp-smb-file-name-handler-alist): Add handlers for
`process-file', `shell-command' and
`start-file-process'.
(tramp-smb-winexe-program, tramp-smb-winexe-shell-command)
(tramp-smb-winexe-shell-command-switch): New
defcustoms.
(tramp-smb-file-name-p): Simplify.
(tramp-smb-action-with-tar,
tramp-smb-handle-process-file)
(tramp-smb-kill-winexe-function, tramp-smb-call-winexe)
(tramp-smb-shell-quote-argument): New defuns.
(tramp-smb-handle-copy-directory): Add
COPY-CONTENTS argument.
Implement using "tar".  By this, time-stamps are
preserved.
(tramp-smb-handle-copy-file): Handle also the case
of directories.
(tramp-smb-do-file-attributes-with-stat)
(tramp-smb-get-file-entries,
tramp-smb-get-cifs-capabilities): Use
`tramp-get-connection-buffer').
(tramp-smb-handle-rename-file): Use "rename", when source and
target are on the same share.
(tramp-smb-maybe-open-connection): Handle wrong passwords.  Use
`tramp-smb-server-version'.
(tramp-smb-wait-for-output): Remove prompt.

* net/tramp.el (top): Require 'cl.
(tramp-methods, tramp-rsh-end-of-line): Remove
`tramp-password-end-of-line' from docstring.
(tramp-save-ad-hoc-proxies): New defcustom.
(tramp-completion-function-alist): Adapt docstring.
(tramp-default-password-end-of-line): Remove defcustom.
(tramp-shell-prompt-pattern): Allow "[]" style
prompts.  (Bug#11065)
(tramp-user-regexp, tramp-file-name-regexp-unified)
(tramp-file-name-regexp-url): Extend regexp by hop
separator.
(tramp-postfix-hop-format,
tramp-postfix-hop-regexp) 
(tramp-remote-file-name-spec-regexp): New defconst.
(tramp-file-name-structure): Extend structure for
hops.
(tramp-get-method-parameter): Move up.
(tramp-file-name-p, tramp-dissect-file-name)
(with-parsed-tramp-file-name): Handle hops.
(tramp-file-name-hop): New defun.
(tramp-make-tramp-file-name): New optional arg HOP.
(tramp-message-show-progress-reporter-message):
New defvar.
(tramp-with-progress-reporter): Use it.  We cannot use
`tramp-message-show-message' here, because this
suppresses also error buffers.
(tramp-error-with-buffer): Suppress buffer view, if
`tramp-message-show-message' is nil.  Use
`tramp-get-connection-buffer'.
(tramp-cleanup): New defun.
(tramp-rfn-eshadow-update-overlay): Let-bind
`non-essential' to `t'.
(tramp-file-name-handler): If `debug-on-error' is
set, propagate an error unchanged.
(tramp-completion-handle-file-name-all-completions):
Handle hops.  Fix an error when called from ido.
(tramp-completion-dissect-file-name): Use better
local variable name.  Add hop to the vector.
(tramp-handle-insert-file-contents): Use
progress-reporter for the whole scenario.
(tramp-action-password): Let-bind
`enable-recursive-minibuffers' to `t'.
(tramp-check-for-regexp): Simplify search.
(tramp-enter-password): Remove it.  Move
implementation ...
(tramp-action-password): ... here.
(tramp-mode-string-to-int, tramp-local-host-p)
(tramp-make-tramp-temp-file, tramp-read-passwd)
(tramp-clear-passwd, tramp-time-less-p,
tramp-time-diff): Set tramp-autoload cookie.

* net/trampver.el: Update release number.

* net/tramp.el (tramp-set-completion-function): Fix
docstring.
(tramp-parse-group, tramp-parse-file)
(tramp-parse-shostkeys-sknownhosts): New defuns.
(tramp-parse-rhosts, tramp-parse-rhosts-group, tramp-parse-shosts)
(tramp-parse-shosts-group, tramp-parse-sconfig)
(tramp-parse-sconfig-group, tramp-parse-shostkeys)
(tramp-parse-sknownhosts, tramp-parse-hosts)
(tramp-parse-hosts-group, tramp-parse-passwd,
tramp-parse-netrc): Use them.
(tramp-parse-passwd-group, tramp-parse-netrc-group)
(tramp-parse-putty-group): Don't narrow.
(tramp-parse-putty): Make a loop.
(tramp-file-name-handler): Catch the `suppress'
signal.
2012-06-11 12:30:07 +02:00
Chong Yidong
72834e10a6 Give ImageMagick lowest priority in image-type-file-name-regexps.
* lisp/image.el (imagemagick-register-types): Put the ImageMagick
entry at the end of image-type-file-name-regexps.
2012-06-11 18:16:47 +08:00
Johan Bockgård
a4712e11fe * lisp/emacs-lisp/pcase.el (pcase-UPAT, pcase-QPAT): New edebug specs.
(pcase, pcase-let*, pcase-dolist): Use them.
2012-06-10 20:46:21 -04:00
Stefan Monnier
82ad98e37d * lisp/emacs-lisp/pcase.el (pcase--let*): New function.
(pcase-let*): Use it.  Use pcase--memoize to avoid repeated expansions.
(pcase--expand): Use macroexp-let².
2012-06-10 20:33:33 -04:00
Gnus developers
cef5bb19dc Merge bugfixes done in Gnus trunk
Those changes fix only the bugs having appeared in the bug list.
Many other Gnus changes not yet merged to Emacs are in:
   ftp://ftp.jpl.org/pub/tmp/MaGnus-to-Emacs.patch
(or http://www.jpl.org/ftp/pub/tmp/MaGnus-to-Emacs.patch)

2012-06-10 Lars Magne Ingebrigtsen <larsi@gnus.org>
* gnus-group.el (gnus-group-get-new-news): Respect
  `gnus-group-use-permanent-levels', as documented (bug#11638).
2012-06-10 Dave Abrahams <dave@boostpro.com>
* gnus-int.el (gnus-warp-to-article): Limit registry warping to real
  groups (bug#11641).
2012-06-10 23:27:32 +00:00
Stefan Monnier
f80efb8695 Reduce use of cl in lisp/emacs-lisp/.
* lisp/emacs-lisp/timer.el, lisp/emacs-lisp/syntax.el, lisp/emacs-lisp/smie.el:
* lisp/emacs-lisp/ewoc.el, lisp/emacs-lisp/cconv.el,lisp/emacs-lisp/derived.el:
* lisp/emacs-lisp/byte-opt.el, lisp/emacs-lisp/autoload.el: Convert to cl-lib.
* lisp/emacs-lisp/easymenu.el, lisp/emacs-lisp/easy-mmode.el:
* lisp/emacs-lisp/bytecomp.el: Use pcase instead of `cl'.
* lisp/emacs-lisp/cl-lib.el: Get rid of special cl-macs auto load.
2012-06-10 09:28:26 -04:00
Chong Yidong
31ca4639ad Merge from emacs-24; up to 2012-04-25T15:23:19Z!sdl.web@gmail.com 2012-06-10 21:20:58 +08:00
Glenn Morris
c758c4fd17 Auto-commit of generated files. 2012-06-10 06:18:41 -04:00
Chong Yidong
f08b09fcaf admin.el (make-manuals): Generate misc html manuals too. 2012-06-10 17:06:34 +08:00
Andreas Schwab
95988fcfa8 * regex.c (at_begline_loc_p): Also recognize `(?N:' and correctly
account for preceding backslashes.  (Bug#11663)
2012-06-10 10:39:19 +02:00
Chong Yidong
edcdbe4d31 Regenerate ldefs-boot.el. 2012-06-10 15:41:46 +08:00
Chong Yidong
c342cead4d Minor fix to sc.texi to allow HTML compilation. 2012-06-10 15:02:16 +08:00
Glenn Morris
9e1b8ec4c1 * mail/rmail.el (rmail-yank-current-message): Leave point at correct position.
Fixes: debbugs:11660
2012-06-09 21:37:41 -07:00
Andreas Schwab
642b6d30c6 * Makefile.in (BIG_STACK_DEPTH): Enlarge to 2200. 2012-06-09 19:03:43 +02:00
Chong Yidong
cd4eb164a9 Add support for italic text on ttys.
* src/dispextern.h: Replace unused TTY_CAP_BLINK with TTY_CAP_ITALIC.
(struct face): Remove unused fields tty_dim_p, tty_blinking_p, and
tty_alt_charset_p.  Add tty_italic_p.

* src/term.c: Support italics in capable terminals.
(no_color_bit): Replace unused NC_BLINK with NC_ITALIC.
(turn_on_face): Output using TS_enter_italic_mode if available.
Don't handle unused blinking and alt-charset cases.
(turn_off_face): Handle italic case; discard unused tty_blinking_p
and tty_alt_charset_p cases.
(tty_capable_p, init_tty): Support italics.

* src/termchar.h (struct tty_display_info): Add field for italics.
Remove unused blink field.

* src/xfaces.c (tty_supports_face_attributes_p, realize_tty_face):
Handle slant.

Fixes: debbugs:9652
2012-06-10 00:44:44 +08:00
Chong Yidong
4f5d2ba15c * ebuff-menu.el (electric-buffer-list): Preserve header line. 2012-06-09 22:33:44 +08:00
Eli Zaretskii
8a26b487f2 Fix parallel bootstrap build in lisp/ on MS-Windows.
Fix parallel builds: make sure loaddefs.el is not being written
 while Lisp files are compiled.
 lisp/makefile.w32-in (compile): Don't depend on 'mh-autoloads'.
 (compile-CMD, compile-SH): Depend on 'autoloads'.
 (bootstrap): Don't depend on 'autoloads' and 'mh-autoloads'.
2012-06-09 14:53:31 +03:00
Michael Albinus
ff88beb855 * dbusbind.c (XD_BASIC_DBUS_TYPE): Use dbus_type_is_valid and
dbus_type_is_basic if available.
(xd_extract_signed, xd_extract_unsigned): Rename from
extract_signed and extract_unsigned, respectively.  Adapt callers.
2012-06-09 13:13:30 +02:00
Michael Albinus
e3a3e21331 * configure.in (dbus_type_is_valid): Check for library function. 2012-06-09 13:12:12 +02:00
Martin Rudalics
e75852fd3e In special-display-popup-frame don't use window--display-buffer (Bug#11651).
* window.el (special-display-popup-frame): Don't use
window--display-buffer (Bug#11651).
2012-06-09 11:59:14 +02:00
Chong Yidong
1682701f25 * xfaces.c (face_for_overlay_string): Handle face remapping.
Fixes: debbugs:2066
2012-06-09 17:37:47 +08:00
Dmitry Antipov
dbab98c7af * doc/lispref/internals.texi (Garbage Collection): Typo fix. 2012-06-09 13:20:01 +04:00
Eli Zaretskii
1e48e2823f Fix "lisp nesting exceeds max-lisp-eval-depth" errors on MS-Windows.
This happens during bootstrap; see bug#11649.

 lisp/makefile.w32-in (BIG_STACK_DEPTH): Enlarge to 2200.
2012-06-09 12:15:13 +03:00
Chong Yidong
4428609619 * fringe.c (Fset_fringe_bitmap_face): Handle the noninteractive case.
Fixes: debbugs:9752
2012-06-09 15:27:15 +08:00
Chong Yidong
6175e34b61 Doc improvements for face remapping.
* face-remap.el (face-remap-add-relative, face-remap-set-base)
(buffer-face-set, buffer-face-toggle, buffer-face-mode-invoke):
Doc fixes.

* doc/lispref/display.texi (Face Remapping): Minor clarification.

* doc/lispref/text.texi (Special Properties): Clarify the meaning of a
list of faces in the `face' property.

Fixes: debbugs:11225
2012-06-09 14:26:46 +08:00
Stefan Monnier
d9857e534b Don't autoload functions too eagerly during macroexpansion.
* lisp/emacs-lisp/macroexp.el (macroexp--expand-all): Only autoload
a function if there's a clear indication that it has a compiler-macro.
* lisp/emacs-lisp/byte-run.el (defun-declarations-alist, defmacro, defun)
(macro-declarations-alist): Add arglist to declaration functions.
(defun-declarations-alist): Add `obsolete' and `compiler-macro'.
* lisp/emacs-lisp/cl-seq.el (cl-member, cl-assoc):
* lisp/emacs-lisp/cl-lib.el (cl-list*, cl-adjoin):
* lisp/emacs-lisp/cl-extra.el (cl-get): Use the new `declare' statement.
Also add autoload to find the compiler macro.
* lisp/emacs-lisp/cl-macs.el (eql) [compiler-macro]: Remove.
(cl--compiler-macro-member, cl--compiler-macro-assoc)
(cl--compiler-macro-adjoin, cl--compiler-macro-list*)
(cl--compiler-macro-get): New functions, replacing calls to
cl-define-compiler-macro.
(cl-typep) [compiler-macro]: Use macroexp-let².
2012-06-08 22:26:47 -04:00
Andreas Schwab
7cb70fd73e * make-docfile.c (search_lisp_doc_at_eol): Unget last read
character.
2012-06-08 23:33:58 +02:00
Glenn Morris
f81298f8af Mark tiny change 2012-06-08 14:35:28 -04:00
Paul Eggert
d86feb1764 * xdisp.c (vmessage): Treat frame message as multibyte.
Without this change, (let ((§ 1)) (make-variable-buffer-local '§))
would generate the diagnostic "Making \302\247 buffer-local while
let-bound!".
2012-06-08 10:50:17 -07:00
Ulf Jasper
ee5747918f icalendar / icalendar-tests: Fix Bug#11473 -- unescape commas in timezone specs
2012-06-08 Nick Dokos <nicholas.dokos@hp.com>

	* calendar/icalendar.el (icalendar--parse-vtimezone): Import TZID
	string properly, fixes Bug#11473.

2012-06-08  Ulf Jasper  <ulf.jasper@web.de>

	* automated/icalendar-tests.el (icalendar--parse-vtimezone): Test
	escaped commas in TZID (Bug#11473).
	(icalendar-import-with-timezone): New.
	(icalendar-real-world): Add new testcase as found in the bugreport
	of Bug#11473.
2012-06-08 19:34:09 +02:00
Chong Yidong
4b56d0fe74 Face cleanups. Remove some uses of old-style face spec and :bold/:italic.
* faces.el (set-face-attribute): Doc fix.
(modify-face): Don't use :bold and :italic.
(error, warning, success): Tweak definitions.

* cus-edit.el (custom-modified, custom-invalid, custom-rogue)
(custom-modified, custom-set, custom-changed, custom-themed)
(custom-saved, custom-button, custom-button-mouse)
(custom-button-pressed, custom-state, custom-comment-tag)
(custom-variable-tag, custom-group-tag-1, custom-group-tag)
(custom-group-subtitle): Use new-style face specs.
(custom-invalid-face, custom-rogue-face, custom-modified-face)
(custom-set-face, custom-changed-face, custom-saved-face)
(custom-button-face, custom-button-pressed-face)
(custom-documentation-face, custom-state-face)
(custom-comment-face, custom-comment-tag-face)
(custom-variable-tag-face, custom-variable-button-face)
(custom-face-tag-face, custom-group-tag-face-1)
(custom-group-tag-face): Remove obsolete face alias.

* epa.el (epa-validity-high, epa-validity-medium)
(epa-validity-low, epa-mark, epa-field-name, epa-string)
(epa-field-name, epa-field-body):
* font-lock.el (font-lock-comment-face, font-lock-string-face)
(font-lock-keyword-face, font-lock-builtin-face)
(font-lock-function-name-face, font-lock-variable-name-face)
(font-lock-type-face, font-lock-constant-face):
* ido.el (ido-first-match, ido-only-match, ido-subdir)
(ido-virtual, ido-indicator, ido-incomplete-regexp):
* speedbar.el (speedbar-button-face, speedbar-file-face)
(speedbar-directory-face, speedbar-tag-face)
(speedbar-selected-face, speedbar-highlight-face)
(speedbar-separator-face):
* whitespace.el (whitespace-newline, whitespace-space)
(whitespace-hspace, whitespace-tab, whitespace-trailing)
(whitespace-line, whitespace-space-before-tab)
(whitespace-space-after-tab, whitespace-indentation)
(whitespace-empty):
* emulation/cua-base.el (cua-global-mark):
* eshell/em-prompt.el (eshell-prompt):
* net/newst-plainview.el (newsticker-new-item-face)
(newsticker-old-item-face, newsticker-immortal-item-face)
(newsticker-obsolete-item-face, newsticker-date-face)
(newsticker-statistics-face, newsticker-default-face):
* net/newst-reader.el (newsticker-feed-face)
(newsticker-extra-face, newsticker-enclosure-face):
* net/newst-treeview.el (newsticker-treeview-face)
(newsticker-treeview-new-face, newsticker-treeview-old-face)
(newsticker-treeview-immortal-face)
(newsticker-treeview-obsolete-face)
(newsticker-treeview-selection-face):
* net/rcirc.el (rcirc-my-nick, rcirc-other-nick)
(rcirc-bright-nick, rcirc-server, rcirc-timestamp)
(rcirc-nick-in-message, rcirc-nick-in-message-full-line)
(rcirc-prompt, rcirc-track-keyword, rcirc-url, rcirc-keyword):
* nxml/nxml-outln.el (nxml-heading, nxml-outline-indicator)
(nxml-outline-active-indicator, nxml-outline-ellipsis):
* play/mpuz.el (mpuz-unsolved, mpuz-solved, mpuz-trivial)
(mpuz-text):
* progmodes/vera-mode.el (vera-font-lock-number)
(vera-font-lock-function, vera-font-lock-interface):
* textmodes/table.el (table-cell): Use new-style face specs, and
don't use the old :bold and :italic attributes.

* erc-button.el (erc-button):
* erc-goodies.el (erc-bold-face, erc-inverse-face)
(erc-underline-face, fg:erc-color-*):
* erc-match.el (erc-current-nick-face, erc-dangerous-host-face)
(erc-pal-face, erc-fool-face, erc-keyword-face):
* erc-stamp.el (erc-timestamp-face): Likewise.

* erc.el (erc-direct-msg-face, erc-header-line, erc-input-face)
(erc-command-indicator-face, erc-notice-face, erc-action-face)
(erc-error-face, erc-my-nick-face, erc-nick-default-face)
(erc-nick-msg-face): Use new-style face specs, and avoid :bold.

* progmodes/ebrowse.el (ebrowse-tree-mark, ebrowse-root-class)
(ebrowse-member-attribute, ebrowse-default, ebrowse-file-name)
(ebrowse-member-class, ebrowse-progress): Likewise.
(ebrowse-tree-mark-face, ebrowse-root-class-face)
(ebrowse-file-name-face, ebrowse-default-face)
(ebrowse-member-attribute-face, ebrowse-member-class-face)
(ebrowse-progress-face): Remove obsolete faces.

* progmodes/flymake.el (flymake-errline, flymake-warnline):
Inherit from error and warning faces respectively.

* textmodes/flyspell.el (flyspell-incorrect, flyspell-duplicate):
Likewise.
(flyspell-incorrect-face, flyspell-duplicate-face): Remove
obsolete aliases.

* display.texi (Face Attributes): Font family does not accept
wildcards.  De-document obsolete :bold and :italic attributes.
(Defining Faces): Use new-style face spec format.
2012-06-09 00:39:49 +08:00
Eli Zaretskii
d5c20fe8ca Revert inadvertent commit in dispnew.c as part of 2012-06-08T08:44:45Z!eliz@gnu.org.
src/dispnew.c (showing_window_margins_p): Undo last change, which
 was done due to an inadvertent commit.
 (adjust_frame_glyphs_for_frame_redisplay): Do call
 showing_window_margins_p.
2012-06-08 16:59:28 +03:00
Michael Albinus
03310646a5 * net/tramp-compat.el (tramp-compat-temporary-file-directory): Avoid infloop. 2012-06-08 15:27:06 +02:00
Stefan Monnier
513749ee18 Clean up scoping rule of predefined single-word vars.
* lisp/startup.el (argv, argi): Make lexically scoped.
* lisp/emacs-lisp/float-sup.el (pi): Use internal-make-var-non-special.
* lisp/emacs-lisp/cl-macs.el: Use lexical-binding.
Rename cl-bind-* to cl--bind-*.
* lisp/files.el: Don't require `cl' since it doesn't use it.
* lisp/emacs-lisp/pcase.el, lisp/emacs-lisp/macroexp.el: Add coding cookie.
* src/eval.c (Fmake_var_non_special): New primitive.
(syms_of_eval): Defsubr it.
* src/lread.c (syms_of_lread): Mark `values' as lexically scoped.
2012-06-08 09:18:26 -04:00
Juanma Barranquero
595ef4ad76 lisp/textmodes/texinfmt.el: Fix bug#11640 (reverts part of 2008-07-31T05:33:56Z!dann@ics.uci.edu).
(texinfo-format-printindex): Use `texinfo-sort-region' in all platforms,
instead of calling external sort utility.
(texinfo-sort-region, texinfo-sort-startkeyfun): Restore functions.
2012-06-08 14:24:27 +02:00
Juanma Barranquero
d4a8f5c1bd src/dispnew.c (showing_window_margins_p): Wrap in #if 0. 2012-06-08 14:19:28 +02:00
Eli Zaretskii
8bbbc977a7 Fix BLOCK_INPUT/UNBLOCK_INPUT mismatch in 2012-06-08T08:44:30Z!dmantipov@yandex.ru.
src/alloc.c (allocate_vectorlike): Fix last change.
2012-06-08 12:58:43 +03:00
Eli Zaretskii
e9f66fcb51 Mention in "C-u C-x =" display how to insert the character w/o input methods.
lisp/descr-text.el (describe-char): Mention how to insert the
 character, if the current input method doesn't support it.
 See the discussion in this thread for the details:
 http://lists.gnu.org/archive/html/emacs-devel/2012-05/msg00533.html.
2012-06-08 11:44:45 +03:00
Dmitry Antipov
f3372c8789 Block-based vector allocation of small vectors.
* src/lisp.h (struct vectorlike_header): New field `nbytes',
adjust comment accordingly.
* src/alloc.c (enum mem_type): New type `MEM_TYPE_VECTOR_BLOCK'
to denote vector blocks. Adjust users (live_vector_p,
mark_maybe_pointer, valid_lisp_object_p) accordingly.
(COMMON_MULTIPLE): Move outside #if USE_LSB_TAG.
(VECTOR_BLOCK_SIZE, vroundup, VECTOR_BLOCK_BYTES),
(VBLOCK_BYTES_MIN, VBLOCK_BYTES_MAX, VECTOR_MAX_FREE_LIST_INDEX),
(VECTOR_FREE_LIST_FLAG, ADVANCE, VINDEX, SETUP_ON_FREE_LIST),
(VECTOR_SIZE, VECTOR_IN_BLOCK): New macros.
(roundup_size): New constant.
(struct vector_block): New data type.
(vector_blocks, vector_free_lists, zero_vector): New variables.
(all_vectors): Renamed to `large_vectors'.
(allocate_vector_from_block, init_vectors, allocate_vector_from_block)
(sweep_vectors): New functions.
(allocate_vectorlike): Return `zero_vector' as the only vector of
0 items. Allocate new vector from block if vector size is less than
or equal to VBLOCK_BYTES_MAX.
(Fgarbage_collect): Move all vector sweeping code to sweep_vectors.
(init_alloc_once): Add call to init_vectors.
* doc/lispref/internals.text (Garbage Collection): Document new
vector management code and vectorlike_header structure.
2012-06-08 12:44:30 +04:00
Katsumi Yamaoka
d52ba5afda Merge bugfixes done in Gnus trunk
Those changes fix only the bugs having appeared in the bug list.
Many other Gnus changes not yet merged to Emacs are in:
   ftp://ftp.jpl.org/pub/tmp/MaGnus-to-Emacs.patch
(or http://www.jpl.org/ftp/pub/tmp/MaGnus-to-Emacs.patch)

2012-06-07 Lars Magne Ingebrigtsen <larsi@gnus.org>
* gnus-msg.el (gnus-msg-mail): Warn the user about Gnus not running
  (bug#11514).
2012-04-10 Lars Magne Ingebrigtsen <larsi@gnus.org>
* gnus-msg.el (gnus-summary-cancel-article): See what From header we
  would have gotten if we posted to the group, and use that to compare
  against the message we want to cancel (bug#10808).
2012-06-08 04:38:56 +00:00
Sam Steingold
3d10db47a7 * lisp/bindings.el (global-map): Bind XF86Forward to next-buffer and
XF86Back to previous-buffer.
(minibuffer-local-map): Bind them to next-history-element and
previous-history-element respectively.
* lisp/help-mode.el (help-mode-map): Bind them to help-go-forward and
help-go-back respectively.
* lisp/info.el (Info-mode-map): Bind them to Info-history-forward and
Info-history-back respectively.
These are the keys next to Up on the ThinkPad keyboard.
2012-06-08 00:23:26 -04:00
Stefan Monnier
de7e2b3687 Get rid of cl-lexical-let, keeping only lexical-let for compatibility.
* lisp/emacs-lisp/cl-macs.el: Provide itself.
(cl--labels-convert-cache): New var.
(cl--labels-convert): New function.
(cl-flet, cl-labels): New implementation with new semantics, relying on
lexical-binding.
* lisp/emacs-lisp/cl.el: Mark compatibility aliases as obsolete.
(cl-closure-vars, cl--function-convert-cache)
(cl--function-convert): Move from cl-macs.el.
(lexical-let, lexical-let*, flet, labels): Move from cl-macs.el and
rename by removing the "cl-" prefix.
* lisp/emacs-lisp/macroexp.el (macroexp-unprogn): New function.
2012-06-07 22:54:35 -04:00
Stefan Monnier
4f18a4ed84 * src/eval.c (Fmacroexpand): Stop if the macro returns the same form. 2012-06-07 22:47:26 -04:00
Paul Eggert
0e8bbf6690 * texinfo.tex: Merge from gnulib. 2012-06-07 17:03:10 -07:00
Stefan Monnier
6fa6c4aedb Move old compatiblity to cl.el. Remove cl-macroexpand-all.
* emacs-lisp/cl-extra.el (cl-map-keymap, cl-copy-tree)
(cl-not-hash-table, cl-builtin-gethash, cl-builtin-remhash)
(cl-builtin-clrhash, cl-builtin-maphash, cl-gethash, cl-puthash)
(cl-remhash, cl-clrhash, cl-maphash, cl-make-hash-table)
(cl-hash-table-p, cl-hash-table-count): Move to cl.el.
(cl-macroexpand-cmacs): Remove var.
(cl-macroexpand-all, cl-macroexpand-body): Remove funs.
Use macroexpand-all instead.

* emacs-lisp/cl-lib.el (cl-macro-environment): Remove decl.
(cl-macroexpand): Move to cl-macs.el and rename to cl--sm-macroexpand.
(cl-member): Remove old alias.

* emacs-lisp/cl-macs.el (cl-macro-environment): Remove var.
Use macroexpand-all-environment instead.
(cl--old-macroexpand): New var.
(cl--sm-macroexpand): New function.
(cl-symbol-macrolet): Use it during macro expansion.
(cl--function-convert-cache): New var.
(cl--function-convert): New function, extracted from
cl-macroexpand-all.
(cl-lexical-let): Use it.

* emacs-lisp/cl.el (cl-macroexpand, cl-macro-environment)
(cl-macroexpand-all, cl-not-hash-table, cl-builtin-gethash)
(cl-builtin-remhash, cl-builtin-clrhash, cl-builtin-maphash)
(cl-map-keymap, cl-copy-tree, cl-gethash, cl-puthash, cl-remhash)
(cl-clrhash, cl-maphash, cl-make-hash-table, cl-hash-table-p)
(cl-hash-table-count): Add old compatibility aliases.
2012-06-07 15:48:22 -04:00
Stefan Monnier
4dd1c416d1 Cleanup cl-macs namespace. Add macro helpers in macroexp.el.
* emacs-lisp/macroexp.el (macroexp-progn, macroexp-let*, macroexp-if)
(macroexp-let², macroexp--const-symbol-p, macroexp-const-p)
(macroexp-copyable-p): New functions and macros.
* emacs-lisp/edebug.el (edebug-unwrap):
* emacs-lisp/disass.el (disassemble-internal): Use macroexp-progn.
* emacs-lisp/pcase.el: Use macroexp-let*, macroexp-if, ...
(pcase--let*): Remove.
* emacs-lisp/bytecomp.el (byte-compile-const-symbol-p)
(byte-compile-constp): Remove.  Use macroexp--const-symbol-p and
macroexp-const-p instead.
* emacs-lisp/byte-opt.el: Use macroexp-const-p and macroexp-progn.

* emacs-lisp/cl-macs.el: Clean up the name space by using "cl--"
instead of "cl-" for internal definitions.  Use macroexp-const-p.
(cl-old-bc-file-form): Remove var.
(cl-const-exprs-p): Remove fun.
(cl-labels, cl-macrolet): Use backquote.
(cl-lexical-let): Use cl-symbol-macrolet.  Don't use cl-defun-expander.
(cl-defun-expander, cl-byte-compile-compiler-macro): Remove fun.
(cl-define-setf-expander): Rename from cl-define-setf-method.
* emacs-lisp/cl.el: Adjust alias for define-setf-method.

* international/mule-cmds.el: Don't require CL.
(view-hello-file): Don't use `letf'.
2012-06-07 15:25:48 -04:00