++ 2010-10-24 Eli Zaretskii <eliz@gnu.org>
++
++ * display.texi (Window Systems): Deprecate use of window-system as
++ a predicate.
++
++ 2010-10-23 Glenn Morris <rgm@gnu.org>
++
++ * help.texi (Documentation Basics): Remove mentions of digest-doc and
++ sorted-doc.
++
++ 2010-10-15 Eli Zaretskii <eliz@gnu.org>
++
++ * os.texi (Dynamic Libraries): New node, with slightly modified
++ text deleted from "Image Formats".
++ (System Interface): Add @menu entry for "Dynamic Libraries".
++
++ * display.texi (Image Formats): Remove description of
++ image-library-alist. (Renamed in 2010-10-13T14:50:06Z!lekktu@gmail.com.)
++
++ 2010-10-12 Glenn Morris <rgm@gnu.org>
++
++ * book-spine.texinfo: Rename to book-spine.texi.
++
++ 2010-10-11 Glenn Morris <rgm@gnu.org>
++
++ * Makefile.in (MAKEINFO): Add explicit -I$srcdir.
++
++ * Makefile.in (DVIPS): New variable.
++ (.PHONY): Add html, ps.
++ (html, elisp.html, ps, elisp.ps): New targets.
++ (clean): Delete html, ps files.
++ ($(infodir)/elisp): Remove unnecessary includes.
++
++ 2010-10-09 Eli Zaretskii <eliz@gnu.org>
++
++ * makefile.w32-in (emacsdir): New variable.
++ (srcs): Add emacsver.texi.
++ ($(infodir)/elisp, elisp.dvi): Add -I$(emacsdir).
++
++ 2010-10-09 Glenn Morris <rgm@gnu.org>
++
++ * Makefile.in (VPATH): Remove.
++ (infodir): Make it absolute.
++ (mkinfodir, $(infodir)/elisp, infoclean): No need to cd $srcdir.
++
++ * Makefile.in (dist): Anchor regexps.
++
++ * Makefile.in (srcs): Put elisp.texi first.
++ ($(infodir)/elisp, elisp.dvi, elisp.pdf): Use $<.
++
++ * Makefile.in (infoclean): Remove harmless, long-standing error.
++
++ * Makefile.in ($(infodir)): Delete rule.
++ (mkinfodir): New.
++ ($(infodir)/elisp): Use $mkinfodir instead of infodir.
++
++ * Makefile.in (dist): Remove reference to emacsver.texi.in.
++ Also copy emacsver.texi, and edit $emacsdir.
++
++ 2010-10-09 Glenn Morris <rgm@gnu.org>
++
++ * Makefile.in (emacsdir): New variable.
++ (MAKEINFO): Add -I $emacsdir.
++ (dist): Copy emacsver.texi.
++ (srcs): Add emacsver.texi.
++
++ * book-spine.texinfo, elisp.texi, vol2.texi, vol1.texi:
++ Set EMACSVER by including emacsver.texi.
++
++ * Makefile.in (.PHONY): Declare info, dvi, pdf, dist.
++
+ 2010-10-07 Glenn Morris <rgm@gnu.org>
+
+ * Makefile.in (version): New, set by configure.
+ (clean): Delete dist tar file.
+ (dist): Use version in tar name.
+
+ 2010-10-06 Glenn Morris <rgm@gnu.org>
+
+ * Makefile.in: Rearrange to more closely resemble doc/emacs/Makefile.
+ (INSTALL_INFO): Remove unused variable.
+ (mostlyclean, infoclean, dist): New rules.
+ (clean): Delete dvi and pdf files.
+ (maintainer-clean): Remove elisp.oaux, use infoclean.
+ ($(infodir)): Add parallel build workaround.
+
+ 2010-10-04 Glenn Morris <rgm@gnu.org>
+
+ * Makefile.in (dvi, pdf, $(infodir)): New targets.
+ ($(infodir)/elisp): Ensure target directory exists. Use $@.
+ Fix -I typo.
+ (clean): No 'make.out' or 'core' files.
+ (.PHONY): Declare clean rules.
+ (maintainer-clean): Delete pdf file. Guard against cd failures.
+
+ 2010-10-03 Glenn Morris <rgm@gnu.org>
+
+ * files.texi (File Name Components): Remove ignored section about
+ deleted variable directory-sep-char.
+
+ 2010-10-03 Michael Albinus <michael.albinus@gmx.de>
+
+ * files.texi (Magic File Names): New defopt
+ remote-file-name-inhibit-cache.
+
+ 2010-10-02 Glenn Morris <rgm@gnu.org>
+
+ * os.texi (Killing Emacs): Hook now runs in batch mode.
+
+ 2010-09-18 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * text.texi (Special Properties): Clarify when modification-hooks run.
+
+ 2010-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * syntax.texi (Syntax Flags): Document new `c' flag.
+
+ 2010-09-09 Glenn Morris <rgm@gnu.org>
+
+ * display.texi (ImageMagick Images): General cleanup.
+
+ 2010-09-06 Alexander Klimov <alserkli@inbox.ru> (tiny change)
+
+ * files.texi (Directory Names): Use \` rather than ^.
+
+ 2010-09-02 Jan Djärv <jan.h.d@swipnet.se>
+
+ * text.texi (Low-Level Kill Ring):
+ * frames.texi (Window System Selections): Remove cut buffer
+ documentation.
+
+ 2010-08-28 Eli Zaretskii <eliz@gnu.org>
+
+ * display.texi (Fringe Size/Pos): Add a cross-reference to "Layout
+ Parameters", where the default fringe width is described.
+
+ * frames.texi (Window Frame Parameters, Basic Parameters)
+ (Position Parameters, Layout Parameters, Management Parameters)
+ (Cursor Parameters, Font and Color Parameters): Add indexing for
+ frame parameters. (Bug#6929)
+
+ 2010-08-25 Tom Tromey <tromey@redhat.com>
+
+ * vol2.texi (Top): Update.
+ * vol1.texi (Top): Update.
+ * tips.texi (Library Headers): Mention Package-Version and
+ Package-Requires.
+ * package.texi: New file.
+ * os.texi (System Interface): Update pointers.
+ * elisp.texi (Top): Link to new nodes. Include package.texi.
+ * anti.texi (Antinews): Update pointers.
+
+ 2010-08-25 Eli Zaretskii <eliz@gnu.org>
+
+ * processes.texi (Filter Functions): Fix last change.
+
+ 2010-08-24 Markus Triska <triska@gmx.at>
+
+ * processes.texi (Filter Functions): Use `buffer-live-p' instead
+ of `buffer-name' in the main text as well as in the example
+ (Bug#3098).
+
+ 2010-08-22 Chong Yidong <cyd@stupidchicken.com>
+
+ * nonascii.texi (Text Representations):
+ * loading.texi (Loading Non-ASCII):
+ * compile.texi (Byte Compilation): Don't mention obsolete
+ --unibyte command-line argument.
+
+ 2010-08-22 Chong Yidong <cyd@stupidchicken.com>
+
+ * modes.texi (Defining Minor Modes): Doc fix (Bug#6880).
+
+ 2010-08-22 Chong Yidong <cyd@stupidchicken.com>
+
+ * objects.texi (Bool-Vector Type): Minor definition tweak (Bug#6878).
+
+ 2010-08-20 Eli Zaretskii <eliz@gnu.org>
+
+ * commands.texi (Misc Events): Add cross-references to where
+ POSITION of a mouse event is described in detail.
+
+ 2010-08-08 Christoph <cschol2112@googlemail.com>
+
+ * control.texi (Handling Errors) <error-message-string>: Fix arg name.
+
+ 2010-08-08 Juanma Barranquero <lekktu@gmail.com>
+
+ * modes.texi (Defining Minor Modes): Use C-backspace, not C-delete.
+ Suggested by Štěpán Němec <stepnem@gmail.com>.
+
+ 2010-08-08 Juanma Barranquero <lekktu@gmail.com>
+
+ * minibuf.texi (High-Level Completion): Document args of
+ `read-buffer-function' (bug#5625).
+
++2010-07-31 Martin Rudalics <rudalics@gmx.at>
++
++ * windows.texi (Buffers and Windows): Describe lists of previous
++ and next buffers for windows. Describe new commands
++ switch-to-prev-buffer and switch-to-next-buffer and their impact
++ on replace-buffer-in-windows.
++
2010-07-29 Jan Djärv <jan.h.d@swipnet.se>
* frames.texi (Layout Parameters): Add doc for tool-bar-position.
@node Cursor Parameters
@subsubsection Cursor Parameters
+ @cindex cursor, and frame parameters
-- This frame parameter controls the way the cursor looks.
++This frame parameter controls the way the cursor looks like in the
++selected window, see @ref{Selecting Windows}.
@table @code
+ @vindex cursor-type, a frame parameter
@item cursor-type
--How to display the cursor. Legitimate values are:
++How to display the cursor in the selected window. Legitimate values
++are:
@table @code
@item box
- * net/tramp-sh.el (tramp-sh-file-name-handler-alist): Use
- `tramp-handle-find-backup-file-name'.
++ 2010-10-25 Glenn Morris <rgm@gnu.org>
++
++ * term/common-win.el (x-handle-switch): Simplify with pop.
++ Optionally handle numeric switches.
++ (x-handle-numeric-switch): Just call x-handle-switch.
++ (x-handle-initial-switch, x-handle-xrm-switch, x-handle-geometry)
++ (x-handle-name-switch, x-handle-display, x-handle-args):
++ Simplify with pop.
++
++ * term/ns-win.el: Do not require easymenu.
++ (menu-bar-edit-menu) <copy, paste, paste-from-menu, separator-undo>:
++ <spell>: Move adjustments to menu-bar.el.
++ * menu-bar.el (menu-bar-edit-menu) <copy, paste, paste-from-menu>:
++ <separator-undo, spell>: Move ns-win's adjustments here.
++ * loadup.el [ns]: Do not load easymenu.
++
++ 2010-10-24 Chong Yidong <cyd@stupidchicken.com>
++
++ * image.el (image-checkbox-checked, image-checkbox-unchecked):
++ Delete (Bug#7222).
++
++ * startup.el (fancy-startup-tail): Instead of using inline images,
++ refer to image files from etc/.
++
++ * wid-edit.el (checkbox): Likewise.
++ (widget-image-find): Center image specs.
++
++ 2010-10-24 Glenn Morris <rgm@gnu.org>
++
++ * term/ns-win.el (x-select-text): Doc fix.
++ * w32-fns.el (x-alternatives-map, x-setup-function-keys)
++ (x-select-text): Move to term/common-win.
++ * term/w32-win.el (xw-defined-colors): Move to common-win.
++ * term/x-win.el (xw-defined-colors, x-alternatives-map)
++ (x-setup-function-keys, x-select-text): Move to common-win.
++ * term/common-win.el (x-select-text, x-alternatives-map)
++ (x-setup-function-keys, xw-defined-colors): Merge x- and w32-
++ definitions here.
++
++ 2010-10-24 T.V. Raman <tv.raman.tv@gmail.com> (tiny change)
++
++ * net/mairix.el (mairix-searches-mode-map):
++ * mail/mspools.el (mspools-mode-map): Fix 2010-10-10 change.
++
++ 2010-10-24 Michael McNamara <mac@mail.brushroad.com>
++
++ * verilog-mode.el (verilog-directive-re): Make this variable
++ auto-built for efficiency of execution and updating.
++ (verilog-extended-complete-re): Support 'pure' fucntion & task
++ declarations (these have no bodies).
++ (verilog-beg-of-statement): general cleanup to enable support of
++ 'pure' fucntion & task declarations (these have no bodies). These
++ efforts together fix Verilog bug210 from veripool; which was also
++ noticed by Steve Pearlmutter.
++ (verilog-directive-re, verilog-directive-begin, verilog-indent-re)
++ (verilog-directive-nest-re, verilog-set-auto-endcomments): Support
++ `elsif. Reported by Shankar Giri.
++ (verilog-forward-ws&directives, verilog-in-attribute-p): Fixes for
++ attribute handling for lining up declarations and assignments.
++ (verilog-beg-of-statement-1): Fix issue where continued declaration
++ is indented differently if it is after a begin..end clock.
++ (verilog-in-attribute-p, verilog-skip-backward-comments)
++ (verilog-skip-forward-comment-p): Support proper treatment of
++ attributes by indent code. Reported by Jeff Steele.
++ (verilog-in-directive-p): Fix comment to correctly describe
++ function.
++ (verilog-backward-up-list, verilog-in-struct-region-p)
++ (verilog-backward-token, verilog-in-struct-p)
++ (verilog-in-coverage-p, verilog-do-indent)
++ (verilog-pretty-declarations): Use verilog-backward-up-list as
++ wrapper around backward-up-list inorder to properly skip comments.
++ Reported by David Rogoff.
++ (verilog-property-re, verilog-endcomment-reason-re)
++ (verilog-beg-of-statement, verilog-set-auto-endcomments)
++ (verilog-calc-1 ): Fix for assert a; else b; indentation (new form
++ of if). Reported by Max Bjurling and
++ (verilog-calc-1): Fix for clocking block in modport
++ declaration. Reported by Brian Hunter.
++
++ 2010-10-24 Wilson Snyder <wsnyder@wsnyder.org>
++
++ * verilog-mode.el (verilog-auto-inst, verilog-gate-ios)
++ (verilog-gate-keywords, verilog-read-sub-decls)
++ (verilog-read-sub-decls-gate, verilog-read-sub-decls-gate-ios)
++ (verilog-read-sub-decls-line, verilog-read-sub-decls-sig): Support
++ AUTOINST for gate primitives, bug284. Reported by Mark Johnson.
++ (verilog-read-decls): Fix spaces in V2K module parameters causing
++ mis-identification as interfaces, bug287.
++ (verilog-read-decls): Fix not treating "parameter string" as a
++ parameter in AUTOINSTPARAM.
++ (verilog-read-always-signals-recurse, verilog-read-decls): Fix not
++ treating `elsif similar to `endif inside AUTOSENSE.
++ (verilog-do-indent): Implement correct automatic or static task or
++ function end comment highlight. Reported by Steve Pearlmutter.
++ (verilog-font-lock-keywords-2): Fix highlighting of single
++ character pins, bug264. Reported by Michael Laajanen.
++ (verilog-auto-inst, verilog-read-decls, verilog-read-sub-decls)
++ (verilog-read-sub-decls-in-interfaced, verilog-read-sub-decls-sig)
++ (verilog-subdecls-get-interfaced, verilog-subdecls-new): Support
++ interfaces with AUTOINST, bug270. Reported by Luis Gutierrez.
++ (verilog-pretty-expr): Fix interactive arguments, bug272. Reported
++ by Mark Johnson.
++ (verilog-auto-tieoff, verilog-auto-tieoff-ignore-regexp): Add
++ 'verilog-auto-tieoff-ignore-regexp' for AUTOTIEOFF,
++ bug269. Suggested by Gary Delp.
++ (verilog-mode-map, verilog-preprocess, verilog-preprocess-history)
++ (verilog-preprocessor, verilog-set-compile-command): Create
++ verilog-preprocess and verilog-preprocessor to show preprocessed
++ output.
++ (verilog-get-beg-of-line, verilog-get-end-of-line)
++ (verilog-modi-file-or-buffer, verilog-modi-name)
++ (verilog-modi-point, verilog-within-string): Move defmacro's
++ before first use to avoid warning. Reported by Steve Pearlmutter.
++ (verilog-colorize-buffer, verilog-colorize-include-files-buffer)
++ (verilog-colorize-region, verilog-highlight-buffer)
++ (verilog-highlight-includes, verilog-highlight-modules)
++ (verilog-highlight-region, verilog-mode): Rename colorize to
++ highlight to match other packages. Disable module highlighting,
++ as received speed complaints, reenable for experimentation only
++ using new verilog-highlight-modules.
++ (verilog-read-decls): Fix regexp stack overflow in very large
++ AUTO_TEMPLATEs, bug250.
++ (verilog-auto, verilog-delete-auto, verilog-save-buffer-state)
++ (verilog-scan): Create verilog-save-buffer-state to standardize
++ making insignificant changes that shouldn't call hooks.
++ (verilog-save-no-change-functions, verilog-save-scan-cache)
++ (verilog-scan, verilog-scan-cache-ok-p, verilog-scan-region):
++ Create verilog-save-no-change-functions to wrap verilog-scan
++ preservation, and fix to work with nested preserved calls.
++ (verilog-auto-inst, verilog-auto-inst-dot-name): Support .name
++ port syntax for AUTOWIRE, and with new verilog-auto-inst-dot-name
++ generate .name with AUTOINST, bug245. Suggested by David Rogoff.
++ (verilog-submit-bug-report): Update variable list to be complete.
++ (verilog-auto, verilog-colorize-region): Fix AUTO expansion
++ breaking on-the-fly font-locking.
++ (verilog-colorize-buffer, verilog-colorize-include-files)
++ (verilog-colorize-include-files-buffer, verilog-colorize-region)
++ (verilog-load-file-at-mouse, verilog-load-file-at-point)
++ (verilog-mode, verilog-read-inst-module-matcher): With point on a
++ AUTOINST cell instance name, middle mouse button now finds-file on
++ it. Suggested by Brad Dobbie.
++ (verilog-alw-get-temps, verilog-auto-reset)
++ (verilog-auto-sense-sigs, verilog-read-always-signals)
++ (verilog-read-always-signals-recurse): Fix loop indexes being
++ AUTORESET. AUTORESET now assumes any variables in the
++ initialization section of a for() should be ignored. Reported by
++ Dan Dever.
++ (verilog-error-font-lock-keywords)
++ (verilog-error-regexp-emacs-alist)
++ (verilog-error-regexp-xemacs-alist): Fix error detection of
++ Cadence HAL, reported by David Asher. Repair drift between the
++ three similar error variables.
++ (verilog-modi-lookup, verilog-modi-lookup-cache)
++ (verilog-modi-lookup-last-current, verilog-modi-lookup-last-mod)
++ (verilog-modi-lookup-last-modi, verilog-modi-lookup-last-tick):
++ Fix slow verilog-auto expansion on very large files.
++ (verilog-read-sub-decls-expr, verilog-read-sub-decls-line): Fix
++ AUTOOUTPUT treating "1*2" as a signal name in submodule connection
++ "{1*2{...". Broke in last revision.
++ (verilog-read-sub-decls-expr): Fix AUTOOUTPUT not detecting
++ submodule connections with replications "{#{a},#{b}}".
++
++ 2010-10-24 Juanma Barranquero <lekktu@gmail.com>
++
++ * progmodes/dcl-mode.el (dcl-electric-reindent-regexps):
++ Fix typo in docstring.
++
++ 2010-10-24 Kenichi Handa <handa@m17n.org>
++
++ * face-remap.el (text-scale-adjust): Call read-event with a proper
++ prompt.
++
++ 2010-10-24 Chong Yidong <cyd@stupidchicken.com>
++
++ * emacs-lisp/unsafep.el: Don't mark functions that display
++ messages as safe. Suggested by Johan Bockgård.
++
++ 2010-10-24 Stefan Monnier <monnier@iro.umontreal.ca>
++
++ * emacs-lisp/regexp-opt.el (regexp-opt-group, regexp-opt-charset):
++ Turn comments into docstrings.
++
++ * minibuffer.el (completion--replace): Move point where it belongs
++ when there's a common suffix (bug#7215).
++
++ 2010-10-24 Chong Yidong <cyd@stupidchicken.com>
++
++ Merge read-color and facemenu-read-color (Bug#7242).
++
++ * faces.el (read-color): Use the completion code from
++ facemenu-read-color. Require match in completion. Doc fix.
++
++ * facemenu.el (facemenu-read-color): Alias for read-color.
++ (facemenu-set-foreground, facemenu-set-background): Use
++ read-color.
++
++ * frame.el (set-background-color, set-foreground-color)
++ (set-cursor-color, set-mouse-color, set-border-color): Use
++ read-color.
++
++ 2010-10-24 Leo <sdl.web@gmail.com>
++
++ * eshell/em-unix.el (eshell-remove-entries): Use the TRASH
++ argument of delete-file and delete-directory (Bug#7011).
++
++ 2010-10-24 Chong Yidong <cyd@stupidchicken.com>
++
++ * emacs-lisp/package.el (package-menu-mode-map): Inherit from
++ button-buffer-map.
++
++ 2010-10-24 Ralf Angeli <angeli@caeruleus.net>
++
++ * emacs-lisp/package.el (package--generate-package-list): Make the
++ *Packages* buffer read-only.
++
++ 2010-10-24 Alan Mackenzie <acm@muc.de>
++
++ * progmodes/cc-fonts.el (c-font-lock-declarations): Cache the
++ result of `c-beginning-of-decl-1' between invocations of a lambda
++ function (Bug #7265).
++
++ 2010-10-24 Daiki Ueno <ueno@unixuser.org>
++
++ * epg-config.el (epg-gpg-program): Try to use "gpg2" if "gpg"
++ executable is not available on the system (Bug#7268).
++
++ 2010-10-24 Glenn Morris <rgm@gnu.org>
++
++ * select.el (selection-coding-system, next-selection-coding-system):
++ Sync doc with C versions.
++
++ * w32-vars.el (x-select-enable-clipboard):
++ * term/x-win.el (x-select-enable-clipboard): Move to common-win.
++ * term/common-win.el (x-select-enable-clipboard): Move here.
++
++ * term/tty-colors.el (tty-defined-color-alist): Remove duplicate
++ definition of C variable.
++
++ * frame.el (show-trailing-whitespace, auto-hscroll-mode)
++ (display-hourglass, hourglass-delay, cursor-in-non-selected-windows):
++ Don't redefine things that are defined in C.
++ * cus-start.el: Also handle :risky, :safe, :set, and :tag.
++ (show-trailing-whitespace, auto-hscroll-mode)
++ (display-hourglass, hourglass-delay, cursor-in-non-selected-windows):
++ Set up the appropriate custom properties.
++
++ 2010-10-24 Chong Yidong <cyd@stupidchicken.com>
++
++ Bind "C-c ]" to ...
++ * progmodes/f90.el (f90-mode-map): ... f90-insert-end.
++ * nxml/nxml-mode.el (nxml-mode-map): ... nxml-finish-element.
++ * textmodes/tex-mode.el (tex-mode-map): ... latex-close-block.
++ * textmodes/sgml-mode.el (sgml-mode-map): ... sgml-close-tag.
++
++ 2010-10-23 Glenn Morris <rgm@gnu.org>
++
++ * textmodes/flyspell.el (flyspell-mode): If there was an error,
++ say what it was.
++
++ * frame.el (auto-hscroll-mode, cursor-in-non-selected-windows):
++ Sync docs with C version.
++
++ * term/ns-win.el (xw-defined-colors):
++ * term/x-win.el (xw-defined-colors): Make docs identical to w32-win.
++
++ * term/pc-win.el (x-select-enable-clipboard):
++ * term/x-win.el (x-select-enable-clipboard):
++ * w32-vars.el (x-select-enable-clipboard): Make doc-strings identical.
++
++ * comint.el (comint-password-prompt-regexp): Make it less vague.
++ Bump version.
++
++ * help-fns.el (doc-file-to-man, doc-file-to-info): New commands.
++
++ * help.el (finder-by-keyword): Remove unnecessary autoload.
++
++ 2010-10-22 Glenn Morris <rgm@gnu.org>
++
++ * loadup.el: Unconditionally load float-sup.
++ * paren.el (show-paren-delay):
++ * emacs-lisp/float-sup.el:
++ * emulation/cua-base.el (cua-prefix-override-inhibit-delay):
++ * obsolete/lazy-lock.el (lazy-lock-defer-time, lazy-lock-stealth-nice)
++ (lazy-lock-stealth-verbose): Assume float support.
++ * ps-print.el: Assume float support on Emacs.
++ * emacs-lisp/timer.el (timer-next-integral-multiple-of-time):
++ Remove non-float branch.
++
++ * emacs-lisp/autoload.el (batch-update-autoloads): Update for
++ src/Makefile no longer being pre-processed.
++
++ 2010-10-22 Stefan Monnier <monnier@iro.umontreal.ca>
++
++ * emacs-lisp/find-func.el (find-library): Use test-completion.
++
++ 2010-10-21 Lars Magne Ingebrigtsen <larsi@gnus.org>
++
++ * newcomment.el (comment-dwim): Fix the intentation in the doc string.
++
++ 010-10-21 Michael Albinus <michael.albinus@gmx.de>
++
++ * net/tramp-sh.el (tramp-do-file-attributes-with-stat): Do not use
++ space in stat format string.
++ (tramp-send-command): Unset $PS1 when using here documents, in
++ order not to get several prompts.
++ (tramp-get-inline-coding): Return `nil' in case of errors.
++
++ 2010-10-21 Daiki Ueno <ueno@unixuser.org>
++
++ * hexl.el (hexl-mode, hexl-mode-exit):
++ Tweak revert-buffer-function to inhibit auto-mode-alist (Bug#7252).
++ (hexl-revert-buffer-function): New function.
++ (hexl-before-revert-hook, hexl-after-revert-hook): Abolish.
++
++ 2010-10-19 Alan Mackenzie <acm@muc.de>
++
++ * progmodes/cc-langs.el (c-type-decl-prefix-key): C++ bit:
++ Move "\(const\|throw\|volatile\)\>" nearer the start of the regexp, so
++ that these keywords aren't wrongly matched as identifiers.
++
++ * progmodes/cc-mode.el (c-before-change, c-after-change): Move the
++ setting of c-new-BEG and c-new-END from c-before-change to
++ c-after-change. (Bug#7181)
++
++ 2010-10-19 Chong Yidong <cyd@stupidchicken.com>
++
++ * cus-face.el (custom-theme-set-faces): Revert 2010-10-18 change.
++ Don't mark as safe.
++
++ * custom.el (custom-theme-set-variables): Likewise.
++ (load-theme): Add custom-theme-set-faces and
++ custom-theme-set-variables to safe-functions while loading.
++ (custom-enabled-themes): Mark as risky.
++
++ 2010-10-18 Julien Danjou <julien@danjou.info>
++
++ * bindings.el: Remove end dashes in default mode-line-format.
++
++ 2010-10-19 Chong Yidong <cyd@stupidchicken.com>
++
++ * bindings.el (global-map): Bind C-d to delete-char and deletechar
++ to delete-forward-char.
++
++ * simple.el (normal-erase-is-backspace-mode): Remap delete to
++ deletechar, and hence delete-forward-char.
++
++ 2010-10-19 Stefan Monnier <monnier@iro.umontreal.ca>
++
++ * repeat.el (repeat): Use read-key (bug#6256).
++
++ 2010-10-19 Chong Yidong <cyd@stupidchicken.com>
++
++ * emacs-lisp/unsafep.el: Don't mark functions that display
++ messages as safe. Suggested by Johan Bockgård.
++
++ 2010-10-19 Stefan Monnier <monnier@iro.umontreal.ca>
++
++ * minibuffer.el (completion--replace): Move point where it belongs
++ when there's a common suffix (bug#7215).
++
++ 2010-10-19 Kenichi Handa <handa@m17n.org>
++
++ * international/characters.el: Add category '|' (word breakable)
++ to fullwidth characters.
++
++ 2010-10-19 Michael Albinus <michael.albinus@gmx.de>
++
++ * net/tramp-sh.el (tramp-do-file-attributes-with-stat)
++ (tramp-do-directory-files-and-attributes-with-stat): Use "e0" in
++ order to make stat results a float. Patch by Andreas Schwab
++ <schwab@linux-m68k.org>.
++
++ 2010-10-18 Julien Danjou <julien@danjou.info>
++
++ * avoid.el (mouse-avoidance-ignore-p): Ignore mouse when it is
++ hidden by `make-pointer-invisible'.
++
++ 2010-10-18 Stefan Monnier <monnier@iro.umontreal.ca>
++
++ * files.el (locate-file-completion-table): Strip non-matching elements
++ before checking length of list (bug#7238).
++
++ 2010-10-18 Chong Yidong <cyd@stupidchicken.com>
++
++ * custom.el (custom-theme-set-variables): Mark as a safe function.
++ (load-theme): Check forms using unsafep.
++
++ * cus-face.el (custom-theme-set-faces): Mark as a safe function.
++
++ 2010-10-17 Agustín Martín <agustin.martin@hispalinux.es>
++
++ * textmodes/ispell.el (ispell-aspell-find-dictionary):
++ Fix aspell data file searching (bug#7230).
++
++ 2010-10-16 Chong Yidong <cyd@stupidchicken.com>
++
++ * cus-theme.el (custom-theme--migrate-settings): New var.
++ (customize-create-theme): Allow editing the `user' theme.
++ (custom-theme-add-variable, custom-theme-add-var-1)
++ (custom-theme-add-face, custom-theme-add-face-1): Add a checkbox
++ to the front of each variable or face widget.
++ (custom-theme-write): Save theme settings in the correct order.
++ Optionally, remove saved settings from user customizations.
++ (custom-theme-write-variables, custom-theme-write-faces):
++ Save only the checked widgets.
++ (customize-themes): Add a link for migrating custom settings.
++
++ * custom.el (custom-declare-theme, provide-theme):
++ Use custom-theme-name-valid-p.
++ (custom-theme-name-valid-p): Remove checks that are now
++ unnecessary since themes no longer obey load-path.
++
++ * cus-edit.el (custom-variable-value-create): For the simple
++ style, hide documentation string when hidden.
++
++ 2010-10-16 Chong Yidong <cyd@stupidchicken.com>
++
++ * cus-edit.el (custom-variable, custom-face): Combine the
++ :inhibit-magic and :display-style properties into a single
++ :custom-style property.
++ (custom-toggle-hide-variable, custom-toggle-hide-face):
++ New functions. If hiding an edited value, save it to :shown-value.
++ (custom-variable-value-create, custom-face-value-create): Use them.
++ (custom-magic-reset): Allow magic property to be unset.
++
++ * custom.el: Custom themes no longer use load-path.
++ (custom-theme-load-path): New option. Change built-in theme
++ directory to etc/.
++ (custom-enabled-themes): Add custom-theme-load-path dependency.
++ (custom-theme--load-path): New function.
++ (load-theme, custom-available-themes): Use it.
++
++ * cus-theme.el (describe-theme-1): Use custom-theme--load-path.
++ (customize-themes): Link to custom-theme-load-path variable.
++ (custom-theme-add-var-1, custom-theme-add-face-1): Use the
++ :custom-style property.
++
++ * themes/*.el: Moved to etc/.
++
++ 2010-10-16 Ralf Angeli <angeli@caeruleus.net>
++
++ * textmodes/reftex-cite.el
++ (reftex-extract-bib-entries-from-thebibliography): Do not move
++ point when searching for \bibitem entries. Match entries with
++ spaces or tabs in front of arguments.
++
++ 2010-10-16 Chong Yidong <cyd@stupidchicken.com>
++
++ * cus-theme.el (customize-create-theme): Delete overlays after
++ erasing. If given a THEME arg, display only the faces of that arg
++ instead of custom-theme--listed-faces.
++ (custom-theme-variable-menu, custom-theme-variable-action)
++ (custom-variable-reset-theme, custom-theme-delete-variable): Delete.
++ (custom-theme-add-variable, custom-theme-add-face): Apply value
++ from the theme settings, instead of the current value.
++ (custom-theme-add-var-1, custom-theme-add-face-1): New functions.
++ (custom-theme-visit-theme): Allow calling outside theme buffers.
++ (custom-theme-merge-theme): Don't enable the theme when merging.
++ (custom-theme-write-variables, custom-theme-write-faces): Use the
++ :shown-value properties to save buffer values, not global ones.
++ (customize-themes): Display a warning about user customizations.
++
++ * cus-edit.el (custom-variable-value-create)
++ (custom-face-value-create): Obey new special properties
++ :shown-value and :inhibit-magic.
++
++ 2010-10-15 Michael Albinus <michael.albinus@gmx.de>
++
++ * net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
++ Suppress expansion of tabs to spaces. Reported by Dale Sedivec
++ <dale@codefu.org>.
++
++ 2010-10-14 Kenichi Handa <handa@m17n.org>
++
++ * mail/rmail.el (rmail-show-message-1): Catch an error of
++ base64-decode-region and just show an error message (bug#7165).
++
++ * ps-mule.el (ps-mule-font-spec-list): Delete it. Not used anymore.
++ (ps-mule-begin-job): Fix for the case that only ENCODING is set in
++ a font-spec (bug#7197).
++
++ 2010-10-14 Glenn Morris <rgm@gnu.org>
++
++ * mail/emacsbug.el (report-emacs-bug): Mention debbugs.gnu.org.
++
++ 2010-10-14 Juanma Barranquero <lekktu@gmail.com>
++
++ * international/mule.el (define-coding-system):
++ * international/titdic-cnv.el (quail-cxterm-package-ext-info):
++ * composite.el (compose-region): Fix typo in docstring.
++
++ 2010-10-14 Chong Yidong <cyd@stupidchicken.com>
++
++ * cus-face.el (custom-theme-set-faces): Call custom-push-theme
++ only after checking the theme-face property.
++
++ * faces.el (face-spec-reset-face): Reset all attributes in one
++ single call to set-face-attribute.
++ (face-spec-match-p): Make it a defsubst.
++ (frame-set-background-mode): New arg KEEP-FACE-SPECS.
++ (x-create-frame-with-faces, tty-create-frame-with-faces)
++ (tty-set-up-initial-frame-faces): Don't recompute face specs in
++ frame-set-background-mode, since they are recomputed immediately
++ afterwards in face-set-after-frame-default.
++ (face-set-after-frame-default): Minor optimization.
++ (cursor): Provide non-trivial defface spec.
++
++ * custom.el (custom-theme-recalc-face): Simplify.
++
++ 2010-10-14 Jay Belanger <jay.p.belanger@gmail.com>
++
++ * calc/calc-alg.el (math-var): Rename from `var'.
++ (math-is-polynomial, math-is-poly-rec): Replace `var'
++ with `math-var'.
++
++ * calc/calcalg2.el (math-var): Rename from `var'.
++ (calcFunc-table, math-scan-for-limits): Replace `var'
++ with `math-var'.
++
++ 2010-10-13 Glenn Morris <rgm@gnu.org>
++
++ * subr.el (last): Deal with dotted lists (reported in bug#7174).
++
++ 2010-10-13 Stephen Berman <stephen.berman@gmx.net>
++
++ * subr.el (last): Use `safe-length' instead of `length' (bug#7206).
++
++ 2010-10-13 Lars Magne Ingebrigtsen <larsi@gnus.org>
++
++ * net/tls.el (tls-program): Remove spurious %s from openssl.
++ (tls-starttls-switches): Remove starttls hack.
++ (open-tls-stream): Ditto.
++ (tls-find-starttls-argument): Ditto.
++
++ 2010-10-13 Juanma Barranquero <lekktu@gmail.com>
++
++ * image.el (image-library-alist): Declare as obsolete alias.
++ (image-type-available-p): Use `dynamic-library-alist'.
++
++ * term/w32-win.el (dynamic-library-alist):
++ Use instead of `image-library-alist'.
++
++ 2010-10-13 IRIE Shinsuke <irieshinsuke@yahoo.co.jp> (tiny change)
++
++ * subr.el (last): Make it faster. (Bug#7174)
++
++ 2010-10-13 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> (tiny change)
++
++ * Makefile.in (compile-clean): Use `` instead of $(). (Bug#7178)
++
++ 2010-10-12 Chong Yidong <cyd@stupidchicken.com>
++
++ * cus-theme.el (custom-theme--listed-faces): Add cursor face.
++ (describe-theme-1): Extract doc from unloaded themes.
++
++ * custom.el (custom-theme-name-valid-p): Don't list color-themes.
++
++ * themes/tango-theme.el:
++ * themes/tango-dark-theme.el:
++ * themes/wheatgrass-theme.el: New files.
++
++ 2010-10-12 Chong Yidong <cyd@stupidchicken.com>
++
++ * cus-theme.el (describe-theme, customize-themes)
++ (custom-theme-save): New commands.
++ (custom-new-theme-mode-map): Bind C-x C-s.
++ (custom-new-theme-mode): Use custom--initialize-widget-variables.
++ (customize-create-theme): New optional arg THEME.
++ (custom-theme-revert): Use it.
++ (custom-theme-visit-theme): Remove dead code.
++ (custom-theme-merge-theme): Use custom-available-themes.
++ (custom-theme-write): Make interactive.
++ (custom-theme-write): Use custom-theme-name-valid-p.
++ (describe-theme-1, custom-theme-choose-revert)
++ (custom-theme-checkbox-toggle, custom-theme-selections-toggle):
++ New funs.
++ (custom-theme-allow-multiple-selections): New option.
++ (custom-theme-choose-mode): New major mode.
++
++ * custom.el (custom-theme-set-variables): Remove dead code.
++ Obey custom--inhibit-theme-enable.
++ (custom--inhibit-theme-enable): New var.
++ (provide-theme): Obey it.
++ (load-theme): Replace load with manual read/eval, in order to
++ check for correctness. Use custom-theme-name-valid-p.
++ (custom-theme-name-valid-p): New function.
++ (custom-available-themes): Use it.
++
++ * cus-edit.el (custom--initialize-widget-variables): New function.
++ (Custom-mode): Use it.
++
++ * cus-face.el (custom-theme-set-faces): Remove dead code.
++ Obey custom--inhibit-theme-enable.
++
++ * help-mode.el (help-theme-def, help-theme-edit): New buttons.
++
++ 2010-10-12 Juanma Barranquero <lekktu@gmail.com>
++
++ * net/telnet.el (telnet-mode-map): Fix previous change (bug#7193).
++
++ 2010-10-12 Jan Djärv <jan.h.d@swipnet.se>
++
++ * term/ns-win.el (ns-right-alternate-modifier): New defvar.
++ (ns-right-option-modifier): New alias for ns-right-alternate-modifier.
++ (mac-right-option-modifier): New alias for ns-right-option-modifier.
++
++ * cus-start.el (all): ns-right-alternate-modifier is new.
++
++ 2010-10-12 Stefan Monnier <monnier@iro.umontreal.ca>
++
++ * emacs-lisp/lisp.el (lisp-completion-at-point):
++ Use emacs-lisp-mode-syntax-table for the whole function.
++
++ 2010-10-12 David Koppelman <koppel@ece.lsu.edu>
++
++ * hi-lock.el (hi-lock-font-lock-hook): Check font-lock-fontified
++ instead of font-lock-mode before adding keywords.
++ Remove hi-lock-mode off code. Remove inhibit hack.
++ (hi-lock-set-pattern): Only add keywords if font-lock-fontified
++ non-nil; removed hook inhibit hack.
++
++ 2010-10-12 Glenn Morris <rgm@gnu.org>
++
++ * emacs-lisp/shadow.el (find-emacs-lisp-shadows): Rename it...
++ (load-path-shadows-find): ... to this.
++ (list-load-path-shadows): Update for above change.
++
++ * mail/mail-utils.el (mail-mbox-from): Also try return-path.
++
++ 2010-10-11 Katsumi Yamaoka <yamaoka@jpl.org>
++
++ * mail/hashcash.el, net/imap.el, pgg-parse.el, pgg.el:
++ Fix comment for declare-function.
++
++ 2010-10-11 Chong Yidong <cyd@stupidchicken.com>
++
++ * custom.el (custom-fix-face-spec): New function; code moved from
++ custom-face-edit-fix-value.
++ (custom-push-theme): Use it when checking if a face has been
++ changed outside customize.
++ (custom-available-themes): New function.
++ (load-theme): Use it.
++
++ * cus-edit.el (custom-face-edit-fix-value): Use custom-fix-face-spec.
++
++ * custom.el (custom-push-theme): Cleanup (use cond).
++ (disable-theme): Recompute the saved-face property.
++ (custom-theme-recalc-face): Follow face alias before setting prop.
++
++ * image.el (image-checkbox-checked, image-checkbox-unchecked):
++ New variables, containing checkbox images.
++
++ * startup.el (fancy-startup-tail):
++ * wid-edit.el (checkbox): Use them.
++
++ 2010-10-10 Dan Nicolaescu <dann@ics.uci.edu>
++
++ * shell.el (shell-mode-map):
++ * progmodes/modula2.el (m2-mode-map):
++ * progmodes/inf-lisp.el (inferior-lisp-mode-map):
++ * play/mpuz.el (mpuz-mode-map):
++ * play/landmark.el (lm-mode-map):
++ * play/decipher.el (decipher-mode-map):
++ * play/5x5.el (5x5-mode-map):
++ * net/telnet.el (telnet-mode-map):
++ * net/quickurl.el (quickurl-list-mode-map):
++ * net/mairix.el (mairix-searches-mode-map):
++ * net/eudc-hotlist.el (eudc-hotlist-mode-map):
++ * net/dig.el (dig-mode-map):
++ * mail/mspools.el (mspools-mode-map):
++ * hexl.el (hexl-mode-map):
++ * emulation/ws-mode.el (wordstar-C-k-map, wordstar-mode-map)
++ (wordstar-C-o-map, wordstar-C-q-map):
++ * emacs-lisp/edebug.el (edebug-eval-mode-map):
++ * emacs-lisp/chart.el (chart-map):
++ * edmacro.el (edmacro-mode-map):
++ * erc/erc-list.el (erc-list-menu-mode-map):
++ * array.el (array-mode-map): Declare and define in one step.
++
++ * vc/log-view.el (log-view-mode-map): Bind revert-buffer.
++
++ 2010-10-10 Daiki Ueno <ueno@unixuser.org>
++
++ * epa.el (epa-passphrase-callback-function): Display filename
++ passed as the 3rd arg.
++ * epa-file.el (epa-file-passphrase-callback-function):
++ Pass filename to epa-passphrase-callback-function.
++
++ 2010-10-09 Chong Yidong <cyd@stupidchicken.com>
++
++ * cus-edit.el (custom-face-widget-to-spec)
++ (custom-face-get-current-spec, custom-face-state): New functions.
++ (custom-face-set, custom-face-mark-to-save)
++ (custom-face-value-create, custom-face-state-set): Use them.
++
++ * cus-theme.el (custom-theme--listed-faces): New var.
++ (customize-create-theme): Use *Custom Theme* as the buffer name.
++ Set revert-buffer-function. Optional arg BUFFER. Insert all
++ faces listed in custom-theme--listed-faces.
++ (custom-theme-revert): New function.
++ (custom-theme-add-variable, custom-theme-add-face): Insert at the
++ bottom of the list.
++ (custom-theme-write): Prompt for theme name if empty.
++ (custom-theme-write-variables): Use dolist.
++ (custom-theme-write-faces): Handle hidden (collapsed) widgets.
++
++ 2010-10-09 Alan Mackenzie <acm@muc.de>
++
++ Enhance fontification of declarators to take account of the
++ presence/absence of "typedef".
++
++ * cc-engine.el (c-forward-type): New &optional param
++ "brace-block-too".
++ (c-forward-decl-or-cast-1): cdr of return value now indicates the
++ presence of either or both of a "struct"-like keyword and "typedef".
++
++ * cc-fonts.el (c-complex-decl-matchers): Remove the heuristic
++ fontification of declarators which follow a "}".
++ (c-font-lock-declarations): Fontify declarators according to the
++ presence/absence of "typedef".
++
++ * cc-langs.el (c-typedef-kwds c-typedef-key): New lang variable
++ for "typedef".
++ (c-typedef-decl-key): New lang variable built from
++ c-typedef-decl-kwds.
++
++ 2010-10-09 Lars Magne Ingebrigtsen <larsi@gnus.org>
++
++ * ibuffer.el (ibuffer-mode-map): Don't redefine the cursor keys,
++ since that's too annoying. Move the filter groups commands to
++ TAB/backtab.
++
++ * epa.el (epa-passphrase-callback-function): Say what we're
++ querying the password for.
++
++ * ibuffer.el (ibuffer-visit-buffer): To mimick list-buffers
++ behaviour, don't bury the ibuffer buffer when visiting other buffers.
++
++ 2010-10-08 Chong Yidong <cyd@stupidchicken.com>
++
++ * cus-edit.el (custom-commands, custom-buffer-create-internal)
++ (custom-magic-value-create): Pad button tags with spaces.
++ (custom-face-edit): New variable.
++ (custom-face-value-create): Determine whether to use the usual
++ face editor here, instead of using custom-face-selected.
++ Pass face defaults to custom-face-edit widget.
++ (custom-face-selected, custom-display-unselected): Delete widgets.
++ (custom-display-unselected-match): Function removed.
++ (custom-face-set, custom-face-mark-to-save):
++ Accept custom-face-edit widgets as the direct widget child.
++
++ * wid-edit.el (widget--completing-widget): New var.
++ (widget-default-complete): Bind it when doing completion.
++ (widget-string-complete, widget-file-complete): Use it.
++
++ 2010-10-09 Glenn Morris <rgm@gnu.org>
++
++ * calendar/cal-hebrew.el (holiday-hebrew-rosh-hashanah)
++ (holiday-hebrew-passover, holiday-hebrew-tisha-b-av)
++ (holiday-hebrew-misc): Small simplifications.
++
++ * emacs-lisp/authors.el (authors-valid-file-names): Add b2m.c.
++
++ * net/browse-url.el: Don't require thingatpt, term, dired,
++ executable, or w3-auto when compiling.
++ (dired-get-filename, term-char-mode, term-send-down, term-send-string):
++ Declare.
++ (browse-url-text-emacs): Require term.
++
++ 2010-10-08 Andreas Schwab <schwab@linux-m68k.org>
++
++ * net/browse-url.el (browse-url-xdg-open): Remove use of /bin/sh.
++
++ 2010-10-08 Glenn Morris <rgm@gnu.org>
++
++ * emacs-lisp/cl-compat.el, emacs-lisp/lmenu.el: Move to obsolete/.
++
++ * emacs-lisp/shadow.el (lisp-shadow): Change prefix.
++ (shadows-compare-text-p): Make it an obsolete alias for...
++ (load-path-shadows-compare-text): ... new name.
++ (find-emacs-lisp-shadows): Update for above name change.
++ (load-path-shadows-same-file-or-nonexistent): New name for the old
++ shadow-same-file-or-nonexistent.
++
++ 2010-10-08 Chong Yidong <cyd@stupidchicken.com>
++
++ * minibuffer.el (completion--some, completion--do-completion)
++ (minibuffer-complete-and-exit, minibuffer-completion-help)
++ (completion-basic-try-completion)
++ (completion-basic-all-completions)
++ (completion-pcm--find-all-completions): Use lexical-let to
++ avoid some false matches in variable completion (Bug#7056)
++
++ 2010-10-08 Olof Ohlsson Sax <olof.ohlsson.sax@gmail.com> (tiny change)
++
++ * vc-svn.el (vc-svn-merge-news): Use --non-interactive. (Bug#7152)
++
++ 2010-10-08 Leo <sdl.web@gmail.com>
++
++ * dnd.el (dnd-get-local-file-name): If MUST-EXIST is non-nil, only
++ return non-nil if the file exists (Bug#7090).
++
++ 2010-10-08 Stefan Monnier <monnier@iro.umontreal.ca>
++
++ * minibuffer.el (completion--replace):
++ Better preserve markers (bug#7138).
++
++ 2010-10-08 Juanma Barranquero <lekktu@gmail.com>
++
++ * server.el (server-process-filter): Doc fix.
++
++ 2010-10-08 Drew Adams <drew.adams@oracle.com>
++
++ * dired.el (dired-save-positions): Doc fix. (Bug#7119)
++
++ 2010-10-08 Andreas Schwab <schwab@linux-m68k.org>
++
++ * Makefile.in (ELCFILES): Update.
++
++ 2010-10-08 Glenn Morris <rgm@gnu.org>
++
++ * vc/ediff-wind.el (ediff-setup-control-frame):
++ * vc/ediff-ptch.el (ediff-default-backup-extension):
++ * vc/ediff-diff.el (ediff-shell, ediff-diff-options)
++ (ediff-exec-process): Remove system-types emx, windows-95.
++
++ * net/browse-url.el (browse-url-xdg-open): Shell-quote url. (Bug#7166)
++
++ 2010-10-07 Chong Yidong <cyd@stupidchicken.com>
++
++ * cus-edit.el (custom-variable, custom-face): Doc fix.
++ (custom-face-edit): Add value-create attribute.
++ (custom-face-edit-value-create)
++ (custom-face-edit-value-visibility-action): New functions.
++ Hide unused face attributes by default, and add a visibility toggle.
++ (custom-face-edit-deactivate): Show empty values with shadow face.
++ (custom-face-selected): Only use this for face specs with default
++ attributes.
++ (custom-face-value-create): Cleanup.
++
++ * wid-edit.el (widget-checklist-value-create): Use dolist.
++ (widget-checklist-match-find): Make second arg optional.
++
++ 2010-10-07 Glenn Morris <rgm@gnu.org>
++
++ * hilit-chg.el (hilit-chg-get-diff-info, hilit-chg-get-diff-list-hk):
++ Prefix things.
++
++ * emacs-lisp/shadow.el (shadow-font-lock-keywords)
++ (load-path-shadows-mode, list-load-path-shadows): Rename shadow-mode to
++ load-path-shadows-mode, update references.
++ (load-path-shadows-font-lock-keywords, load-path-shadows-find-file):
++ Rename variable and button.
++ (list-load-path-shadows): Update button caller.
++
++ 2010-10-07 Stefan Monnier <monnier@iro.umontreal.ca>
++
++ * emacs-lisp/smie.el (smie-bnf-classify): New function.
++ (smie-bnf-precedence-table): Use it to remember the closers/openers.
++ (smie-merge-prec2s): Handle those new entries.
++ (smie-prec2-levels): Only set precedence to nil for actual
++ openers/closers.
++ * progmodes/octave-mod.el (octave-smie-op-levels): Remove dummy entry
++ that is now unnecessary.
++
++ 2010-10-07 Miles Bader <miles@gnu.org>
++
++ * emacs-lisp/regexp-opt.el (regexp-opt): Add `symbols' mode.
++
+ 2010-10-07 Glenn Morris <rgm@gnu.org>
+
+ * mail/rmail.el (mail-sendmail-delimit-header, mail-header-end)
+ (mail-position-on-field): Remove declarations.
+ (mail-position-on-field): Autoload it.
+ (rmail-retry-failure): Replace use of mail-sendmail-delimit-header
+ and mail-header-end. Don't require sendmail.
+
+ * emacs-lisp/shadow.el (shadow-font-lock-keywords): New variable.
+ (shadow-mode): New mode.
+ (shadow-find-file): New button.
+ (list-load-path-shadows): Use shadow-mode and buttons.
+
+ * iimage.el (iimage-version): Remove.
+ (iimage-mode-image-search-path, iimage-mode-image-regex-alist):
+ Turn into defcustoms.
+ (iimage-mode-map): Give it a doc string.
+
+ * calendar/appt.el (appt-activate): Give a warning rather than an error
+ if there is no diary-file.
+
+ 2010-10-06 Michael Albinus <michael.albinus@gmx.de>
+
- (tramp-set-process-query-on-exit-flag): Removed.
++ * net/tramp-sh.el (tramp-sh-file-name-handler-alist):
++ Use `tramp-handle-find-backup-file-name'.
+
+ 2010-10-06 Glenn Morris <rgm@gnu.org>
+
+ * font-core.el (font-lock-defaults-alist): Remove variable.
+ (font-lock-mode): Doc fix.
+ (font-lock-default-function): Do not consult font-lock-defaults-alist.
+ * font-lock.el (font-lock-refresh-defaults): Doc fix.
+ (font-lock-set-defaults): Doc fix.
+ Do not consult font-lock-defaults-alist.
+
+ * hilit-chg.el (hilit-chg-get-diff-list-hk): Declare `e' for compiler.
+
+ * emacs-lisp/cl.el: No longer provide cl-19.
+
+ 2010-10-05 Michael Albinus <michael.albinus@gmx.de>
+
+ * net/tramp.el (tramp-handle-directory-files-and-attributes)
+ (tramp-handle-file-exists-p, tramp-handle-file-newer-than-file-p):
+ New defuns, taken from tramp-smb.el.
+ (tramp-coding-system-change-eol-conversion)
- * net/tramp-compat.el (top): Do not check for byte-compiler
- objects.
++ (tramp-set-process-query-on-exit-flag): Remove.
+
- * net/tramp-imap.el (tramp-imap-file-name-handler-alist): Use
- `tramp-handle-directory-files-and-attributes',
++ * net/tramp-compat.el (top): Do not check for byte-compiler objects.
+ (tramp-compat-coding-system-change-eol-conversion)
+ (tramp-compat-set-process-query-on-exit-flag): New defuns, taken
+ from tramp.el.
+
+ * net/tramp-gvfs.el:
+ * net/tramp-gw.el: Replace `tramp-set-process-query-on-exit-flag'
+ by `tramp-compat-set-process-query-on-exit-flag'.
+
- (tramp-imap-handle-file-newer-than-file-p): Removed.
++ * net/tramp-imap.el (tramp-imap-file-name-handler-alist):
++ Use `tramp-handle-directory-files-and-attributes',
+ `tramp-handle-file-exists-p' and
+ `tramp-handle-file-newer-than-file-p'.
+ (tramp-imap-handle-file-exists-p)
+ (tramp-imap-handle-file-executable-p)
+ (tramp-imap-handle-file-readable-p)
+ (tramp-imap-handle-directory-files-and-attributes)
- * net/tramp-smb.el (tramp-smb-file-name-handler-alist): Use
- `tramp-handle-directory-files-and-attributes',
++ (tramp-imap-handle-file-newer-than-file-p): Remove.
+
+ * net/tramp-sh.el: Replace `tramp-set-process-query-on-exit-flag'
+ by `tramp-compat-set-process-query-on-exit-flag' and
+ `tramp-coding-system-change-eol-conversion' by
+ `tramp-compat-coding-system-change-eol-conversion'.
+
- (tramp-smb-handle-file-newer-than-file-p): Removed.
- (tramp-smb-maybe-open-connection): Replace
- `tramp-set-process-query-on-exit-flag' by
++ * net/tramp-smb.el (tramp-smb-file-name-handler-alist):
++ Use `tramp-handle-directory-files-and-attributes',
+ `tramp-handle-file-exists-p' and
+ `tramp-handle-file-newer-than-file-p'.
+ (tramp-smb-handle-directory-files-and-attributes)
+ (tramp-smb-handle-file-exists-p)
- (tramp-make-tramp-temp-file): Moved from tramp-sh.el.
++ (tramp-smb-handle-file-newer-than-file-p): Remove.
++ (tramp-smb-maybe-open-connection):
++ Replace `tramp-set-process-query-on-exit-flag' by
+ `tramp-compat-set-process-query-on-exit-flag'.
+
+ 2010-10-05 Glenn Morris <rgm@gnu.org>
+
+ * obsolete/rnews.el, obsolete/rnewspost.el: Remove files.
+
+ 2010-10-04 Michael Albinus <michael.albinus@gmx.de>
+
+ Continue reorganization of load dependencies. (Bug#7156)
+
+ * net/tramp.el (tramp-handle-file-local-copy-hook)
+ (tramp-delete-temp-file-function): Move down.
+ (tramp-exists-file-name-handler): Move up.
+ (tramp-register-file-name-handlers): Simplify autoload.
+ (tramp-handle-write-region-hook, tramp-handle-directory-file-name)
+ (tramp-handle-directory-files, tramp-handle-dired-uncache)
+ (tramp-handle-file-modes, tramp-handle-file-name-as-directory)
+ (tramp-handle-file-name-completion)
+ (tramp-handle-file-name-directory)
+ (tramp-handle-file-name-nondirectory, tramp-handle-file-regular-p)
+ (tramp-handle-file-remote-p, tramp-handle-file-symlink-p)
+ (tramp-handle-find-backup-file-name)
+ (tramp-handle-insert-file-contents, tramp-handle-load)
+ (tramp-handle-substitute-in-file-name)
+ (tramp-handle-unhandled-file-name-directory)
+ (tramp-mode-string-to-int, tramp-local-host-p)
- `gnutls-negotiate' (formerly `starttls-negotiate'). Remove
- trivial wrapper `starttls-open-stream'.
++ (tramp-make-tramp-temp-file): Move from tramp-sh.el.
+
+ * net/tramp-gvfs.el (top):
+ * net/tramp-smb.el (top): Do not require 'tramp-sh.
+
+ * net/tramp-sh.el (all): Move several objects to tramp.el, see
+ there. Rename `tramp-handle-*' to `tramp-sh-handle-*'.
+
+ 2010-10-04 Glenn Morris <rgm@gnu.org>
+
+ * calendar/appt.el (appt-add): Ensure reminders are enabled.
+ (appt-activate): Give status messages.
+
+ 2010-10-03 Teodor Zlatanov <tzz@lifelogs.com>
+
+ * net/gnutls.el: Improve docs. Remove starttls and ssl emulation.
+ Provide only `open-gnutls-stream' (formerly `open-ssl-stream') and
- `gnutls-boot'. Make TYPE the only required parameter. Allow
- TRUSTFILES and KEYFILES to be lists.
++ `gnutls-negotiate' (formerly `starttls-negotiate').
++ Remove trivial wrapper `starttls-open-stream'.
+
+ 2010-10-03 Dan Nicolaescu <dann@ics.uci.edu>
+
+ Make 'g' (AKA revert-buffer) rerun the VC log, log-incoming and
+ log-outgoing commands.
+ * vc/vc.el (vc-log-internal-common): Add a new argument and use it
+ to create a buffer local revert-buffer-function variable.
+ (vc-print-log-internal, vc-log-incoming, vc-log-outgoing): Pass a
+ revert-buffer-function lambda.
+
+ 2010-10-03 Teodor Zlatanov <tzz@lifelogs.com>
+
+ * net/gnutls.el (starttls-negotiate): Use the plist interface to
- * emacs-lisp/bytecomp.el (byte-compile-from-buffer): Remove
- obsolete use of binary-overwrite-mode (Bug#7001).
++ `gnutls-boot'. Make TYPE the only required parameter.
++ Allow TRUSTFILES and KEYFILES to be lists.
+ (open-ssl-stream): Use it.
+
+ 2010-10-03 Glenn Morris <rgm@gnu.org>
+
+ * subr.el (directory-sep-char): Remove obsolete variable.
+ * net/tramp-compat.el: Don't mess about with the byte-compiler unless
+ it is "necessary".
+
+ * vc/vc-hooks.el (vc-header-alist): Remove obsolete variable.
+ * vc/vc.el (vc-static-header-alist): Doc fix.
+ * vc/vc-cvs.el (vc-cvs-header):
+ * vc/vc-rcs.el (vc-rcs-header):
+ * vc/vc-sccs.el (vc-sccs-header):
+ * vc/vc-svn.el (vc-svn-header): Do not consult vc-header-alist.
+ * obsolete/vc-mcvs.el (vc-mcvs-header):
+ * progmodes/cperl-mode.el (cperl-mode): Only set vc-header-alist
+ on XEmacs.
+
+ 2010-10-03 Chong Yidong <cyd@stupidchicken.com>
+
- * server.el (server-process-filter, server-return-error): Give
- emacsclient time to shut down after receiving an error string.
++ * emacs-lisp/bytecomp.el (byte-compile-from-buffer):
++ Remove obsolete use of binary-overwrite-mode (Bug#7001).
+
+ 2010-10-03 Glenn Morris <rgm@gnu.org>
+
+ * obsolete/x-menu.el: Remove file, obsolete since 21.1
+
+ * textmodes/rst.el (rst-font-lock-keywords-function):
+ Drop Emacs 20 code.
+
+ * textmodes/artist.el (artist-replace-char): Drop Emacs 20 code.
+
+ * printing.el: Drop Emacs 20 code.
+
+ * calendar/appt.el (appt-delete): Don't autoload it (you can't use it
+ without having used appt.el already).
+
+ * subr.el (make-local-hook): Remove function obsolete since 21.1.
+ * progmodes/cc-mode.el (make-local-hook): Don't do cc-bytecomp stuff.
+ (c-basic-common-init, c-font-lock-init): Only call make-local-hook on
+ XEmacs.
+ * progmodes/cc-styles.el (make-local-hook): Don't do cc-bytecomp stuff.
+ (c-make-styles-buffer-local): Only call make-local-hook on XEmacs.
+
+ * ps-def.el (leading-code-private-22, charset-bytes, charset-id)
+ (charset-width, find-charset-region, chars-in-region, forward-point)
+ (encode-coding-string, coding-system-p, ccl-execute-on-string)
+ (define-ccl-program, multibyte-string-p, string-make-multibyte):
+ Remove compatibility cruft (none of these are used by ps*.el).
+
+ 2010-10-03 Kevin Rodgers <kevin.d.rodgers@gmail.com>
+
+ * subr.el (booleanp): Return t instead of a list (Bug#7086).
+
+ 2010-10-03 Chong Yidong <cyd@stupidchicken.com>
+
- * time.el (display-time-file-nonempty-p): Use
- `remote-file-name-inhibit-cache'.
++ * server.el (server-process-filter, server-return-error):
++ Give emacsclient time to shut down after receiving an error string.
+
+ 2010-10-02 Michael Albinus <michael.albinus@gmx.de>
+
+ * files.el (remote-file-name-inhibit-cache): New defcustom.
+
- * net/tramp.el (tramp-completion-reread-directory-timeout): Fix
- docstring.
++ * time.el (display-time-file-nonempty-p):
++ Use `remote-file-name-inhibit-cache'.
+
- (tramp-handle-vc-registered): Use
- `remote-file-name-inhibit-cache'.
- (tramp-open-connection-setup-interactive-shell): Call
- `tramp-cleanup-connection' directly.
++ * net/tramp.el (tramp-completion-reread-directory-timeout):
++ Fix docstring.
+
+ * net/tramp-cache.el (tramp-cache-inhibit-cache): Remove.
+ (tramp-get-file-property): Replace `tramp-cache-inhibit-cache' by
+ `remote-file-name-inhibit-cache'. Check also for an integer
+ value. Add/increase counter when `tramp-verbose' >= 10.
+ (tramp-set-file-property): Add/increase counter when
+ `tramp-verbose' >= 10.
+
+ * net/tramp-cmds.el (tramp-cleanup-all-connections)
+ (tramp-cleanup-all-buffers): Set tramp-autoload cookie.
+ (tramp-bug): Set tramp-autoload cookie. Report all interned
+ tramp-* variables. Report also `remote-file-name-inhibit-cache'.
+ (tramp-reporter-dump-variable): Fix docstring. Mask non-7bit
+ characters only in strings.
+
+ * net/tramp-compat.el (remote-file-name-inhibit-cache): Define due
+ to backward compatibility.
+
+ * net/tramp-sh.el (tramp-handle-verify-visited-file-modtime)
+ (tramp-handle-file-name-all-completions)
++ (tramp-handle-vc-registered): Use `remote-file-name-inhibit-cache'.
++ (tramp-open-connection-setup-interactive-shell):
++ Call `tramp-cleanup-connection' directly.
+
+ 2010-10-02 Glenn Morris <rgm@gnu.org>
+
+ * emacs-lisp/checkdoc.el (checkdoc-minor-keymap): Remove obsolete alias.
+
+ * subr.el (char-bytes): Remove obsolete function.
+
+ * isearch.el (isearch-return-char): Remove obsolete function.
+
+ * mouse.el: No longer provide mldrag.
+ (mldrag-drag-mode-line, mldrag-drag-vertical-line):
+ Remove obsolete aliases.
+
+ * comint.el (comint-kill-output): Remove obsolete alias.
+
+ * composite.el (decompose-composite-char): Remove obsolete function.
+ * ps-def.el (decompose-composite-char): Remove unused function.
+
+ * iswitchb.el (iswitchb-default-keybindings): Remove obsolete function.
+
+ * outline.el (outline-visible): Remove obsolete function.
+
+ * term/pc-win.el (x-frob-font-slant, x-frob-font-weight):
+ * faces.el (internal-find-face, internal-get-face)
+ (frame-update-faces, frame-update-face-colors)
+ (x-frob-font-weight, x-frob-font-slant)
+ (internal-frob-font-weight, internal-frob-font-slant)
+ (x-make-font-bold, x-make-font-demibold, x-make-font-unbold)
+ (x-make-font-italic, x-make-font-oblique, x-make-font-unitalic)
+ (x-make-font-bold-italic): Remove functions and aliases, obsolete
+ since Emacs 21.1.
+ * emulation/viper-util.el (viper-get-face):
+ * obsolete/lucid.el (find-face, get-face): Use facep.
+ * vc/ediff-init.el (ediff-valid-color-p, ediff-get-face):
+ Remove unused functions.
+ * vc/ediff-util.el (ediff-submit-report): Doc fix.
+
+ * emacs-lisp/bytecomp.el (byte-compile-file): Use kill-emacs-hook to
+ delete tempfile if interrupted during compilation.
+
+ 2010-10-01 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * net/tls.el (tls-starttls-switches): Give up on using starttls with
+ gnutls-cli.
+ (tls-program): Add --insecure to be consistent with the defaults from
+ openssl s_client. Now all three commands are insecure.
+
+ 2010-10-01 Eli Zaretskii <eliz@gnu.org>
+
+ * makefile.w32-in (DEST, TAGS, TAGS-LISP, TAGS-nmake)
+ (TAGS-LISP-nmake, TAGS-gmake, TAGS-LISP-gmake, TAGS-SH)
+ (TAGS-LISP-SH, TAGS-CMD, TAGS-LISP-CMD): New targets.
+
+ 2010-10-01 Glenn Morris <rgm@gnu.org>
+
+ * obsolete/sc.el: Remove file.
+
+ * files.el (temporary-file-directory): On darwin, also try
+ DARWIN_USER_TEMP_DIR (see discussion in bug#7135).
+
+ 2010-10-01 Juanma Barranquero <lekktu@gmail.com>
+
+ * server.el (server-start): Revert part of 2010-09-30T02:53:26Z!lekktu@gmail.com.
+ Let's not break compatibility gratuitously, shall we?
+
+ 2010-09-30 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * net/tls.el (tls-starttls-switches): New variable.
+ (tls-find-starttls-argument): Use it.
+ (open-tls-stream): Ditto.
+
+ * net/netrc.el (netrc-credentials): Return the value of the "default"
+ entry.
+ (netrc-machine): Ditto.
+
+ 2010-09-30 Eli Zaretskii <eliz@gnu.org>
+
+ * vc/vc-hooks.el (vc-default-mode-line-string): Doc fix.
+
+ 2010-09-30 Juanma Barranquero <lekktu@gmail.com>
+
+ * server.el (server-start): Don't write pid to the authentication file.
+ (server-create-tty-frame): Don't send pid.
+ (server-process-filter): Send pid at the start of every connection.
+
+ 2010-09-30 Glenn Morris <rgm@gnu.org>
+
+ * calendar/diary-lib.el (view-diary-entries, list-diary-entries)
+ (show-all-diary-entries): Remove obsolete function aliases.
+
+ * calendar/appt.el (appt-issue-message, appt-visible, appt-msg-window):
+ Remove options, obsolete since 22.1.
+ (appt-display-format, appt-display-message): Remove
+ backwards-compatibility code.
+ (appt-check): No longer check appt-issue-message.
+ (appt-make-list): No longer autoload it. Doc fix. No longer
+ activate the package.
+
+ 2010-09-29 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * net/gnutls.el (starttls-negotiate): Loop a lot longer.
+ (starttls-negotiate): Just call boot, and let the handshake be
+ triggered from the read loop.
+
+ 2010-09-29 Glenn Morris <rgm@gnu.org>
+
+ * calendar/diary-lib.el (diary-list-entries): Use temp buffers when
+ not displaying the diary.
+ (diary-add-to-list): If no buffer-file-name, fall back to diary-file.
+ * calendar/appt.el (appt-check): No longer need to kill diary.
+
+ * calendar/diary-lib.el (diary-list-entries): Move the
+ "Preparing..." message entirely here.
+ (diary-simple-display, diary-fancy-display): Move "Preparing..."
+ messages to diary-list-entries.
+ (diary-include-other-diary-files): Use LIST-ONLY rather than setting
+ diary-display-function.
+
+ * calendar/diary-lib.el (diary-include-other-diary-files):
+ Trap some recursive includes.
+
+ * calendar/appt.el (appt-activate): Check diary file.
+
+ 2010-09-29 Katsumi Yamaoka <yamaoka@jpl.org>
+
+ * pgg.el (pgg-run-at-time-1): Define it for XEmacs only; fix if/else
+ construction.
+
+ * calendar/time-date.el: No need to require cl for Emacs 21.
+
+ 2010-09-28 Glenn Morris <rgm@gnu.org>
+
+ * calendar/appt.el (appt-check): Minor simplification.
+
+ 2010-09-28 Katsumi Yamaoka <yamaoka@jpl.org>
+
+ * mail/sendmail.el (mail-citation-prefix-regexp): Remove "}" from
+ citation prefix.
+
+ 2010-09-27 Andreas Schwab <schwab@linux-m68k.org>
+
+ * emacs-lisp/byte-opt.el (byte-optimize-form-code-walker):
+ Avoid infinite recursion on erroneous lambda form. (Bug#7114)
+
+ 2010-09-27 Kenichi Handa <handa@m17n.org>
+
+ * tar-mode.el (tar-header-block-tokenize): Decode filenames in
+ "ustar" format.
+
+ 2010-09-27 Kenichi Handa <handa@m17n.org>
+
+ * international/mule.el (define-coding-system): Docstring fixed.
+
+ * international/mule-diag.el (describe-character-set): Use princ
+ with proper print-length and print-level instead of insert.
+
+ 2010-09-27 Juanma Barranquero <lekktu@gmail.com>
+
+ * window.el (walk-windows): Doc fix (bug#7105).
+
+ 2010-09-27 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * emacs-lisp/float-sup.el (e): Remove.
+
+ 2010-09-27 Teodor Zlatanov <tzz@lifelogs.com>
+
+ * net/gnutls.el (gnutls, gnutls-log-level): Add group and custom
+ variable.
+ (starttls-negotiate): Use it.
+
+ 2010-09-27 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * net/gnutls.el (starttls-negotiate): Stop looping when we get a t
+ back.
+
+ 2010-09-26 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * emacs-lisp/pcase.el (pcase-let*, pcase-let): plet -> pcase-let.
+
+ 2010-09-26 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * net/gnutls.el (starttls-negotiate): Avoid the cl.el decf function.
+
+ * net/netrc.el (netrc-store-data): New function.
+
+ 2010-09-26 Teodor Zlatanov <tzz@lifelogs.com>
+
+ * net/gnutls.el: GnuTLS glue code to set up a connection.
+
+ 2010-09-25 Julien Danjou <julien@danjou.info>
+
+ * notifications.el: Call dbus-register-signal only if it is bound.
+
+ 2010-09-25 Glenn Morris <rgm@gnu.org>
+
+ * eshell/em-alias.el, eshell/em-banner.el, eshell/em-basic.el:
+ * eshell/em-cmpl.el, eshell/em-dirs.el, eshell/em-glob.el:
+ * eshell/em-hist.el, eshell/em-ls.el, eshell/em-pred.el:
+ * eshell/em-prompt.el, eshell/em-rebind.el, eshell/em-script.el:
+ * eshell/em-smart.el, eshell/em-term.el, eshell/em-unix.el:
+ * eshell/esh-cmd.el, eshell/esh-ext.el, eshell/esh-io.el:
+ * eshell/esh-mode.el, eshell/esh-proc.el, eshell/esh-test.el:
+ * eshell/esh-util.el, eshell/esh-var.el:
+ Remove leading `*' from docs of faces and defcustoms.
+
+ 2010-09-25 Ulrich Mueller <ulm@gentoo.org>
+
+ * eshell/em-ls.el (eshell-ls-archive-regexp):
+ * eshell/esh-util.el (eshell-tar-regexp):
+ * ibuffer.el (ibuffer-compressed-file-name-regexp):
+ * info.el (Info-suffix-list):
+ * international/mule.el (auto-coding-alist):
+ * woman.el (woman-file-regexp, woman-file-compression-regexp):
+ * progmodes/etags.el (tags-compression-info-list):
+ Support xz compression.
+
+ 2010-09-25 Chong Yidong <cyd@stupidchicken.com>
+
+ * files.el (get-free-disk-space): Don't assume the "df" output
+ columns line up (Bug#6995).
+
+ 2010-09-25 Juanma Barranquero <lekktu@gmail.com>
+
+ * finder.el (finder-unknown-keywords):
+ * progmodes/gdb-mi.el (gdb-jsonify-buffer, gdb-running-threads-count):
+ * progmodes/etags.el (tags-table-including): Fix typos in docstrings.
+
+ 2010-09-25 Juanma Barranquero <lekktu@gmail.com>
+
+ * server.el (server-start): Revert part of 2010-08-08 change. Using
+ address 127.0.0.1 for local host is now done in Fmake_network_process.
+
+ 2010-09-24 Glenn Morris <rgm@gnu.org>
+
+ * image-mode.el, progmodes/compile.el, progmodes/gud.el:
+ * progmodes/mixal-mode.el, textmodes/bibtex-style.el:
+ * textmodes/css-mode.el, textmodes/dns-mode.el:
+ Move autoloaded auto-mode-alist entries to files.el.
+ * files.el (auto-mode-alist): Move entries here.
+
+ 2010-09-23 Glenn Morris <rgm@gnu.org>
+
+ * isearch.el (isearch-lazy-highlight-cleanup)
+ (isearch-lazy-highlight-initial-delay)
+ (isearch-lazy-highlight-interval)
+ (isearch-lazy-highlight-max-at-a-time, isearch-lazy-highlight-face):
+ * net/net-utils.el (ipconfig-program-options):
+ Move aliases to options before the associated definitions.
+
+ 2010-09-23 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * newcomment.el (comment-normalize-vars): Better test validity of
+ comment-end-skip.
+
+ 2010-09-23 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * emacs-lisp/float-sup.el (float-pi): New name for `pi'.
+ (float-e): New name for `e'.
+ (degrees-to-radians, radians-to-degrees):
+ * calendar/solar.el (solar-longitude):
+ * calculator.el (calculator-registers, calculator-funcall):
+ * textmodes/artist.el (artist-spray-random-points):
+ * play/bubbles.el (bubbles--initialize-images): Use new names.
+
+ 2010-09-23 Eric M. Ludlam <zappo@gnu.org>
+
+ Update to CEDET 1.0's version of EIEIO.
+
+ * emacs-lisp/eieio.el (eieio-specialized-key-to-generic-key):
+ New function.
+ (eieio-defmethod, eieio-generic-form, eieio-generic-call): Use it.
+ (eieio-default-eval-maybe): Eval val instead of unquoting only.
+ (class-precedence-list): If class is nil, return nil.
+ (eieio-generic-call): If class of first input arg is nil, don't
+ look up static methods, and do check for primary methods.
+ (initialize-instance): See if the default needs to be evaluated
+ during the constructor.
+ (eieio-perform-slot-validation-for-default): Don't do the check
+ for values that will eventually be evaluated.
+ (eieio-eval-default-p): New function.
+ (eieio-default-eval-maybe): Use it.
+
+ 2010-09-23 Jan Moringen <jan.moringen@uni-bielefeld.de>
+
+ * emacs-lisp/eieio.el (eieio-defclass): Allow :c3
+ method-invocation-order.
+ (eieio-c3-candidate, eieio-c3-merge-lists): New functions.
+ (eieio-class-precedence-dfs): Compute class precedence list using
+ dfs algorithm.
+ (eieio-class-precedence-bfs): Compute class precedence list using
+ bfs algorithm.
+ (eieio-class-precedence-c3): Compute class precedence list using
+ c3 algorithm.
+ (class-precedence-list): New function.
+ (eieiomt-method-list, eieiomt-sym-optimize): Use it.
+ (inconsistent-class-hierarchy): New error symbol.
+ (call-next-method): Stow the replacement argument list for future
+ call-next-method invocations.
+
+ 2010-09-23 Glenn Morris <rgm@gnu.org>
+
+ * calendar/appt.el (appt-check): If not displaying the diary,
+ use (diary 1) to only get the entries we need.
+ (appt-make-list): Sort diary-list-entries, if we cannot guarantee
+ that it is in day order. (Bug#7019)
+
+ * calendar/appt.el (appt-check): Rather than showing the diary,
+ just turn off invisible display, and only if needed.
+
+ * calendar/diary-lib.el (diary-list-entries): Doc fix. (Bug#7019)
+
+ 2010-09-23 Glenn Morris <rgm@gnu.org>
+
+ * emacs-lisp/bytecomp.el (byte-compile-file-form-defvar):
+ (byte-compile-defvar, byte-compile-cl-warn):
+ Start warnings with lower-case, like the majority.
+
+ * files.el (auto-mode-alist): Add .xa, .xw, .xsw for ld-script-mode.
+
+ * files.el (auto-mode-alist): Prefer C-mode for .xs. (Bug#7071)
+
+ * progmodes/ld-script.el (auto-mode-alist): Move to files.el.
+ * files.el (auto-mode-alist): Move ld-script entries here, further down
+ the list.
+
+ * vc/add-log.el: Don't require timezone when compiling.
+ (timezone-make-date-sortable): Autoload it.
+ (change-log-sortable-date-at): Don't require timezone.
+ Use `ignore-errors'.
+
+ * comint.el (comint-use-prompt-regexp-instead-of-fields):
+ Move alias before definition, so it does not need autoloading.
+
+ * emulation/crisp.el, emulation/cua-base.el, emulation/edt.el:
+ * emulation/pc-select.el, emulation/vip.el, international/iso-ascii.el:
+ * international/kkc.el, international/ogonek.el, mail/feedmail.el:
+ * net/browse-url.el, net/eudc-vars.el, net/net-utils.el:
+ * net/rcompile.el, net/rlogin.el, textmodes/enriched.el:
+ * textmodes/makeinfo.el, textmodes/page-ext.el, textmodes/picture.el:
+ * textmodes/refer.el, textmodes/spell.el, textmodes/table.el:
+ * textmodes/tex-mode.el, textmodes/two-column.el:
+ Remove leading `*' from docs of defcustoms etc.
+
+ 2010-09-23 Teodor Zlatanov <tzz@lifelogs.com>
+
+ * net/netrc.el (netrc-parse): Remove encrypt.el mentions.
+
+ 2010-09-22 Dan Christensen <jdc@uwo.ca>
+
+ * calendar/time-date.el (date-to-time): Try using parse-time-string
+ first before using the slower timezone-make-date-arpa-standard.
+
+ 2010-09-22 Katsumi Yamaoka <yamaoka@jpl.org>
+
+ * calendar/time-date.el (format-seconds): Comment fix.
+
+ 2010-09-22 Glenn Morris <rgm@gnu.org>
+
+ * emacs-lisp/package.el (package-menu-mode): `revert-buffer-function'
+ is not automatically buffer-local.
+
+ 2010-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * emacs-lisp/smie.el (smie-debug--describe-cycle): Fix typo.
+ (smie-indent-comment): Be more careful with comment-start-skip.
+ (smie-indent-comment-close, smie-indent-comment-inside): New funs.
+ (smie-indent-functions): Use them.
+
+ 2010-09-21 Michael Albinus <michael.albinus@gmx.de>
+
+ * net/ange-ftp.el (ange-ftp-skip-msgs): Add "^504 ..." message.
+
+ 2010-09-21 Jan Djärv <jan.h.d@swipnet.se>
+
+ * menu-bar.el (menu-bar-set-tool-bar-position): customize-set-variable
+ tool-bar-position. Don't modify frame parameters here.
+ (menu-bar-options-save): Add tool-bar-position.
+
+ * tool-bar.el (tool-bar-position): New defcustom (Bug#7049).
+
+ 2010-09-20 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * textmodes/reftex-parse.el (reftex-what-macro)
+ (reftex-context-substring): Let-bind forward-sexp-function to nil
+ since we don't need/want to treat \begin...\end as a block (bug#7053).
+
+ * emacs-lisp/lisp.el (up-list): Don't do nothing silently.
+
+ * simple.el (blink-matching-open): Use syntax-class.
+
+ * progmodes/pascal.el (pascal-mode): Use define-derived-mode.
+ Set invisibility spec for pascal's outline mode.
+ (pascal-outline-change): Clean up calling convention.
+ (pascal-show-all, pascal-hide-other-defuns): Update callers.
+
+ * progmodes/prolog.el (prolog-smie-forward-token)
+ (prolog-smie-backward-token): New functions.
+ (prolog-mode-variables): Use them to parse "!," correctly.
+ Set up smie-blink-matching for ".".
+
+ * textmodes/ispell.el (ispell-start, ispell-end): Rename from `start'
+ and `end'.
+ (ispell-region, ispell-process-line): Update users.
+
+ * textmodes/reftex-parse.el (reftex-what-macro): Don't hardcode
+ point-min==1.
+
+ * textmodes/ispell.el: Fix commenting convention.
+ (ispell-parse-output): Simplify, use push.
+ (ispell-region): Use match-string-no-properties.
+ (ispell-begin-skip-region-regexp): Use mapconcat to simplify.
+ (ispell-minor-mode): Use define-minor-mode.
+ (ispell-message): Remove unused var `skip-regexp'.
+ (ispell-add-per-file-word-list): Use dynamic let-binding.
+ Try and use the proper comment marker.
+
+ * mail/sendmail.el: Fix commenting convention.
+ (sendmail-send-it): Use line-beginning-position.
+
+ * help-fns.el (describe-variable): Add original value, if applicable.
+
+ 2010-09-20 Juanma Barranquero <lekktu@gmail.com>
+
+ * subr.el (y-or-n-p): Remove leftover code from 2010-09-17T13:30:30Z!monnier@iro.umontreal.ca.
+
+ * emacs-lisp/smie.el (smie-indent--hanging-p): Use `smie-indent--bolp'.
+
+ 2010-09-19 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * emacs-lisp/smie.el (smie-bnf-precedence-table): Improve error message.
+ (smie-debug--prec2-cycle, smie-debug--describe-cycle): New functions.
+ (smie-prec2-levels): Use them to better diagnose precedence cycles.
+ (smie-blink-matching-check): Don't signal a mismatch if car is t.
+ (smie-blink-matching-open): Rewrite to remove assumptions, so that
+ something like "." can also be a closer.
+ (smie--associative-p, smie-indent--hanging-p, smie-indent--bolp)
+ (smie-indent--offset, smie-indent--offset-rule, smie-indent--column):
+ Rename internal functions to use "--". Update callers.
+
+ * frame.el (make-frame-names-alist): Don't list frames on other displays.
+
+ * fringe.el (fringe-styles): New var.
+ (fringe-mode, fringe-query-style): Use it.
+
+ 2010-09-18 Michael R. Mauger <mmaug@yahoo.com>
+
+ * progmodes/sql.el: Version 2.8
+ (sql-login-params): Update widget structure; changes still needed.
+ (sql-product-alist): Add :list-all and :list-table features for
+ SQLite, Postgres and MySQL products.
+ (sql-redirect): Handle default value.
+ (sql-execute, sql-execute-feature): New functions.
+ (sql-read-table-name): New function.
+ (sql-list-all, sql-list-table): New functions. User API.
+ (sql-mode-map, sql-interactive-mode-map): Add key definitions
+ for above functions.
+ (sql-mode-menu, sql-interactive-mode-menu): Add menu definitions
+ for above functions.
+ (sql-postgres-login-params): Add user and database defaults.
+ (sql-buffer-live-p): Bug fix.
+ (sql-product-history): New variable.
+ (sql-read-product): New function. Use it.
+ (sql-set-product, sql-product-interactive): Use it.
+ (sql-connection-history): New variable.
+ (sql-read-connection): New function. Use it.
+ (sql-connect): New function.
+ (sql-for-each-login): Redesign function interface.
+ (sql-make-alternate-buffer-name, sql-save-connection): Use it.
+ (sql-get-login-ext, sql-get-login): Use it. Handle default values.
+ (sql-comint): Check for program. Existing live buffer.
+ (sql-comint-postgres): Add port parameter.
+
+ 2010-09-19 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * emacs-lisp/warnings.el: Fix commenting convention.
+ (display-warning): Use special mode and make the buffer read-only.
+
+ 2010-09-18 Jay Belanger <jay.p.belanger@gmail.com>
+
+ * calc/calc-prog.el (calc-read-parse-table-part): Don't "fix" the
+ empty string when it follows a repeated or optional pattern.
+
+ 2010-09-18 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * indent.el (indent-according-to-mode): Apply syntax-propertize.
+ (indent-region): Use indent-according-to-mode.
+
+ 2010-09-18 Eli Zaretskii <eliz@gnu.org>
+
+ * fringe.el (fringe-mode): Doc fix.
+
+ 2010-09-14 Kan-Ru Chen <kanru@kanru.info> (tiny change)
+
+ * textmodes/nroff-mode.el (nroff-view): Kill old buffer before
+ refreshing the preview buffer.
+
+ 2010-09-18 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * textmodes/tex-mode.el (tex-syntax-propertize-rules)
+ (latex-syntax-propertize-rules): New consts; replace
+ tex-font-lock-syntactic-keywords.
+ (tex-env-mark, latex-env-before-change): New functions.
+ (latex-electric-env-pair-mode): New minor mode.
+ (tex-font-lock-verb): Change arguments; do move point.
+ (tex-font-lock-syntactic-face-function): Adjust to new verbatim
+ representation as a form of comment.
+ (tex-font-lock-keywords-1): Remove workaround, now unneeded.
+ (doctex-syntax-propertize-rules): New const; replaces
+ doctex-font-lock-syntactic-keywords.
+ (tex-common-initialization, doctex-mode): Use syntax-propertize-rules.
+
+ * progmodes/fortran.el (fortran--font-lock-syntactic-keywords): Remove.
+ (fortran-make-syntax-propertize-function): New function; replaces
+ fortran-font-lock-syntactic-keywords.
+ (fortran-mode): Use it.
+ (fortran-line-length): Use it. Improve interactive spec.
+
+ * emacs-lisp/syntax.el (syntax-propertize-precompile-rules): New macro.
+ (syntax-propertize-rules): Add var-ref case. Fix offset computation
+ when adding surrounding \(..\).
+
+ * progmodes/js.el (js-mode): Fix last change (bug#7054).
+
+ 2010-09-17 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * obsolete/old-whitespace.el (whitespace-rescan-files-in-buffers):
+ Use with-current-buffer.
+
+ * isearch.el (isearch-face): Rename from `isearch'.
+ (isearch-highlight): Use new name.
+
+ 2010-09-17 Eli Zaretskii <eliz@gnu.org>
+
+ * fringe.el (fringe-mode, fringe-query-style): Use 4 pixels, not
+ 5, for `half' width fringes. (Bug#6933)
+
+ 2010-09-17 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * emacs-lisp/bytecomp.el (byte-compile-file-form-defvar)
+ (byte-compile-defvar): "foo/bar" does not lack a prefix.
+
+ * subr.el (y-or-n-p): Add the "(y or n)" that was lost somehow.
+
+ 2010-09-17 Stephen Berman <stephen.berman@gmx.net>
+
+ * dframe.el (dframe-reposition-frame-emacs): Use tool-bar-pixel-width
+ in calculating new frame position. Add more space between new and
+ parent on the left (Bug#7048).
+
+ 2010-09-17 Michael Albinus <michael.albinus@gmx.de>
+
+ * net/tramp-compat.el (tramp-compat-with-temp-message): Make it a
+ defmacro.
+
+ 2010-09-16 Chong Yidong <cyd@stupidchicken.com>
+
+ * mail/sendmail.el: Add "*unsent mail*" to same-window-buffer-names.
+
+ * term/x-win.el (x-cut-buffer-or-selection-value): Define as
+ obsolete alias for x-selection-value.
+
+ * ido.el (ido-make-buffer-list): Fix error in 2010-08-22 merge.
+
+ 2010-09-16 Michael Albinus <michael.albinus@gmx.de>
+
+ * net/tramp-cmds.el (tramp-cleanup-connection): Set tramp-autoload
+ cookie.
+
+ 2010-09-15 Michael Albinus <michael.albinus@gmx.de>
+
+ * net/tramp-compat.el (tramp-compat-with-temp-message)
+ (tramp-compat-font-lock-add-keywords, tramp-compat-process-get)
+ (tramp-compat-process-put): New defuns.
+
+ * net/tramp.el (top):
+ * net/tramp-gvfs.el (top):
+ * net/tramp-cache.el (top): Use `tramp-compat-font-lock-add-keywords'.
+
+ * net/tramp.el (tramp-progress-reporter-update):
+ Use `tramp-compat-funcall'.
+
+ * net/tramp.el (tramp-process-actions):
+ * net/tramp-gvfs.el (tramp-handle-vc-registered):
+ * net/tramp-sh.el (tramp-gvfs-handler-askquestion)
+ (tramp-get-remote-stat, tramp-get-remote-readlink):
+ Use `tramp-compat-with-temp-message'.
+
+ * net/tramp-sh.el (top): Require 'cl.
+ (tramp-handle-start-file-process): Use `tramp-compat-process-get'.
+ (tramp-open-connection-setup-interactive-shell):
+ Use `tramp-compat-process-put'.
+
+ 2010-09-15 Alan Mackenzie <acm@muc.de>
+
+ * progmodes/cc-engine.el (c-forward-<>-arglist-recur): Correct the
+ indentation.
+ (c-forward-<>-arglist-recur): Fix an infinite recursion.
+
+ 2010-09-15 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * emacs-lisp/bytecomp.el (byte-compile-warning-types): New type
+ `lexical' for warnings related to lexical scoping.
+ (byte-compile-file-form-defvar, byte-compile-defvar): Warn about
+ global vars which don't have a prefix and could hence affect lexical
+ scoping in unrelated files.
+
+ 2010-09-14 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * net/imap.el: Revert back to version
+ cb950ed8ff3e0f40dac437a51b269166f9ffb60d, since some of the changes
+ seem problematic.
+
+ 2010-09-14 Juanma Barranquero <lekktu@gmail.com>
+
+ * obsolete/old-whitespace.el (whitespace-unload-function):
+ Explicitly pass `obarray' to `unintern' to avoid a warning.
+
+ 2010-09-14 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * emacs-lisp/byte-run.el (set-advertised-calling-convention):
+ Add `when' argument. Update callers.
+
+ * subr.el (unintern): Declare the obarray arg mandatory.
+
+ 2010-09-14 Glenn Morris <rgm@gnu.org>
+
+ * calendar/diary-lib.el (diary-list-entries-hook, diary-sort-entries):
+ Doc fixes.
+
+ * calendar/diary-lib.el (diary-included-files): New variable.
+ (diary-list-entries): Maybe initialize diary-included-files.
+ (diary-include-other-diary-files): Append to diary-included-files.
+ * calendar/appt.el (appt-update-list): Also check the members of
+ diary-included-files. (Bug#6999)
+ (appt-check): Doc fix.
+
+ 2010-09-14 David Reitter <david.reitter@gmail.com>
+
+ * simple.el (line-move-visual): Do not truncate goal column to
+ integer size. (Bug#7020)
+
+ 2010-09-14 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * repeat.el (repeat): Allow repeating when the last event is a click.
+ Suggested by Drew Adams (bug#6256).
+
+ 2010-09-14 Sascha Wilde <wilde@sha-bang.de>
+
+ * vc/vc-hg.el (vc-hg-state,vc-hg-working-revision):
+ Replace setting HGRCPATH to "" by some less invasive --config options.
+
+ 2010-09-14 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * font-lock.el (font-lock-beginning-of-syntax-function):
+ Mark as obsolete.
+
+ 2010-09-14 Glenn Morris <rgm@gnu.org>
+
+ * menu-bar.el (menu-bar-options-save): Fix handling of menu-bar
+ and tool-bar modes. (Bug#6211)
+ (menu-bar-mode): Move setting of standard-value after the
+ minor-mode definition, otherwise it seems to have no effect.
+
+ 2010-09-14 Masatake YAMATO <yamato@redhat.com>
+
+ * progmodes/antlr-mode.el (antlr-font-lock-additional-keywords):
+ Fix typo. (Bug#6976)
+
+ 2010-09-14 Vinicius Jose Latorre <viniciusjl@ig.com.br>
+
+ * whitespace.el: Allow cleaning up blanks without blank
+ visualization (Bug#6651). Adjust help window for
+ whitespace-toggle-options (Bug#6479). Allow to use fill-column
+ instead of whitespace-line-column (from EmacsWiki). New version 13.1.
+ (whitespace-style): Add new value 'face. Adjust docstring.
+ (whitespace-space, whitespace-hspace, whitespace-tab):
+ Adjust foreground property face.
+ (whitespace-line-column): Adjust docstring and type declaration.
+ (whitespace-style-value-list, whitespace-toggle-option-alist)
+ (whitespace-help-text): Adjust const initialization.
+ (whitespace-toggle-options, global-whitespace-toggle-options):
+ Adjust docstring.
+ (whitespace-display-window, whitespace-interactive-char)
+ (whitespace-style-face-p, whitespace-color-on): Adjust code.
+ (whitespace-help-scroll): New fun.
+
+ 2010-09-14 Katsumi Yamaoka <yamaoka@jpl.org>
+
+ * calendar/time-date.el (format-seconds): Comment fix.
+
+ 2010-09-13 Michael R. Mauger <mmaug@yahoo.com>
+
+ * progmodes/sql.el: Version 2.7.
+ (sql-buffer-live-p): Improve detection.
+ (sql-find-sqli-buffer, sql-set-sqli-buffer-generally)
+ (sql-set-sqli-buffer): Use it.
+ (sql-product-interactive): Run `sql-set-sqli-hook'.
+ (sql-rename-buffer): Code cleanup.
+ (sql-redirect, sql-redirect-value): New functions. More to come.
+
+ 2010-09-13 Juanma Barranquero <lekktu@gmail.com>
+
+ Port tramp-related Makefile changes of 2010-09-08T14:42:54Z!michael.albinus@gmx.de, 2010-09-13T15:17:01Z!michael.albinus@gmx.de to Windows.
+ * makefile.w32-in (LOADDEFS): Add $(lisp)/net/tramp-loaddefs.el.
+ (TRAMP_SRC): New macro.
+ ($(lisp)/net/tramp-loaddefs.el): New target.
+
+ 2010-09-13 Michael Albinus <michael.albinus@gmx.de>
+
+ Major code cleanup. Split tramp.el into tramp.el and tramp-sh.el.
+
+ * Makefile.in (TRAMP_SRC): Remove tramp-fish.el. Add tramp-sh.el.
+
+ * net/tramp.el (top): Don't show loading message. Require just
+ 'tramp-compat, everything else is required there.
+ Use `ignore-errors' where appropriate.
+ (tramp-inline-compress-start-size, tramp-copy-size-limit)
+ (tramp-terminal-type, tramp-end-of-output)
+ (tramp-initial-end-of-output, tramp-completion-function-alist-rsh)
+ (tramp-completion-function-alist-ssh)
+ (tramp-completion-function-alist-telnet)
+ (tramp-completion-function-alist-su)
+ (tramp-completion-function-alist-putty, tramp-remote-path)
+ (tramp-remote-process-environment, tramp-sh-extra-args)
+ (tramp-actions-before-shell, tramp-uudecode)
+ (tramp-perl-file-truename, tramp-perl-file-name-all-completions)
+ (tramp-perl-file-attributes)
+ (tramp-perl-directory-files-and-attributes)
+ (tramp-perl-encode-with-module, tramp-perl-decode-with-module)
+ (tramp-perl-encode, tramp-perl-decode)
+ (tramp-vc-registered-read-file-names, tramp-file-mode-type-map)
+ (tramp-file-name-handler-alist, tramp-make-tramp-temp-file)
+ (tramp-handle-make-symbolic-link, tramp-handle-load)
+ (tramp-handle-file-name-as-directory)
+ (tramp-handle-file-name-directory)
+ (tramp-handle-file-name-nondirectory, tramp-handle-file-truename)
+ (tramp-handle-file-exists-p, tramp-handle-file-attributes)
+ (tramp-do-file-attributes-with-ls)
+ (tramp-do-file-attributes-with-perl)
+ (tramp-do-file-attributes-with-stat)
+ (tramp-handle-set-visited-file-modtime)
+ (tramp-handle-verify-visited-file-modtime)
+ (tramp-handle-set-file-modes, tramp-handle-set-file-times)
+ (tramp-set-file-uid-gid, tramp-remote-selinux-p)
+ (tramp-handle-file-selinux-context)
+ (tramp-handle-set-file-selinux-context)
+ (tramp-handle-file-executable-p, tramp-handle-file-readable-p)
+ (tramp-handle-file-newer-than-file-p, tramp-handle-file-modes)
+ (tramp-handle-file-directory-p, tramp-handle-file-regular-p)
+ (tramp-handle-file-symlink-p, tramp-handle-file-writable-p)
+ (tramp-handle-file-ownership-preserved-p)
+ (tramp-handle-directory-file-name, tramp-handle-directory-files)
+ (tramp-handle-directory-files-and-attributes)
+ (tramp-do-directory-files-and-attributes-with-perl)
+ (tramp-do-directory-files-and-attributes-with-stat)
+ (tramp-handle-file-name-all-completions)
+ (tramp-handle-file-name-completion, tramp-handle-add-name-to-file)
+ (tramp-handle-copy-file, tramp-handle-copy-directory)
+ (tramp-handle-rename-file, tramp-do-copy-or-rename-file)
+ (tramp-do-copy-or-rename-file-via-buffer)
+ (tramp-do-copy-or-rename-file-directly)
+ (tramp-do-copy-or-rename-file-out-of-band)
+ (tramp-handle-make-directory, tramp-handle-delete-directory)
+ (tramp-handle-delete-file)
+ (tramp-handle-dired-recursive-delete-directory)
+ (tramp-handle-dired-compress-file, tramp-handle-dired-uncache)
+ (tramp-handle-insert-directory)
+ (tramp-handle-unhandled-file-name-directory)
+ (tramp-handle-expand-file-name)
+ (tramp-handle-substitute-in-file-name)
+ (tramp-handle-executable-find, tramp-process-sentinel)
+ (tramp-handle-start-file-process, tramp-handle-process-file)
+ (tramp-handle-call-process-region, tramp-handle-shell-command)
+ (tramp-handle-file-local-copy, tramp-handle-file-remote-p)
+ (tramp-handle-insert-file-contents)
+ (tramp-handle-insert-file-contents-literally)
+ (tramp-handle-find-backup-file-name)
+ (tramp-handle-make-auto-save-file-name, tramp-handle-write-region)
+ (tramp-vc-registered-file-names, tramp-handle-vc-registered)
+ (tramp-sh-file-name-handler, tramp-vc-file-name-handler)
+ (tramp-maybe-send-script, tramp-set-auto-save, tramp-run-test)
+ (tramp-run-test2, tramp-find-executable, tramp-set-remote-path)
+ (tramp-find-file-exists-command, tramp-open-shell)
+ (tramp-find-shell, tramp-barf-if-no-shell-prompt)
+ (tramp-open-connection-setup-interactive-shell)
+ (tramp-local-coding-commands, tramp-remote-coding-commands)
+ (tramp-find-inline-encoding, tramp-call-local-coding-command)
+ (tramp-inline-compress-commands, tramp-find-inline-compress)
+ (tramp-compute-multi-hops, tramp-maybe-open-connection)
+ (tramp-send-command, tramp-wait-for-output)
+ (tramp-send-command-and-check, tramp-barf-unless-okay)
+ (tramp-send-command-and-read, tramp-mode-string-to-int)
+ (tramp-convert-file-attributes, tramp-check-cached-permissions)
+ (tramp-file-mode-from-int, tramp-file-mode-permissions)
+ (tramp-shell-case-fold, tramp-make-copy-program-file-name)
+ (tramp-method-out-of-band-p, tramp-local-host-p)
+ (tramp-get-remote-path, tramp-get-remote-tmpdir)
+ (tramp-get-ls-command, tramp-get-ls-command-with-dired)
+ (tramp-get-test-command, tramp-get-test-nt-command)
+ (tramp-get-file-exists-command, tramp-get-remote-ln)
+ (tramp-get-remote-perl, tramp-get-remote-stat)
+ (tramp-get-remote-readlink, tramp-get-remote-trash)
+ (tramp-get-remote-id, tramp-get-remote-uid, tramp-get-remote-gid)
+ (tramp-get-local-uid, tramp-get-local-gid)
+ (tramp-get-inline-compress, tramp-get-inline-coding): Move to
+ tramp-sh.el.
+ (tramp-methods, tramp-default-method-alist)
+ (tramp-default-user-alist, tramp-foreign-file-name-handler-alist):
+ Move initialization to tramp-sh.el.
+ (tramp-temp-name-prefix): Make it a defconst.
+ (tramp-dissect-file-name): Don't check anymore for multi-hop
+ methods.
+ (tramp-debug-outline-regexp): Add a docstring.
+ (tramp-debug-outline-level): Rename from `tramp-outline-level'.
+ (tramp-get-debug-buffer): Use it.
+
+ * net/tramp-cache.el (top): Set tramp-autoload cookie for
+ initialization forms.
+ (tramp-set-connection-property): Don't protect `tramp-message'
+ call, it isn't necessary any longer.
+ (tramp-dump-connection-properties): Use `ignore-errors'.
+
+ * net/tramp-compat.el (top): Require 'advice, 'format-spec,
+ 'password-cache and 'auth-source.
+
+ * net/tramp-gvfs.el (top):
+ * net/tramp-smb.el (top): Require 'tramp-sh.
+
+ * net/tramp-gw.el (tramp-gw-open-network-stream): Use `ignore-errors'.
+
+ * net/tramp-sh.el: New file, derived from tramp.el.
+ (top): Initialize `tramp-methods', `tramp-default-method-alist',
+ `tramp-default-user-alist', `tramp-foreign-file-name-handler-alist'.
+ Remove "scp1_old", "scp2_old", "ssh1_old", "ssh2_old".
+ Use `ignore-errors' where appropriate.
+ (tramp-sh-file-name-handler-alist): Rename from
+ `tramp-file-name-handler-alist'.
+ (tramp-send-command-and-check): Return t or nil. Remove all
+ `zerop' checks, where called.
+ (tramp-handle-set-file-modes)
+ (tramp-do-copy-or-rename-file-directly)
+ (tramp-handle-delete-directory, tramp-handle-delete-file)
+ (tramp-maybe-send-script): Use `tramp-barf-unless-okay'.
+ (tramp-sh-file-name-handler, tramp-send-command-and-check)
+ (tramp-get-remote-ln): Set tramp-autoload cookie.
+
+ * net/tramp-fish.el: Remove file.
+
+ 2010-09-13 Daiki Ueno <ueno@unixuser.org>
+
+ * epa-file.el (epa-file-insert-file-contents): If visiting, bind
+ buffer-file-name to avoid file-locking. (Bug#7026)
+
+ 2010-09-13 Julien Danjou <julien@danjou.info>
+
+ * notifications.el (notifications-notify): Add support for
+ image-path and sound-name.
+ (notifications-specification-version): Add this variable.
+
+ 2010-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * subr.el (y-or-n-p): New function, moved from src/fns.c; use read-key.
+
+ 2010-09-12 Leo <sdl.web@gmail.com>
+
+ * net/rcirc.el (rcirc-server-commands, rcirc-client-commands)
+ (rcirc-completion-start): New variables.
+ (rcirc-nick-completions): Rename to rcirc-completions.
+ (rcirc-nick-completion-start-offset): Delete.
+ (rcirc-completion-at-point): New function for constructing
+ completion data for both nicks and irc commands. Add to
+ completion-at-point-functions in rcirc mode.
+ (rcirc-complete): Rename from rcirc-nick-complete; use
+ rcirc-completion-at-point.
+ (defun-rcirc-command): Update rcirc-client-commands.
+
+ 2010-09-11 Glenn Morris <rgm@gnu.org>
+
+ * emacs-lisp/bytecomp.el (byte-compile-file): Create .elc files
+ atomically, to avoid parallel build errors. (Bug#4196)
+
+ 2010-09-11 Michael R. Mauger <mmaug@yahoo.com>
+
+ * progmodes/sql.el: Version 2.6
+ (sql-dialect): Synonym for "sql-product".
+ (sql-find-sqli-buffer, sql-set-sqli-buffer-generally)
+ (sql-set-sqli-buffer, sql-show-sqli-buffer, sql-interactive-mode):
+ Set "sql-buffer" to buffer name not buffer object so multiple sql
+ interactive buffers work properly. Reverts misguided changes in
+ earlier work.
+ (sql-comint): Make sure different buffer name is used if "*SQL*"
+ buffer is for a different product.
+ (sql-make-alternate-buffer-name): Fix bug with "sql-database"
+ login param.
+ (sql-oracle, sql-sybase, sql-informix, sql-sqlite, sql-mysql)
+ (sql-solid, sql-ingres, sql-ms, sql-postgres, sql-interbase)
+ (sql-db2, sql-linter, sql-product-interactive, sql-rename-buffer):
+ Accept new buffer name or prompt for one.
+ (sql-port): Default to zero.
+ (sql-comint-mysql): Handle "sql-port" as a numeric.
+ (sql-port-history): Delete unused variable.
+ (sql-get-login): Default "sql-port" to a number.
+ (sql-product-alist): Correct Postgres prompt and terminator regexp.
+ (sql-sqlite-program): Dynamically detect presence of "sqlite" or
+ "sqlite3" executables.
+ (sql-sqlite-login-params): Add "*.sqlite[23]?" database name pattern.
+ (sql-buffer-live-p): New function.
+ (sql-mode-menu, sql-send-string): Use it.
+ (sql-mode-oracle-font-lock-keywords): Improve SQL*Plus REMARK
+ syntax pattern.
+ (sql-mode-postgres-font-lock-keywords): Support Postgres V9.
+ (sql-mode-sqlite-font-lock-keywords): Hilight sqlite commands.
+
+ 2010-09-10 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * net/netrc.el (netrc-credentials): New convenience function.
+
+ 2010-09-10 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * textmodes/texinfo.el (texinfo-syntax-propertize-function): New fun
+ to replace texinfo-font-lock-syntactic-keywords.
+ (texinfo-mode): Use it.
+
+ * textmodes/tex-mode.el (tex-common-initialization, doctex-mode):
+ Use syntax-propertize-function.
+
+ * textmodes/sgml-mode.el (sgml-syntax-propertize-function): New var to
+ replace sgml-font-lock-syntactic-keywords.
+ (sgml-mode): Use it.
+
+ * textmodes/reftex.el (font-lock-syntactic-keywords): Don't declare
+ since we don't use it.
+
+ * textmodes/bibtex.el (bibtex-mode): Use syntax-propertize-function.
+
+ * progmodes/vhdl-mode.el (vhdl-mode): Use syntax-propertize-function
+ if available.
+ (vhdl-fontify-buffer): Adjust.
+
+ * progmodes/tcl.el (tcl-syntax-propertize-function): New var to
+ replace tcl-font-lock-syntactic-keywords.
+ (tcl-mode): Use it.
+
+ * progmodes/simula.el (simula-syntax-propertize-function): New var to
+ replace simula-font-lock-syntactic-keywords.
+ (simula-mode): Use it.
+
+ * progmodes/sh-script.el (sh-st-symbol): Remove.
+ (sh-font-lock-close-heredoc, sh-font-lock-open-heredoc): Add eol arg.
+ (sh-font-lock-flush-syntax-ppss-cache, sh-font-lock-here-doc): Remove.
+ (sh-font-lock-quoted-subshell): Assume we've already matched $(.
+ (sh-font-lock-paren): Set syntax-multiline.
+ (sh-font-lock-syntactic-keywords): Remove.
+ (sh-syntax-propertize-function): New function to replace it.
+ (sh-mode): Use it.
+
+ * progmodes/ruby-mode.el (ruby-here-doc-beg-re):
+ Define while compiling.
+ (ruby-here-doc-end-re, ruby-here-doc-beg-match)
+ (ruby-font-lock-syntactic-keywords, ruby-comment-beg-syntax)
+ (syntax-ppss, ruby-in-ppss-context-p, ruby-in-here-doc-p)
+ (ruby-here-doc-find-end, ruby-here-doc-beg-syntax)
+ (ruby-here-doc-end-syntax): Only define when
+ syntax-propertize is not available.
+ (ruby-syntax-propertize-function, ruby-syntax-propertize-heredoc):
+ New functions.
+ (ruby-in-ppss-context-p): Update to new syntax of heredocs.
+ (electric-indent-chars): Silence bytecompiler.
+ (ruby-mode): Use prog-mode, syntax-propertize-function, and
+ electric-indent-chars.
+
+ * progmodes/python.el (python-syntax-propertize-function): New var to
+ replace python-font-lock-syntactic-keywords.
+ (python-mode): Use it.
+ (python-quote-syntax): Simplify and adjust to new use.
+
+ * progmodes/perl-mode.el (perl-syntax-propertize-function): New fun to
+ replace perl-font-lock-syntactic-keywords.
+ (perl-syntax-propertize-special-constructs): New fun to replace
+ perl-font-lock-special-syntactic-constructs.
+ (perl-font-lock-syntactic-face-function): New fun.
+ (perl-mode): Use it.
+
+ * progmodes/octave-mod.el (octave-syntax-propertize-sqs): New function
+ to replace octave-font-lock-close-quotes.
+ (octave-syntax-propertize-function): New function to replace
+ octave-font-lock-syntactic-keywords.
+ (octave-mode): Use it.
+
+ * progmodes/mixal-mode.el (mixal-syntax-propertize-function): New var;
+ replaces mixal-font-lock-syntactic-keywords.
+ (mixal-mode): Use it.
+
+ * progmodes/make-mode.el (makefile-syntax-propertize-function):
+ New var; replaces makefile-font-lock-syntactic-keywords.
+ (makefile-mode): Use it.
+ (makefile-imake-mode): Adjust.
+
+ * progmodes/js.el (js--regexp-literal): Define while compiling.
+ (js-syntax-propertize-function): New var; replaces
+ js-font-lock-syntactic-keywords.
+ (js-mode): Use it.
+
+ * progmodes/gud.el (gdb-script-syntax-propertize-function): New var;
+ replaces gdb-script-font-lock-syntactic-keywords.
+ (gdb-script-mode): Use it.
+
+ * progmodes/fortran.el (fortran-mode): Use syntax-propertize-function.
+ (fortran--font-lock-syntactic-keywords): New var.
+ (fortran-line-length): Update syntax-propertize-function and
+ fortran--font-lock-syntactic-keywords.
+
+ * progmodes/cperl-mode.el (cperl-mode): Use syntax-propertize-function.
+
+ * progmodes/cfengine.el (cfengine-mode):
+ Use syntax-propertize-function.
+ (cfengine-font-lock-syntactic-keywords): Remove.
+
+ * progmodes/autoconf.el (autoconf-mode):
+ Use syntax-propertize-function.
+ (autoconf-font-lock-syntactic-keywords): Remove.
+
+ * progmodes/ada-mode.el (ada-set-syntax-table-properties)
+ (ada-after-change-function, ada-initialize-syntax-table-properties)
+ (ada-handle-syntax-table-properties): Only define when
+ syntax-propertize is not available.
+ (ada-mode): Use syntax-propertize-function.
+
+ * font-lock.el (font-lock-syntactic-keywords): Make obsolete.
+ (font-lock-fontify-syntactic-keywords-region): Move handling of
+ font-lock-syntactically-fontified to...
+ (font-lock-default-fontify-region): ...here.
+ Let syntax-propertize-function take precedence.
+ (font-lock-fontify-syntactically-region): Cal syntax-propertize.
+
+ * emacs-lisp/syntax.el (syntax-propertize-function)
+ (syntax-propertize-chunk-size, syntax-propertize--done)
+ (syntax-propertize-extend-region-functions): New vars.
+ (syntax-propertize-wholelines, syntax-propertize-multiline)
+ (syntax-propertize--shift-groups, syntax-propertize-via-font-lock)
+ (syntax-propertize): New functions.
+ (syntax-propertize-rules): New macro.
+ (syntax-ppss-flush-cache): Set syntax-propertize--done.
+ (syntax-ppss): Call syntax-propertize.
+
+ * emacs-lisp/regexp-opt.el (regexp-opt-depth): Skip named groups.
+
+ 2010-09-10 Agustín Martín <agustin.martin@hispalinux.es>
+
+ * textmodes/ispell.el (ispell-init-process): Improve comments.
+ XEmacs compatibility changes regarding (add-hook) 'local option
+ and (set-process-query-on-exit-flag).
+
+ 2010-09-09 Michael Albinus <michael.albinus@gmx.de>
+
+ * net/tramp-cache.el (tramp-parse-connection-properties):
+ Set tramp-autoload cookie.
+
+ 2010-09-09 Glenn Morris <rgm@gnu.org>
+
+ * image.el (imagemagick-types-inhibit): Add :type, :version, :group.
+ (imagemagick-register-types): Doc fix.
+
+ 2010-09-08 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * progmodes/octave-mod.el (electric-indent-chars): Silence bytecomp.
+
+ * progmodes/js.el (require): Require is already "eval-and-compile".
+ (js--re-search-forward): Avoid `eval'. Preserve the error data.
+ (js--re-search-backward): Use js--re-search-forward.
+
+ * progmodes/fortran.el (fortran-line-length): Don't recompute
+ syntactic keywords redundantly a second time.
+
+ * progmodes/ada-mode.el: Replace "(set '" with setq.
+ (ada-mode): Simplify.
+ (ada-create-case-exception, ada-adjust-case-interactive)
+ (ada-adjust-case-region, ada-format-paramlist, ada-indent-current)
+ (ada-search-ignore-string-comment, ada-move-to-start)
+ (ada-move-to-end): Use with-syntax-table.
+
+ * font-lock.el (save-buffer-state): Remove `varlist' arg.
+ (font-lock-unfontify-region, font-lock-default-fontify-region):
+ Update usage correspondingly.
+ (font-lock-fontify-syntactic-keywords-region):
+ Set parse-sexp-lookup-properties buffer-locally here.
+ (font-lock-fontify-syntactically-region): Remove unused `ppss' arg.
+
+ * simple.el (blink-matching-open): Don't burp if we can't find a match.
+
+ 2010-09-08 Glenn Morris <rgm@gnu.org>
+
+ * emacs-lisp/bytecomp.el (byte-compile-report-ops):
+ Error if not compiled with -DBYTE_CODE_METER.
+
+ * emacs-lisp/bytecomp.el (byte-recompile-directory):
+ Ignore dir-locals-file.
+
+ 2010-09-08 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * progmodes/compile.el (compilation-error-regexp-alist-alist):
+ Not a const.
+ (compilation-error-regexp-alist-alist): Rule out ": " in file names
+ for the `gnu' messages.
+ (compilation-set-skip-threshold): New command.
+ (compilation-start): Use \' rather than $.
+ (compilation-forget-errors): Use clrhash.
+
+ 2010-09-08 Agustín Martín <agustin.martin@hispalinux.es>
+
+ * textmodes/ispell.el (ispell-valid-dictionary-list):
+ Simplify logic.
+
+ 2010-09-08 Michael Albinus <michael.albinus@gmx.de>
+
+ Migrate to Tramp 2.2. Rearrange load dependencies.
+ (Bug#1529, Bug#5448, Bug#5705)
+
+ * Makefile.in (TRAMP_DIR, TRAMP_SRC): New variables.
+ ($(TRAMP_DIR)/tramp-loaddefs.el): New target.
+ (LOADDEFS): Add $(lisp)/net/tramp-loaddefs.el.
+
+ * net/tramp.el (top): Remove all other tramp-* loads except
+ tramp-compat.el. Remove all changes to tramp-unload-hook for
+ other tramp-* packages. Rearrange defun order. Change calls of
+ `tramp-compat-call-process', `tramp-compat-decimal-to-octal',
+ `tramp-compat-octal-to-decimal' to new function names.
+ (tramp-terminal-type, tramp-initial-end-of-output)
+ (tramp-methods, tramp-foreign-file-name-handler-alist)
+ (tramp-tramp-file-p, tramp-completion-mode-p)
+ (tramp-send-command-and-check, tramp-get-remote-path)
+ (tramp-get-remote-tmpdir, tramp-get-remote-ln)
+ (tramp-shell-quote-argument): Set tramp-autoload cookie.
+ (with-file-property, with-connection-property): Move to
+ tramp-cache.el.
+ (tramp-local-call-process, tramp-decimal-to-octal)
+ (tramp-octal-to-decimal): Move to tramp-compat.el.
+ (tramp-handle-shell-command): Do not require 'shell.
+ (tramp-compute-multi-hops): No special handling for tramp-gw-*
+ symbols.
+ (tramp-unload-tramp): Do not call `tramp-unload-file-name-handlers'.
+
+ * net/tramp-cache.el (top): Require 'tramp. Add to
+ `tramp-unload-hook'.
+ (tramp-cache-data, tramp-get-file-property)
+ (tramp-set-file-property, tramp-flush-file-property)
+ (tramp-flush-directory-property, tramp-get-connection-property)
+ (tramp-set-connection-property, tramp-flush-connection-property)
+ (tramp-cache-print, tramp-list-connections): Set tramp-autoload
+ cookie.
+ (with-file-property, with-connection-property): New defuns, moved
+ from tramp.el.
+ (tramp-flush-file-function): Use `with-parsed-tramp-file-name'
+ macro.
+
+ * net/tramp-cmds.el (top): Add to `tramp-unload-hook'.
+ (tramp-version): Set tramp-autoload cookie.
+
+ * net/tramp-compat.el (top): Require 'tramp-loaddefs. Remove all
+ changes to tramp-unload-hook for other tramp-* packages. Add to
+ `tramp-unload-hook'.
+ (tramp-compat-decimal-to-octal, tramp-compat-octal-to-decimal)
+ (tramp-compat-call-process): New defuns, moved from tramp.el.
+
+ * net/tramp-fish.el (top) Require just 'tramp. Add objects to
+ `tramp-methods' and `tramp-foreign-file-name-handler-alist'. Add
+ to `tramp-unload-hook'. Change call of
+ `tramp-compat-decimal-to-octal' to new function name.
+ (tramp-fish-method): Make it a defconst.
+ (tramp-fish-file-name-p): Make it a defsubst.
+ (tramp-fish-method, tramp-fish-file-name-handler)
+ (tramp-fish-file-name-p): Set tramp-autoload cookie.
+
+ * net/tramp-ftp.el (top) Add objects to `tramp-methods' and
+ `tramp-foreign-file-name-handler-alist'. Add to
+ `tramp-unload-hook'.
+ (tramp-ftp-method): Make it a defconst.
+ (tramp-ftp-file-name-p): Make it a defsubst.
+ (tramp-ftp-method, tramp-ftp-file-name-handler)
+ (tramp-ftp-file-name-p): Set tramp-autoload cookie.
+
+ * net/tramp-gvfs.el (top) Add objects to `tramp-methods' and
+ `tramp-foreign-file-name-handler-alist'. Add to
+ `tramp-unload-hook'. Change checks, whether package can be
+ loaded.
+ (tramp-gvfs-file-name-p): Make it a defsubst.
+ (tramp-gvfs-methods, tramp-gvfs-file-name-handler)
+ (tramp-gvfs-file-name-p): Set tramp-autoload cookie.
+ (tramp-gvfs-handle-file-directory-p): New defun.
+ (tramp-gvfs-file-name-handler-alist): Use it.
+
+ * net/tramp-gw.el (top) Add objects to `tramp-methods' and
+ `tramp-foreign-file-name-handler-alist'. Add to
+ `tramp-unload-hook'.
+ (tramp-gw-tunnel-method, tramp-gw-default-tunnel-port)
+ (tramp-gw-socks-method, tramp-gw-default-socks-port): Make it a
+ defconst.
+ (tramp-gw-tunnel-method, tramp-gw-socks-method)
+ (tramp-gw-open-connection): Set tramp-autoload cookie.
+
+ * net/tramp-imap.el (top) Require just 'tramp. Add objects to
+ `tramp-methods' and `tramp-foreign-file-name-handler-alist'. Add
+ to `tramp-unload-hook'. Change checks, whether package can be
+ loaded.
+ (tramp-imap-file-name-p): Make it a defsubst.
+ (tramp-imap-method, tramp-imaps-method)
+ (tramp-imap-file-name-handler)
+ (tramp-imap-file-name-p): Set tramp-autoload cookie.
+
+ * net/tramp-smb.el (top) Require just 'tramp. Add objects to
+ `tramp-methods' and `tramp-foreign-file-name-handler-alist'. Add
+ to `tramp-unload-hook'. Change checks, whether package can be
+ loaded. Change call of `tramp-compat-decimal-to-octal' to new
+ function name.
+ (tramp-smb-tunnel-method): Make it a defconst.
+ (tramp-smb-file-name-p): Make it a defsubst.
+ (tramp-smb-method, tramp-smb-file-name-handler)
+ (tramp-smb-file-name-p): Set tramp-autoload cookie.
+
+ * net/tramp-uu.el (top) Add to `tramp-unload-hook'.
+ (tramp-uuencode-region): Set tramp-autoload cookie.
+
+ * net/trampver.el (top) Add to `tramp-unload-hook'.
+ (tramp-version, tramp-bug-report-address): Set tramp-autoload
+ cookie. Update release number.
+
+ 2010-09-07 Agustín Martín <agustin.martin@hispalinux.es>
+
+ * textmodes/ispell.el (ispell-start-process): Make sure original
+ arg list is properly initialized (Bug#6993, Bug#6994).
+
+ 2010-09-06 Alexander Klimov <alserkli@inbox.ru> (tiny change)
+
+ * files.el (directory-abbrev-alist): Use \` as default regexp.
+
+ * emacs-lisp/rx.el (rx-any): Don't explode ranges that end in special
+ chars like - or ] (bug#6984).
+ (rx-any-condense-range): Explode 2-char ranges.
+
+ 2010-09-06 Glenn Morris <rgm@gnu.org>
+
+ * desktop.el (desktop-path): Bump :version after 2009-09-15 change.
+
+ 2010-09-06 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * textmodes/bibtex.el:
+ * proced.el: Update to new email for Roland Winkler <winkler@gnu.org>.
+
+ 2010-09-05 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * net/imap.el (imap-message-map): Remove optional buffer parameter,
+ since no callers use it.
+ (imap-message-get): Ditto.
+ (imap-message-put): Ditto.
+ (imap-mailbox-map): Ditto.
+ (imap-mailbox-put): Ditto.
+ (imap-mailbox-get): Ditto.
+ (imap-mailbox-get): Revert last change for this function.
+
+ 2010-09-05 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * net/imap.el (imap-fetch-safe): Remove function, and alter all
+ callers to use `imap-fetch' instead. According to the comments, this
+ should be safe, since all other IMAP clients use the 1:* syntax.
+ (imap-enable-exchange-bug-workaround): Remove.
+ (imap-debug): Remove -- doesn't seem very useful.
+
+ 2010-09-05 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * net/imap.el (imap-log): New convenience function used throughout
+ instead of repeating the same code all over the place.
+
+ 2010-09-05 David De La Harpe Golden <david@harpegolden.net>
+
+ * mouse.el (mouse-save-then-kill): Save region to kill-ring
+ when mouse-drag-copy-region is non-nil (Bug#6956).
+
+ 2010-09-05 Chong Yidong <cyd@stupidchicken.com>
+
+ * dired.el (dired-ls-sorting-switches, dired-sort-by-name-regexp):
+ Improve regexps (Bug#6987).
+ (dired-sort-toggle): Search more robustly for -t flag.
+
+ * files.el (get-free-disk-space): Search more robustly for
+ "available" column. Suggested by Ehud Karni
+ <ehud@unix.mvs.co.il>.
+
+ 2010-09-05 Juanma Barranquero <lekktu@gmail.com>
+
+ * international/uni-bidi.el:
+ * international/uni-category.el:
+ * international/uni-combining.el:
+ * international/uni-decimal.el:
+ * international/uni-mirrored.el:
+ * international/uni-name.el: Regenerate.
+
+ 2010-09-04 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * electric.el (electric-indent-post-self-insert-function):
+ Don't reindent with a sloppy indentation function.
+
+ * emacs-lisp/syntax.el (syntax-ppss): More sanity check to catch
+ border case in change-log-mode.
+
+ 2010-09-04 Chong Yidong <cyd@stupidchicken.com>
+
+ * progmodes/compile.el (compilation-error-regexp-alist-alist):
+ Remove ruby regexp; handle Ruby errors with gcc-include and gnu.
+ Recognize leading tab in gcc-include regexp. Ignore names with
+ leading "from" or "in" in gnu regexp (Bug#6937).
+
+ 2010-09-04 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ Avoid global recursive calls to kill-buffer-hooks; fit into 80 cols.
+ * textmodes/ispell.el (ispell-process-buffer-name): Remove.
+ (ispell-start-process): Avoid setq and simplify logic.
+ (ispell-init-process): Setup kill-buffer-hook locally when needed.
+ (kill-buffer-hook): Don't use it globally with code that uses
+ expand-file-name since that may call kill-buffer via
+ code_conversion_restore.
+
+ 2010-09-04 Noorul Islam K M <noorul@noorul.com> (tiny change)
+
+ * emacs-lisp/package.el (package-directory-list): Only call
+ file-name-nondirectory on a string.
+
+ 2010-09-02 Chong Yidong <cyd@stupidchicken.com>
+
+ * emacs-lisp/package.el (package--download-one-archive):
+ Ensure that archive-contents is valid before saving it.
+ (package-activate-1, package-mark-obsolete, define-package)
+ (package-compute-transaction, package-list-maybe-add): Use push.
+
+ 2010-09-03 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ Use SMIE's blink-paren for octave-mode.
+ * progmodes/octave-mod.el (octave-font-lock-close-quotes):
+ Backslashes do not escape single-quotes, single-quotes do.
+ (octave-block-else-regexp, octave-block-end-regexp)
+ (octave-block-match-alist): Remove.
+ (octave-smie-bnf-table): New var, with old content.
+ (octave-smie-op-levels): Use it.
+ (octave-smie-closer-alist): New var.
+ (octave-mode): Use it. Setup smie-blink-matching and electric-indent.
+ (octave-blink-matching-block-open): Remove.
+ (octave-reindent-then-newline-and-indent, octave-electric-semi)
+ (octave-electric-space): Let self-insert-command run expand-abbrev and
+ blink parens.
+
+ * electric.el (electricity): New group.
+ (electric-indent-chars): New var.
+ (electric-indent-post-self-insert-function): New fun.
+ (electric-indent-mode): New minor mode.
+ (electric-pair-skip-self): New custom.
+ (electric-pair-post-self-insert-function): New function.
+ (electric-pair-mode): New minor mode.
+
+ * calc/calc-aent.el (calcAlg-blink-matching-check): New fun, to replace
+ calcAlg-blink-matching-open.
+ (calc-alg-ent-map, calc-alg-ent-esc-map): Initialize in the declaration.
+ (calc-do-alg-entry): Only touch the part of the keymap that varies.
+ Use the new blink-matching-check-function.
+
+ Provide blink-matching support to SMIE.
+ * emacs-lisp/smie.el (smie-bnf-closer-alist): New function.
+ (smie-blink-matching-triggers, smie-blink-matching-inners): New vars.
+ (smie-blink-matching-check, smie-blink-matching-open): New functions.
+
+ * simple.el (newline): Fix last change to properly remove itself from
+ the hook.
+
+ 2010-09-02 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * simple.el (newline): Eliminate optimization.
+ Use post-self-insert-hook to set hard-newline and things before
+ running post-self-insert-hook.
+ (blink-matching-check-mismatch): New function.
+ (blink-matching-check-function): New variable.
+ (blink-matching-open): Use them.
+ Skip back forward over prefix chars skipped by forward-sexp.
+ Don't check if the parens are backslash escaped.
+ (blink-paren-post-self-insert-function): Check backslash escaping here.
+
+ 2010-09-02 Chong Yidong <cyd@stupidchicken.com>
+
+ * emacs-lisp/package.el (package-menu-mode-map):
+ Change package-menu-revert bindings to revert-buffer.
+ (package-menu-mode): Set revert-buffer-function.
+ (package-menu-revert): Doc fix.
+
+ 2010-09-02 Agustín Martín <agustin.martin@hispalinux.es>
+
+ * textmodes/ispell.el (ispell-init-process): Use "~/" as
+ `default-directory' unless using Ispell per-directory personal
+ dictionaries and not in a mini-buffer under XEmacs.
+ (kill-buffer-hook): Do not kill ispell process on exit when
+ `ispell-process-directory' is "~/". (Bug#6143)
+
+ 2010-09-02 Jan Djärv <jan.h.d@swipnet.se>
+
+ * simple.el (kill-new): Call interprogram-cut-function with only
+ one argument.
+
+ * term.el (term-mouse-paste): Don't call x-get-cutbuffer.
+ Remove cut buffer from error message.
+
+ * term/x-win.el (x-select-text):
+ * term/pc-win.el (x-selection-value):
+ * term/ns-win.el (x-selection-value):
+ * eshell/em-term.el:
+ * w32-fns.el (x-get-selection-value):
+ * mouse-sel.el (mouse-sel-set-selection-function):
+ * frame.el (display-selections-p): Remove cut-buffer in documentation.
+
+ * term/x-win.el: Update documentation for x-last-selected-text-*.
+ (x-last-selected-text-cut, x-last-selected-text-cut-encoded)
+ (x-last-cut-buffer-coding, x-cut-buffer-max): Remove.
+ (x-select-text): Remove argument PUSH, update documentation. Remove
+ cut-buffer code.
+ (x-selection-value-internal): Was previously x-selection-value.
+ (x-selection-value): Rename from x-cut-buffer-or-selection-value.
+ Update documentation, remove cut-buffer code. Call
+ x-selection-value-internal.
+ (x-clipboard-yank): Call x-selection-value-internal.
+ (x-initialize-window-system): Remove setting of x-cut-buffer-max.
+
+ * term/pc-win.el (x-last-selected-text):
+ x-cut-buffer-or-selection-value renamed to x-selection-value
+ (x-select-text): Remove argument PUSH, update documentation.
+
+ * term/ns-win.el (x-setup-function-keys, ns-last-selected-text):
+ x-cut-buffer-or-selection-value renamed to x-selection-value
+ (x-selection-value): Renamed from x-cut-buffer-or-selection-value.
+ (x-select-text): Remove argument PUSH, update documentation.
+
+ * emacs-lisp/cl-macs.el (x-get-cutbuffer, x-get-cut-buffer): Remove.
+
+ * w32-fns.el (x-last-selected-text):
+ x-cut-buffer-or-selection-value renamed to x-selection-value.
+ (x-cut-buffer-max): Remove.
+ (x-select-text): Remove argument PUSH, update documentation.
+
+ * simple.el (interprogram-cut-function): Remove mention of PUSH.
+
+ * select.el (x-get-cut-buffer, x-set-cut-buffer): Remove.
+
+ * mouse-sel.el (mouse-sel-get-selection-function):
+ x-cut-buffer-or-selection-value renamed to x-selection-value.
+ (x-select-text): Remove optional push.
+
+ 2010-09-01 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * simple.el (blink-paren-function): Move from C to here.
+ (blink-paren-post-self-insert-function): New function.
+ (post-self-insert-hook): Use it.
+
+ * emacs-lisp/pcase.el (pcase-split-memq):
+ Fix overenthusiastic optimisation.
+ (pcase-u1): Handle the case of a lambda pred.
+
+ 2010-08-31 Kenichi Handa <handa@m17n.org>
+
+ * international/mule-cmds.el (standard-display-european-internal):
+ Setup standard-display-table for 8-bit characters by storing 8-bit
+ characters in the element vector.
+
+ * disp-table.el (standard-display-8bit):
+ Setup standard-display-table for 8-bit characters by storing 8-bit
+ characters in the element vector.
+ (standard-display-european): Likewise.
+
+ 2010-08-31 Masatake YAMATO <yamato@redhat.com>
+
+ * textmodes/nroff-mode.el (nroff-view): New command.
+ (nroff-mode-map): Bind it to C-c C-c.
+
+ 2010-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * emacs-lisp/smie.el (smie-down-list): New command.
+
+ Remove old indentation and navigation code on octave-mode.
+ * progmodes/octave-mod.el (octave-mode-map): Remap down-list to
+ smie-down-list rather than add a binding for octave-down-block.
+ (octave-mark-block, octave-blink-matching-block-open):
+ Rely on forward-sexp-function.
+ (octave-fill-paragraph): Don't narrow, so you can use
+ indent-according-to-mode.
+ (octave-block-begin-regexp, octave-block-begin-or-end-regexp): Remove.
+ (octave-in-block-p, octave-re-search-forward-kw)
+ (octave-re-search-backward-kw, octave-indent-calculate)
+ (octave-end-as-array-index-p, octave-block-end-offset)
+ (octave-scan-blocks, octave-forward-block, octave-backward-block)
+ (octave-down-block, octave-backward-up-block, octave-up-block)
+ (octave-before-magic-comment-p, octave-indent-line): Remove.
+
+ 2010-08-31 Chong Yidong <cyd@stupidchicken.com>
+
+ * emacs-lisp/package.el (package--read-archive-file): Just use
+ `read', to avoid copying an additional string.
+ (package-menu-mode): Set header-line-format here.
+ (package-menu-refresh, package-menu-revert): Signal an error if
+ not in the Package Menu.
+ (package-menu-package-list): New var.
+ (package--generate-package-list): Operate on the current buffer;
+ don't assume that it is *Packages*, since the user may rename it.
+ Allow persistent package listings and sort keys using
+ package-menu-package-list and package-menu-package-sort-key.
+ (package-menu--version-predicate): Fix version calculation.
+ (package-menu-sort-by-column): Don't select the window.
+ (package--list-packages): Create the *Packages* buffer.
+ Set package-menu-package-list-key.
+ (list-packages): Sorting by status is now the default.
+ (package-buffer-info): Use match-string-no-properties.
+ (define-package): Add a &rest argument for future proofing, but
+ don't use it yet.
+ (package-install-from-buffer, package-install-buffer-internal):
+ Merge into a single function, package-install-from-buffer.
+ (package-install-file): Change caller.
+
+ * finder.el: Load finder-inf using `require'.
+ (finder-list-matches): Sorting by status is now the default.
+ (finder-compile-keywords): Simpify printing.
+
+ 2010-08-30 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * progmodes/octave-mod.el (octave-font-lock-keywords): Use regexp-opt.
+ (octave-mode-map): Remove special bindings for forward/backward-block
+ and octave-backward-up-block. Use smie-close-block.
+ (octave-continuation-marker-regexp): New var.
+ (octave-continuation-regexp): Use it.
+ (octave-operator-table, octave-smie-op-levels)
+ (octave-operator-regexp, octave-smie-indent-rules): New vars.
+ (octave-smie-backward-token, octave-smie-forward-token): New funs.
+ (octave-mode): Use SMIE.
+ (octave-close-block): Delete.
+
+ 2010-08-30 Eli Zaretskii <eliz@gnu.org>
+
+ * menu-bar.el (menu-bar-edit-menu) <"Paste">: Check selection in
+ CLIPBOARD, not in PRIMARY. (Bug#6944)
+
+ 2010-08-30 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * emacs-lisp/smie.el (smie-indent-offset-rule): Let :parent take
+ a list of parents.
+ (smie-indent-column): Allow indirection through variables.
+
+ * composite.el (save-buffer-state): Delete, unused.
+ * font-lock.el (save-buffer-state): Use with-silent-modifications.
+ (font-lock-default-fontify-region): Use with-syntax-table.
+ * jit-lock.el (with-buffer-unmodified): Remove.
+ (with-buffer-prepared-for-jit-lock): Use with-silent-modifications.
+
+ Use `declare' in defmacros.
+ * window.el (save-selected-window):
+ * subr.el (with-temp-file, with-temp-message, with-syntax-table):
+ * progmodes/python.el (def-python-skeleton):
+ * net/dbus.el (dbus-ignore-errors):
+ * jka-cmpr-hook.el (with-auto-compression-mode):
+ * international/mule.el (with-category-table):
+ * emacs-lisp/timer.el (with-timeout):
+ * emacs-lisp/lisp-mnt.el (lm-with-file):
+ * emacs-lisp/eieio.el (with-slots):
+ * emacs-lisp/easymenu.el (easy-menu-define):
+ * emacs-lisp/debug.el (debugger-env-macro):
+ * emacs-lisp/cl-compat.el (Multiple-value-bind, Multiple-value-setq)
+ (Multiple-value-call, Multiple-value-prog1):
+ * emacs-lisp/cl-seq.el (cl-parsing-keywords, cl-check-key)
+ (cl-check-test-nokey, cl-check-test, cl-check-match): Move indent and
+ edebug rule to definition.
+ * emacs-lisp/lisp-mode.el (save-selected-window)
+ (with-current-buffer, combine-after-change-calls)
+ (with-output-to-string, with-temp-file, with-temp-buffer)
+ (with-temp-message, with-syntax-table, read-if, eval-after-load)
+ (dolist, dotimes, when, unless):
+ * emacs-lisp/byte-run.el (inline): Remove indent rule, redundant.
+
+ 2010-08-29 Chong Yidong <cyd@stupidchicken.com>
+
+ * finder.el: Require `package'.
+ (finder-known-keywords): Tweak descriptions. Retire `oop' keyword.
+ (finder-package-info): Var deleted.
+ (finder-keywords-hash, finder--builtins-alist): New vars.
+ (finder-compile-keywords): Compute package--builtins and
+ finder-keywords-hash instead of finder-keywords-hash, respecting
+ the "Package" header.
+ (finder-unknown-keywords, finder-list-matches):
+ Use finder-keywords-hash and package--list-packages.
+ (finder-mode): Don't set font-lock-defaults.
+ (finder-exit): We don't use "*Finder-package*" and "*Finder
+ Category*" buffers anymore.
+
+ * emacs-lisp/package.el (package--builtins-base): Var deleted.
+ (package--builtins): Set default value to nil.
+ (package-initialize): Load precomputed value of package--builtins
+ from finder-inf.el.
+ (package-alist, package-compute-transaction)
+ (package-download-transaction): Improve docstring.
+ (package-read-all-archive-contents): Do not change
+ package--builtins here.
+ (list-packages): Make package-list-packages an alias for this.
+ Sort by status by default.
+ (package--list-packages): Add optional PACKAGES arg.
+ (describe-package-1): Use font-lock-face property. For built-in
+ packages, insert file commentary.
+ (package--generate-package-list): Rename from
+ package-list-packages-internal; all callers changed. Add optional
+ PACKAGES arg. Add alphabetical sort fallbacks.
+ (package-menu--version-predicate, package-menu--status-predicate)
+ (package-menu--description-predicate)
+ (package-menu--name-predicate): New functions.
+
+ * info.el (Info-finder-find-node): Search package-alist instead of
+ finder-package-info.
+
+ 2010-08-29 Chong Yidong <cyd@stupidchicken.com>
+
+ * subr.el (version-regexp-alist): Don't use "a" and "b" for
+ "alpha" and "beta".
+ (version-to-list): Handle versions like "10.3d".
+
+ 2010-08-28 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * emacs-lisp/macroexp.el (macroexpand-all-1): Use pcase.
+ (macroexp-accumulate): Use `declare'.
+
+ 2010-08-27 Vinicius Jose Latorre <viniciusjl@ig.com.br>
+
+ * whitespace.el (whitespace-style): Adjust type declaration.
+
+ 2010-08-26 Magnus Henoch <magnus.henoch@gmail.com>
+
+ * net/tramp-gvfs.el (tramp-gvfs-handle-copy-file): Do not pass
+ empty argument to gvfs-copy.
+
+ 2010-08-26 Chong Yidong <cyd@stupidchicken.com>
+
+ * net/tramp-compat.el (tramp-compat-delete-file): Rewrite to
+ handle new TRASH arg of `delete-file'.
+
+ 2010-08-26 Christian Lynbech <christian.lynbech@tieto.com> (tiny change)
+
+ * net/tramp.el (tramp-handle-insert-directory): Don't use
+ `forward-word', its default syntax could be changed.
+
+ 2010-08-26 Toru TSUNEYOSHI <t_tuneyosi@hotmail.com>
+ Michael Albinus <michael.albinus@gmx.de>
+
+ Implement compression for inline methods.
+
+ * net/tramp.el (tramp-inline-compress-start-size): New defcustom.
+ (tramp-copy-size-limit): Allow also nil.
+ (tramp-inline-compress-commands): New defconst.
+ (tramp-find-inline-compress, tramp-get-inline-compress)
+ (tramp-get-inline-coding): New defuns.
+ (tramp-get-remote-coding, tramp-get-local-coding): Remove,
+ replaced by `tramp-get-inline-coding'.
+ (tramp-handle-file-local-copy, tramp-handle-write-region)
+ (tramp-method-out-of-band-p): Use `tramp-get-inline-coding'.
+
+ 2010-08-26 Noah Lavine <noah549@gmail.com> (tiny change)
+
+ Detect ssh 'ControlMaster' argument automatically in some cases.
+
+ * net/tramp.el (tramp-detect-ssh-controlmaster): New defun.
+ (tramp-default-method): Use it.
+
+ 2010-08-26 Karel Klíč <kklic@redhat.com>
+
+ * net/tramp.el (tramp-file-name-for-operation):
+ Add file-selinux-context.
+
+ 2010-08-26 Łukasz Stelmach <lukasz.stelmach@iem.pw.edu.pl> (tiny change)
+
+ * play/cookie1.el (read-cookie): Fix off-by-one error (bug#6921).
+
+ 2010-08-26 Chong Yidong <cyd@stupidchicken.com>
+
+ * simple.el (beginning-of-buffer, end-of-buffer): Doc fix
+ (Bug#6907).
+
+ 2010-08-26 Nathan Weizenbaum <nweiz@cressida.sea.corp.google.com> (tiny change)
+
+ * progmodes/js.el: Make indentation more customizable (Bug#6914).
+ (js-paren-indent-offset, js-square-indent-offset)
+ (js-curly-indent-offset): New options.
+ (js--proper-indentation): Use them.
+
+ 2010-08-26 Daniel Colascione <dan.colascione@gmail.com>
+
+ * progmodes/sh-script.el (sh-get-indent-info): Use syntax-ppss
+ instead of inspecting font-lock properties (Bug#6916).
+
+ 2010-08-26 David Reitter <david.reitter@gmail.com>
+
+ * server.el (server-visit-files): Run pre-command-hook and
+ post-command-hook for each buffer while it is current (Bug#6910).
+ (server-execute): Do not run hooks here.
+
+ 2010-08-26 Michael Albinus <michael.albinus@gmx.de>
+
+ Sync with Tramp 2.1.19.
+
+ * net/tramp-cmds.el (tramp-cleanup-all-connections)
+ (tramp-reporter-dump-variable, tramp-load-report-modules)
+ (tramp-append-tramp-buffers): Use `tramp-compat-funcall'.
+ (tramp-bug): Recommend setting of `tramp-verbose' to 9.
+
+ * net/tramp-compat.el (top): Do not autoload
+ `tramp-handle-file-remote-p'. Load tramp-util.el and tramp-vc.el
+ only when `start-file-process' is not bound.
+ (byte-compile-not-obsolete-vars): Define if not bound.
+ (tramp-compat-funcall): New defmacro.
+ (tramp-compat-line-beginning-position)
+ (tramp-compat-line-end-position)
+ (tramp-compat-temporary-file-directory)
+ (tramp-compat-make-temp-file, tramp-compat-file-attributes)
+ (tramp-compat-copy-file, tramp-compat-copy-directory)
+ (tramp-compat-delete-file, tramp-compat-delete-directory)
+ (tramp-compat-number-sequence, tramp-compat-process-running-p):
+ Use it.
+ (tramp-advice-file-expand-wildcards): Do not use
+ `tramp-handle-file-remote-p'.
+ (tramp-compat-make-temp-file): Simplify fallback implementation.
+ (tramp-compat-copy-file): Add PRESERVE-SELINUX-CONTEXT.
+ (tramp-compat-copy-tree): Remove function.
+ (tramp-compat-delete-file): New defun.
+ (tramp-compat-delete-directory): Provide implementation for older
+ Emacsen.
+ (tramp-compat-file-attributes): Handle only
+ `wrong-number-of-arguments' error.
+
+ * net/tramp-fish.el (tramp-fish-handle-copy-file):
+ Add PRESERVE_SELINUX_CONTEXT.
+ (tramp-fish-handle-delete-file): Add TRASH arg.
+ (tramp-fish-handle-directory-files-and-attributes):
+ Do not use `tramp-fish-handle-file-attributes.
+ (tramp-fish-handle-file-local-copy)
+ (tramp-fish-handle-insert-file-contents)
+ (tramp-fish-maybe-open-connection): Use `with-progress-reporter'.
+
+ * net/tramp-gvfs.el (top): Require url-util.
+ (tramp-gvfs-mount-point): Remove.
+ (tramp-gvfs-file-name-handler-alist): Add `file-selinux-context'
+ and `set-file-selinux-context'.
+ (tramp-gvfs-stringify-dbus-message, tramp-gvfs-send-command)
+ (tramp-gvfs-handle-file-selinux-context)
+ (tramp-gvfs-handle-set-file-selinux-context): New defuns.
+ (with-tramp-dbus-call-method): Format trace message.
+ (tramp-gvfs-handle-copy-file): Handle PRESERVE-SELINUX-CONTEXT.
+ (tramp-gvfs-handle-copy-file, tramp-gvfs-handle-rename-file):
+ Implement backup call, when operation on local files fails.
+ Use progress reporter. Flush properties of changed files.
+ (tramp-gvfs-handle-delete-file): Add TRASH arg. Use
+ `tramp-compat-delete-file'.
+ (tramp-gvfs-handle-expand-file-name): Expand "~/".
+ (tramp-gvfs-handle-make-directory): Make more traces.
+ (tramp-gvfs-handle-write-region): Protect deleting tmpfile.
+ (tramp-gvfs-url-file-name): Hexify file name in url.
+ (tramp-gvfs-fuse-file-name): Take also prefix (like dav shares)
+ into account for the resulting file name.
+ (tramp-gvfs-handler-askquestion): Preserve current message, in
+ order to let progress reporter continue afterwards. (Bug#6257)
+ Return dummy mountpoint, when the answer is "no".
+ See `tramp-gvfs-maybe-open-connection'.
+ (tramp-gvfs-handler-mounted-unmounted)
+ (tramp-gvfs-connection-mounted-p): Test also for new mountspec
+ attribute "default_location". Set "prefix" property.
+ Handle default-location.
+ (tramp-gvfs-mount-spec): Return both prefix and mountspec.
+ (tramp-gvfs-maybe-open-connection): Test, whether mountpoint
+ exists. Raise an error, if not (due to a corresponding answer
+ "no" in interactive questions, for example).
+ Use `tramp-compat-funcall'.
+
+ * net/tramp-imap.el (top): Autoload `epg-make-context'.
+ (tramp-imap-handle-copy-file): Add PRESERVE-SELINUX-CONTEXT.
+ (tramp-imap-do-copy-or-rename-file)
+ (tramp-imap-handle-insert-file-contents)
+ (tramp-imap-handle-file-local-copy): Use `with-progress-reporter'.
+ (tramp-imap-handle-delete-file): Add TRASH arg.
+
+ * net/tramp-smb.el (tramp-smb-handle-copy-file):
+ Add PRESERVE-SELINUX-CONTEXT.
+ (tramp-smb-handle-copy-file)
+ (tramp-smb-handle-file-local-copy, tramp-smb-handle-rename-file)
+ (tramp-smb-handle-write-region, tramp-smb-maybe-open-connection):
+ Use `with-progress-reporter'.
+ (tramp-smb-handle-delete-file): Add TRASH arg.
+
+ * net/tramp.el (tramp-methods): Move hostname to the end in all
+ ssh `tramp-login-args'. Add `tramp-async-args' attribute where
+ appropriate.
+ (tramp-verbose): Describe verbose level 9.
+ (tramp-completion-function-alist)
+ (tramp-file-name-regexp, tramp-chunksize)
+ (tramp-local-coding-commands, tramp-remote-coding-commands)
+ (with-connection-property, tramp-completion-mode-p)
+ (tramp-action-process-alive, tramp-action-out-of-band)
+ (tramp-check-for-regexp, tramp-file-name-p, tramp-equal-remote)
+ (tramp-exists-file-name-handler): Fix docstring.
+ (tramp-remote-process-environment): Use `format' instead of
+ `concat'. Protect version string by apostroph.
+ (tramp-shell-prompt-pattern): Do not use a shy group in case of
+ XEmacs.
+ (tramp-file-name-regexp-unified)
+ (tramp-completion-file-name-regexp-unified): On W32 systems, do
+ not regard the volume letter as remote filename. (Bug#5447)
+ (tramp-perl-file-attributes)
+ (tramp-perl-directory-files-and-attributes): Don't pass "$3".
+ (tramp-vc-registered-read-file-names): Read input as
+ here-document, otherwise the command could exceed maximum length
+ of command line.
+ (tramp-file-name-handler-alist): Add `file-selinux-context' and
+ `set-file-selinux-context'.
+ (tramp-debug-message): Add `tramp-compat-funcall' to ignored
+ backtrace functions.
+ (tramp-error-with-buffer): Don't show the connection buffer when
+ we are in completion mode.
+ (tramp-progress-reporter-update, tramp-remote-selinux-p)
+ (tramp-handle-file-selinux-context)
+ (tramp-handle-set-file-selinux-context, tramp-process-sentinel)
+ (tramp-connectable-p, tramp-open-shell, tramp-get-remote-trash):
+ New defuns.
+ (with-progress-reporter): New defmacro.
+ (tramp-debug-outline-regexp): New defconst.
+ (top, tramp-rfn-eshadow-setup-minibuffer)
+ (tramp-rfn-eshadow-update-overlay, tramp-handle-set-file-times)
+ (tramp-handle-dired-compress-file, tramp-handle-shell-command)
+ (tramp-completion-mode-p, tramp-check-for-regexp)
+ (tramp-open-connection-setup-interactive-shell)
+ (tramp-compute-multi-hops, tramp-read-passwd, tramp-clear-passwd)
+ (tramp-time-diff, tramp-coding-system-change-eol-conversion)
+ (tramp-set-process-query-on-exit-flag, tramp-unload-tramp):
+ Use `tramp-compat-funcall'.
+ (tramp-handle-make-symbolic-link): Flush file properties.
+ (tramp-handle-load, tramp-handle-file-local-copy)
+ (tramp-handle-insert-file-contents, tramp-handle-write-region)
+ (tramp-handle-vc-registered, tramp-maybe-send-script)
+ (tramp-find-shell): Use `with-progress-reporter'.
+ (tramp-do-file-attributes-with-stat): Add space in format string,
+ in order to work around a bug in pdksh. Reported by Gilles Pion
+ <gpion@lfdj.com>.
+ (tramp-handle-verify-visited-file-modtime): Do not send a command
+ when the connection is not established.
+ (tramp-handle-set-file-times): Simplify the check for utc.
+ (tramp-handle-directory-files-and-attributes)
+ (tramp-get-remote-path): Use `copy-tree'.
+ (tramp-completion-handle-file-name-all-completions): Ensure, that
+ non remote files are still checked. Oops.
+ (tramp-handle-copy-file, tramp-do-copy-or-rename-file):
+ Handle PRESERVE-SELINUX-CONTEXT.
+ (tramp-do-copy-or-rename-file): Add progress reporter.
+ (tramp-do-copy-or-rename-file-directly): Do not use
+ `tramp-handle-file-remote-p'.
+ (tramp-do-copy-or-rename-file-out-of-band):
+ Use `tramp-compat-delete-directory'.
+ (tramp-do-copy-or-rename-file-out-of-band)
+ (tramp-compute-multi-hops, tramp-maybe-open-connection):
+ Use `format-spec-make'.
+ (tramp-handle-delete-file): Add TRASH arg.
+ (tramp-handle-dired-uncache): Flush directory cache, not only file
+ cache.
+ (tramp-handle-expand-file-name)
+ (tramp-completion-handle-file-name-all-completions)
+ (tramp-completion-handle-file-name-completion):
+ Use `tramp-connectable-p'.
+ (tramp-handle-start-file-process): Set connection property "vec".
+ Use it, in order to invalidate file caches. Check only for
+ `remote-tty' process property.
+ Implement tty setting. (Bug#4604, Bug#6360)
+ (tramp-file-name-for-operation): Add `call-process-region' and
+ `set-file-selinux-context'.
+ (tramp-find-foreign-file-name-handler)
+ (tramp-advice-make-auto-save-file-name)
+ (tramp-set-auto-save-file-modes): Remove superfluous check for
+ `stringp'. This is done inside `tramp-tramp-file-p'.
+ (tramp-file-name-handler): Trace 'quit. Catch the error for some
+ operations when we are in completion mode. This gives the user
+ the chance to correct the file name in the minibuffer.
+ (tramp-completion-mode-p): Use `non-essential'.
+ (tramp-handle-file-name-all-completions): Backward/ XEmacs
+ compatibility: Use `completion-ignore-case' if
+ `read-file-name-completion-ignore-case' does not exist.
+ (tramp-get-debug-buffer): Use `tramp-debug-outline-regexp'.
+ (tramp-find-shell, tramp-open-connection-setup-interactive-shell):
+ `tramp-open-shell'.
+ (tramp-action-password): Hide password prompt before next run.
+ (tramp-process-actions): Widen connection buffer for the trace.
+ (tramp-open-connection-setup-interactive-shell): Set `remote-tty'
+ process property. Trace stty settings if `tramp-verbose' >= 9.
+ Apply workaround for IRIX64 bug. Move argument of last
+ `tramp-send-command' where it belongs to.
+ (tramp-maybe-open-connection): Use `async-args' and `gw-args' in
+ front of `login-args'.
+ (tramp-get-ls-command, tramp-get-ls-command-with-dired): Run tests
+ on "/dev/null" instead of "/".
+ (tramp-get-ls-command-with-dired): Make test for "--dired"
+ stronger.
+ (tramp-set-auto-save-file-modes): Adapt version check.
+ (tramp-set-process-query-on-exit-flag): Fix wrong parentheses.
+ (tramp-handle-process-file): Call the program in a subshell, in
+ order to preserve working directory.
+ (tramp-handle-shell-command): Don't use hard-wired "/bin/sh" but
+ `tramp-remote-sh' from `tramp-methods'.
+ (tramp-get-ls-command): Make test for "--color=never" stronger.
+ (tramp-check-for-regexp): Use (forward-line 1).
+
+ * net/trampver.el: Update release number.
+
+ 2010-08-26 Chong Yidong <cyd@stupidchicken.com>
+
+ * help.el (help-map): Bind `C-h P' to describe-package.
+
+ * menu-bar.el (menu-bar-describe-menu): Add describe-package.
+
+ * emacs-lisp/package.el (package-refresh-contents): Catch errors
+ when downloading archives.
+ (describe-package-1): Add package commentary.
+ (package-install-button-action): New function.
+ (package-menu-mode-map): Bind ? to package-menu-describe-package.
+ (package-menu-view-commentary): Function removed.
+ (package-list-packages-internal): Hide the `package' package too.
+
+ 2010-08-25 Kenichi Handa <handa@m17n.org>
+
+ * language/misc-lang.el ("Arabic"): New language environment.
+ Setup composition-function-table for Arabic characters.
+
+ * international/fontset.el (setup-default-fontset): Fix typo for
+ arabic OTF spec (fini->fina).
+
+ 2010-08-25 Jan Djärv <jan.h.d@swipnet.se>
+
+ * menu-bar.el (menu-bar-set-tool-bar-position): Set frame parameter
+ on all frames.
+
+ 2010-08-24 Vinicius Jose Latorre <viniciusjl@ig.com.br>
+
+ * whitespace.el: Allow cleaning up blanks without blank
+ visualization (Bug#6651). Adjust help window for
+ whitespace-toggle-options (Bug#6479). Allow to use fill-column
+ instead of whitespace-line-column (from EmacsWiki). New version
+ 13.1.
+ (whitespace-style): Added new value 'face. Adjust docstring.
+ (whitespace-space, whitespace-hspace, whitespace-tab): Adjust
+ foreground property face.
+ (whitespace-line-column): Adjust docstring and type declaration.
+ (whitespace-style-value-list, whitespace-toggle-option-alist)
+ (whitespace-help-text): Adjust const initialization.
+ (whitespace-toggle-options, global-whitespace-toggle-options):
+ Adjust docstring.
+ (whitespace-display-window, whitespace-interactive-char)
+ (whitespace-style-face-p, whitespace-color-on): Adjust code.
+ (whitespace-help-scroll): New fun.
+
+ 2010-08-24 Chong Yidong <cyd@stupidchicken.com>
+
+ * emacs-lisp/package.el (list-packages): Alias for
+ package-list-packages.
+
+ 2010-08-24 Kevin Ryde <user42@zip.com.au>
+
+ * textmodes/flyspell.el (flyspell-check-tex-math-command): Doc fix
+ (Bug#5651).
+
+ * progmodes/ruby-mode.el (ruby): Add defgroup.
+
+ 2010-08-24 Chong Yidong <cyd@stupidchicken.com>
+
+ * progmodes/python.el: Add Ipython support (Bug#5390).
+ (python-shell-prompt-alist)
+ (python-shell-continuation-prompt-alist): New options.
+ (python--set-prompt-regexp): New function.
+ (inferior-python-mode, run-python, python-shell): Require
+ ansi-color. Use python--set-prompt-regexp to set the comint
+ prompt based on the Python interpreter.
+ (python--prompt-regexp): New var.
+ (python-check-comint-prompt)
+ (python-comint-output-filter-function): Use it.
+ (run-python): Use a pipe (Bug#5694).
+
+ 2010-08-24 Fabian Ezequiel Gallina <galli.87@gmail.com> (tiny change)
+
+ * progmodes/python.el (python-send-region): Send a different
+ Python command if Ipython is in use.
+ (python-check-version): Use a Python command to find the version.
+
+ 2010-08-24 Chong Yidong <cyd@stupidchicken.com>
+
+ * mouse.el (mouse-yank-primary): Avoid setting primary when
+ deactivating the mark (Bug#6872).
+
+ 2010-08-23 Chris Foote <chris@foote.com.au> (tiny change)
+
+ * progmodes/python.el (python-block-pairs): Allow use of "finally"
+ with "else" (Bug#3991).
+
+ 2010-08-23 Michael Albinus <michael.albinus@gmx.de>
+
+ * net/dbus.el: Accept UNIX domain sockets as bus address.
+ (top): Don't initialize `dbus-registered-objects-table' anymore,
+ this is done in dbusbind,c.
+ (dbus-check-event): Adapt test for bus.
+ (dbus-return-values-table, dbus-unregister-service)
+ (dbus-event-bus-name, dbus-introspect, dbus-register-property):
+ Adapt doc string.
+
+ 2010-08-23 Juanma Barranquero <lekktu@gmail.com>
+
+ * ido.el (ido-use-virtual-buffers): Fix typo in docstring.
+
+ 2010-08-22 Juri Linkov <juri@jurta.org>
+
+ * simple.el (read-extended-command): New function with the logic
+ for `completing-read' moved to Elisp from `execute-extended-command'.
+ Use `function-called-at-point' in `minibuffer-default-add-function'
+ to get a command name for M-n (bug#5364, bug#5214).
+
+ 2010-08-22 Chong Yidong <cyd@stupidchicken.com>
+
+ * startup.el (command-line-1): Issue warning for ignored arguments
+ --unibyte, etc (Bug#6886).
+
+ 2010-08-22 Leo <sdl.web@gmail.com>
+
+ * net/rcirc.el (rcirc-add-or-remove): Accept a list of elements.
+ (ignore, bright, dim, keyword): Split list of nicknames before
+ passing to rcirc-add-or-remove (Bug#6894).
+
+ 2010-08-22 Chong Yidong <cyd@stupidchicken.com>
+
+ * emacs-lisp/easy-mmode.el (define-minor-mode): Doc fix (Bug#6880).
+
+ 2010-08-22 Leo <sdl.web@gmail.com>
+
+ Fix buffer-list rename&refresh after killing a buffer in ido.
+ * ido.el: Revert Óscar's.
+ (ido-kill-buffer-at-head): Exit the minibuffer with ido-exit=refresh.
+ Remember the buffers at head, rather than their name.
+ * iswitchb.el (iswitchb-kill-buffer): Re-make the list.
+
+ 2010-08-22 Kirk Kelsey <kirk.kelsey@0x4b.net> (tiny change)
+ Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * progmodes/make-mode.el (makefile-fill-paragraph): Account for the
+ extra backslash added to each line (bug#6890).
+
+ 2010-08-22 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * subr.el (read-key): Don't echo keystrokes (bug#6883).
+
+ 2010-08-22 Glenn Morris <rgm@gnu.org>
+
+ * menu-bar.el (menu-bar-games-menu): Add landmark.
+
+ 2010-08-22 Glenn Morris <rgm@gnu.org>
+
+ * align.el (align-regexp): Make group and spacing arguments
+ use the interactive defaults when non-interactive. (Bug#6698)
+
+ * mail/rmail.el (rmail-forward): Replace mail-text-start with its
+ expansion, so as not to need sendmail.
+ (mail-text-start): Remove declaration.
+ (rmail-retry-failure): Require sendmail.
+
+ 2010-08-22 Chong Yidong <cyd@stupidchicken.com>
+
+ * subr.el (read-key): Don't hide the menu-bar entries (bug#6881).
+
+ 2010-08-22 Michael Albinus <michael.albinus@gmx.de>
+
+ * progmodes/flymake.el (flymake-start-syntax-check-process):
+ Use `start-file-process' in order to let it run also on remote hosts.
+
+ 2010-08-22 Kenichi Handa <handa@m17n.org>
+
+ * files.el: Add `word-wrap' as safe local variable.
+
+ 2010-08-22 Glenn Morris <rgm@gnu.org>
+
+ * woman.el (woman-translate): Case matters. (Bug#6849)
+
+ 2010-08-22 Chong Yidong <cyd@stupidchicken.com>
+
+ * simple.el (kill-region): Doc fix (Bug#6787).
+
+ 2010-08-22 Glenn Morris <rgm@gnu.org>
+
+ * calendar/diary-lib.el (diary-header-line-format):
+ Fit it to the window, not the frame.
+
+ 2010-08-22 Andreas Schwab <schwab@linux-m68k.org>
+
+ * subr.el (ignore-errors): Add debug declaration.
+
+ 2010-08-22 Geoff Gole <geoffgole@gmail.com> (tiny change)
+
+ * whitespace.el (whitespace-color-off): Remove post-command-hook
+ locally.
+
+ 2010-08-21 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * vc/add-log.el (add-log-file-name): Don't get confused by symlinks.
+
+ 2010-08-21 Chong Yidong <cyd@stupidchicken.com>
+
+ * cus-edit.el (custom-group-value-create): Add extra newline
+ before end line (Bug#6876).
+
+ 2010-08-21 Chong Yidong <cyd@stupidchicken.com>
+
+ * mouse.el (mouse-save-then-kill): Don't save region to kill ring
+ when extending it. Before killing on the second click, check if
+ the buffer is the correct one. Doc fix.
+ (mouse-secondary-save-then-kill): Allow usage without first
+ calling mouse-start-secondary, by defaulting to point. Don't save
+ an empty secondary selection. Doc fix.
+
+ 2010-08-21 Vinicius Jose Latorre <viniciusjl@ig.com.br>
+
+ * whitespace.el: Fix slow cursor movement (Bug#6172). Reported by
+ Christoph Groth <cwg@falma.de> and Liu Xin <x_liu@neusoft.com>.
+ New version 13.0.
+ (whitespace-empty-at-bob-regexp, whitespace-empty-at-eob-regexp):
+ Adjust initialization.
+ (whitespace-bob-marker, whitespace-eob-marker)
+ (whitespace-buffer-changed): New vars.
+ (whitespace-cleanup, whitespace-color-on, whitespace-color-off)
+ (whitespace-empty-at-bob-regexp, whitespace-empty-at-eob-regexp)
+ (whitespace-post-command-hook, whitespace-display-char-on):
+ Adjust code.
+ (whitespace-looking-back, whitespace-buffer-changed): New funs.
+ (whitespace-space-regexp, whitespace-tab-regexp): Fun eliminated.
+
+ 2010-08-19 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * files.el (locate-file-completion-table): Only list the .el and .elc
+ extensions if there's no other choice (bug#5955).
+
+ * facemenu.el (facemenu-self-insert-data): New var.
+ (facemenu-post-self-insert-function, facemenu-set-self-insert-face):
+ New functions.
+ (facemenu-add-face): Use them.
+
+ * simple.el (blink-matching-open): Obey forward-sexp-function.
+
+ 2010-08-18 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * simple.el (prog-mode-map): New var.
+ (prog-indent-sexp): New command.
+
+ * progmodes/octave-mod.el (octave-mode-menu): Make toggle buttons.
+
+ * progmodes/prolog.el (smie): Require.
+
+ * emacs-lisp/smie.el (smie-default-backward-token)
+ (smie-default-forward-token): Strip properties.
+ (smie-next-sexp): Be more careful with associative operators.
+ (smie-forward-sexp-command): Generalize.
+ (smie-backward-sexp-command): Simplify.
+ (smie-closer-alist): New var.
+ (smie-close-block): New command.
+ (smie-indent-debug-log): New var.
+ (smie-indent-offset-rule): Add a few more cases.
+ (smie-indent-column): New function.
+ (smie-indent-after-keyword): Use it.
+ (smie-indent-keyword): Use it.
+ Fix up the opener code's point position.
+ (smie-indent-comment): Only applies at BOL.
+ (smie-indent-debug): New command.
+
+ * emacs-lisp/autoload.el (make-autoload): Preload the macros's
+ declarations that are useful before running the macro.
+
+ 2010-08-18 Joakim Verona <joakim@verona.se>
+
+ * image.el (imagemagick-types-inhibit): New variable.
+ (imagemagick-register-types): New function.
+ * image-mode.el (image-transform-properties): New function.
+ (image-transform-set-scale, image-transform-fit-to-height)
+ (image-transform-set-rotation, image-transform-set-resize)
+ (image-transform-fit-to-width, image-transform-fit-to-height):
+ New functions.
+ (image-toggle-display-image): Support image transforms.
+
+ 2010-08-18 Katsumi Yamaoka <yamaoka@jpl.org>
+
+ * image.el (create-animated-image): Don't add heuristic mask to image
+ (Bug#6839).
+
+ 2010-08-18 Jan Djärv <jan.h.d@swipnet.se>
+
+ * term/ns-win.el (ns-get-pasteboard, ns-set-pasteboard):
+ Use QCLIPBOARD instead of QPRIMARY (Bug#6677).
+
+ 2010-08-17 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * emacs-lisp/lisp.el (up-list): Obey forward-sexp-function if set.
+
+ Font-lock '...' strings, plus various simplifications and fixes.
+ * progmodes/octave-mod.el (octave-font-lock-keywords): Use regexp-opt.
+ (octave-font-lock-close-quotes): New function.
+ (octave-font-lock-syntactic-keywords): New var.
+ (octave-mode): Use it. Set beginning-of-defun-function.
+ (octave-mode-map): Don't override the <foo>-defun commands.
+ (octave-mode-menu): Pass it directly to easy-menu-define;
+ remove (now generic) <foo>-defun commands; use info-lookup-symbol.
+ (octave-block-match-alist): Fix up last change so that
+ octave-close-block uses the more specific keyword.
+ (info-lookup-mode): Silence byte-compiler.
+ (octave-beginning-of-defun): Not interactive any more.
+ Optimize slightly.
+ (octave-end-of-defun, octave-mark-defun, octave-in-defun-p): Remove.
+ (octave-indent-defun, octave-send-defun): Use mark-defun instead.
+ (octave-completion-at-point-function): Make sure point is within
+ beg..end.
+ (octave-reindent-then-newline-and-indent):
+ Use reindent-then-newline-and-indent.
+ (octave-add-octave-menu): Remove.
+
+ 2010-08-17 Jan Djärv <jan.h.d@swipnet.se>
+
+ * mail/emacsbug.el (report-emacs-bug-insert-to-mailer)
+ (report-emacs-bug-can-use-xdg-email): New functions.
+ (report-emacs-bug): Set can-xdg-email to result of
+ report-emacs-bug-can-use-xdg-email. If can-xdg-email bind
+ \C-cm to report-emacs-bug-insert-to-mailer and add help text
+ about it.
+
+ * net/browse-url.el (browse-url-default-browser): Add cond
+ for browse-url-xdg-open.
+ (browse-url-can-use-xdg-open, browse-url-xdg-open): New functions.
+
+ 2010-08-17 Glenn Morris <rgm@gnu.org>
+
+ * progmodes/cc-engine.el (c-new-BEG, c-new-END)
+ (c-fontify-recorded-types-and-refs): Define for compiler.
+ * progmodes/cc-mode.el (c-new-BEG, c-new-END): Move definitions
+ before use.
+
+ * calendar/icalendar.el (icalendar--convert-recurring-to-diary):
+ Fix format call.
+
+ 2010-08-17 Michael Albinus <michael.albinus@gmx.de>
+
+ * net/tramp.el (tramp-handle-make-symbolic-link): Flush file
+ properties.
+ (tramp-handle-process-file): Call the program in a subshell, in
+ order to preserve working directory.
+ (tramp-action-password): Hide password prompt before next run.
+ (tramp-process-actions): Widen connection buffer for the trace.
+
+ 2010-08-16 Deniz Dogan <deniz.a.m.dogan@gmail.com>
+
+ * net/rcirc.el (rcirc-log-process-buffers): New option.
+ (rcirc-print): Use it.
+ (rcirc-generate-log-filename): New function.
+ (rcirc-log-filename-function): Change default to
+ rcirc-generate-log-filename (Bug#6828).
+
+ 2010-08-16 Chong Yidong <cyd@stupidchicken.com>
+
+ * simple.el (deactivate-mark): If select-active-regions is `only',
+ only set selection for temporarily active regions.
+
+ * cus-start.el: Change defcustom for select-active-regions.
+
+ 2010-08-15 Chong Yidong <cyd@stupidchicken.com>
+
+ * mouse.el (mouse--drag-set-mark-and-point): New function.
+ (mouse-drag-track): Use LOCATION arg to push-mark.
+ Use mouse--drag-set-mark-and-point to take click-count into
+ consideration when updating point and mark (Bug#6840).
+
+ 2010-08-15 Chong Yidong <cyd@stupidchicken.com>
+
+ * progmodes/compile.el (compilation-error-regexp-alist-alist):
+ Give the Ruby rule a lower priority than Gnu (Bug#6778).
+
+ 2010-08-14 Štěpán Němec <stepnem@gmail.com> (tiny change)
+
+ * font-lock.el (lisp-font-lock-keywords-2):
+ Add combine-after-change-calls, condition-case-no-debug,
+ with-demoted-errors, and with-silent-modifications (Bug#6025).
+
+ 2010-08-14 Kevin Ryde <user42@zip.com.au>
+
+ * emacs-lisp/copyright.el (copyright-update-year)
+ (copyright-update): Temporary switch-to-buffer to ensure the
+ buffer change being queried is visible (Bug#5394).
+
+ 2010-08-14 Tom Tromey <tromey@redhat.com>
+
+ * progmodes/etags.el (tags-file-name): Mark safe if stringp
+ (Bug#6733).
+
+ 2010-08-14 Eli Zaretskii <eliz@gnu.org>
+
+ * mouse.el (mouse-yank-primary): Fix mouse-2 on MS-Windows and
+ MS-DOS. (Bug#6689)
+
+ 2010-08-13 Jan Djärv <jan.h.d@swipnet.se>
+
+ * menu-bar.el (menu-bar-set-tool-bar-position): New function.
+ (menu-bar-showhide-tool-bar-menu-customize-enable-left)
+ (menu-bar-showhide-tool-bar-menu-customize-enable-right)
+ (menu-bar-showhide-tool-bar-menu-customize-enable-top)
+ (menu-bar-showhide-tool-bar-menu-customize-enable-bottom):
+ Call menu-bar-set-tool-bar-position.
+
+ 2010-08-12 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * progmodes/octave-mod.el (octave-mode-syntax-table): Use the new "c"
+ comment style (bug#6834).
+ * progmodes/scheme.el (scheme-mode-syntax-table):
+ * emacs-lisp/lisp-mode.el (lisp-mode-syntax-table): Remove spurious
+ "b" flag in "' 14b" syntax.
+
+ * progmodes/octave-mod.el (octave-mode-map): Remove special bindings
+ for (un)commenting the region and performing completion.
+ (octave-mode-menu): Use standard commands for help and completion.
+ (octave-mode-syntax-table): Support %{..%} comments (sort of).
+ (octave-mode): Use define-derived-mode.
+ Set completion-at-point-functions and don't set columns.
+ Don't disable adaptive-fill-regexp.
+ (octave-describe-major-mode, octave-comment-region)
+ (octave-uncomment-region, octave-comment-indent)
+ (octave-indent-for-comment): Remove.
+ (octave-indent-calculate): Rename from calculate-octave-indent.
+ (octave-indent-line, octave-fill-paragraph): Update caller.
+ (octave-initialize-completions): No need to make an alist.
+ (octave-completion-at-point-function): New function.
+ (octave-complete-symbol): Use it.
+ (octave-insert-defun): Use define-skeleton.
+
+ * progmodes/octave-mod.el (octave-mode): Set comment-add.
+ (octave-mode-map): Use comment-dwim (bug#6829).
+
+ 2010-08-12 Antoine Levitt <antoine.levitt@gmail.com> (tiny change)
+
+ * cus-edit.el (custom-save-variables, custom-save-faces): Fix up
+ indentation of inserted comment.
+
+ 2010-08-11 Jan Djärv <jan.h.d@swipnet.se>
+
+ * faces.el (region): Add type gtk that uses gtk colors.
+
+ * dynamic-setting.el (dynamic-setting-handle-config-changed-event):
+ Handle theme-name change.
+
+ 2010-08-10 Michael R. Mauger <mmaug@yahoo.com>
+
+ * progmodes/sql.el: Version 2.5
+ (sql-product-alist): Add :prompt-cont-regexp property for several
+ database products.
+ (sql-prompt-cont-regexp): New variable.
+ (sql-output-newline-count, sql-output-by-send):
+ New variables. Record number of newlines in input text.
+ (sql-send-string): Handle multiple filters and count newlines.
+ (sql-send-magic-terminator): Count terminator newline.
+ (sql-interactive-remove-continuation-prompt): Filters output to
+ remove continuation prompts; one for each newline.
+ (sql-interactive-mode): Set up new variables, prompt regexp and
+ output filter.
+ (sql-mode-sqlite-font-lock-keywords): Correct some keywords.
+ (sql-make-alternate-buffer-name): Correct buffer name in edge cases.
+
+ 2010-08-10 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * emacs-lisp/pcase.el: New file.
+
+ 2010-08-10 Michael Albinus <michael.albinus@gmx.de>
+
+ * net/tramp.el (tramp-vc-registered-read-file-names): Read input
+ as here-document, otherwise the command could exceed maximum
+ length of command line.
+ (tramp-handle-vc-registered): Call script accordingly.
+ Reported by Toru TSUNEYOSHI <t_tuneyosi@hotmail.com>.
+
+ 2010-08-10 Kenichi Handa <handa@m17n.org>
+
+ * language/hebrew.el: Exclude U+05C3 (Hebrew SOF PASUQ) from the
+ composable pattern.
+
+ 2010-08-09 Chong Yidong <cyd@stupidchicken.com>
+
+ * emacs-lisp/package.el (package-version-split)
+ (package--version-first-nonzero, package-version-compare):
+ Functions removed.
+ (package-directory-list, package-load-all-descriptors)
+ (package--built-in, package-activate, define-package)
+ (package-installed-p, package-compute-transaction)
+ (package-read-all-archive-contents)
+ (package--add-to-archive-contents, package-buffer-info)
+ (package-tar-file-info, package-list-packages-internal):
+ Use version-to-list and version-list-*.
+
+ * emacs-lisp/package-x.el (package-upload-buffer-internal):
+ Use version-to-list.
+ (package-upload-buffer-internal): Use version-list-<=.
+
+ 2010-08-09 Kenichi Handa <handa@m17n.org>
+
+ * language/hebrew.el: Exclude U+05BD (Hebrew MAQAF) from the
+ composable pattern.
+
+ 2010-08-08 Chong Yidong <cyd@stupidchicken.com>
+
+ * tutorial.el (tutorial--default-keys): C-d is now bound to
+ delete-forward-char (Bug#6826).
+
+ * mouse.el (mouse-drag-track): Remove accidentally-removed check
+ for `double' value of mouse-1-click-follows-link (Bug#6807).
+
+ 2010-08-08 Johan Bockgård <bojohan@gnu.org>
+
+ * replace.el (replace-highlight): Bind isearch-forward and
+ isearch-error, ensuring that highlighting is updated if the user
+ switches the search direction (Bug#6808).
+
+ * isearch.el (isearch-lazy-highlight-forward): New var.
+ (isearch-lazy-highlight-new-loop, isearch-lazy-highlight-search):
+ (isearch-lazy-highlight-update): Use it.
+
+ 2010-08-08 Kenichi Handa <handa@m17n.org>
+
+ * international/mule.el (define-charset): Store NAME as :base property.
+ (ctext-non-standard-encodings-table): Pay attention to charset aliases.
+ (ctext-pre-write-conversion): Sort ctext-standard-encodings by the
+ current priority. Force using the designation of the specific
+ charset by adding `charset' text property. Improve the whole algorithm.
+
+ 2010-08-08 Juanma Barranquero <lekktu@gmail.com>
+
+ * emulation/pc-select.el (pc-selection-mode-hook)
+ (copy-region-as-kill-nomark, beginning-of-buffer-mark)
+ (pc-selection-mode): Fix typos in docstrings.
+
+ 2010-08-08 Kenichi Handa <handa@m17n.org>
+
+ * language/cyrillic.el: Don't add "microsoft-cp1251" to
+ ctext-non-standard-encodings-alist here.
+
+ * international/mule.el (ctext-non-standard-encodings-alist):
+ Add "koi8-r" and "microsoft-cp1251".
+ (ctext-standard-encodings): New variable.
+ (ctext-non-standard-encodings-table): List only elements for
+ non-standard encodings.
+ (ctext-pre-write-conversion): Adjust for the above change.
+ Check ctext-standard-encodings.
+
+ * international/mule-conf.el (compound-text): Doc fix.
+ (ctext-no-compositions): Doc fix.
+ (compound-text-with-extensions): Doc fix.
+
+ 2010-08-08 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * simple.el (exchange-dot-and-mark): Mark obsolete, finally.
+
+ 2010-08-08 Juanma Barranquero <lekktu@gmail.com>
+
+ * progmodes/which-func.el (which-func-format): Split help-echo text
+ into lines, like other mode-line tooltips.
+
+ * server.el (server-start): When using TCP sockets, force IPv4
+ and use a literal 127.0.0.1 for localhost. (Related to bug#6781.)
+
+ 2010-08-08 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * bindings.el (complete-symbol): Run completion-at-point as a fallback.
+
+ 2010-08-08 Juanma Barranquero <lekktu@gmail.com>
+
+ * term.el (term-delimiter-argument-list): Reflow docstring.
+ (term-read-input-ring, term-write-input-ring, term-send-input)
+ (term-bol, term-erase-in-display, serial-supported-or-barf):
+ Fix typos in docstrings.
+
+ 2010-08-08 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * bindings.el (function-key-map): Add a S-tab => backtab fallback.
+
+ 2010-08-08 Juanma Barranquero <lekktu@gmail.com>
+
+ * dabbrev.el (dabbrev-completion): Fix typo in docstring.
+
+ 2010-08-08 MON KEY <monkey@sandpframing.com> (tiny change)
+
+ * emacs-lisp/syntax.el (syntax-ppss-toplevel-pos):
+ Fix typo in docstring (bug#6747).
+
+ 2010-08-08 Leo <sdl.web@gmail.com>
+
+ * eshell/esh-io.el (eshell-get-target): Better detection of
+ read-only file (Bug#6762).
+
+ 2010-08-08 Juanma Barranquero <lekktu@gmail.com>
+
+ * align.el (align-default-spacing): Doc fix.
+ (align-region-heuristic, align-regexp): Fix typos in docstrings.
+
+ 2010-08-08 Stephen Peters <speters@itasoftware.com>
+
+ * calendar/icalendar.el
+ (icalendar--split-value): Fix splitting regexp. (Bug#6766)
+ (icalendar--get-weekday-numbers): New.
+ (icalendar--convert-recurring-to-diary): Handle multiple byday
+ values in weekly rules. (Bug#6766)
+
+ 2010-08-08 Ulf Jasper <ulf.jasper@web.de>
+
+ * calendar/icalendar.el (icalendar-uid-format): Doc fix.
+ (icalendar--create-uid, icalendar-export-region)
+ (icalendar--parse-summary-and-rest): Code formatting.
+
+ 2010-08-08 Jay Belanger <jay.p.belanger@gmail.com>
+
+ * calc/calc.el (calc-trail-mode,calc-refresh): Use `face' property
+ to italicize headers.
+ (calc-highlight-selections-with-faces): New variable.
+ (calc-selected-face, calc-nonselected-face): New faces.
+
+ * calc/calccomp.el (math-comp-highlight-string): Use
+ `calc-highlight-selections-with-faces' to determine how to highlight
+ sub-formulas.
+
+ * calc/calc-sel.el (calc-show-selections): Change message to when
+ using faces to highlight selections.
+
+ 2010-08-07 Michael R. Mauger <mmaug@yahoo.com>
+
+ * progmodes/sql.el (sql-mode-sqlite-font-lock-keywords):
+ Add SQLite 3 keywords, functions and datatypes.
+ (sql-interactive-mode): Remove `comint-process-echoes' set to t
+ (Bug#6686).
+
+ 2010-08-07 Chong Yidong <cyd@stupidchicken.com>
+
+ * simple.el (select-active-regions): Move to keyboard.c.
+ (deactivate-mark): Used saved-region-selection.
+ (select-active-region): Function removed.
+ (activate-mark, set-mark, push-mark-command)
+ (handle-shift-selection): Don't call it.
+ (keyboard-quit): Avoid adding the region to the window selection.
+
+ * mouse.el (mouse-drag-track): Remove hacks to deal with old
+ select-active-regions implementation.
+ (mouse-yank-at-click): Doc fix.
+
+ * cus-start.el: Add custom declaration for select-active-regions.
+
+ 2010-08-07 Eli Zaretskii <eliz@gnu.org>
+
+ * simple.el (delete-forward-char): Doc fix.
+
+ * tutorial.el (help-with-tutorial): Hack safe file-local variables
+ after reading the tutorial.
+
+ 2010-08-06 Alan Mackenzie <bug-cc-mode@gnu.org>
+
+ * progmodes/cc-cmds.el (c-mask-paragraph, c-fill-paragraph): Fix
+ for the case that a C style comment has its delimiters alone on
+ their respective lines.
+
+ 2010-08-06 Michael Albinus <michael.albinus@gmx.de>
+
+ * net/tramp.el (tramp-handle-start-file-process): Set connection
+ property "vec".
+ (tramp-process-sentinel): Use it for flushing the cache. We
+ cannot do it via the process buffer, the buffer could be deleted
+ already when running the sentinel.
+
+ 2010-08-06 Jürgen Hötzel <juergen@archlinux.org> (tiny change)
+
+ * comint.el (comint-mode): Make directory tracking functions
+ functional on remote files. (Bug#6764)
+
+ 2010-08-06 Dan Nicolaescu <dann@ics.uci.edu>
+
+ * vc/diff-mode.el (diff-mode-shared-map): Bind g to revert-buffer.
+
+ 2010-08-05 Eli Zaretskii <eliz@gnu.org>
+
+ * emacs-lisp/find-gc.el (find-gc-source-files): Rename
+ unexec.c => unexcoff.c.
+
+ * emacs-lisp/authors.el (authors-fixed-entries): Rename
+ unexec.c => unexcoff.c.
+
+ 2010-08-05 Michael Albinus <michael.albinus@gmx.de>
+
+ * net/tramp.el (tramp-handle-dired-uncache): Flush directory
+ cache, not only file cache.
+ (tramp-process-sentinel): New defun.
+ (tramp-handle-start-file-process): Use it, in order to invalidate
+ file caches.
+
+ 2010-08-03 Leo <sdl.web@gmail.com>
+
+ * server.el (server-start): Simplify loop.
+
+ 2010-08-02 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * frame.el (screen-height, screen-width, set-screen-width)
+ (set-screen-height): Remove ancient compatibility aliases.
+
+ * textmodes/fill.el (justify-current-line): Don't add 1 to nspaces
+ when justifying. It seems useless and harmful for ncols=1 (bug#6738).
+
+ * emacs-lisp/timer.el (timer-event-handler): Protect against timers
+ that change current buffer.
+
+ 2010-08-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
+
+ * mouse.el (mouse-fixup-help-message): Match "mouse-2" only at the
+ beginning of the string. Use `string-match-p'. (Bug#6765)
+
+ 2010-08-01 Jan Djärv <jan.h.d@swipnet.se>
+
+ * cus-start.el (x-gtk-use-system-tooltips): New variable.
+
+ 2010-08-01 Chong Yidong <cyd@stupidchicken.com>
+
+ * emacs-lisp/package.el (package--list-packages): Fix column alignment.
+ (package--builtins): Tweak descriptions.
+ (package-print-package): Upcase descriptions if necessary.
+ Show all built-in packages in font-lock-builtin-face.
+ (package-list-packages-internal): Omit "emacs" package.
+ Show status of built-in packages as "built-in".
+
+ 2010-07-31 Chong Yidong <cyd@stupidchicken.com>
+
+ * mouse.el (mouse-save-then-kill): Doc fix. Deactivate mark
+ before killing to preserve the primary selection (Bug#6701).
+
+ * term/x-win.el (x-select-text): Doc fix.
+
+ 2010-07-31 Nathaniel Flath <flat0103@gmail.com>
+
+ Enhance Java Mode to handle Java 5.0 (Tiger) and Java 6 (Mustang).
+ The following functions were modified or created:
+
+ * progmodes/cc-vars.el (c-offsets-alist, c-inside-block-syms)
+ (objc-font-lock-extra-types):
+ * progmodes/cc-mode.el (c-basic-common-init):
+ * progmodes/cc-langs.el (c-make-mode-syntax-table)
+ (c++-make-template-syntax-table)
+ (c-identifier-syntax-modifications, c-symbol-start, c-operators)
+ (c-<-op-cont-regexp, c->-op-cont-regexp, c-class-decl-kwds)
+ (c-brace-list-decl-kwds, c-modifier-kwds, c-prefix-spec-kwds-re)
+ (c-type-list-kwds, c-decl-prefix-re, c-opt-type-suffix-key):
+ * progmodes/cc-fonts.el (c-make-inverse-face)
+ (c-basic-matchers-after):
+ * progmodes/cc-engine.el (c-forward-keyword-clause)
+ (c-forward-<>-arglist, c-forward-<>-arglist-recur)
+ (c-forward-name, c-forward-type, c-forward-decl-or-cast-1)
+ (c-guess-continued-construct, c-guess-basic-syntax):
+
+ 2010-07-31 Jan Djärv <jan.h.d@swipnet.se>
+
+ * faces.el (face-all-attributes): Improve documentation (Bug#6767).
+
+ 2010-07-31 Eli Zaretskii <eliz@gnu.org>
+
+ * files.el (bidi-paragraph-direction): Define safe local values.
+
+ * language/hebrew.el ("Hebrew"): Add TUTORIAL.he to
+ language-info-alist. Remove outdated FIXME in a comment.
+
+ 2010-07-31 Alan Mackenzie <acm@muc.de>
+
+ * progmodes/cc-cmds.el (c-mask-paragraph): Fix bug #6688:
+ Auto-fill broken in C/C++ modes.
+
++2010-07-30 Martin Rudalics <rudalics@gmx.at>
++
++ * help.el (temp-buffer-max-height, temp-buffer-resize-mode)
++ (resize-temp-buffer-window): Move back from window.el to avoid
++ calling define-minor-mode in window.el and choke in bootstrap.
++
++2010-07-29 Martin Rudalics <rudalics@gmx.at>
++
++ * loadup.el (top-level): Load window before files for the sake
++ of replace-buffer-in-windows.
++
++ * simple.el (get-next-valid-buffer, last-buffer, next-buffer)
++ (previous-buffer): Move to window.el.
++
++ * bindings.el (unbury-buffer): Move to window.el.
++
++ * window.el (display-buffer): Move group definition to front of
++ display buffer section.
++ (record-window-buffer, unrecord-window-buffer)
++ (set-window-buffer-start-and-point, switch-to-prev-buffer)
++ (switch-to-next-buffer): New functions.
++ (get-next-valid-buffer, last-buffer): Move here from simple.el.
++ (next-buffer): Move here from simple.el. Call
++ switch-to-next-buffer.
++ (previous-buffer): Move here from simple.el. Call
++ switch-to-prev-buffer.
++ (bury-buffer, quit-restore-window): Switch to previous buffer
++ when window cannot be deleted.
++ (unbury-buffer): Move here from bindings.el.
++ (delete-windows-on): Switch to previous buffer if window cannot
++ be deleted. Unrecord buffer argument in all live windows.
++ (replace-buffer-in-windows): Move here from window.c. Switch to
++ previous buffer if window cannot be deleted. Unrecord argument
++ buffer in all live windows.
++ (switch-to-buffer): In doc-string warning suggest using
++ with-current-buffer instead of set-buffer.
++
2010-07-29 Jan Djärv <jan.h.d@swipnet.se>
* menu-bar.el (menu-bar-showhide-tool-bar-menu-customize-enable-left)
(tar-header-block-tokenize): Decode the username and groupname.
(tar-chown-entry, tar-chgrp-entry): Encode the names (bug#4730).
- 2009-10-17 Chong Yidong <cyd@stupidchicken.com>
-
- * cedet/srecode/srt.el:
- * cedet/srecode/compile.el:
- * cedet/semantic/mru-bookmark.el:
- * cedet/semantic/debug.el:
- * cedet/semantic/complete.el:
- * cedet/semantic/analyze.el: Require CL when compiling.
-
+ 2009-10-17 Eric Ludlam <zappo@gnu.org>
+
- * cedet/semantic/scope.el
- (semantic-analyze-scoped-inherited-tag-map): Wrap calculation of
- tmpscope so that the regular scope will continue to work.
-
- * cedet/semantic/idle.el (semantic-idle-tag-highlight):
- Use semantic-idle-summary-highlight-face as the highlighting.
-
+ * emacs-lisp/eieio-base.el (eieio-persistent-save): If buffer
+ contains multibyte characters, choose first applicable coding
+ system automatically.
+
- * cedet/ede/project-am.el (project-run-target): New method.
- (project-run-target): New method.
-
- * cedet/ede.el (ede-target): Add run target menu item.
- (ede-project, ede-minor-keymap): Add ede-run-target binding.
- (ede-run-target): New function.
- (ede-target::project-run-target): New method.
-
- * cedet/ede/proj.el (project-run-target): New method.
-
- * cedet/ede/proj-shared.el (ede-gcc-libtool-shared-compiler)
- (ede-g++-libtool-shared-compiler): Remove SHELL. Remove COMMANDS.
- Add :rules.
- (ede-proj-target-makefile-shared-object): Only libtool compilers
- now available. Add linkers for libtool.
- (ede-cc-linker-libtool, ede-g++-linker-libtool): New.
- (ede-proj-makefile-target-name): Always use .la extension.
-
- * cedet/ede/proj-prog.el (project-run-target): New method.
-
- * cedet/ede/proj-obj.el (ede-cc-linker): Rename from ede-gcc-linker.
- (ede-g++-linker): Change Change link lines.
-
- * cedet/ede/pmake.el (ede-pmake-insert-variable-shared):
- When searching for old variables, go to the end of the buffer and
- search backward from there.
- (ede-proj-makefile-automake-insert-subdirs)
- (ede-proj-makefile-automake-insert-extradist): New methods.
- (ede-proj-makefile-create): Use them.
-
- * cedet/ede/pconf.el (ede-proj-configure-test-required-file):
- Force FILE to expand to the current target. Use file-exists-p to
- check that it exists.
-
- * cedet/ede/linux.el (ede-linux-version): Don't call "head".
- (ede-linux-load): Wrap dir in file-name-as-directory.
- Set :version slot.
-
- * cedet/ede/files.el (ede-get-locator-object): When enabling
- locate, do so on "top".
-
- * cedet/ede/emacs.el (ede-emacs-file-existing): Wrap "dir" in
- file-name-as-directory during compare.
- (ede-emacs-version): Return Emacs/XEmacs differentiator.
- Get version number from different places. Don't call egrep.
- (ede-emacs-load): Set :version slot. Call file-name-as-directory
- to set the directory.
-
- * cedet/ede/shell.el: New file.
-
- * cedet/inversion.el (inversion-decoders): Allow for stray . in
- alpha/beta variants.
-
2009-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
* international/mule-cmds.el (select-safe-coding-system): If the file
* term/w32-win.el (setup-default-fontset, set-fontset-font):
Remove unused declarations.
- 2009-10-01 Juanma Barranquero <lekktu@gmail.com>
-
- * cedet/semantic/wisent/javat-wy.el
- (wisent-java-tags-wy--keyword-table): Use \000 instead of literal ^@.
-
- 2009-09-30 Juanma Barranquero <lekktu@gmail.com>
-
- * cedet/srecode/expandproto.el: Fix provide statement.
-
+ 2009-09-30 Eric Ludlam <zappo@gnu.org>
+
+ * emacs-lisp/eieio.el (boolean-p): Delete.
+
- 2009-09-30 Sascha Wilde <wilde@sha-bang.de>
-
- * cedet/ede/srecode.el: Fix provide statement.
-
2009-09-30 Glenn Morris <rgm@gnu.org>
- * cedet/ede/proj.el (ede-proj-target-makefile-miscelaneous):
- * cedet/ede/proj-aux.el (ede-aux-source):
- * cedet/ede/proj-misc.el (ede-proj-target-makefile-miscelaneous)
- (ede-misc-source):
- * cedet/semantic/mru-bookmark.el (semantic-mrub-completing-read)
- (semantic-mrub-switch-tags): Fix doc typos.
-
- * cedet/semantic/db-global.el (data-debug-new-buffer)
- (data-debug-insert-thing): Remove unneeded declarations (one broken).
- (semanticdb-enable-gnu-global-databases): Fix prompt typo.
-
- * cedet/semantic/analyze/fcn.el (semantic-scope-find): Fix declaration.
-
- * cedet/semantic/bovine/gcc.el (semantic-gcc-setup): Replace runtime
- use of CL function `remove-if-not'.
-
* emacs-lisp/authors.el (authors-ignored-files): Add "js2-mode.el".
* emacs-lisp/elint.el (elint-init-form): Report declarations where the
* net/tramp-imap.el: New package.
- * cedet/cedet-cscope.el:
- * cedet/cedet-files.el:
- * cedet/cedet-global.el:
- * cedet/cedet-idutils.el:
- * cedet/data-debug.el:
- * cedet/inversion.el:
- * cedet/mode-local.el:
- * cedet/pulse.el: New files.
-
+ 2009-09-28 Eric Ludlam <zappo@gnu.org>
+
+ * emacs-lisp/chart.el:
+ * emacs-lisp/eieio-base.el:
+ * emacs-lisp/eieio-comp.el:
+ * emacs-lisp/eieio-custom.el:
+ * emacs-lisp/eieio-datadebug.el:
+ * emacs-lisp/eieio-opt.el:
+ * emacs-lisp/eieio-speedbar.el:
+ * emacs-lisp/eieio.el: New files.
+
2009-09-27 Vinicius Jose Latorre <viniciusjl@ig.com.br>
* whitespace.el (whitespace-trailing-regexp)
(const :tag "Off (nil)" :value nil)
(const :tag "Full screen (t)" :value t)
(other :tag "Always" 1)) "22.1")
-- (recenter-redisplay windows
-- (choice
-- (const :tag "Never (nil)" :value nil)
-- (const :tag "Only on ttys" :value tty)
-- (other :tag "Always" t))
-- "23.1")
++ (recenter-redisplay
++ windows (choice
++ (const :tag "Never (nil)" :value nil)
++ (const :tag "Only on ttys" :value tty)
++ (other :tag "Always" t)) "23.1")
++ (window-splits
++ windows (choice
++ (const :tag "Standard" :value nil)
++ (const :tag "Nest" :value nest)
++ (const :tag "Resize" :value resize)) "24.1")
;; xdisp.c
++ (show-trailing-whitespace whitespace-faces boolean nil nil
++ :safe booleanp)
(scroll-step windows integer)
(scroll-conservatively windows integer)
(scroll-margin windows integer)
(string-dir (file-name-directory string))
(string-file (file-name-nondirectory string)))
(dolist (dir dirs)
- (unless dir
- (setq dir default-directory))
- (if string-dir (setq dir (expand-file-name string-dir dir)))
- (when (file-directory-p dir)
- (dolist (file (file-name-all-completions
- string-file dir))
- (push file names)
- (when (string-match suffix file)
- (setq file (substring file 0 (match-beginning 0)))
- (push file names)))))
+ (unless dir
+ (setq dir default-directory))
+ (if string-dir (setq dir (expand-file-name string-dir dir)))
+ (when (file-directory-p dir)
+ (dolist (file (file-name-all-completions
+ string-file dir))
+ (if (not (string-match suffix file))
+ (push file names)
+ (push file fullnames)
+ (push (substring file 0 (match-beginning 0)) names)))))
+ ;; Switching from names to names+fullnames creates a non-monotonicity
+ ;; which can cause problems with things like partial-completion.
+ ;; To minimize the problem, filter out completion-regexp-list, so that
- ;; M-x load-library RET t/x.e TAB finds some files.
- (if completion-regexp-list
- (setq names (all-completions "" names)))
++ ;; M-x load-library RET t/x.e TAB finds some files. Also remove elements
++ ;; from `names' which only matched `string' when they still had
++ ;; their suffix.
++ (setq names (all-completions string names))
+ ;; Remove duplicates of the first element, so that we can easily check
+ ;; if `names' really only contains a single element.
+ (when (cdr names) (setcdr names (delete (car names) (cdr names))))
+ (unless (cdr names)
+ ;; There's no more than one matching non-suffixed element, so expand
+ ;; the list by adding the suffixed elements as well.
+ (setq names (nconc names fullnames)))
(completion-table-with-context
string-dir names string-file pred action)))))
(message "%s"
(substitute-command-keys (concat quit-part scroll-part)))))
--(defun help-window-setup-finish (window &optional reuse keep-frame)
-- "Finish setting up help window WINDOW.
--Select WINDOW according to the value of `help-window-select'.
--Display message telling how to scroll and eventually quit WINDOW.
-
-Optional argument REUSE non-nil means WINDOW has been reused by
-`display-buffer'. Optional argument KEEP-FRAME non-nil means
-that quitting should not delete WINDOW's frame."
- (let ((number-of-windows
- (length (window-list (window-frame window) 'no-mini window))))
- (cond
- ((eq window (selected-window))
- ;; The help window is the selected window, probably the
- ;; `pop-up-windows' nil case.
- (help-window-display-message
- (if reuse
- "Type \"q\" to restore this window"
- ;; This should not be taken.
- "Type \"q\" to quit") window))
- ((= number-of-windows 1)
- ;; The help window is alone on a frame and not the selected
- ;; window, could be the `pop-up-frames' t case.
- (help-window-display-message
- (cond
- (keep-frame "Type \"q\" to delete this window")
- (reuse "Type \"q\" to restore this window")
- (view-remove-frame-by-deleting "Type \"q\" to delete this frame")
- (t "Type \"q\" to iconify this frame"))
- window))
- ((and (= number-of-windows 2)
- (eq (window-frame window) (window-frame (selected-window))))
- ;; There are two windows on the help window's frame and the other
- ;; window is the selected one.
- (if (memq help-window-select '(nil other))
- ;; Do not select the help window.
- (help-window-display-message
- (if reuse
- ;; Offer `display-buffer' for consistency with
- ;; `help-print-return-message'. This is hardly TRT when
- ;; the other window and the selected window display the
- ;; same buffer but has been handled this way ever since.
- "Type \\[display-buffer] RET to restore the other window"
- ;; The classic "two windows" configuration.
- "Type \\[delete-other-windows] to delete the help window")
- window t)
- ;; Select help window and tell how to quit.
- (select-window window)
- (help-window-display-message
- (if reuse
- "Type \"q\" to restore this window"
- "Type \"q\" to delete this window") window)))
- (help-window-select
- ;; Issuing a message with 3 or more windows on the same frame
- ;; without selecting the help window doesn't make any sense.
- (select-window window)
- (help-window-display-message
- (if reuse
- "Type \"q\" to restore this window"
- "Type \"q\" to delete this window") window)))))
-
-(defun help-window-setup (list-of-frames list-of-window-tuples)
- "Set up help window.
-LIST-OF-FRAMES and LIST-OF-WINDOW-TUPLES are the lists of frames
-and window quadruples built by `with-help-window'. The help
-window itself is specified by the variable `help-window'."
- (let* ((help-buffer (window-buffer help-window))
- ;; `help-buffer' now denotes the help window's buffer.
- (view-entry
- (assq help-window
- (buffer-local-value 'view-return-to-alist help-buffer)))
- (help-entry (assq help-window list-of-window-tuples)))
-
- ;; Handle `help-window-point-marker'.
- (when (eq (marker-buffer help-window-point-marker) help-buffer)
- (set-window-point help-window help-window-point-marker)
- ;; Reset `help-window-point-marker'.
- (set-marker help-window-point-marker nil))
++;; No matter what we do down here: There will be always a case that
++;; defeats our best intentions ;-)
++(defun help-window-setup ()
++ "Set up help window."
++ (let* ((help-window (car-safe display-buffer-window-and-buffer))
++ (help-buffer (when (window-live-p help-window)
++ (window-buffer help-window)))
++ (help-value (cdr-safe display-buffer-window-and-buffer))
++ (number-of-windows
++ ;; FIXME: This is intuitvely wrong for compound windows. What
++ ;; we need is the number of windows eligible by `other-window'
++ ;; on this frame.
++ (length (window-list (window-frame help-window) 'no-mini))))
++ (when help-buffer
++ ;; Handle `help-window-point-marker'.
++ (when (eq (marker-buffer help-window-point-marker) help-buffer)
++ (set-window-point help-window help-window-point-marker)
++ ;; Reset `help-window-point-marker'.
++ (set-marker help-window-point-marker nil))
- Optional argument REUSE non-nil means WINDOW has been reused by
- `display-buffer'. Optional argument KEEP-FRAME non-nil means
- that quitting should not delete WINDOW's frame."
- (let ((number-of-windows
- (length (window-list (window-frame window) 'no-mini window))))
- (cond
- ((eq window (selected-window))
- ;; The help window is the selected window, probably the
- ;; `pop-up-windows' nil case.
- (help-window-display-message
- (if reuse
- "Type \"q\" to restore this window"
- ;; This should not be taken.
- "Type \"q\" to quit") window))
- ((= number-of-windows 1)
- ;; The help window is alone on a frame and not the selected
- ;; window, could be the `pop-up-frames' t case.
- (help-window-display-message
- (cond
- (keep-frame "Type \"q\" to delete this window")
- (reuse "Type \"q\" to restore this window")
- (view-remove-frame-by-deleting "Type \"q\" to delete this frame")
- (t "Type \"q\" to iconify this frame"))
- window))
- ((and (= number-of-windows 2)
- (eq (window-frame window) (window-frame (selected-window))))
- ;; There are two windows on the help window's frame and the other
- ;; window is the selected one.
- (if (memq help-window-select '(nil other))
- ;; Do not select the help window.
- (help-window-display-message
- (if reuse
- ;; Offer `display-buffer' for consistency with
- ;; `help-print-return-message'. This is hardly TRT when
- ;; the other window and the selected window display the
- ;; same buffer but has been handled this way ever since.
- "Type \\[display-buffer] RET to restore the other window"
- ;; The classic "two windows" configuration.
- "Type \\[delete-other-windows] to delete the help window")
- window t)
- ;; Select help window and tell how to quit.
- (select-window window)
- (help-window-display-message
- (if reuse
- "Type \"q\" to restore this window"
- "Type \"q\" to delete this window") window)))
- (help-window-select
- ;; Issuing a message with 3 or more windows on the same frame
- ;; without selecting the help window doesn't make any sense.
- (select-window window)
- (help-window-display-message
- (if reuse
- "Type \"q\" to restore this window"
- "Type \"q\" to delete this window") window)))))
-
- (defun help-window-setup (list-of-frames list-of-window-tuples)
- "Set up help window.
- LIST-OF-FRAMES and LIST-OF-WINDOW-TUPLES are the lists of frames
- and window quadruples built by `with-help-window'. The help
- window itself is specified by the variable `help-window'."
- (let* ((help-buffer (window-buffer help-window))
- ;; `help-buffer' now denotes the help window's buffer.
- (view-entry
- (assq help-window
- (buffer-local-value 'view-return-to-alist help-buffer)))
- (help-entry (assq help-window list-of-window-tuples)))
-
- ;; Handle `help-window-point-marker'.
- (when (eq (marker-buffer help-window-point-marker) help-buffer)
- (set-window-point help-window help-window-point-marker)
- ;; Reset `help-window-point-marker'.
- (set-marker help-window-point-marker nil))
-
-- (cond
-- (view-entry
-- ;; `view-return-to-alist' has an entry for the help window.
(cond
-- ((eq help-window (selected-window))
-- ;; The help window is the selected window, probably because the
-- ;; user followed a backward/forward button or a cross reference.
-- ;; In this case just purge stale entries from
-- ;; `view-return-to-alist' but leave the entry alone and don't
-- ;; display a message.
-- (view-return-to-alist-update help-buffer))
-- ((and help-entry (eq (cadr help-entry) help-buffer))
-- ;; The help window was not selected but displayed the help
-- ;; buffer. In this case reuse existing exit information but try
-- ;; to get back to the selected window when quitting. Don't
-- ;; display a message since the user must have seen one before.
-- (view-return-to-alist-update
-- help-buffer (cons help-window
-- (cons (selected-window) (cddr view-entry)))))
-- (help-entry
-- ;; The help window was not selected, did display the help buffer
-- ;; earlier, but displayed another buffer when help was invoked.
-- ;; Set up things so that quitting will show that buffer again.
-- (view-return-to-alist-update
-- help-buffer (cons help-window
-- (cons (selected-window) (cdr help-entry))))
-- (help-window-setup-finish help-window t))
++ ;; Don't say anything if the help window displayed the same
++ ;; buffer before.
++ ((or (not help-value) (eq help-buffer help-value)))
++ ;; The following does not handle the case where the help window
++ ;; fills its frame, is not selected, but does get selected
++ ;; afterwards by external intervention.
++ ((or (eq help-window (selected-window))
++ (and (eq help-window-select t)
++ (select-window help-window)))
++ ;; The help window is or gets selected ...
++ (help-window-display-message
++ (cond
++ ((buffer-live-p help-value)
++ ;; ... and displayed some other buffer before, ...
++ "Type \"q\" to restore previous buffer")
++ ((eq (frame-root-window (window-frame help-window))
++ help-window)
++ (if view-remove-frame-by-deleting
++ ;; ... is on a new deletable frame, ...
++ "Type \"q\" to delete this frame"
++ ;; ... is on a new non-deletable frame, ...
++ "Type \"q\" to iconify this frame"))
++ (t
++ ;; ... is new.
++ "Type \"q\" to delete this window"))
++ help-window t))
++ ((and (= number-of-windows 2)
++ (eq (window-frame help-window)
++ (window-frame (selected-window))))
++ ;; There are two windows on the help window's frame and the
++ ;; other one is the selected one.
++ (if (memq help-window-select '(nil other))
++ ;; Do not select the help window.
++ (help-window-display-message
++ (if (buffer-live-p help-value)
++ ;; Offer `display-buffer' for consistency with
++ ;; `help-print-return-message'. This is not TRT but
++ ;; handled this way ever since.
++ "Type \\[display-buffer] RET to restore previous buffer"
++ ;; The classic "two windows" configuration.
++ "Type \\[delete-other-windows] to delete the help window")
++ help-window 'other)
++ ;; Select help window and tell how to quit.
++ (select-window help-window)
++ (help-window-display-message
++ (if (buffer-live-p help-value)
++ "Type \"q\" to restore previous buffer"
++ "Type \"q\" to delete this window") help-window t)))
(t
-- ;; The help window is new but `view-return-to-alist' had an
-- ;; entry for it. This should never happen.
-- (view-return-to-alist-update
-- help-buffer (cons help-window
-- (cons (selected-window) 'quit-window)))
-- (help-window-setup-finish help-window t))))
-- (help-entry
-- ;; `view-return-to-alist' does not have an entry for help window
-- ;; but `list-of-window-tuples' does. Hence `display-buffer' must
-- ;; have reused an existing window.
-- (if (eq (cadr help-entry) help-buffer)
-- ;; The help window displayed `help-buffer' before but no
-- ;; `view-return-to-alist' entry was found probably because the
-- ;; user manually switched to the help buffer. Set up things
-- ;; for `quit-window' although `view-exit-action' should be
-- ;; able to handle this case all by itself.
-- (progn
-- (view-return-to-alist-update
-- help-buffer (cons help-window
-- (cons (selected-window) 'quit-window)))
-- (help-window-setup-finish help-window t))
-- ;; The help window displayed another buffer before. Set up
-- ;; things in a way that quitting can orderly show that buffer
-- ;; again. The window-start and window-point information from
-- ;; `list-of-window-tuples' provide the necessary information.
-- (view-return-to-alist-update
-- help-buffer (cons help-window
-- (cons (selected-window) (cdr help-entry))))
-- (help-window-setup-finish help-window t)))
-- ((memq (window-frame help-window) list-of-frames)
-- ;; The help window is a new window on an existing frame. This
-- ;; case must be handled specially by `help-window-setup-finish'
-- ;; and `view-mode-exit' to ascertain that quitting does _not_
-- ;; inadvertently delete the frame.
-- (view-return-to-alist-update
-- help-buffer (cons help-window
-- (cons (selected-window) 'keep-frame)))
-- (help-window-setup-finish help-window nil t))
-- (t
-- ;; The help window is shown on a new frame. In this case quitting
-- ;; shall handle both, the help window _and_ its frame. We changed
-- ;; the default of `view-remove-frame-by-deleting' to t in order to
-- ;; intuitively DTRT here.
-- (view-return-to-alist-update
-- help-buffer (cons help-window (cons (selected-window) t)))
-- (help-window-setup-finish help-window)))))
++ ;; Not much to say here.
++ (help-window-display-message
++ "Type \"q\" in help window to quit" help-window))))))
;; `with-help-window' is a wrapper for `with-output-to-temp-buffer'
;; providing the following additional twists:
++ 2010-10-25 Glenn Morris <rgm@gnu.org>
++
++ * Makefile.in (SOME_MACHINE_LISP): Remove easymenu.elc.
++
++ 2010-10-24 Glenn Morris <rgm@gnu.org>
++
++ * w32fns.c (Fx_synchronize, Fx_change_window_property)
++ (Fx_window_property, Fx_file_dialog):
++ * xfns.c (Fx_synchronize, Fx_change_window_property)
++ (Fx_window_property, Fx_file_dialog): Sync docs between w32 and X.
++
++ 2010-10-24 Chong Yidong <cyd@stupidchicken.com>
++
++ * xterm.c (x_connection_closed): Kill Emacs unconditionally.
++
++ 2010-10-24 Eli Zaretskii <eliz@gnu.org>
++
++ * frame.c (Fframep, Fwindow_system): Deprecate use as a predicate.
++
++ * dispnew.c (syms_of_display) <initial-window-system, window-system>:
++ Deprecate use as a boolean flag.
++
++ 2010-10-24 Jim Meyering <jim@meyering.net>
++
++ * emacs.c (argmatch): Don't treat "--" as "--chdir".
++
++ 2010-10-24 Glenn Morris <rgm@gnu.org>
++
++ * w16select.c (syms_of_win16select) <selection-coding-system>:
++ <next-selection-coding-system>:
++ * w32select.c (syms_of_w32select) <selection-coding-system>:
++ <next-selection-coding-system>:
++ Sync docs with select.el.
++
++ * xfaces.c (syms_of_xfaces) <tty-defined-color-alist>: Sync doc with
++ Lisp version.
++
++ * w32term.c (syms_of_w32term) <x-use-underline-position-properties>:
++ Sync doc with the xterm.c version.
++
++ * w32term.c (syms_of_w32term) <x-toolkit-scroll-bars>:
++ * xterm.c (syms_of_xterm) <x-toolkit-scroll-bars>: Sync docs.
++
++ 2010-10-23 Glenn Morris <rgm@gnu.org>
++
++ * buffer.c (syms_of_buffer) <cursor-in-non-selected-windows>:
++ * frame.c (syms_of_frame) <menu-bar-mode>:
++ * xdisp.c (syms_of_xdisp) <auto-hscroll-mode, display-hourglass>:
++ <hourglass-delay>: Sync docs with Lisp.
++
++ 2010-10-23 Eli Zaretskii <eliz@gnu.org>
++
++ Implement mouse highlight for bidi-reordered lines.
++
++ * xdisp.c (fast_find_string_pos): #ifdef away, not used anymore.
++ (mouse_face_from_string_pos): New function, replaces
++ fast_find_string_pos.
++ (note_mouse_highlight): Call it instead of fast_find_string_pos.
++ (note_mode_line_or_margin_highlight): Support bidi-reordered
++ strings and R2L glyph rows. Fix comments.
++ (note_mouse_highlight): When bidi reordering is turned on in a
++ buffer, call next-single-property-change and
++ previous-single-property-change with last argument nil. Clear
++ mouse highlight when mouse pointer is in a R2L row on the stretch
++ glyph that stands for no text beyond the line end.
++ (row_containing_pos): Don't return too early when CHARPOS is in a
++ bidi-reordered continued line. Return immediately when the first
++ hit is found in a line that is not continued, or when an exact
++ match for CHARPOS is found.
++ (rows_from_pos_range): New function.
++ (mouse_face_from_buffer_pos): Use it instead of calling
++ row_containing_pos for START_CHARPOS and END_CHARPOS. Rewrite the
++ function to support mouse highlight in bidi-reordered lines and
++ not to assume that START_CHARPOS is always in mouse_face_beg_row.
++ If necessary, swap mouse_face_beg_row and mouse_face_end_row so
++ that the former is always above the latter or identical to it.
++ (show_mouse_face): Support drawing highlighted R2L lines.
++ (coords_in_mouse_face_p): New function, bidi-aware.
++ (cursor_in_mouse_face_p, note_mouse_highlight, erase_phys_cursor):
++ Call it instead of comparing with mouse-face members of dpyinfo.
++ (note_mode_line_or_margin_highlight): Fix confusingly swapped
++ usage of hpos and vpos.
++
++ 2010-10-22 Jan Djärv <jan.h.d@swipnet.se>
++
++ * xrdb.c: Include keyboard.h for MOTIF.
++
++ * xmenu.c: Revert 2010-07-27 change: lwlib.h is needed for
++ MOTIF (Bug#7263).
++
++ * xfns.c: Include Xm/TextF and Xm/List.
++ (file_dialog_cb, file_dialog_unmap_cb, clean_up_file_dialog): Make
++ ANSI prototypes.
++
++ 2010-10-22 Glenn Morris <rgm@gnu.org>
++
++ * Makefile.in (SOME_MACHINE_LISP): Add w32-vars.
++ Remove ccl and duplicate mouse.
++
++ 2010-10-21 Chong Yidong <cyd@stupidchicken.com>
++
++ * insdel.c (prepare_to_modify_buffer): Don't set
++ saved-region-selection if modification hooks are disabled.
++
++ 2010-10-19 Chong Yidong <cyd@stupidchicken.com>
++
++ * cmds.c (Fdelete_char): Doc fix.
++
++ 2010-10-19 Ken Brown <kbrown@cornell.edu>
++
++ * s/cygwin.h (SIGNALS_VIA_CHARACTERS): New define (bug#7225).
++
++ 2010-10-19 Kenichi Handa <handa@m17n.org>
++
++ Fix incorrect font metrics when the same font is opened with
++ different pixelsizes.
++
++ * xftfont.c: Include composite.h.
++ (xftfont_shape): New function.
++ (syms_of_xftfont): Set xftfont_driver.shape.
++
++ 2010-10-18 Julien Danjou <julien@danjou.info>
++
++ * frame.c (Fframe_pointer_visible_p):
++ Add `frame-pointer-visible-p' to get the pointer visibility.
++
++ 2010-10-18 Lars Magne Ingebrigtsen <larsi@gnus.org>
++
++ * gnutls.c (emacs_gnutls_read): Return 0 if we get a
++ non-"EAGAIN"-like error to signal to Emacs that the socket should
++ be closed.
++
++ 2010-10-15 Eli Zaretskii <eliz@gnu.org>
++
++ * unexcoff.c (make_hdr): Fix prototype according to changes in
++ 2010-10-03T13:59:56Z!dann@ics.uci.edu.
++
++ * image.c (tiff_load): Cast 3rd argument to avoid compiler warning.
++
++ 2010-10-15 Tassilo Horn <tassilo@member.fsf.org>
++
++ * Makefile.in (really-oldXMenu): Fix typo in variable name that
++ made building the X menu fail.
++ (really-oldXMenu): Fix my previous fix.
++
++ 2010-10-14 Damyan Pepper <damyanp@gmail.com>
++
++ Fix handling of font properties on Windows (bug#6303).
++ * font.c (font_filter_properties): New function, refactored from
++ ftfont_filter_properties.
++ * font.h (font_filter_properties): Declare.
++ * ftfont.c (ftfont_filter_properties): Use font_filter_properties.
++ * w32font.c (w32font_booleans, w32font_non_booleans): New variables.
++ (w32font_filter_properties): New function.
++ (w32font_driver): Add w32font_filter_properties.
++
++ 2010-10-14 Juanma Barranquero <lekktu@gmail.com>
++
++ * font.c (Ffont_variation_glyphs):
++ * ccl.c (Fccl_execute_on_string): Fix typo in docstring.
++
++ 2010-10-14 Juanma Barranquero <lekktu@gmail.com>
++
++ * w32fns.c (w32_wnd_proc, file_dialog_callback):
++ * w32font.c (w32_generic_family):
++ * w32inevt.c (key_event):
++ * w32menu.c (fill_in_menu):
++ * w32proc.c (reader_thread, w32_executable_type, compare_env)
++ (merge_and_sort_env, int_from_hex, enum_locale_fn, enum_codepage_fn):
++ * w32term.c (w32_read_socket): Make static.
++
++ 2010-10-13 Juanma Barranquero <lekktu@gmail.com>
++
++ * image.c (DEF_IMGLIB_FN): Add argument to adapt to strict
++ prototypes; all callers changed.
++
++ 2010-10-13 Juanma Barranquero <lekktu@gmail.com>
++
++ * makefile.w32-in (TLIB2): Rename from TLIBW32.
++ (OBJ2): New macro.
++ (WIN32OBJ, FONTOBJ): Remove.
++ (OBJ1): Redistribute object files with OBJ2.
++ (LIBS, $(TEMACS)): Use TLIB2.
++ (make-buildobj-CMD, make-buildobj-SH): Use OBJ2.
++ ($(TLIB2), TAGS, TAGS-LISP, TAGS-gmake): Depend on OBJ2.
++
++ 2010-10-13 Juanma Barranquero <lekktu@gmail.com>
++
++ * emacs.c (Vdynamic_library_alist)
++ (syms_of_emacs) <dynamic-library-alist>: Move from image.c and rename.
++ Doc fix.
++
++ * lisp.h (Vdynamic_library_alist): Declare extern.
++
++ * image.c (Vimage_library_alist)
++ (syms_of_image) <image-library-alist>: Move to emacs.c and rename.
++ (lookup_image_type): Use Vdynamic_library_alist.
++ (Finit_image_library): Doc fix.
++
++ 2010-10-12 Dan Nicolaescu <dann@ics.uci.edu>
++
++ * Makefile.in (lispsource, libsrc, etc, oldxmenudir, lwlibdir)
++ (lispdir): Remove trailing /, update all uses.
++
++ 2010-10-12 Jan Djärv <jan.h.d@swipnet.se>
++
++ * nsterm.m (Qleft): Declare.
++ (ns_right_alternate_modifier): New variable
++ (NSRightAlternateKeyMask): New define.
++ (EV_MODIFIERS): Parse NSRightAlternateKeyMask if
++ ns_right_alternate_modifier isn't Qleft.
++ (keyDown): If ns_right_alternate_modifier isn't Qleft, use it
++ as emacs modifier for NSRightAlternateKeyMask.
++ (syms_of_nsterm): DEFVAR_LISP ns-right-alternate-modifier.
++
++ 2010-10-10 Lars Magne Ingebrigtsen <larsi@gnus.org>
++
++ * gnutls.c (emacs_gnutls_write): If we're trying to write before
++ gnutls is ready, return EAGAIN as the errno.
++
++ 2010-10-10 Dan Nicolaescu <dann@ics.uci.edu>
++
++ * vm-limit.c:
++ * unexhp9k800.c:
++ * unexelf.c:
++ * unexaix.c:
++ * termcap.c: Remove #ifdef emacs / #ifndef emacs code, unused.
++
++ * Makefile.in (temacs): Use $(ALL_CFLAGS) on the link line.
++ (PROFILING_LDFLAGS): Remove, not needed anymore.
++
++ * Makefile.in: Use $(...) everywhere instead of ${...}
++ (CRT_DIR): Move near potential user.
++ (START_FILE): Move near CRT_DIR, it might use it.
++
++ * sysdep.c (LPASS8): Remove, unused.
++ (emacs_ospeed): Change from being a global to a local in the only
++ user: init_baud_rate.
++
++ 2010-10-09 Lars Magne Ingebrigtsen <larsi@gnus.org>
++
++ * gnutls.c (syms_of_gnutls): All the bootprops are keywords.
++ (emacs_gnutls_write): Remove the debuggin fsync call.
++ (emacs_gnutls_read): Return -1 if we got an error from
++ gnutls_read. This allows us to actually read lots of data from
++ the GnuTLS stream.
++ (emacs_gnutls_write): Check for GNUTLS_E_AGAIN and not EINTR.
++ According to the documentation, this is correct, and it seems to
++ make things work.
++
++ 2010-10-09 Chong Yidong <cyd@stupidchicken.com>
++
++ * xterm.c (x_draw_relief_rect): Clear corner pixels.
++
++ 2010-10-08 Michael Albinus <michael.albinus@gmx.de>
++
++ * keyboard.c: Revert last change; it was not intended to be
++ synchronized with the trunk.
++
++ 2010-10-08 Kenichi Handa <handa@m17n.org>
++
++ * coding.c (complement_process_encoding_system): Fix previous change.
++
++ 2010-10-08 Michael Albinus <michael.albinus@gmx.de>
++
++ * dbusbind.c (syms_of_dbusbind): Move putenv call ...
++ (Fdbus_init_bus): ... here. (Bug#7113)
++
++ 2010-10-08 Glenn Morris <rgm@gnu.org>
++
++ * buffer.c (before-change-functions, after-change-functions):
++ Three-year overdue doc fix following 2007-08-13 change.
++
++ 2010-10-08 Kenichi Handa <handa@m17n.org>
++
++ * coding.c (coding_inherit_eol_type): If parent doesn't specify
++ eol-format, inherit from the system's default.
++ (complement_process_encoding_system): Make a new coding system
++ inherit the original eol-format.
++
++ 2010-10-08 Kenichi Handa <handa@m17n.org>
++
++ * coding.c (complement_process_encoding_system): New function.
++
++ * coding.h (complement_process_encoding_system): Extern it.
++
++ * callproc.c (Fcall_process): Complement the coding system for
++ encoding arguments.
++ (Fcall_process_region): Complement the coding system for encoding
++ the input to the process.
++
++ * process.c (Fstart_process): Complement the coding system for
++ encoding arguments.
++ (send_process): Complement the coding system for encoding what
++ sent to the process.
++
++ 2010-10-08 Kenichi Handa <handa@m17n.org>
++
++ * xfont.c (xfont_open): Fix setting of font->average_width from
++ :avgwidth property (Bug#7123).
++
++ 2010-10-08 Michael Albinus <michael.albinus@gmx.de>
++
++ * dbusbind.c (syms_of_dbusbind): Use putenv instead of setenv, it
++ is more portable.
++
++ * keyboard.c (gobble_input): Move call of xd_read_queued_messages ...
++ (kbd_buffer_get_event): ... here. This is needed for cygwin, which
++ has not defined SIGIO.
++
++ 2010-10-08 Chong Yidong <cyd@stupidchicken.com>
++
++ * xterm.c (x_draw_relief_rect): If box width is larger than 1,
++ draw the outermost line using the black relief, for legibility.
++ Omit drawing the four corner pixels.
++
+ 2010-10-04 Chong Yidong <cyd@stupidchicken.com>
+
+ * keyboard.c (echo_prompt): Function moved into read_key_sequence.
+ (read_key_sequence): Inline echo_prompt.
+ (echo_dash): Add a dash only if key is continued (Bug#7137).
+
+ 2010-10-04 Dan Nicolaescu <dann@ics.uci.edu>
+
+ Remove O_RDONLY, O_WRONLY definitions, not needed.
+ * unexcoff.c:
+ * lread.c:
+ * fileio.c:
+ * doc.c:
+ * callproc.c:
+ * alloc.c:
+ * termcap.c: Remove O_RDONLY O_WRONLY definitions.
+
+ 2010-10-03 Teodor Zlatanov <tzz@lifelogs.com>
+
+ * gnutls.h (GNUTLS_LOG2): Convenience macro.
+
+ * gnutls.c: Add property list symbol holders.
+ (emacs_gnutls_handshake): Clarify how sockets are passed to
+ GnuTLS.
+ (gnutls_log_function2): Convenience function using GNUTLS_LOG2.
+ (Fgnutls_boot): Get all parameters from a plist. Require trustfiles
+ and keyfiles to be a list of file names. Default to "NORMAL" for
+ the priority string. Improve logging.
+
+ 2010-10-03 Glenn Morris <rgm@gnu.org>
+
+ * fileio.c (Vdirectory_sep_char): Remove.
+
+ 2010-10-03 Dan Nicolaescu <dann@ics.uci.edu>
+
+ * termhooks.h: Remove #ifdef CONSP.
+
+ * xterm.c (NO_INLINE, noinline): Move definitions to ../configure.in.
+
+ Include <fcntl.h> unconditionally.
+ * termcap.c:
+ * sysdep.c:
+ * lread.c:
+ * keyboard.c:
+ * filelock.c:
+ * fileio.c:
+ * doc.c:
+ * callproc.c:
+ * alloc.c: Remove include guards for <fcntl.h>, process.c already
+ does it.
+
+ * process.c: Do not include <sys/wait.h>, syswait.h does it.
+
+ * sysdep.c (flush_pending_output): Remove code, does not do
+ anything on any platform.
+
+ Remove unused code.
+ * sysdep.c (select_alarm, sys_select, read_input_waiting): Remove
+ select emulation, all systems support select.
+ (set_exclusive_use): Remove, the only user is in an #if 0 block.
+ * process.c (create_process): Remove #if 0 code.
+
+ Remove unused arguments for unexec.
+ The third one is never used, and the last two are always passed as zero.
+ * emacs.c (unexec): Add declaration.
+ (Fdump_emacs): Only pass the first two arguments to unexec.
+ Simplify #ifdef.
+ * unexw32.c (unexec):
+ * unexsol.c (unexec):
+ * unexhp9k800.c (unexec):
+ * unexcw.c (unexec): Remove the last 3 arguments, unused.
+ * unexelf.c (unexec): Remove the last 3 arguments, unused.
+ (find_section): Use const.
+ * unexmacosx.c (unexec): Remove the last 3 arguments, unused.
+ (unexec_error): Declare it NO_RETURN.
+ * unexcoff.c (make_hdr): Assume bss_start is always zero, remove
+ it as an argument, remove data_start and entry_address arguments, unused.
+ (unexec): Remove bss_start, data_start and
+ entry_address arguments.
+ * unexaix.c (make_hdr): Assume bss_start is always zero, remove
+ it as an argument, remove data_start and entry_address arguments, unused.
+ (unexec): Remove bss_start, data_start and
+ entry_address arguments.
+
+ 2010-10-03 Juanma Barranquero <lekktu@gmail.com>
+
+ * makefile.w32-in (TAGS, TAGS-LISP, TAGS-gmake): Add $(FONTOBJ).
+
+ * gnutls.c (emacs_gnutls_handshake, gnutls_make_error)
+ (gnutls_emacs_global_init, gnutls_emacs_global_deinit): Make static.
+ (Fgnutls_get_initstage, Fgnutls_deinit, Fgnutls_boot, Fgnutls_bye):
+ Fix typos in docstrings.
+ (Fgnutls_error_fatalp, Fgnutls_error_string): Doc fixes.
+ (Fgnutls_errorp): Doc fix; use ERR for the argument name.
+
+ 2010-10-03 Chong Yidong <cyd@stupidchicken.com>
+
+ * keyboard.c (command_loop_1): Make sure the mark is really alive
+ before using it (Bug#7044).
+
+ 2010-10-02 Juanma Barranquero <lekktu@gmail.com>
+
+ * makefile.w32-in (tags): Rename target to full-tags.
+
+ 2010-10-02 Eli Zaretskii <eliz@gnu.org>
+
+ * emacs.c (main): Remove !WINDOWSNT conditional.
+ (Fkill_emacs): Don't mention exemption on MS-Windows.
+
+ 2010-10-02 Glenn Morris <rgm@gnu.org>
+
+ * character.c (Fchar_bytes): Remove obsolete function.
+ (syms_of_character): Remove Schar_bytes.
+
+ * emacs.c (fatal_error_signal): Also run Fkill_emacs on SIGINT.
+ (main) [!WINDOWSNT]: Handle SIGINT with fatal_error_signal
+ in batch-mode.
+ (Fkill_emacs): Doc fix. Also run the hook in batch mode.
+ (kill-emacs-hook): Doc fix.
+
+ 2010-10-02 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * xml.c (Flibxml_parse_xml_region, Flibxml_parse_html_region)
+ (parse_region): Reworked to take regions instead of strings, and
+ renamed to reflect that these are the libxml functions.
+
+ 2010-10-01 Eli Zaretskii <eliz@gnu.org>
+
+ * term.c (init_tty) [DOS_NT]: Don't call Wcm_clear after setting
+ screen dimensions in tty->Wcm.
+
+ * xdisp.c (set_cursor_from_row): When the row is truncated and
+ point is outside the range of displayed characters, position the
+ cursor inside the scroll margin. (Bug#6349)
+
+ 2010-10-01 Dan Nicolaescu <dann@ics.uci.edu>
+
+ Do not include stdlib.h and string.h, config.h does it.
+ * xfont.c:
+ * w32term.c:
+ * w32reg.c:
+ * w32inevt.c:
+ * w32heap.c:
+ * w32console.c:
+ * w16select.c:
+ * unexsol.c:
+ * term.c:
+ * sound.c:
+ * scroll.c (m):
+ * gtkutil.c:
+ * font.c:
+ * filelock.c:
+ * fileio.c:
+ * dosfns.c:
+ * dbusbind.c:
+ * bidi.c:
+ * callproc.c:
+ * process.c:
+ * msdos.c:
+ * charset.c: Do not include stdlib.h and string.h, config.h does it.
+
+ * callproc.c (SIGCHLD): Remove conditional definition, syssignal.h defines it.
+
+ * process.c: Move #include <pty.h> earlier.
+ (SIGCHLD): Remove conditional definition, syssignal.h defines it.
+ (pty_name): Move definition later.
+
+ * nsselect.m (syms_of_nsselect):
+ * nsmenu.m (syms_of_nsmenu):
+ * nsfns.m (syms_of_nsfns):
+ * msdos.c (syms_of_msdos):
+
+ * image.c (syms_of_image):
+ * charset.c (syms_of_charset): Use intern_c_string instead of intern.
+
+ * point.h: Remove, unused.
+
+ 2010-10-01 Eli Zaretskii <eliz@gnu.org>
+
+ * makefile.w32-in (TAGS, frc, TAGS-LISP, ../nt/TAGS, tags)
+ (TAGS-gmake, TAGS-nmake, TAGS-LISP-gmake, TAGS-LISP-nmake)
+ (nt-TAGS-gmake, nt-TAGS-nmake): New targets.
+
+ 2010-09-30 Dan Nicolaescu <dann@ics.uci.edu>
+
+ * xml.c (parse_string): Use const.
+
+ 2010-09-30 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * eval.c (Fbacktrace): Don't overwrite print-level on exit. Also
+ only override Vprint_level if it isn't already bound, and increase
+ the level to 8 to produce more useful backtraces for bug reports.
+
+ 2010-09-30 Dan Nicolaescu <dann@ics.uci.edu>
+
+ * Makefile.in: ecrt0.c does not exist anymore, do not mention it.
+
+ 2010-09-30 Juanma Barranquero <lekktu@gmail.com>
+
+ * w32console.c (vga_stdcolor_name): Remove unused function;
+ presumed dead after 2007-11-30T13:57:21Z!jasonr@gnu.org.
+
+ 2010-09-29 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * gnutls.c (emacs_gnutls_handshake): Made into internal function.
+ (Fgnutls_boot): Start the handshake.
+ (emacs_gnutls_read): Perform the handshake from the reader loop.
+ (Fgnutls_boot): Remove some debugging messages.
+ Change indentation throughout to use the Emacs style.
+ (emacs_gnutls_handshake): Cast the fds to something that's
+ possibly the expected length.
+ (emacs_gnutls_write): Return -1 if we try to write before handshake.
+
+ * process.h (Lisp_Process): Add a gnutls_p field to Lisp_Process.
+
+ * process.c (make_process): Set the gnutls_p field to zero by
+ default.
+ (read_process_output): Always call the gnutls_read function if the
+ stream is a gnutls stream.
+ (send_process): Ditto for writes.
+
+ * gnutls.c (emacs_gnutls_write, emacs_gnutls_read): Refuse to read
+ or write anything until the state is GNUTLS_STAGE_READY.
+ (Fgnutls_boot): Mark the stream as being a gnutls stream.
+
+ 2010-09-29 Eli Zaretskii <eliz@gnu.org>
+
+ * xdisp.c (reseat_1): Initialize bidi_it.paragraph_dir to
+ NEUTRAL_DIR.
+ (handle_invisible_prop, iterate_out_of_display_property)
+ (next_element_from_buffer): If bidi_it.first_elt is set, call
+ bidi_paragraph_init with NO_DEFAULT_P argument non-zero.
+ (Bug#7128)
+
+ * print.c (print_object): Fix format string and argument types for
+ printing a Lisp_Misc_Marker.
+
+ * xdisp.c (pos_visible_p, c_string_pos, number_of_chars)
+ (load_overlay_strings, get_overlay_strings_1)
+ (get_overlay_strings, forward_to_next_line_start)
+ (back_to_previous_visible_line_start, reseat, reseat_to_string)
+ (get_next_display_element, next_element_from_string)
+ (next_element_from_c_string, next_element_from_buffer)
+ (move_it_vertically_backward, move_it_by_lines, add_to_log)
+ (message_dolog, message_log_check_duplicate, message2_nolog)
+ (message3, message3_nolog, vmessage, set_message, set_message_1)
+ (hscroll_window_tree, text_outside_line_unchanged_p)
+ (set_cursor_from_row, set_vertical_scroll_bar, redisplay_window)
+ (find_last_unchanged_at_beg_row)
+ (find_first_unchanged_at_end_row, row_containing_pos)
+ (trailing_whitespace_p, display_mode_element, decode_mode_spec)
+ (display_count_lines, x_produce_glyphs, note_mouse_highlight): Use
+ EMACS_INT for buffer and string positions.
+
+ * dispextern.h (struct it) <string_nchars>: Declare EMACS_INT.
+ (row_containing_pos): Adjust prototype.
+
+ * lisp.h (pos_visible_p, message2, message2_nolog, message3)
+ (message2_nolog, set_message): Adjust prototypes.
+
+ 2010-09-28 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * gnutls.c (Fgnutls_boot): Remove unused vars `data' and `srp_cred'.
+ (Fgnutls_boot): Use SDATA.
+ (Fgnutls_handshake): Remove unused var `max_log_level'.
+
+ 2010-09-27 Michael Albinus <michael.albinus@gmx.de>
+
+ * dbusbind.c (syms_of_dbusbind): Set $DBUS_FATAL_WARNINGS to "0".
+ (Bug#7113)
+
+ 2010-09-27 Jan Djärv <jan.h.d@swipnet.se>
+
+ * xgselect.c (xg_select): Clear file descriptors not set from
+ rfds and wfds.
+
+ * process.c (wait_reading_process_output): Add missing FD_CLR
+ for write_mask (must mirror connect_wait_mask).
+
+ 2010-09-27 Teodor Zlatanov <tzz@lifelogs.com>
+
+ * gnutls.c (gnutls_log_function): Show level and "gnutls.c"
+ prefix.
+ (Fgnutls_boot): Use changed process members. Use log level with a
+ function parameter to set it. Bring back Emacs-level debugging
+ messages at log level 1 and 2.
+
+ * process.c (make_process): Initialize gnutls_log_level.
+
+ * process.h: Add gnutls_log_level and rename x509_cred and
+ anon_cred to have the gnutls_ prefix for consistency.
+
+ * gnutls.h (GNUTLS_LOG): Add convenience macro.
+
+ 2010-09-27 Juanma Barranquero <lekktu@gmail.com>
+
+ * w32.c (g_b_init_get_sid_identifier_authority)
+ (GetSidIdentifierAuthority_Proc, get_sid_identifier_authority):
+ Remove, not used.
+ (globals_of_w32): Don't set g_b_init_get_sid_identifier_authority.
+ (init_winsock): Remove useless assignment.
+ (open_process_token, get_token_information, lookup_account_sid)
+ (get_sid_sub_authority, get_sid_sub_authority_count, get_file_security)
+ (get_security_descriptor_owner, get_security_descriptor_group)
+ (is_valid_sid, equal_sid, get_length_sid, copy_sid)
+ (get_native_system_info, get_system_times, init_user_info, crlf_to_lf)
+ (is_unc_volume, GetCachedVolumeInformation, get_volume_info)
+ (is_fat_volume, open_unc_volume, read_unc_volume, close_unc_volume)
+ (unc_volume_file_attributes, convert_from_time_t)
+ (create_toolhelp32_snapshot, process32_first, process32_next)
+ (open_thread_token, impersonate_self, revert_to_self)
+ (get_process_memory_info, get_process_working_set_size)
+ (global_memory_status, global_memory_status_ex, socket_to_fd)
+ (shutdown_handler): Make static.
+
+ 2010-09-27 Michael Albinus <michael.albinus@gmx.de>
+
+ * dbusbind.c (dbus_fd_cb, xd_get_dispatch_status)
+ (xd_pending_messages): Functions removed.
+ (xd_read_queued_messages): Add parameters fd, *data, for_read in
+ order to be compatible with add_read_fd. Determine bus from data,
+ and call xd_read_message just for this bus.
+ (xd_add_watch): Use xd_read_queued_messages as callback function.
+ Add data.
+
+ * lisp.h (xd_pending_messages, xd_read_queued_messages): Remove.
+
+ 2010-09-27 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * gnutls.c (gnutls_log_function): Added more debugging.
+ (emacs_gnutls_read): Don't infloop while reading.
+
+ 2010-09-27 Kenichi Handa <handa@m17n.org>
+
+ These changes are to remove restriction on the number of glyphs in
+ one composition.
+
+ * dispextern.h (struct glyph): Change the member "slice" to union.
+ Remove u.cmp.from and u.cmp.to. Give more bits to u.cmp.id.
+ (GLYPH_SLICE_EQUAL_P): Adjusted for the above change.
+
+ * dispnew.c (buffer_posn_from_coords): Use glyph->slice.img
+ instead of glyph->slice.
+ (marginal_area_string): Likewise.
+
+ * term.c (encode_terminal_code): Use glyph->slice.cmp instead of
+ glyph->u.cmp.
+ (append_composite_glyph): Likewise.
+
+ * xdisp.c (dump_glyph): Use glyph->slice.cmp instead of
+ glyph->u.cmp.
+ (fill_gstring_glyph_string, x_get_glyph_overhangs)
+ (append_composite_glyph): Likewise.
+ (fill_image_glyph_string): Use glyph->slice.img instead of
+ glyph->slice.
+ (append_glyph, produce_image_glyph, append_stretch_glyph)
+ (note_mouse_highlight): Likewise.
+
+ 2010-09-26 Jan Djärv <jan.h.d@swipnet.se>
+
+ * process.c (add_keyboard_wait_descriptor)
+ (delete_keyboard_wait_descriptor): Reinstate ifdef subprocesses.
+ (wait_reading_process_output): Don't pass write_mask to select
+ if SELECT_CANT_DO_WRITE_MASK is defined.
+ (SELECT_CANT_DO_WRITE_MASK): Define if SELECT_CANT_DO_WRITE_MASK.
+
+ * process.h (add_read_fd, delete_read_fd, add_write_fd)
+ (delete_write_fd): Declare.
+
+ * process.c (gpm_wait_mask, max_gpm_desc): Remove.
+ (write_mask): New variable.
+ (max_input_desc): Renamed from max_keyboard_desc.
+ (fd_callback_info): New variable.
+ (add_read_fd, delete_read_fd, add_write_fd, delete_write_fd):
+ New functions.
+ (Fmake_network_process): FD_SET write_mask.
+ (deactivate_process): FD_CLR write_mask.
+ (wait_reading_process_output): Connecting renamed to Writeok.
+ check_connect removed. check_write is new. Remove references to gpm.
+ Use Writeok/check_write unconditionally (i.e. no #ifdef
+ NON_BLOCKING_CONNECT) instead of Connecting.
+ Loop over file descriptors and call callbacks in fd_callback_info
+ if file descriptor is ready for I/O.
+ (add_gpm_wait_descriptor): Just call add_keyboard_wait_descriptor.
+ (delete_gpm_wait_descriptor): Just call delete_keyboard_wait_descriptor.
+ (keyboard_bit_set): Use max_input_desc.
+ (add_keyboard_wait_descriptor, delete_keyboard_wait_descriptor):
+ Remove #ifdef subprocesses. Use max_input_desc.
+ (init_process): Initialize write_mask and fd_callback_info.
+
+ * keyboard.c (readable_events, gobble_input): Remove DBUS code.
+
+ * dbusbind.c: Include process.h.
+ (dbus_fd_cb, xd_find_watch_fd, xd_toggle_watch)
+ (xd_read_message_1): New functions.
+ (xd_add_watch, xd_remove_watch): Call xd_find_watch_fd.
+ Handle watch for both read and write.
+ (Fdbus_init_bus): Also register xd_toggle_watch.
+ (Fdbus_call_method_asynchronously, Fdbus_method_return_internal)
+ (Fdbus_method_error_internal, Fdbus_send_signal): Remove call
+ to dbus_connection_flush.
+ (xd_read_message): Move most of the code to xd_read_message_1.
+ Call xd_read_message_1 until status is COMPLETE.
+
+ 2010-09-26 Dan Nicolaescu <dann@ics.uci.edu>
+
+ * term.c: Do not include sys/ioctl.h, not needed.
+ (init_tty): Reorder code to reduce the number of #ifdefs.
+ No code changes.
+
+ 2010-09-26 Teodor Zlatanov <tzz@lifelogs.com>
+
+ * process.h: Set up GnuTLS support.
+
+ * process.c (make_process, Fstart_process)
+ (read_process_output, send_process): Set up GnuTLS support for
+ process input/output file descriptors.
+
+ * gnutls.h: The GnuTLS glue for Emacs, macros and enums.
+
+ * gnutls.c: The source code for GnuTLS support in Emacs.
+
+ * emacs.c: Set up GnuTLS support and call syms_of_gnutls.
+
+ * config.in: Set up GnuTLS support.
+
+ * Makefile.in (LIBGNUTLS_LIBS, LIBGNUTLS_CFLAGS, ALL_CFLAGS)
+ (obj, LIBES): Set up GnuTLS support.
+
+ 2010-09-26 Juanma Barranquero <lekktu@gmail.com>
+
+ * w32.c (get_emacs_configuration_options): Fix previous change.
+
+ 2010-09-25 Chong Yidong <cyd@stupidchicken.com>
+
+ * insdel.c (prepare_to_modify_buffer): Ensure the mark marker is
+ alive before using it (Bug#6977).
+
+ 2010-09-25 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * xdisp.c (face_before_or_after_it_pos): EMACS_INT/int fixup.
+
+ * dispextern.h: EMACS_INT/int fixup.
+
+ * xdisp.c (string_pos_nchars_ahead, init_iterator): EMACS_INT/int
+ fixup.
+
+ * xrdb.c (magic_file_p): EMACS_INT/int fixup.
+
+ 2010-09-25 Eli Zaretskii <eliz@gnu.org>
+
+ * window.c (Fpos_visible_in_window_p, Fdelete_other_windows)
+ (Fselect_window, window_scroll_pixel_based)
+ (window_scroll_line_based, Frecenter, Fset_window_configuration):
+ Use EMACS_INT for buffer positions.
+
+ * textprop.c (validate_interval_range, interval_of)
+ (property_change_between_p, Fadd_text_properties)
+ (set_text_properties_1, Fremove_text_properties)
+ (Fremove_list_of_text_properties, Ftext_property_any)
+ (Ftext_property_not_all, copy_text_properties)
+ (text_property_list, extend_property_ranges)
+ (verify_interval_modification): Use EMACS_INT for buffer
+ positions.
+
+ * term.c (fast_find_position, term_mouse_highlight): Use EMACS_INT
+ for buffer positions.
+
+ * process.c (read_process_output, send_process)
+ (Fprocess_send_region, status_notify): Use EMACS_INT for buffer
+ and string positions and size.
+
+ * print.c (print_object, print_string, strout): Use EMACS_INT for
+ string indices.
+
+ * minibuf.c (string_to_object): Use EMACS_INT for string position
+ and size.
+
+ * marker.c (verify_bytepos): Use EMACS_INT for buffer positions.
+
+ * lread.c <read_from_string_index, read_from_string_index_byte>
+ <read_from_string_limit, readchar_count>: Define EMACS_INT.
+ (readchar, unreadchar, read_internal_start): Use EMACS_INT for
+ buffer positions and string length.
+
+ * keyboard.c <last_point_position, last_non_minibuf_size>: Declare
+ EMACS_INT.
+ (echo_truncate, adjust_point_for_property, read_char)
+ (gen_help_event, make_lispy_event, modify_event_symbol)
+ (Fexecute_extended_command, stuff_buffered_input): Use EMACS_INT
+ for buffer positions and string length.
+
+ * keyboard.h (gen_help_event): Adjust prototype.
+
+ * termhooks.h <struct input_event>: Make `code' member EMACS_INT.
+
+ * commands.h <last_point_position>: Declare EMACS_INT.
+
+ * xdisp.c <help_echo_pos>: Define as EMACS_INT.
+ (truncate_echo_area): Accept EMACS_INT argument.
+
+ * dispextern.h <help_echo_pos>: Declare EMACS_INT.
+
+ * lisp.h (truncate_echo_area): Adjust prototype.
+
+ * composite.c (composition_adjust_point): Return EMACS_INT.
+
+ * composite.h (composition_adjust_point): Adjust prototype.
+
+ 2010-09-25 Juanma Barranquero <lekktu@gmail.com>
+
+ * process.c (Fmake_network_process): When arg :host is 'local,
+ use address 127.0.0.1, not name "localhost". (Bug#6781)
+
+ 2010-09-24 Eli Zaretskii <eliz@gnu.org>
+
+ * indent.c (Fcurrent_indentation, indented_beyond_p)
+ (compute_motion): Use EMACS_INT for buffer position variables.
+
+ * lisp.h (indented_beyond_p): Adjust prototype.
+
+ * buffer.c (overlay_strings): Return EMACS_INT.
+
+ * buffer.h (overlay_strings): Adjust prototype.
+
+ * region-cache.c (pp_cache): Adjust format to arguments.
+
+ * eval.c <specpdl_size, lisp_eval_depth>: Declare EMACS_INT.
+ (call_debugger): Use EMACS_INT for specpdl_size related variables.
+ (verror): Use EMACS_INT for size of allocated buffer.
+
+ * keyboard.c (make_lispy_position): Use EMACS_INT for buffer
+ positions.
+
+ * xdisp.c (redisplay_internal, try_window_id)
+ (set_cursor_from_row, find_first_unchanged_at_end_row): Use
+ EMACS_INT for buffer positions.
+
+ * dispextern.h (set_cursor_from_row): Adjust prototype.
+
+ * dispnew.c (increment_matrix_positions)
+ (increment_row_positions, copy_glyph_row_contents)
+ (mode_line_string, marginal_area_string): Use EMACS_INT for buffer
+ positions.
+
+ * dispextern.h (mode_line_string, marginal_area_string)
+ (increment_matrix_positions, increment_row_positions): Adjust
+ prototypes.
+
+ * data.c (Faref, Faset): Use EMACS_INT for string length and
+ positions.
+
+ * cmds.c (internal_self_insert): Use EMACS_INT for the count of
+ characters to insert.
+
+ * ccl.c (Fccl_execute_on_string): Use EMACS_INT for string
+ position and size.
+
+ * syntax.c (scan_words, update_syntax_table)
+ (prev_char_comend_first, back_comment, skip_chars)
+ (skip_syntaxes, Fforward_comment, Fbackward_prefix_chars): Use
+ EMACS_INT for buffer and string positions.
+
+ * syntax.h (scan_words, update_syntax_table): Adjust prototypes.
+
+ * casefiddle.c (operate_on_word): Use EMACS_INT for buffer
+ positions.
+
+ 2010-09-24 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * scroll.c (calculate_scrolling, line_ins_del)
+ (calculate_direct_scrolling, scroll_cost): Fix EMACS_INT/int
+ conversion.
+
+ * region-cache.c (move_cache_gap, set_cache_region, pp_cache)
+ (region_cache_backward, region_cache_forward)
+ (revalidate_region_cache, set_cache_region): FIX EMACS_INT/int
+ conversion.
+
+ * xdisp.c (message_dolog): Fix EMACS_INT/int conversion.
+
+ * eval.c (verror): Fix EMACS_INT/int conversion.
+
+ * print.c (PRINTDECLARE, PRINTPREPARE, strout, print_string)
+ (print_preprocess, print_check_string_charset_prop)
+ (print_object): Fix EMACS_INT/int conversion.
+
+ * xdisp.c (message_dolog): Fix EMACS_INT/int conversion.
+
+ 2010-09-24 Eli Zaretskii <eliz@gnu.org>
+
+ * callproc.c (Fcall_process): Use EMACS_INT for count of
+ characters read from the subprocess.
+
+ * bidi.c (struct bidi_paragraph_info): Use EMACS_INT for buffer
+ positions.
+ (bidi_cache_search, bidi_cache_find): Use EMACS_INT for buffer
+ positions.
+
+ * buffer.c (struct sortvec): Use EMACS_INT for buffer positions.
+ (struct sortstrlist, overlay_str_len): Use EMACS_INT for string
+ length.
+ (advance_to_char_boundary, Fset_buffer_multibyte)
+ (overlays_at, overlays_in, mouse_face_overlay_overlaps)
+ (overlay_touches_p, record_overlay_string, overlay_strings)
+ (recenter_overlay_lists, fix_start_end_in_overlays)
+ (modify_overlay, Fmove_overlay, report_overlay_modification)
+ (evaporate_overlays): Use EMACS_INT for buffer positions.
+
+ * lisp.h (fix_start_end_in_overlays, overlay_touches_p): Adjust
+ prototypes.
+
+ * dispextern.h (struct bidi_saved_info): Use EMACS_INT for buffer
+ positions.
+
+ * fns.c (Fcompare_strings, Fstring_lessp, concat)
+ (string_make_unibyte, Fstring_as_unibyte, Fsubstring)
+ (Fsubstring_no_properties, substring_both, Ffillarray)
+ (Fclear_string, mapcar1, Fmapconcat, Fmapcar, Fmapc)
+ (Fbase64_encode_region, Fbase64_encode_string, base64_encode_1)
+ (Fbase64_decode_region, Fbase64_decode_string, base64_decode_1)
+ (Fmd5): Use EMACS_INT for buffer and string positions and length
+ variables and arguments.
+
+ * lisp.h (substring_both): Adjust prototype.
+
+ 2010-09-24 Juanma Barranquero <lekktu@gmail.com>
+
+ Remove W32 API function pointer unused since 2005-02-15 (revno 2005-02-15T23:19:26Z!jasonr@gnu.org).
+ * w32fns.c (clipboard_sequence_fn): Don't declare.
+ (globals_of_w32fns): Don't initialize it.
+
+ 2010-09-23 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * syntax.c (back_comment): Detect the case where a 1-char comment
+ starter is also the 2nd char of a 2-char comment ender.
+
+ 2010-09-23 Jan Djärv <jan.h.d@swipnet.se>
+
+ * gtkutil.c (xg_tool_bar_menu_proxy): Set gtk-menu-items to TRUE.
+
+ 2010-09-23 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * eval.c (verror): EMACS_INT/int cleanup.
+
+ * lisp.h (SPECPDL_INDEX): Cast to int, since we're not going to
+ unwind_protect more than 2GB worth of functions.
+
+ * editfns.c (Finsert_char): EMACS_INT/int cleanup.
+
+ * lisp.h: Have oblookup take EMACS_INT to allow interning big
+ string and avoid compiler warnings.
+ (USE_SAFE_ALLOCA): Cast to int to avoid compilation warnings in
+ all users.
+
+ * lread.c (oblookup): EMACS_INT/int cleanup.
+
+ * cmds.c (Fforward_line, Fdelete_char): EMACS_INT/int cleanup.
+
+ 2010-09-23 Eli Zaretskii <eliz@gnu.org>
+
+ * editfns.c (clip_to_bounds): Return an EMACS_INT value.
+
+ * lisp.h (clip_to_bounds): Adjust prototype.
+
+ * intervals.c (adjust_for_invis_intang): Return EMACS_INT value.
+
+ 2010-09-23 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * lisp.h: doprnt.c EMACS_INT/int cleanup.
+
+ * doprnt.c (doprnt): EMACS_INT/int cleanup.
+
+ * doc.c (Fsnarf_documentation, get_doc_string): EMACS_INT/int
+ cleanup.
+
+ * lisp.h: Change the definition of all marker.c functions that
+ take and return buffer stuff to be EMACS_INT instead of int.
+
+ * marker.c (buf_charpos_to_bytepos, CONSIDER, set_marker_both)
+ (buf_charpos_to_bytepos, bytepos_to_charpos)
+ (buf_bytepos_to_charpos, Fbuffer_has_markers_at)
+ (set_marker_restricted, set_marker_both): Convert int to EMACS_INT
+ for all buffer positions.
+
+ 2010-09-23 Chong Yidong <cyd@stupidchicken.com>
+
+ * intervals.c (traverse_intervals, rotate_right, rotate_left)
+ (split_interval_right, find_interval, next_interval)
+ (delete_node, delete_interval, interval_deletion_adjustment)
+ (adjust_intervals_for_deletion, merge_interval_right)
+ (merge_interval_left, graft_intervals_into_buffer)
+ (copy_intervals): Convert EMACS_UINTs to EMACS_INT.
+
+ * intervals.h (traverse_intervals): Update prototype.
+
+ 2010-09-23 Eli Zaretskii <eliz@gnu.org>
+
+ * indent.c (compute_motion): Use EMACS_INT for arguments to
+ region_cache_forward.
+
+ * region-cache.c (struct boundary, struct region_cache): Use
+ EMACS_INT for positions.
+ (find_cache_boundary, move_cache_gap, insert_cache_boundary)
+ (delete_cache_boundaries, set_cache_region)
+ (invalidate_region_cache, know_region_cache)
+ (region_cache_forward, region_cache_backward, pp_cache): Use
+ EMACS_INT for buffer positions.
+
+ * region-cache.h (know_region_cache, invalidate_region_cache)
+ (region_cache_forward, region_cache_backward): Adjust prototypes.
+
+ * search.c (string_match_1, fast_c_string_match_ignore_case)
+ (looking_at_1, scan_buffer, scan_newline)
+ (find_next_newline_no_quit, find_before_next_newline)
+ (search_command, trivial_regexp_p, search_buffer, simple_search)
+ (boyer_moore, wordify, Freplace_match): Use EMACS_INT for buffer
+ and string positions and length.
+
+ * lisp.h (scan_buffer, scan_newline, find_next_newline_no_quit)
+ (find_before_next_newline): Adjust prototypes.
+
+ * editfns.c (transpose_markers, update_buffer_properties)
+ (buildmark, clip_to_bounds, Fgoto_char, overlays_around)
+ (get_pos_property, Fconstrain_to_field)
+ (Fline_beginning_position, Fline_end_position, Fprevious_char)
+ (Fchar_after, Fchar_before, Finsert_char)
+ (Finsert_buffer_substring, Fcompare_buffer_substrings)
+ (Fsubst_char_in_region, Fformat, Ftranspose_regions): Use
+ EMACS_INT for buffer and string position variables.
+ (Finsert_char): Protect against too large insertions.
+
+ * lisp.h (clip_to_bounds): Adjust prototype.
+
+ * intervals.c (traverse_intervals, rotate_right, rotate_left)
+ (balance_an_interval, split_interval_right, split_interval_left)
+ (find_interval, next_interval, update_interval)
+ (adjust_intervals_for_insertion, delete_node, delete_interval)
+ (interval_deletion_adjustment, adjust_intervals_for_deletion)
+ (offset_intervals, merge_interval_right, merge_interval_left)
+ (graft_intervals_into_buffer, adjust_for_invis_intang)
+ (move_if_not_intangible, get_local_map, copy_intervals)
+ (copy_intervals_to_string, compare_string_intervals)
+ (set_intervals_multibyte_1): Use EMACS_INT for buffer positions
+ and for interval tree size.
+
+ * intervals.h (traverse_intervals, split_interval_right)
+ (split_interval_left, find_interval, offset_intervals)
+ (graft_intervals_into_buffer, copy_intervals)
+ (copy_intervals_to_string, move_if_not_intangible, get_local_map)
+ (update_interval): Adjust prototypes.
+
+ * xdisp.c (check_point_in_composition, reconsider_clip_changes):
+ Use EMACS_INT for buffer position variables and arguments.
+
+ * composite.c (get_composition_id, find_composition)
+ (run_composition_function, compose_text)
+ (composition_gstring_width, autocmp_chars)
+ (composition_update_it, Ffind_composition_internal): Use EMACS_INT
+ for buffer positions and string length variables and arguments.
+
+ * composite.h (get_composition_id, find_composition, compose_text)
+ (composition_gstring_width): Adjust prototypes.
+
+ * editfns.c (Fformat): Use EMACS_INT for string size variables.
+
+ * xdisp.c (store_mode_line_noprop, display_mode_element): Use
+ EMACS_INT for string positions.
+
+ * intervals.c (get_property_and_range): Use EMACS_INT for buffer
+ position arguments.
+
+ * intervals.h (get_property_and_range): Adjust prototype.
+
+ * character.c (parse_str_as_multibyte, str_as_multibyte)
+ (parse_str_to_multibyte, str_to_multibyte, str_as_unibyte)
+ (string_count_byte8, string_escape_byte8, c_string_width)
+ (strwidth, lisp_string_width, multibyte_chars_in_text): Use
+ EMACS_INT for string length variables and arguments.
+
+ * character.h (parse_str_as_multibyte, str_as_multibyte)
+ (parse_str_to_multibyte, str_to_multibyte, str_as_unibyte)
+ (c_string_width, strwidth, lisp_string_width): Adjust
+ prototypes.
+
+ * font.c (font_intern_prop): Use EMACS_INT for string length
+ variables.
+
+ * font.c (font_intern_prop): Use EMACS_INT for string length
+ variables.
+
+ * fns.c (Fstring_as_multibyte): Use EMACS_INT for string length
+ variables.
+
+ * alloc.c <total_string_size>: Declare as EMACS_INT, not int.
+ (Fmake_string): Protect against too large strings.
+ (live_string_p, live_cons_p, live_symbol_p, live_float_p)
+ (live_misc_p): Use ptrdiff_t instead of int for pointer
+ differences.
+ (string_bytes, check_sblock, check_string_free_list)
+ (allocate_string_data, compact_small_strings, Fmake_string)
+ (Fmake_bool_vector, make_string, make_unibyte_string)
+ (make_multibyte_string, make_string_from_bytes)
+ (make_specified_string_string, Fmake_list, Fmake_vector): Use
+ EMACS_INT for string length variables and arguments.
+ (find_string_data_in_pure, make_pure_string, make_pure_c_string)
+ (Fpurecopy): Use EMACS_INT for string size.
+ (mark_vectorlike, mark_char_table, mark_object): Use EMACS_UINT
+ for vector size.
+
+ * lisp.h (make_string, make_unibyte_string, make_multibyte_string)
+ (make_string_from_bytes, make_specified_string_string)
+ (make_pure_string, string_bytes, check_point_in_composition):
+ Adjust prototypes.
+
+ 2010-09-22 Eli Zaretskii <eliz@gnu.org>
+
+ * editfns.c (Fsubst_char_in_region, Ftranslate_region_internal)
+ (check_translation): Use EMACS_INT for buffer positions and
+ length.
+
+ * undo.c (record_marker_adjustment, record_delete)
+ (record_change, record_point, record_insert)
+ (record_property_change, Fprimitive_undo): Use EMACS_INT for
+ buffer positions.
+
+ * lisp.h (record_marker_adjustment, record_delete)
+ (record_change, record_point, record_insert)
+ (record_property_change, Fprimitive_undo): Adjust prototypes.
+
+ 2010-09-22 Juanma Barranquero <lekktu@gmail.com>
+ Eli Zaretskii <eliz@gnu.org>
+
+ * w32.c (get_emacs_configuration_options): Fix buffer overrun.
+
+ 2010-09-22 Eli Zaretskii <eliz@gnu.org>
+
+ * minibuf.c (Fminibuffer_contents)
+ (Fminibuffer_contents_no_properties)
+ (Fminibuffer_completion_contents): Use EMACS_INT for minibuffer
+ positions.
+
+ * keyboard.c (command_loop_1): Use EMACS_INT to compare point with
+ mark.
+
+ * alloc.c (make_uninit_string, make_uninit_multibyte_string)
+ (allocate_string_data): Accept EMACS_INT for string length.
+
+ * editfns.c (Ffield_string, Ffield_string_no_properties)
+ (make_buffer_string, make_buffer_string_both, Fbuffer_substring)
+ (Fbuffer_substring_no_properties, find_field, Fdelete_field)
+ (Ffield_string, Ffield_string_no_properties, Ffield_beginning)
+ (Ffield_end): Use EMACS_INT for buffer positions.
+
+ * insdel.c (prepare_to_modify_buffer): Use EMACS_INT to compare
+ point with mark.
+
+ * lisp.h (allocate_string_data, make_uninit_string)
+ (make_uninit_multibyte_string, make_buffer_string)
+ (make_buffer_string_both): Adjust prototypes.
+
+ 2010-09-22 Chong Yidong <cyd@stupidchicken.com>
+
+ * xml.c: Switch to GNU indentation.
+ (make_dom): Change parse tree format to match xml.el.
+ (Fxml_parse_html_string_internal): Rename from html-parse-string.
+ (Fxml_parse_string_internal): Rename from xml-parse-string.
+
+ 2010-09-22 Kenichi Handa <handa@m17n.org>
+
+ * xdisp.c (compute_stop_pos): Call composition_compute_stop_pos
+ only if we are not at a composition.
+ (set_iterator_to_next): Give it->end_charpos to
+ composition_compute_stop_pos.
+ (set_iterator_to_next, next_element_from_buffer): Likewise.
+
+ * dispnew.c (buffer_posn_from_coords): Fix position when the
+ current display element is a grapheme cluster in bidi-reordered
+ region.
+
+ 2010-09-21 Ari Roponen <ari.roponen@gmail.com> (tiny change)
+
+ * doc.c (Fsnarf_documentation): Use memmove instead of memcpy as
+ the regions may overlap.
+
+ 2010-09-21 Juanma Barranquero <lekktu@gmail.com>
+
+ * makefile.w32-in ($(BLD)/sysdep.$(O)): Update dependencies.
+
+ 2010-09-21 Dan Nicolaescu <dann@ics.uci.edu>
+
+ * emacs.c: Do not include sys/ioctl.h, not needed.
+
+ * doprnt.c: Do not include stdlib.h, config.h does it.
+ Move #include before macro definition.
+
+ 2010-09-20 Dan Nicolaescu <dann@ics.uci.edu>
+
+ * Makefile.in (temacs): Link using $(CC) not $(LD).
+ (LD_FIRSTFLAG): Define using autoconf.
+ (LD): Remove.
+
+ Remove HAVE_TERMIOS definitions.
+ * s/usg5-4-common.h (HAVE_TERMIOS):
+ * s/template.h (HAVE_TERMIOS):
+ * s/gnu-linux.h (HAVE_TERMIOS):
+ * s/darwin.h (HAVE_TERMIOS):
+ * s/cygwin.h (HAVE_TERMIOS):
+ * s/bsd-common.h (HAVE_TERMIOS):
+ * s/aix4-2.h (HAVE_TERMIOS):
+ * s/hpux10-20.h (HAVE_TERMIOS): Do not define, it is assumed
+ defined on all non-MS platforms.
+ (HAVE_PSTAT_GETDYNAMIC): Do not define, autoconf does it.
+
+ * xterm.c (xt_action_hook): Use const.
+
+ 2010-09-20 Juanma Barranquero <lekktu@gmail.com>
+
+ Don't make W32 code conditional on HAVE_SOCKETS, it's always defined.
+ * w32.c: Remove top-level uses of #ifdef HAVE_SOCKETS.
+ (gethostname) [!HAVE_SOCKETS]: Remove.
+ (SOCK_REPLACE_HANDLE): Remove macro.
+ (socket_to_fd, sys_close, _sys_read_ahead, sys_read, sys_write)
+ (term_ntproc, init_ntproc): Don't conditionalize on HAVE_SOCKETS.
+ * w32proc.c: Remove top-level uses of #ifdef HAVE_SOCKETS.
+ (syms_of_ntproc): Don't conditionalize on HAVE_SOCKETS.
+
+ 2010-09-18 Eli Zaretskii <eliz@gnu.org>
+
+ * deps.mk (xml.o): Add dependencies.
+
+ * xdisp.c (Fcurrent_bidi_paragraph_direction):
+ Call bidi_paragraph_init with NO_DEFAULT_P non-zero. (Bug#7038)
+
+ * bidi.c (bidi_paragraph_init): Accept an additional argument
+ NO_DEFAULT_P; all callers changed. If NO_DEFAULT_P is non-zero,
+ search back until a paragraph with a strong directional character
+ is found, and use that to determine paragraph's base direction.
+
+ * dispextern.h (bidi_paragraph_init): Update prototype.
+
+ 2010-09-17 Eli Zaretskii <eliz@gnu.org>
+
+ * w32.c (_PROCESS_MEMORY_COUNTERS_EX): Don't define with versions
+ of w32api >= 3.15. (Bug#6989)
+
+ 2010-09-17 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * process.c (wait_reading_process_output): Don't message about
+ accept-process-output unless the time limit really is zero.
+
+ 2010-09-17 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * frame.c (Ftool_bar_pixel_width): YAILOM (Yet another
+ int/Lisp_Object mixup).
+
+ 2010-09-17 Jan Djärv <jan.h.d@swipnet.se>
+
+ * keyboard.c (parse_tool_bar_item): For QClabel, set TOOL_BAR_ITEM_LABEL
+ not HELP.
+
+ 2010-09-17 Stephen Berman <stephen.berman@gmx.net>
+
+ * frame.c (Ftool_bar_pixel_width): New function to expose tool
+ bar's pixel width to Lisp (Bug#7048).
+
+ 2010-09-14 Juanma Barranquero <lekktu@gmail.com>
+
+ * cmds.c (syms_of_cmds) <post-self-insert-hook>: Fix typos in docstring.
+
+ 2010-09-17 Jan Djärv <jan.h.d@swipnet.se>
+
+ * gtkutil.c (xg_pack_tool_bar): Call gtk_handle_box_set_handle_position
+ with argument top/left if tool bar is vertical/horizontal (Bug#7051).
+
+ 2010-09-17 Kenichi Handa <handa@m17n.org>
+
+ * ftfont.c (ftfont_check_otf): Fix previous change.
+
+ 2010-09-14 Kenichi Handa <handa@m17n.org>
+
+ * ftfont.c (ftfont_check_otf): Fix the case of checking just
+ existence of GSUB or GPOS.
+
+ 2010-09-14 Juanma Barranquero <lekktu@gmail.com>
+
+ * cmds.c (syms_of_cmds) <post-self-insert-hook>: Fix typos in docstring.
+
+ 2010-09-14 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * xml.c (parse_buffer): Renamed to parse_string(), since that's
+ what it does.
+ (parse_string): Return nil when the document can't be parsed.
+
+ 2010-09-14 Jan Djärv <jan.h.d@swipnet.se>
+
+ * xterm.c (get_current_vm_state): New function.
+ (do_ewmh_fullscreen): Call get_current_vm_state and compare with
+ want_fullscreen so set_wm_state calls are few (Bug#7013).
+ (x_handle_net_wm_state): Move code to get_current_vm_state and
+ call that function.
+
+ 2010-09-14 Courtney Bane <emacs-bugs-7626@cbane.org> (tiny change)
+
+ * term.c (tty_set_terminal_modes): Don't initialize twice (bug#7002).
+
+ 2010-09-14 Kenichi Handa <handa@m17n.org>
+
+ * coding.c (encode_coding_iso_2022): Don't optimize for ASCII if
+ we may use designation or locking-shift.
+
+ 2010-09-14 Kenichi Handa <handa@m17n.org>
+
+ * coding.c (detect_coding_emacs_mule): Fix checking of multibyte
+ sequence when the source is multibyte.
+
+ 2010-09-14 Andreas Schwab <schwab@linux-m68k.org>
+
+ * xml.c (Fxml_parse_string, Fxml_parse_string): Revert last change.
+ Don't make first argument optional. Doc fix.
+
+ 2010-09-14 Leo <sdl.web@gmail.com> (tiny change)
+
+ * xml.c (Fxml_parse_string, Fhtml_parse_string): Fix up the
+ parameters for the doc string.
+
+ 2010-09-12 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * xml.c (Fhtml_parse_string, Fxml_parse_string): Mention BASE-URL.
+
+ 2010-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * fns.c (Fy_or_n_p): Move to lisp/subr.el.
+ (syms_of_fns): Don't defsubr Sy_or_n_p.
+ * lisp.h: Don't declare Fy_or_n_p.
+ * fileio.c (barf_or_query_if_file_exists): Fy_or_n_p -> y-or-n-p.
+
+ 2010-09-09 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * xml.c (Fxml_parse_buffer): New function to parse XML files.
+
+ 2010-09-08 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * xml.c: New file.
+ (Fhtml_parse_buffer): New function to interface to the libxml2
+ html parsing function.
+
+ 2010-09-05 Juanma Barranquero <lekktu@gmail.com>
+
+ * biditype.h: Regenerate.
+
+ 2010-09-04 Andreas Schwab <schwab@linux-m68k.org>
+
+ * nsimage.m (ns_load_image): Check argument types.
+
+ * image.c: Remove all uses of gcpro.
+ (xpm_load): Check all lisp types.
+ (pbm_load): Likewise.
+ (png_load): Likewise.
+ (jpeg_load): Likewise.
+ (tiff_load): Likewise.
+ (gif_load): Likewise.
+ (imagemagick_load_image): Likewise.
+ (imagemagick_load): Likewise.
+ (svg_load): Likewise.
+ (gs_load): Likewise.
+
+ 2010-09-04 Eli Zaretskii <eliz@gnu.org>
+
+ * w32uniscribe.c (uniscribe_shape): Update commentary. Don't
+ try to reorder grapheme clusters, since LGSTRING should always
+ hold them in the logical order.
+ (uniscribe_encode_char, uniscribe_shape): Force ScriptShape to
+ return glyph codes in the logical order.
+
+ 2010-09-04 Andreas Schwab <schwab@linux-m68k.org>
+
+ * image.c (imagemagick_image_p): Replace bcopy by memcpy.
+ (imagemagick_load_image): Fix type mismatch.
+ (Fimagemagick_types): Likewise. Doc fix.
+
+ 2010-09-02 Jan Djärv <jan.h.d@swipnet.se>
+
+ * xterm.h (struct dpyinfo): Remove cut_buffers_initialized.
+
+ * xterm.c (x_term_init): Don't set dpyinfo->cut_buffers_initialized.
+
+ * xselect.c: Remove declaration of cut-buffer objects and functions.
+ (symbol_to_x_atom): Remove mapping to XA_CUT_BUFFERn.
+ (x_atom_to_symbol): Remove mapping to QCUT_BUFFERn.
+ (Fx_get_cut_buffer_internal, Fx_store_cut_buffer_internal)
+ (Fx_rotate_cut_buffers_internal): Remove.
+ (syms_of_xselect): Remove defsubr of above.
+ Remove intern of QCUT_BUFFERn.
+
+ 2010-09-01 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * cmds.c (Vblink_paren_function): Remove.
+ (internal_self_insert): Make it insert N chars at a time.
+ Don't call blink-paren-function.
+ (Fself_insert_command): Adjust accordingly.
+ (syms_of_cmds): Don't declare blink-paren-function.
+
+ 2010-08-31 Kenichi Handa <handa@m17n.org>
+
+ * dispextern.h (FACE_FOR_CHAR): Use an ASCII face for 8-bit
+ characters.
+
+ * term.c (encode_terminal_code): Fix the previous change.
+ (produce_glyphs): Don't set it->char_to_display here.
+ Don't handle unibyte-display-via-language-environment here.
+ (produce_special_glyphs): Set temp_it.char_to_display before
+ calling produce_glyphs.
+
+ * xdisp.c (get_next_display_element): Set it->char_to_display
+ here. Convert all 8-bit bytes from unibyte buffer/string to 8-bit
+ characters.
+ (get_overlay_arrow_glyph_row): Set it.char_to_display too before
+ calling PRODUCE_GLYPHS.
+ (append_space_for_newline): Save and store it->char_to_display.
+ Set it->char_to_display before calling PRODUCE_GLYPHS.
+ (extend_face_to_end_of_line): Set it->char_to_display before
+ calling PRODUCE_GLYPHS.
+ (get_glyph_face_and_encoding): Set the glyph code an 8-bit
+ character to its byte value.
+ (get_char_glyph_code): New function.
+ (produce_stretch_glyph): Set it2.char_to_display too before
+ calling x_produce_glyphs.
+ (x_produce_glyphs): Simplify by using the same code for ASCII and
+ non-ASCII characters. Don't set it->char_to_display here.
+ Don't handle unibyte-display-via-language-environment here. For a
+ character of no glyph, use font->space_width instead of FONT_WIDTH.
+
+ 2010-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * keyboard.c (Fwindow_system): Fix compilation for USE_LISP_UNION_TYPE.
+
+ 2010-08-31 Chong Yidong <cyd@stupidchicken.com>
+
+ * keyboard.c (command_loop_1): Don't call x-set-selection on tty.
+
+ 2010-08-30 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * marker.c (Fcopy_marker): Make the first arg optional.
+
+ 2010-08-30 Kenichi Handa <handa@m17n.org>
+
+ * composite.c (composition_update_it): Fix computing of
+ cmp_it->width.
+
+ 2010-08-29 Kenichi Handa <handa@m17n.org>
+
+ * term.c (encode_terminal_code): Encode byte chars to the
+ corresponding bytes.
+
+ 2010-08-29 Jan Djärv <jan.h.d@swipnet.se>
+
+ * nsterm.m (ns_draw_window_cursor): Draw BAR_CURSOR correct for R2L.
+
+ 2010-08-26 Kenichi Handa <handa@m17n.org>
+
+ * xdisp.c (compute_stop_pos): Pay attention to bidi scan direction
+ on calling composition_compute_stop_pos.
+
+ 2010-08-25 Kenichi Handa <handa@m17n.org>
+
+ * fontset.c (reorder_font_vector): Prefer a font-spec specifying
+ :otf.
+
+ * composite.c (composition_compute_stop_pos): Don't break
+ composition at PT.
+ (composition_reseat_it): Likewise. Fix calculation of character
+ position starting a composition.
+ (Fcomposition_get_gstring): Don't limit the number of components
+ for automatic composition.
+
+ 2010-08-25 Kenichi Handa <handa@m17n.org>
+
+ * composite.c (composition_compute_stop_pos): In forward search,
+ pay attention to the possibility that some character after ENDPOS
+ will be composed with charactrs before ENDPOS.
+
+ 2010-08-24 Chong Yidong <cyd@stupidchicken.com>
+
+ * keyboard.c (command_loop_1): Don't clobber primary selection
+ during handle-switch-frame (Bug#6872).
+
+ 2010-08-23 Michael Albinus <michael.albinus@gmx.de>
+
+ * dbusbind.c: Accept UNIX domain sockets as bus address.
+ (Fdbus_close_bus): New function.
+ (Vdbus_registered_buses): New variable.
+ (xd_initialize): Implement string as bus address.
+ (Fdbus_init_bus): Add bus to Vdbus_registered_buses).
+ (Fdbus_get_unique_name, Fdbus_call_method)
+ (Fdbus_call_method_asynchronously, Fdbus_method_return_internal)
+ (Fdbus_method_error_internal, Fdbus_send_signal)
+ (Fdbus_register_signal, Fdbus_register_method): Remove bus type
+ check. This is done in xd_initialize_bus. Adapt doc string, if
+ necessary.
+ (xd_pending_messages, xd_read_queued_messages): Loop over buses in
+ Vdbus_registered_buses.
+ (Vdbus_registered_objects_table): Create hash.
+
+ 2010-08-22 Juri Linkov <juri@jurta.org>
+
+ * keyboard.c (Fexecute_extended_command): Move reading a command name
+ with `completing-read' to a new Elisp function `read-extended-command'.
+ Call it to read a command to `function' (bug#5364, bug#5214).
+
+ 2010-08-22 Chong Yidong <cyd@stupidchicken.com>
+
+ * emacs.c (main): Remove handling of --unibyte arg (Bug#6886).
+
+ 2010-08-22 Andreas Schwab <schwab@linux-m68k.org>
+
+ * eval.c (Flet, Feval, Fapply, apply_lambda): Use SAFE_ALLOCA_LISP
+ instead of SAFE_ALLOCA.
+
+ 2010-08-22 Chong Yidong <cyd@stupidchicken.com>
+
+ * eval.c (Flet, Feval, Fapply, apply_lambda): Use SAFE_ALLOCA
+ (Bug#6214).
+
+ 2010-08-22 Jan Djärv <jan.h.d@swipnet.se>
+
+ * doc.c (Fsnarf_documentation): Set skip_file only if p[1] is S.
+
+ 2010-08-22 Jan Djärv <jan.h.d@swipnet.se>
+
+ * doc.c (Fsnarf_documentation): Initialize skip_file before
+ build-files test.
+
+ 2010-08-22 Peter O'Gorman <pogma@thewrittenword.com> (tiny change)
+
+ * s/hpux10-20.h (HAVE_TERMIOS, NO_TERMIO, ORDINARY_LINK):
+ New definitions.
+ (HAVE_TERMIO): Remove.
+
+ 2010-08-22 Eli Zaretskii <eliz@gnu.org>
+
+ * deps.mk (sysdep.o, msdos.o): Depend on sysselect.h.
+
+ * sysselect.h [WINDOWSNT]: Don't define the FD_* and select stuff
+ for w32.
+
+ * s/ms-w32.h (HAVE_SYS_TIMEB_H): Don't #undef HAVE_SYS_SELECT_H,
+ it's done in nt/config.nt.
+
+ * makefile.w32-in ($(BLD)/sysdep.$(O)): Depend on sysselect.h.
+
+ * unexcoff.c (report_error, make_hdr, write_segment)
+ (copy_text_and_data, copy_sym, mark_x, adjust_lnnoptrs, unexec):
+ Convert argument lists and prototypes to ANSI C.
+ (make_hdr, write_segment): Remove unused variables.
+ (unexec): Remove commented-out line. Initialize `new' to shut up
+ compiler warnings.
+
+ 2010-08-22 Dan Nicolaescu <dann@ics.uci.edu>
+
+ Simplify termio code.
+ All non-MSDOS non-WINDOWSNT platforms define HAVE_TERMIOS, so
+ HAVE_TERMIO code is obsolete.
+ Replace HAVE_TERMIOS conditionals with !DOS_NT.
+ * systty.h: Do not define HAVE_TCATTR.
+ Remove HAVE_TERMIO, HAVE_LTCHARS and HAVE_TCHARS code.
+ Do not define EMACS_HAVE_TTY_PGRP. Only define
+ EMACS_GET_TTY_PGRP for !DOS_NT.
+ * sysdep.c: Include sysselect.h unconditionally. Do not include
+ sys/ioctl.h and termios.h, systty.h does it. Use
+ HAVE_SYS_UTSNAME_H instead of USG as an include guard.
+ (init_baud_rate): Remove HAVE_TERMIO code.
+ (child_setup_tty): Remove HAVE_TERMIO code.
+ (emacs_get_tty, emacs_set_tty): Remove HAVE_TERMIO, HAVE_TCHARS
+ and HAVE_LTCHARS code. Use !DOS_NT instead of HAVE_TCATTR.
+ (new_ltchars, new_tchars): Remove, unused.
+ (init_sys_modes): Remove HAVE_TERMIO, HAVE_TCHARS and HAVE_LTCHARS
+ code. Remove special casing for __mips__, it was a no-op. Remove
+ HAVE_TCATTR conditional, it is implied by HAVE_TERMIOS.
+ (init_sys_modes): Remove HPUX special case.
+ * process.c: Include stdlib.h unconditionally. Do not include
+ fcntl.h, systty.h does it. Remove conditional code for
+ HAVE_SERIAL, it is always true.
+ (process_send_signal): Remove HAVE_TERMIOS conditional, it's
+ always true when SIGNALS_VIA_CHARACTERS is true.
+ (Fcontinue_process, Fprocess_send_eof): Simplify conditionals:
+ !WINDOWSNT means HAVE_TERMIOS.
+ (create_process): Remove HAVE_TERMIOS, it's inside a HAVE_PTYS
+ conditional, which is true for all HAVE_TERMIOS systems.
+ * keyboard.c (init_keyboard): Do not use HAVE_TERMIO, use !DOS_NT
+ instead of HAVE_TERMIOS.
+ * emacs.c (shut_down_emacs): Use !defined DOS_NT instead of
+ EMACS_HAVE_TTY_PGRP.
+ * callproc.c (child_setup): Move EMACS_SET_TTY_PGRP use to the
+ non-MSDOS, non-WINDOWSNT code, it's only defined for such systems
+ anyway.
+
+ 2010-08-21 Eli Zaretskii <eliz@gnu.org>
+
+ * dispnew.c (buffer_posn_from_coords): Fix off-by-one error in
+ mirroring pixel positions.
+
+ 2010-08-20 Dan Nicolaescu <dann@ics.uci.edu>
+
+ * alloc.c (malloc_sbrk_used, malloc_sbrk_unused): Remove,
+ write only.
+ (init_alloc_once): Remove writes to malloc_sbrk_unused, and
+ malloc_sbrk_used, nothing uses them.
+
+ * puresize.h: Remove code assuming PNTR_COMPARISON_TYPE is not
+ defined, unconditionally defined in lisp.h.
+
+ * term.c: Do not include <termios.h>, systty.h does it.
+
+ * s/unixware.h (HAVE_TCATTR):
+ * s/aix4-2.h (HAVE_TCATTR): Remove definitions, not needed.
+ systty.h defines it when HAVE_TERMIOS is defined.
+
+ 2010-08-20 Eli Zaretskii <eliz@gnu.org>
+
+ * dispnew.c (buffer_posn_from_coords): Fix last change for text
+ terminals: add one-character offset for R2L lines.
+
+ * emacs.c <emacs_version>: Add a comment regarding
+ msdos/mainmake.v2's dependency on the syntax of this declaration.
+
+ 2010-08-20 Eli Zaretskii <eliz@gnu.org>
+
+ * dispnew.c (buffer_posn_from_coords): Fix calculation of buffer
+ position for R2L lines by mirroring the pixel position wrt the
+ text are box. Improve commentary.
+
+ 2010-08-20 Andreas Schwab <schwab@linux-m68k.org>
+
+ * image.c (imagemagick_clear_image): Remove debugging output.
+
+ 2010-08-19 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * cmds.c (Vself_insert_face, Vself_insert_face_command): Remove.
+ (Qpost_self_insert_hook, Vpost_self_insert_hook): New vars.
+ (internal_self_insert): Run Qpost_self_insert_hook rather than handle
+ self-insert-face.
+ (syms_of_cmds): Initialize the new vars.
+
+ 2010-08-19 Jason Rumney <jasonr@gnu.org>
+
+ * w32menu.c (set_frame_menubar): Remove call to undefined function.
+
+ * w32fns.c (w32_wnd_proc): Don't check context before initializing.
+
+ 2010-08-19 Jan Djärv <jan.h.d@swipnet.se>
+
+ * nsselect.m (nxatoms_of_nsselect): Use "Selection" and "Secondary".
+
+ 2010-08-18 Eli Zaretskii <eliz@gnu.org>
+
+ * xterm.c (x_draw_bar_cursor):
+ * w32term.c (x_draw_bar_cursor): If the character under cursor is
+ R2L, draw the bar cursor on its right rather than on its left.
+
+ 2010-08-18 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * eval.c (Fdefmacro): Only obey one declaration.
+
+ * casefiddle.c (casify_region): Setup gl_state.
+
+ 2010-08-18 Jan Djärv <jan.h.d@swipnet.se>
+
+ * nsterm.m (ns_define_frame_cursor): Call x_update_cursor (Bug#6868).
+
+ 2010-08-18 Jan Djärv <jan.h.d@swipnet.se>
+
+ * gtkutil.c (update_frame_tool_bar): Literal strings are const char*.
+
+ 2010-08-18 David De La Harpe Golden <david@harpegolden.net>
+
+ * nsselect.m (QCLIPBOARD, NXPrimaryPboard): Define.
+ (symbol_to_nsstring): Map QCLIPBOARD => NSGeneralPboard,
+ QPRIMARY => NXPrimaryPboard.
+ (ns_string_to_symbol): NSGeneralPboard => QCLIPBOARD,
+ NXPrimaryPboard => QPRIMARY.
+ (nxatoms_of_nsselect): NXPrimaryPboard = PrimarySelection,
+ NXSecondaryPboard = SecondarySelection.
+ (syms_of_nsselect): Intern QCLIPBOARD (Bug#6677).
+
+ 2010-08-18 Joakim Verona <joakim@verona.se>
+
+ * image.c: Add support for ImageMagick. When HAVE_IMAGEMAGICK is
+ defined:
+ (imagemagick_image_p): New function to test for ImageMagic image.
+ (imagemagick_load): New function to load ImageMagick image.
+ (imagemagick_load_image): New function, helper for imagemagick_load.
+ (imagemagick-types): New function.
+ (Qimagemagick): New Lisp_object.
+ (imagemagick-render-type): New variable, decides which renderer to use.
+
+ 2010-08-17 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * gtkutil.c (update_frame_tool_bar): Don't assume TOOL_BAR_ITEM_LABEL
+ is a string.
+
+ 2010-08-17 Jan Djärv <jan.h.d@swipnet.se>
+
+ * nsfns.m (ns_frame_parm_handlers): Add a slot for the
+ x_set_tool_bar_position handler.
+
+ 2010-08-17 Eli Zaretskii <eliz@gnu.org>
+
+ * w32fns.c <w32_frame_parm_handlers>: Add a slot for the
+ x_set_tool_bar_position handler, needed to support changes from
+ 2010-07-29T16:49:59Z!jan.h.d@swipnet.se for positioning the tool bar. (Bug#6796)
+
+ 2010-08-16 Jan Djärv <jan.h.d@swipnet.se>
+
+ * nsselect.m: include keyboard.h for QPRIMARY, remove its
+ declaration (Bug#6863).
+ (syms_of_nsselect): Don't intern QPRIMARY.
+
+ * xselect.c: Remove declaration of QPRIMARY (Bug#6864).
+
+ * keyboard.h (QPRIMARY): Declare (Bug#6864).
+
+ 2010-08-16 Chong Yidong <cyd@stupidchicken.com>
+
+ * keyboard.c (command_loop_1): Avoid setting selection twice,
+ since it's done in deactivate-mark as well.
+ (Vselect_active_regions): Change default to t. Replace `lazy'
+ with non-default value `only', meaning only set PRIMARY for
+ temporarily active regions.
+
+ * insdel.c (prepare_to_modify_buffer): Handle `only' value of
+ select-active-regions.
+
+ 2010-08-15 Jan Djärv <jan.h.d@swipnet.se>
+
+ * keyboard.c (parse_tool_bar_item): Put in a bad label if :label
+ isn't a string.
+
+ 2010-08-15 Andreas Schwab <schwab@linux-m68k.org>
+
+ * keyboard.c (parse_tool_bar_item): Avoid excessive use of strlen.
+
+ 2010-08-15 Jan Djärv <jan.h.d@swipnet.se>
+
+ * keyboard.c (parse_tool_bar_item): malloc buf.
+ Set TOOL_BAR_ITEM_LABEL to empty string if not set to
+ new_lbl (Bug#6855).
+
+ 2010-08-14 Eli Zaretskii <eliz@gnu.org>
+
+ * xterm.c (x_draw_stretch_glyph_string):
+ * w32term.c (x_draw_stretch_glyph_string): In R2L rows, display
+ the cursor on the right edge of the stretch glyph.
+
+ * xdisp.c (window_box_right_offset, window_box_right):
+ Fix commentary.
+
+ * xdisp.c (Fcurrent_bidi_paragraph_direction): Fix paragraph
+ direction when point is inside a run of whitespace characters.
+
+ * bidi.c (bidi_at_paragraph_end): Remove obsolete comment.
+
+ 2010-08-14 Jason Rumney <jasonr@gnu.org>
+
+ * keyboard.c (lispy_function_keys): Do not define VK_PACKET (bug#4836)
+
+ 2010-08-14 Chong Yidong <cyd@stupidchicken.com>
+
+ * fns.c (Fmake_hash_table): Doc fix (Bug#6851).
+
+ 2010-08-13 Jason Rumney <jasonr@gnu.org>
+
+ * w32menu.c (simple_dialog_show): Use unicode message box if available.
+ (MessageBoxW_Proc): New function typedef.
+ (unicode-message-box): New function pointer.
+ (globals_of_w32menu): Import it from user32.dll. (Bug#5629)
+
+ 2010-08-13 Jan Djärv <jan.h.d@swipnet.se>
+
+ * frame.h (Qtool_bar_position): Declare.
+
+ * xfns.c (Fx_create_frame): Call x_default_parameter for
+ Qtool_bar_position.
+
+ 2010-08-13 Eli Zaretskii <eliz@gnu.org>
+
+ * unexcoff.c: Remove the parts used when "emacs" is not defined.
+ (report_error, report_error_1): Ditto.
+ (write_segment): Remove "#if 0" unused code.
+ (make_hdr): Remove code that was "#ifndef NO_REMAP" before
+ NO_REMAP was removed (in 2010-07-29T03:25:08Z!dann@ics.uci.edu).
+ (start_of_text): Remove unused function (was used only if NO_REMAP
+ was NOT defined).
+
+ * msdos.c (IT_set_face): Fix format string to match argument
+ types.
+ (IT_write_glyphs, IT_note_mode_line_highlight)
+ (IT_set_frame_parameters): Remove unused variables.
+ (x_set_menu_bar_lines): Declare set_menu_bar_lines.
+ (IT_set_terminal_modes): Disambiguate expression in if clause.
+ (Fmsdos_remember_default_colors): Return Qnil.
+ (IT_set_frame_parameters): Add parens to disambiguate boolean
+ expression for logging the cursor type to termscript.
+ (keyboard_layout_list, keypad_translate_map)
+ (grey_key_translate_map): Add braces in inner initializers.
+ (dos_rawgetc): Add parens in condition for mouse-3 button-press.
+ (dos_rawgetc): Remove unused label.
+ (XMenuActivate): Add braces to remove ambiguous `else'.
+ (dos_ttraw): Always return a value.
+ (spawnve): Declare.
+ (run_msdos_command): Cast 3rd arg of spawnve to "char **".
+
+ * dosfns.h (x_set_title): Declare.
+
+ * w16select.c (Fw16_set_clipboard_data, Fw16_get_clipboard_data):
+ Remove unused variables.
+
+ * dosfns.c (Fint86, Fdos_memget, Fdos_memput): Remove unused
+ variables.
+ (init_dosfns): Declare get_lim_data.
+ (system_process_attributes): Declare Fget_internal_run_time.
+
+ * xmenu.c (xmenu_show) [!USE_X_TOOLKIT && !USE_GTK]: Fix argument
+ list to be consistent with menu.h.
+
+ * w32menu.c (add_menu_item, name_is_separator): Shut up compiler
+ warnings due to mixing of "char *" and "const char *".
+
+ 2010-08-12 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ Introduce a new comment style "c" flag.
+ * syntax.c (SYNTAX_FLAGS_COMMENT_STYLEB)
+ (SYNTAX_FLAGS_COMMENT_STYLEC): New macros.
+ (SYNTAX_FLAGS_COMMENT_STYLE): Use them, add an argument.
+ (syntax_prefix_flag_p): New function.
+ (Fstring_to_syntax): Understand new "c" flag.
+ (Finternal_describe_syntax_value): Recognize new flag; use the
+ SYNTAX_FLAGS_* macros.
+ (scan_sexps_forward, Fparse_partial_sexp): Change representation of
+ comment style to accomodate the new styles.
+ (back_comment, forw_comment, Fforward_comment, scan_lists)
+ (scan_sexps_forward): Update code to obey the new comment style flag.
+
+ * syntax.h: Move SYNTAX_FLAGS_FOO() macros to syntax.c.
+
+ * casefiddle.c (casify_region): Use the new syntax_prefix_flag_p.
+
+ 2010-08-11 Jan Djärv <jan.h.d@swipnet.se>
+
+ * xfns.c (x_defined_color): If USE_GTK, call xg_check_special_colors
+ first.
+ (Fx_hide_tip): Check FRAME_LIVE_P (f) before calling xg_hide_tooltip.
+
+ * gtkutil.h (xg_check_special_colors): Declare.
+
+ * gtkutil.c (xg_check_special_colors, style_changed_cb): New functions.
+ (xg_create_frame_widgets): Connect theme name changes to
+ style_changed_cb.
+
+ * xterm.c (emacs_class): New char[] for EMACS_CLASS.
+ (xim_open_dpy, xim_initialize, xim_close_dpy): Use emacs_class.
+ (x_term_init): Use char[] display_opt and name_opt instead of
+ string literal. file is const char*.
+
+ * xsmfns.c (NOSPLASH_OPT): Change to char[].
+ (smc_save_yourself_CB): Do xstrdup on all ->type and ->name for
+ props. Free them at the end.
+
+ * xselect.c (Fx_get_atom_name): Use char empty[] instead of literal "".
+
+ * xrdb.c (get_system_app): Make path const and use char *p for
+ non-const char.
+
+ * xmenu.c (Fx_popup_dialog): error_name is const char*.
+ (xmenu_show): error parameter is const char **. pane_string is const
+ char *.
+ (button_names): Is const char *.
+ (xdialog_show): error_name and pane_string is const.
+
+ * process.h (synch_process_death): Is const char*.
+
+ * w32menu.c (w32_menu_show):
+ * nsmenu.m (ns_menu_show): error parameter is const char **.
+
+ * menu.h (w32_menu_show, ns_menu_show, xmenu_show): error parameter
+ is const char **.
+
+ * menu.c (Fx_popup_menu): error_name is const.
+
+ * keyboard.h (_widget_value): Add defined USE_GTK. Replace Boolean
+ with unsigned char and XtPointer with void *.
+
+ * gtkutil.h: Replace widget_value with struct _widget_value.
+ (enum button_type, struct _widget_value): Remove and use the one from
+ keyboard.h.
+
+ * gtkutil.c (get_utf8_string): Always return an allocated string.
+ Parameter is const.
+ (create_dialog, xg_create_one_menuitem, create_menus)
+ (xg_item_label_same_p, xg_update_menu_item): Free result from
+ get_utf8_string.
+ (xg_separator_p, xg_item_label_same_p): label is const.
+
+ * font.h (font_open_by_name): Make name const.
+
+ * font.c (font_open_by_name): Make name const.
+
+ * floatfns.c (matherr): Use a const char* variable for x->name.
+
+ * emacs.c (main): Pass char[] to putenv instead of literal.
+
+ * callproc.c (synch_process_death): Make const.
+ (Fcall_process): Make signame const.
+
+ * nsterm.h (parseKeyEquiv, addSubmenuWithTitle)
+ (addDisplayItemWithImage): Use const char*.
+
+ * nsmenu.m (parseKeyEquiv, addSubmenuWithTitle)
+ (addDisplayItemWithImage, update_frame_tool_bar): Use const char*.
+
+ * nsfont.m (ns_descriptor_to_entity): Use const char*.
+
+ * keyboard.h (_widget_value): name, value and key are const char*.
+
+ * unexmacosx.c (unexec_error): Use const char *.
+
+ 2010-08-09 Dan Nicolaescu <dann@ics.uci.edu>
+
+ * font.h (font_parse_xlfd, font_parse_fcname, font_unparse_fcname)
+ (font_parse_name, font_open_by_name):
+ * font.c (font_parse_xlfd, font_parse_fcname, font_unparse_fcname)
+ (font_parse_name, font_open_by_name): Remove const.
+
+ 2010-08-09 Andreas Schwab <schwab@linux-m68k.org>
+
+ Use autoconf determined WORDS_BIGENDIAN instead of hardcoded
+ definition.
+
+ * m/alpha.h: Don't define/undef WORDS_BIG_ENDIAN.
+ * m/amdx86-64.h: Likewise.
+ * m/arm.h: Likewise.
+ * m/hp800.h: Likewise.
+ * m/ia64.h: Likewise.
+ * m/ibmrs6000.h: Likewise.
+ * m/ibms390.h: Likewise.
+ * m/intel386.h: Likewise.
+ * m/iris4d.h: Likewise.
+ * m/m68k.h: Likewise.
+ * m/macppc.h: Likewise.
+ * m/mips.h: Likewise.
+ * m/sh3.h: Likewise.
+ * m/sparc.h: Likewise.
+ * m/template.h: Likewise.
+ * m/vax.h: Likewise.
+ * m/xtensa.h: Likewise.
+ * fringe.c (init_fringe_bitmap): Test WORDS_BIGENDIAN instead of
+ WORDS_BIG_ENDIAN.
+ * lisp.h: Likewise.
+ * md5.c: Likewise.
+ * sound.c (le2hl, le2hs, be2hl, be2hs): Likewise.
+
+ 2010-08-09 Dan Nicolaescu <dann@ics.uci.edu>
+
+ Use const char* instead of char*.
+ Reduce the number of warnings with -Wwrite-strings.
+ * xrdb.c (get_environ_db, get_system_name):
+ * unexelf.c (find_section):
+ * term.c (string_cost, string_cost_one_line, per_line_cost)
+ (get_named_tty, init_tty):
+ * sysdep.c (sys_subshell):
+ * sound.c (sound_perror, sound_warning, vox_open, vox_init)
+ (alsa_sound_perror, alsa_open, alsa_configure, alsa_init):
+ * search.c (Freplace_match):
+ * process.c (Fmake_network_process, send_process, init_process):
+ * lread.c (Fload, init_lread):
+ * keymap.c (Fdescribe_buffer_bindings, describe_map_tree):
+ * keyboard.c (parse_tool_bar_item, struct event_head):
+ * gtkutil.h (xg_get_font_name):
+ * gtkutil.c (get_dialog_title, create_dialog, xg_get_font_name)
+ (make_widget_for_menu_item, make_menu_item, create_menus)
+ (xg_make_tool_item):
+ * font.c (parse_matrix, font_parse_name):
+ * floatfns.c (rounding_driver, float_error_fn_name):
+ * filelock.c (get_boot_time_1, lock_file_1):
+ * fileio.c (barf_or_query_if_file_exists, check_writable):
+ * editfns.c (get_system_name, get_operating_system_release)
+ (Fencode_time, Fset_time_zone_rule):
+ * dispextern.h (string_cost, per_line_cost, get_named_tty, init_tty):
+ * buffer.c (defvar_per_buffer): Use const.
+
+ 2010-08-08 Kenichi Handa <handa@m17n.org>
+
+ * charset.c: Include <stdlib.h>.
+ (struct charset_sort_data): New struct.
+ (charset_compare): New function.
+ (Fsort_charsets): New function.
+ (syms_of_charset): Declare Fsort_charsets as a Lisp function.
+
+ * coding.c (decode_coding_iso_2022): Fix checking of dimension
+ number in CTEXT extended segment.
+
+ 2010-08-08 Juanma Barranquero <lekktu@gmail.com>
+
+ * w32fns.c (syms_of_w32fns) <x-max-tooltip-size>: Fix typo in docstring.
+ * xfns.c (syms_of_xfns) <x-max-tooltip-size>: Reflow docstring.
+
+ 2010-08-08 Juanma Barranquero <lekktu@gmail.com>
+
+ * fns.c (Fsubstring_no_properties, Fnthcdr, Ffeaturep)
+ (Fhash_table_size): Fix typos in docstrings.
+ (Fmake_hash_table): Doc fix.
+
+ 2010-08-08 Juanma Barranquero <lekktu@gmail.com>
+
+ * minibuf.c (syms_of_minibuf) <read-buffer-function>:
+ Doc fix (bug#5625).
+
+ 2010-08-08 Ken Brown <kbrown@cornell.edu>
+
+ * dired.c (DIRENTRY_NONEMPTY) [cygwin]: Use d_ino instead of
+ the MSDOS definition.
+
+ 2010-08-08 Dan Nicolaescu <dann@ics.uci.edu>
+
+ Use const char* instead of char*.
+ * xterm.c (x_create_toolkit_scroll_bar):
+ * xfont.c (xfont_list_pattern):
+ * xfns.c (x_default_scroll_bar_color_parameter)
+ (xic_create_fontsetname, x_default_font_parameter)
+ (x_screen_planes):
+ * xdisp.c (c_string_pos, number_of_chars, reseat_to_string)
+ (store_mode_line_string, decode_mode_spec, display_string):
+ * menu.c (digest_single_submenu):
+ * keymap.h (initial_define_key, initial_define_lispy_key):
+ * keymap.c (initial_define_key, initial_define_lispy_key):
+ * image.c (image_error, image_keyword):
+ * gtkutil.h (xg_create_widget, xg_create_scroll_bar):
+ * gtkutil.c (xg_create_widget, xg_create_scroll_bar):
+ * ftfont.c (struct fc_charset_table, ftfont_spec_pattern)
+ (ftfont_list, ftfont_match):
+ * frame.c (frame_parm_table):
+ * font.h (font_intern_prop, font_parse_xlfd, font_parse_fcname)
+ (font_unparse_fcname, font_unparse_fcname, font_open_by_name)
+ (font_add_log, font_deferred_log):
+ * font.c (font_intern_prop, font_parse_xlfd, font_parse_fcname)
+ (font_unparse_fcname, font_unparse_fcname, font_open_by_name)
+ (font_add_log, font_deferred_log):
+ * emacs.c (argmatch):
+ * dispextern.h (struct it):
+ * coding.c (ENCODE_DESIGNATION):
+ * charset.c (define_charset_internal): Use const.
+
+ * s/freebsd.h (DECLARE_GETPWUID_WITH_UID_T): Remove, unused.
+
+ * xrdb.c: Remove include guard.
+ Remove DECLARE_GETPWUID_WITH_UID_T conditional it had no effect.
+ Remove #if 0 code. Replace malloc->xmalloc, free->xfree,
+ realloc->xrealloc instead of using #defines.
+
+ 2010-08-08 Eli Zaretskii <eliz@gnu.org>
+
+ * cmds.c (Fforward_line, Fbeginning_of_line, Fend_of_line):
+ * editfns.c (Fline_beginning_position, Fline_end_position):
+ State in the doc strings that start and end of line are in the
+ logical order.
+
+ * xdisp.c (display_line): Move the handling of overlay arrow after
+ the call to find_row_edges. (Bug#6699)
+
+ 2010-08-07 Chong Yidong <cyd@stupidchicken.com>
+
+ * keyboard.c (command_loop_1):
+ * insdel.c (prepare_to_modify_buffer): Don't call validate_region.
+
+ 2010-08-07 Chong Yidong <cyd@stupidchicken.com>
+
+ * insdel.c (prepare_to_modify_buffer): Save active region text to
+ Vsaved_region_selection.
+
+ * xselect.c (QPRIMARY): Move to keyboard.c.
+
+ * keyboard.c (Vselect_active_regions): Move from simple.el.
+ (Vsaved_region_selection, Qx_set_selection, QPRIMARY, Qlazy): New vars.
+ (command_loop_1): Set window selection prior to deactivating the mark.
+
+ 2010-08-07 Juanma Barranquero <lekktu@gmail.com>
+
+ * alloc.c (lisp_malloc):
+ * buffer.c (set_buffer_internal, set_buffer_internal_1):
+ * charset.h (emacs_mule_charset):
+ * dispextern.h (inhibit_free_realized_faces, redraw_frame)
+ (redraw_garbaged_frames, scroll_cost, update_frame, scrolling)
+ (bitch_at_user):
+ * lisp.h (Fcheck_coding_system, Fget_text_property)
+ (Qfunction, Qcompletion_ignore_case, QCwidth, QCsize):
+ Remove duplicate declarations.
+
+ 2010-08-06 Dan Nicolaescu <dann@ics.uci.edu>
+
+ * process.c: Simplify include logic.
+
+ * keyboard.h (quit_char): Add declaration.
+ * process.h (QCport, QCspeed, QCprocess, QCbytesize, QCstopbits)
+ (QCparity, Qodd, Qeven, QCflowcontrol, Qhw, Qsw, QCsummary):
+ Add declarations.
+ * sysdep.c:
+ * w32.c: Remove the above declarations.
+
+ Remove extern declarations in .c files, .h files have them.
+ * xterm.c:
+ * xdisp.c:
+ * msdos.c:
+ * image.c:
+ * gtkutil.c:
+ * fileio.c:
+ * eval.c: Remove declarations.
+
+ * frame.c (frame_params): Make const.
+
+ * lisp.h (fatal_error_signal, emacs_root_dir): Add declaration.
+
+ * emacs.c (emacs_copyright, emacs_version): Make static.
+ (Vinitial_window_system, Vauto_save_list_file_name)
+ (Vinhibit_redisplay): Remove declarations.
+ (main): Remove HAVE_SHM code, unused. Remove _I386 conditional
+ for AIX.
+
+ Use const for some arrays and functions.
+ * xterm.h (xg_set_icon_from_xpm_data):
+ * xfns.c (xg_set_icon_from_xpm_data):
+ * term.c (fkeys):
+ * keyboard.c (lispy_accent_keys, lispy_function_keys)
+ (lispy_multimedia_keys, lispy_kana_keys, iso_lispy_function_keys)
+ (lispy_drag_n_drop_names, scroll_bar_parts, modify_event_symbol)
+ (frame.c frame_parms):
+ * emacs-icon.h (gnu_xpm_bits):
+ * callint.c (callint_argfuns): Use const.
+
+ 2010-08-06 Jan Djärv <jan.h.d@swipnet.se>
+
+ * sysdep.c: Move include term.h last of includes (Bug#6812).
+
+ 2010-08-06 Eli Zaretskii <eliz@gnu.org>
+
+ * dispnew.c (realloc_glyph_pool): Zero out newly allocated glyphs.
+
+ * msdos.c (IT_display_cursor): Log cursor position on termscript.
+
+ * .gdbinit (pgx): Display the avoid_cursor_p flag.
+
+ 2010-08-06 Juanma Barranquero <lekktu@gmail.com>
+
+ * makefile.w32-in ($(BLD)/xdisp.$(O)): Update dependencies.
+
+ 2010-08-06 Jan Djärv <jan.h.d@swipnet.se>
+
+ * xterm.h (x_get_focus_frame): Declare.
+
+ * keyboard.h (poll_for_input_1): Unconditionally declare.
+
+ * nsterm.h (x_set_menu_bar_lines): Declare.
+
+ * window.c: Don't include menu.h, it depends on lots of other .h-files.
+
+ * xfaces.c (x_create_gc, x_free_gc): Convert to ANSI C prototypes.
+
+ * window.c: Include menu.h.
+
+ * unexmacosx.c (print_region_list, print_regions)
+ (build_region_list, find_emacs_zone_regions)
+ (unexec_regions_merge, read_load_commands, dump_it)
+ (unexec_init_emacs_zone): Convert to ANSI C prototypes.
+
+ * term.c: Check HAVE_SYS_IOCTL_H.
+
+ * sysdep.c: Check HAVE_TERM_H.
+
+ * process.c: Check HAVE_UTIL_H. Include nsterm.h if HAVE_NS.
+
+ * nsterm.m (ns_init_paths, ns_alloc_autorelease_pool)
+ (ns_ring_bell, ns_defined_color, hide_hourglass)
+ (x_display_pixel_height, x_display_pixel_width, syms_of_nsterm):
+ Convert to ANSI C prototypes.
+ (x_set_window_size, ns_draw_fringe_bitmap, judge): Move declarations
+ before code.
+
+ * nsterm.h : Include sysselect.h.
+ (x_sync, x_get_focus_frame, x_set_mouse_position)
+ (x_set_mouse_pixel_position, x_make_frame_visible)
+ (x_make_frame_invisible, x_iconify_frame, x_char_width, x_char_height)
+ (x_pixel_width, x_pixel_height, x_set_frame_alpha, x_set_tool_bar_lines)
+ (x_activate_menubar, free_frame_menubar, ns_init_paths, ns_select)
+ (syms_of_nsterm, syms_of_nsfns, syms_of_nsmenu, syms_of_nsselect):
+ Declare.
+
+ * nsmenu.m (popup_activated, name_is_separator)
+ (syms_of_nsmenu): Convert to ANSI C prototypes.
+ (runMenuAt): Prototypes and move declarations before code.
+
+ * nsimage.m (ns_load_image): Move NSTRACE after declarations.
+
+ * nsfont.m (ns_fallback_entity, syms_of_nsfont): Convert to ANSI C
+ prototypes.
+
+ * nsfns.m (have_menus_p, ns_display_info_for_name)
+ (x_set_cursor_type, ns_appkit_version_str)
+ (ns_appkit_version_int, ns_do_applescript)
+ (x_set_scroll_bar_default_width, x_sync, compute_tip_xy)
+ (syms_of_nsfns): Convert to ANSI C prototypes.
+
+ * menu.h (x_set_menu_bar_line): Declare.
+ (free_menubar_widget_value_tree et.al): Add HAVE_NS for these functions.
+
+ * lisp.h (fmod_float): Declare.
+
+ * image.c (xpm_scan, xpm_make_color_table_v)
+ (xpm_put_color_table_v, xpm_get_color_table_v)
+ (xpm_make_color_table_h, xpm_put_color_table_h)
+ (xpm_get_color_table_h, xpm_str_to_color_key, xpm_load_image)
+ (xpm_load): Convert to ANSI C prototypes.
+
+ * emacs.c: Include nsterm.h if HAVE_NS.
+
+ * bidi.c (bidi_dump_cached_states): Fix fprintf warning.
+
+ 2010-08-06 Dan Nicolaescu <dann@ics.uci.edu>
+
+ * process.c: Remove HAVE_SOCKETS #ifdefs inside #ifdef
+ subprocesses, only MSDOS does not define HAVE_SOCKETS.
+ (socket_options): Use const char* for name.
+
+ 2010-08-06 Juanma Barranquero <lekktu@gmail.com>
+
+ Fix changes in 2010-08-05T23:15:24Z!dann@ics.uci.edu..2010-08-05T23:34:12Z!dann@ics.uci.edu for Windows build.
+
+ * xmenu.c [USE_X_TOOLKIT || USE_GTK]:
+ Don't declare xmalloc_widget_value and digest_single_submenu.
+
+ * w32font.c (Qlatin): Remove declaration.
+
+ * menu.h (xmalloc_widget_value, digest_single_submenu): Declare.
+
+ * dired.c (compile_pattern): Restore declaration.
+
+ 2010-08-05 Dan Nicolaescu <dann@ics.uci.edu>
+
+ Remove extern declarations in .c files, .h files have them.
+ * data.c:
+ * dired.c:
+ * editfns.c:
+ * filelock.c:
+ * fns.c:
+ * font.c:
+ * fontset.c:
+ * frame.c:
+ * fringe.c:
+ * ftfont.c:
+ * gtkutil.c:
+ * indent.c:
+ * keyboard.c:
+ * keymap.c:
+ * lread.c:
+ * menu.c:
+ * print.c:
+ * search.c:
+ * sound.c:
+ * window.c:
+ * xdisp.c:
+ * xfaces.c:
+ * xfns.c:
+ * xfont.c:
+ * xftfont.c:
+ * xmenu.c:
+ * xterm.c: Remove declarations.
+
+ Cleanup syssignal.h.
+ * syssignal.h (sighold, sigrelse, RETSIGTYPE): Remove, unused.
+ (main_thread): Move down to remove #ifdef.
+ (SIGMASKTYPE, SIGEMPTYMASK, SIGFULLMASK, sigmask, sigunblock):
+ Remove conditional definition following unconditional ones.
+
+ * lisp.h: Remove HAVE_SHM code, unused.
+ (QCmap, QCrehash_size, QCrehash_threshold, QCsize, QCtest)
+ (QCweakness, Qabove_handle, Qbackquote, Qbar, Qbelow_handle)
+ (Qborder, Qbottom, Qbox, Qcircular_list, Qcomma, Qcomma_at)
+ (Qcomma_dot, Qcursor, Qdefault, Qdown, Qend_scroll, Qeq, Qeql)
+ (Qequal, Qfile_exists_p, Qfont_param, Qfringe, Qfunction)
+ (Qfunction_documentation, Qhandle, Qhbar, Qheader_line, Qhollow)
+ (Qidentity, Qleft_margin, Qmenu, Qmenu_bar_update_hook)
+ (Qmode_line_inactive, Qmouse, Qoverriding_local_map)
+ (Qoverriding_terminal_local_map, Qratio, Qregion, Qright_margin)
+ (Qscroll_bar, Qtool_bar, Qtop, Qup, Qvertical_border, Qwhen)
+ (Qwindow_scroll_functions, Vafter_load_alist)
+ (Vauto_save_list_file_name, Vface_alternative_font_family_alist)
+ (Vface_alternative_font_registry_alist, Vface_font_rescale_alist)
+ (Vface_ignored_fonts, Vinhibit_redisplay, Vminibuffer_list)
+ (Vprint_length, Vprint_level, Vscalable_fonts_allowed)
+ (Vshell_file_name, Vsystem_name, Vwindow_scroll_functions)
+ (Vwindow_system_version, Vx_no_window_manager, initial_argc)
+ (initial_argv, last_nonmenu_event, load_in_progress)
+ (noninteractive_need_newline, scroll_margin): Add declarations.
+
+ * keyboard.h (xmalloc_widget_value, digest_single_submenu): Remove
+ declarations, menu.h has them.
+ (QCbutton, QCtoggle, QCradio, QClabel, extra_keyboard_modifiers)
+ (Vinput_method_function, Qinput_method_function)
+ (Qevent_symbol_element_mask, last_event_timestamp):
+ * dispextern.h (Voverflow_newline_into_fringe):
+ * font.h (QCantialias, Qp, syms_of_ftfont, syms_of_xfns)
+ (syms_of_ftxfont, syms_of_xftfont, syms_of_bdffont)
+ (syms_of_w32font, syms_of_nsfont):
+ * fontset.h (find_font_encoding, Qlatin):
+ * frame.h (Qtooltip, Qrun_hook_with_args, Vmenu_bar_mode)
+ (Vtool_bar_mode, set_frame_menubar):
+ * ftfont.h (ftfont_font_format, ftfont_get_fc_charset):
+ * xterm.h (Qx_gtk_map_stock):
+ * keymap.h (meta_prefix_char): Add declarations.
+
+ * term.c: Remove dead code.
+
+ Fix emacs -Q -f server-start & emacsclient -t on GNU/Linux.
+ * term.c (dissociate_if_controlling_tty): Use USG5 instead of
+ USG. This is equivalent to defined (USG) && !defined (BSD_PGRPS),
+ which is what was there before BSD_PGRPS was removed.
+
+ 2010-08-05 Eli Zaretskii <eliz@gnu.org>
+
+ * deps.mk (unexcoff.o): Rename unexec.[co] => unexcoff.[co].
+
+ * unexcoff.c: Renamed from unexec.c.
+
+ 2010-08-04 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * sysdep.c (child_setup_tty): Comment-out left-over non-ICANON code.
+
+ 2010-08-03 Johan Bockgård <bojohan@gnu.org>
+
+ * data.c (Flocal_variable_p): Handle variable aliases correctly.
+ (Bug#6744)
+
+ 2010-08-02 Jan Djärv <jan.h.d@swipnet.se>
+
+ * xterm.c (x_create_toolkit_scroll_bar): Only set XtNbeNiceToColormap
+ to TRUE if depth of screen is < 16.
+
+ * gtkutil.c (hierarchy_ch_cb, qttip_cb): Do not define unless
+ USE_GTK_TOOLTIP.
+ (xg_prepare_tooltip): Return 0 unless USE_GTK_TOOLTIP.
+ (xg_show_tooltip, xg_hide_tooltip): Do nothing unless USE_GTK_TOOLTIP.
+ (xg_create_frame_widgets): Surround tooltip-related code with ifdef
+ USE_GTK_TOOLTIP.
+ (xg_free_frame_widgets): Don't delete ttip_* unless USE_GTK_TOOLTIP.
+
+ * xterm.h (USE_GTK_TOOLTIP): New define.
+ (struct x_output): Put ttip_* inside ifdef USE_GTK_TOOLTIP.
+
+ * sysdep.c (child_setup_tty): Enable ICANON in lflags and set VEOF
+ to Control-D (Bug#6771).
+
+ 2010-08-02 Juanma Barranquero <lekktu@gmail.com>
+
+ * editfns.c (Fregion_beginning, Fregion_end): Doc fixes (bug#6493).
+ Wording by Drew Adams <drew.adams@oracle.com>.
+
+ 2010-08-01 Jan Djärv <jan.h.d@swipnet.se>
+
+ * xterm.h (struct x_output): Add ttip_widget, ttip_window and
+ ttip_lbl.
+
+ * xterm.c (x_clear_frame): Check FRAME_GTK_WIDGET (f) before
+ calling gtk_widget_queue_draw.
+ (x_free_frame_resources): Call xg_free_frame_widgets.
+
+ * xfns.c (x_gtk_use_system_tooltips): New variable.
+ (Fx_show_tip): If USE_GTK and x_gtk_use_system_tooltips, call
+ new gtkutil tooltip functions to show the tooltip.
+ (Fx_hide_tip): Call xg_hide_tooltip.
+ (syms_of_xfns): Defvar x-gtk-use-system-tooltips.
+
+ * gtkutil.h (xg_free_frame_widgets, xg_prepare_tooltip)
+ (xg_show_tooltip, xg_hide_tooltip): Declare.
+
+ * gtkutil.c (hierarchy_ch_cb, qttip_cb, xg_prepare_tooltip)
+ (xg_show_tooltip, xg_hide_tooltip, xg_free_frame_widgets):
+ New functions.
+ (xg_create_frame_widgets): Set ttip_* to 0. Set a dummy tooltip
+ text so qttip_cb is called. Connect query-tooltip to qttip_cb.
+ Remove code that is commented out.
+
+ 2010-08-01 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * keymap.c (Fdefine_key, Flookup_key): Say what event is invalid.
+
+ 2010-07-31 Chong Yidong <cyd@stupidchicken.com>
+
+ * xselect.c (x_own_selection): Use list4.
+
2010-07-30 Dan Nicolaescu <dann@ics.uci.edu>
* buffer.c (Qwindow): Do not define, already defined in data.c.
return 1;
}
- /* Error handler for `delete-frame-functions'. */
- static Lisp_Object
- delete_frame_handler (Lisp_Object arg)
- {
- add_to_log ("Error during `delete-frame': %s", arg, Qnil);
- return Qnil;
- }
-
- extern Lisp_Object Qrun_hook_with_args;
-
++DEFUN ("other-visible-frames-p", Fother_visible_frames_p, Sother_visible_frames_p, 0, 1, 0,
++ doc: /* Return t if there are other visible frames beside FRAME.
++FRAME defaults to the selected frame. */)
++ (Lisp_Object frame)
++{
++ if (NILP (frame))
++ frame = selected_frame;
++ CHECK_LIVE_FRAME (frame);
++ return other_visible_frames (XFRAME (frame)) ? Qt : Qnil;
++}
++
/* Delete FRAME. When FORCE equals Qnoelisp, delete FRAME
unconditionally. x_connection_closed and delete_terminal use
this. Any other value of FORCE implements the semantics
#include "nsterm.h"
#endif
-
Lisp_Object Qwindowp, Qwindow_live_p, Qwindow_configuration_p;
--Lisp_Object Qdisplay_buffer;
++Lisp_Object Qwindow_deletable_p, Qdelete_window, Qdisplay_buffer;
++Lisp_Object Qreplace_buffer_in_windows, Qget_mru_window;
++Lisp_Object Qrecord_window_buffer;
++Lisp_Object Qresize_root_window, Qresize_root_window_vertically;
Lisp_Object Qscroll_up, Qscroll_down, Qscroll_command;
--Lisp_Object Qwindow_size_fixed;
++Lisp_Object Qset, Qabove, Qbelow, Qnest, Qgroup, Qresize;
- extern Lisp_Object Qleft_margin, Qright_margin;
-
static int displayed_window_lines (struct window *);
static struct window *decode_window (Lisp_Object);
static int count_windows (struct window *);
static int window_scroll_preserve_hpos;
static int window_scroll_preserve_vpos;
--#if 0 /* This isn't used anywhere. */
--/* Nonzero means we can split a frame even if it is "unsplittable". */
--static int inhibit_frame_unsplittable;
--#endif /* 0 */
++/* Whether splitting/deleting is handled specially. */
++Lisp_Object Vwindow_splits;
- extern EMACS_INT scroll_margin;
-
- extern Lisp_Object Qwindow_scroll_functions, Vwindow_scroll_functions;
-
--/* If non-nil, then the `recenter' command with a nil argument
++/* If non-nil, then the `recenter' command with a nil argument causes
the entire frame to be redrawn; the special value `tty' causes the
frame to be redrawn only if it is a tty frame. */
--
static Lisp_Object Vrecenter_redisplay;
- extern Lisp_Object Qtty;
--
\f
++static struct window *
++decode_window (register Lisp_Object window)
++{
++ if (NILP (window))
++ return XWINDOW (selected_window);
++
++ CHECK_LIVE_WINDOW (window);
++ return XWINDOW (window);
++}
++
++static struct window *
++decode_any_window (register Lisp_Object window)
++{
++ if (NILP (window))
++ return XWINDOW (selected_window);
++
++ CHECK_WINDOW (window);
++ return XWINDOW (window);
++}
++
DEFUN ("windowp", Fwindowp, Swindowp, 1, 1, 0,
doc: /* Return t if OBJECT is a window. */)
(Lisp_Object object)
DEFUN ("window-minibuffer-p", Fwindow_minibuffer_p, Swindow_minibuffer_p, 0, 1, 0,
doc: /* Return non-nil if WINDOW is a minibuffer window.
--WINDOW defaults to the selected window. */)
++WINDOW can be any window and defaults to the selected one. */)
(Lisp_Object window)
{
-- struct window *w = decode_window (window);
-- return MINI_WINDOW_P (w) ? Qt : Qnil;
++ return MINI_WINDOW_P (decode_any_window (window)) ? Qt : Qnil;
}
--
--DEFUN ("pos-visible-in-window-p", Fpos_visible_in_window_p,
-- Spos_visible_in_window_p, 0, 3, 0,
-- doc: /* Return non-nil if position POS is currently on the frame in WINDOW.
--Return nil if that position is scrolled vertically out of view.
--If a character is only partially visible, nil is returned, unless the
--optional argument PARTIALLY is non-nil.
--If POS is only out of view because of horizontal scrolling, return non-nil.
--If POS is t, it specifies the position of the last visible glyph in WINDOW.
--POS defaults to point in WINDOW; WINDOW defaults to the selected window.
--
--If POS is visible, return t if PARTIALLY is nil; if PARTIALLY is non-nil,
--return value is a list of 2 or 6 elements (X Y [RTOP RBOT ROWH VPOS]),
--where X and Y are the pixel coordinates relative to the top left corner
--of the window. The remaining elements are omitted if the character after
--POS is fully visible; otherwise, RTOP and RBOT are the number of pixels
--off-window at the top and bottom of the row, ROWH is the height of the
--display row, and VPOS is the row number (0-based) containing POS. */)
-- (Lisp_Object pos, Lisp_Object window, Lisp_Object partially)
++/* Don't move this to window.el - this must be a safe routine. */
++DEFUN ("frame-first-window", Fframe_first_window, Sframe_first_window, 0, 1, 0,
++ doc: /* Return the topmost, leftmost live window on FRAME_OR_WINDOW.
++If omitted, FRAME_OR_WINDOW defaults to the currently selected frame.
++Else if FRAME_OR_WINDOW denotes any window, return the first window of
++that window's frame. If FRAME_OR_WINDOW denotes a live frame, return
++the first window of that frame. */)
++ (Lisp_Object frame_or_window)
{
-- register struct window *w;
-- register EMACS_INT posint;
-- register struct buffer *buf;
-- struct text_pos top;
-- Lisp_Object in_window = Qnil;
-- int rtop, rbot, rowh, vpos, fully_p = 1;
-- int x, y;
++ Lisp_Object window;
-- w = decode_window (window);
-- buf = XBUFFER (w->buffer);
-- SET_TEXT_POS_FROM_MARKER (top, w->start);
++ if (NILP (frame_or_window))
++ window = SELECTED_FRAME ()->root_window;
++ else if (WINDOWP (frame_or_window))
++ window = XFRAME (WINDOW_FRAME (XWINDOW (frame_or_window)))->root_window;
++ else
++ {
++ CHECK_LIVE_FRAME (frame_or_window);
++ window = XFRAME (frame_or_window)->root_window;
++ }
-- if (EQ (pos, Qt))
-- posint = -1;
-- else if (!NILP (pos))
++ while (NILP (XWINDOW (window)->buffer))
{
-- CHECK_NUMBER_COERCE_MARKER (pos);
-- posint = XINT (pos);
++ if (! NILP (XWINDOW (window)->hchild))
++ window = XWINDOW (window)->hchild;
++ else if (! NILP (XWINDOW (window)->vchild))
++ window = XWINDOW (window)->vchild;
++ else
++ abort ();
}
-- else if (w == XWINDOW (selected_window))
-- posint = PT;
-- else
-- posint = XMARKER (w->pointm)->charpos;
-- /* If position is above window start or outside buffer boundaries,
-- or if window start is out of range, position is not visible. */
-- if ((EQ (pos, Qt)
-- || (posint >= CHARPOS (top) && posint <= BUF_ZV (buf)))
-- && CHARPOS (top) >= BUF_BEGV (buf)
-- && CHARPOS (top) <= BUF_ZV (buf)
-- && pos_visible_p (w, posint, &x, &y, &rtop, &rbot, &rowh, &vpos)
-- && (fully_p = !rtop && !rbot, (!NILP (partially) || fully_p)))
-- in_window = Qt;
++ return window;
++}
-- if (!NILP (in_window) && !NILP (partially))
++DEFUN ("frame-selected-window", Fframe_selected_window,
++ Sframe_selected_window, 0, 1, 0,
++ doc: /* Return the selected window of FRAME_OR_WINDOW.
++If omitted, FRAME_OR_WINDOW defaults to the currently selected frame.
++Else if FRAME_OR_WINDOW denotes any window, return the selected window
++of that window's frame. If FRAME_OR_WINDOW denotes a live frame, return
++the selected window of that frame. */)
++ (Lisp_Object frame_or_window)
++{
++ Lisp_Object window;
++
++ if (NILP (frame_or_window))
++ window = SELECTED_FRAME ()->selected_window;
++ else if (WINDOWP (frame_or_window))
++ window = XFRAME (WINDOW_FRAME (XWINDOW (frame_or_window)))->selected_window;
++ else
{
-- Lisp_Object part = Qnil;
-- if (!fully_p)
-- part = list4 (make_number (rtop), make_number (rbot),
-- make_number (rowh), make_number (vpos));
-- in_window = Fcons (make_number (x),
-- Fcons (make_number (y), part));
++ CHECK_LIVE_FRAME (frame_or_window);
++ window = XFRAME (frame_or_window)->selected_window;
}
-- return in_window;
++ return window;
}
--DEFUN ("window-line-height", Fwindow_line_height,
-- Swindow_line_height, 0, 2, 0,
-- doc: /* Return height in pixels of text line LINE in window WINDOW.
--If WINDOW is nil or omitted, use selected window.
++DEFUN ("set-frame-selected-window", Fset_frame_selected_window,
++ Sset_frame_selected_window, 2, 3, 0,
++ doc: /* Set selected window of FRAME to WINDOW.
++FRAME must be a live frame and defaults to the selected one. If FRAME
++is the selected frame, this makes WINDOW the selected window. Optional
++argument NORECORD non-nil means to neither change the order of recently
++selected windows nor the buffer list. WINDOW must denote a live window.
++Return WINDOW. */)
++ (Lisp_Object frame, Lisp_Object window, Lisp_Object norecord)
++{
++ if (NILP (frame))
++ frame = selected_frame;
--Return height of current line if LINE is omitted or nil. Return height of
--header or mode line if LINE is `header-line' and `mode-line'.
--Otherwise, LINE is a text line number starting from 0. A negative number
--counts from the end of the window.
++ CHECK_LIVE_FRAME (frame);
++ CHECK_LIVE_WINDOW (window);
--Value is a list (HEIGHT VPOS YPOS OFFBOT), where HEIGHT is the height
--in pixels of the visible part of the line, VPOS and YPOS are the
--vertical position in lines and pixels of the line, relative to the top
--of the first text line, and OFFBOT is the number of off-window pixels at
--the bottom of the text line. If there are off-window pixels at the top
--of the (first) text line, YPOS is negative.
++ if (! EQ (frame, WINDOW_FRAME (XWINDOW (window))))
++ error ("In `set-frame-selected-window', WINDOW is not on FRAME");
--Return nil if window display is not up-to-date. In that case, use
--`pos-visible-in-window-p' to obtain the information. */)
-- (Lisp_Object line, Lisp_Object window)
++ if (EQ (frame, selected_frame))
++ return Fselect_window (window, norecord);
++ else
++ return XFRAME (frame)->selected_window = window;
++}
++
++DEFUN ("selected-window", Fselected_window, Sselected_window, 0, 0, 0,
++ doc: /* Return the selected window.
++The selected window is the window in which the standard cursor for
++selected windows appears and to which many commands apply. */)
++ (void)
{
-- register struct window *w;
-- register struct buffer *b;
-- struct glyph_row *row, *end_row;
-- int max_y, crop, i, n;
++ return selected_window;
++}
-- w = decode_window (window);
++int window_select_count;
-- if (noninteractive
-- || w->pseudo_window_p)
-- return Qnil;
++/* Note that selected_window can be nil when this is called from
++ Fset_window_configuration. */
++DEFUN ("select-window", Fselect_window, Sselect_window, 1, 2, 0,
++ doc: /* Select WINDOW. Most editing will apply to WINDOW's buffer.
++Also make WINDOW's buffer current and make WINDOW the frame's selected
++window. Return WINDOW.
-- CHECK_BUFFER (w->buffer);
-- b = XBUFFER (w->buffer);
++Optional second arg NORECORD non-nil means do not put this buffer at the
++front of the buffer list and do not make this window the most recently
++selected one.
-- /* Fail if current matrix is not up-to-date. */
-- if (NILP (w->window_end_valid)
-- || current_buffer->clip_changed
-- || current_buffer->prevent_redisplay_optimizations_p
-- || XFASTINT (w->last_modified) < BUF_MODIFF (b)
-- || XFASTINT (w->last_overlay_modified) < BUF_OVERLAY_MODIFF (b))
-- return Qnil;
++Note that the main editor command loop sets the current buffer to the
++buffer of the selected window before each command. */)
++ (register Lisp_Object window, Lisp_Object norecord)
++{
++ register struct window *w;
++ register struct window *ow;
++ struct frame *sf;
++ int not_selected_before = !EQ (window, selected_window);
-- if (NILP (line))
-- {
-- i = w->cursor.vpos;
-- if (i < 0 || i >= w->current_matrix->nrows
-- || (row = MATRIX_ROW (w->current_matrix, i), !row->enabled_p))
-- return Qnil;
-- max_y = window_text_bottom_y (w);
-- goto found_row;
-- }
++ CHECK_LIVE_WINDOW (window);
-- if (EQ (line, Qheader_line))
-- {
-- if (!WINDOW_WANTS_HEADER_LINE_P (w))
-- return Qnil;
-- row = MATRIX_HEADER_LINE_ROW (w->current_matrix);
-- if (!row->enabled_p)
-- return Qnil;
-- return list4 (make_number (row->height),
-- make_number (0), make_number (0),
-- make_number (0));
-- }
++ w = XWINDOW (window);
++ w->frozen_window_start_p = 0;
-- if (EQ (line, Qmode_line))
++ if (not_selected_before)
{
-- row = MATRIX_MODE_LINE_ROW (w->current_matrix);
-- if (!row->enabled_p)
-- return Qnil;
-- return list4 (make_number (row->height),
-- make_number (0), /* not accurate */
-- make_number (WINDOW_HEADER_LINE_HEIGHT (w)
-- + window_text_bottom_y (w)),
-- make_number (0));
-- }
--
-- CHECK_NUMBER (line);
-- n = XINT (line);
++ sf = SELECTED_FRAME ();
++ if (XFRAME (WINDOW_FRAME (w)) != sf)
++ {
++ XFRAME (WINDOW_FRAME (w))->selected_window = window;
++ /* Use this rather than Fhandle_switch_frame
++ so that FRAME_FOCUS_FRAME is moved appropriately as we
++ move around in the state where a minibuffer in a separate
++ frame is active. */
++ Fselect_frame (WINDOW_FRAME (w), norecord);
++ /* Fselect_frame called us back so we've done all the work already. */
++ eassert (EQ (window, selected_window));
++ return window;
++ }
++ else
++ sf->selected_window = window;
-- row = MATRIX_FIRST_TEXT_ROW (w->current_matrix);
-- end_row = MATRIX_BOTTOM_TEXT_ROW (w->current_matrix, w);
-- max_y = window_text_bottom_y (w);
-- i = 0;
++ /* Store the current buffer's actual point into the
++ old selected window. It belongs to that window,
++ and when the window is not selected, must be in the window. */
++ if (!NILP (selected_window))
++ {
++ ow = XWINDOW (selected_window);
++ if (! NILP (ow->buffer))
++ set_marker_both (ow->pointm, ow->buffer,
++ BUF_PT (XBUFFER (ow->buffer)),
++ BUF_PT_BYTE (XBUFFER (ow->buffer)));
++ }
-- while ((n < 0 || i < n)
-- && row <= end_row && row->enabled_p
-- && row->y + row->height < max_y)
-- row++, i++;
++ selected_window = window;
++ }
-- if (row > end_row || !row->enabled_p)
-- return Qnil;
++ Fset_buffer (w->buffer);
-- if (++n < 0)
++ if (NILP (norecord))
{
-- if (-n > i)
-- return Qnil;
-- row += n;
-- i += n;
++ ++window_select_count;
++ XSETFASTINT (w->use_time, window_select_count);
++ record_buffer (w->buffer);
}
-- found_row:
-- crop = max (0, (row->y + row->height) - max_y);
-- return list4 (make_number (row->height + min (0, row->y) - crop),
-- make_number (i),
-- make_number (row->y),
-- make_number (crop));
--}
++ XBUFFER (w->buffer)->last_selected_window = window;
- register int new_point = marker_position (w->pointm);
++ /* Go to the point recorded in the window.
++ This is important when the buffer is in more
++ than one window. It also matters when
++ redisplay_window has altered point after scrolling,
++ because it makes the change only in the window. */
++ if (not_selected_before)
++ {
+++ register EMACS_INT new_point = marker_position (w->pointm);
++ if (new_point < BEGV)
++ SET_PT (BEGV);
++ else if (new_point > ZV)
++ SET_PT (ZV);
++ else
++ SET_PT (new_point);
++
++ windows_or_buffers_changed++;
++ }
++ return window;
++}
\f
--static struct window *
--decode_window (register Lisp_Object window)
++DEFUN ("window-buffer", Fwindow_buffer, Swindow_buffer, 0, 1, 0,
++ doc: /* Return the buffer that WINDOW is displaying.
++WINDOW can be any window and defaults to the selected one.
++If WINDOW is an internal window return nil. */)
++ (Lisp_Object window)
{
-- if (NILP (window))
-- return XWINDOW (selected_window);
++ return decode_any_window (window)->buffer;
++}
-- CHECK_LIVE_WINDOW (window);
-- return XWINDOW (window);
++DEFUN ("window-parent", Fwindow_parent, Swindow_parent, 0, 1, 0,
++ doc: /* Return WINDOW's parent window.
++WINDOW can be any window and defaults to the selected one.
++Return nil if WINDOW has no parent. */)
++ (Lisp_Object window)
++{
++ return decode_any_window (window)->parent;
}
--static struct window *
--decode_any_window (register Lisp_Object window)
++DEFUN ("window-vchild", Fwindow_vchild, Swindow_vchild, 0, 1, 0,
++ doc: /* Return WINDOW's first vertical child window.
++WINDOW can be any window and defaults to the selected one.
++Return nil if WINDOW has no vertical child. */)
++ (Lisp_Object window)
{
-- if (NILP (window))
-- return XWINDOW (selected_window);
++ return decode_any_window (window)->vchild;
++}
-- CHECK_WINDOW (window);
-- return XWINDOW (window);
++DEFUN ("window-hchild", Fwindow_hchild, Swindow_hchild, 0, 1, 0,
++ doc: /* Return WINDOW's first horizontal child window.
++WINDOW can be any window and defaults to the selected one.
++Return nil if WINDOW has no horizontal child. */)
++ (Lisp_Object window)
++{
++ return decode_any_window (window)->hchild;
}
--DEFUN ("window-buffer", Fwindow_buffer, Swindow_buffer, 0, 1, 0,
-- doc: /* Return the buffer that WINDOW is displaying.
--WINDOW defaults to the selected window. */)
++DEFUN ("window-next", Fwindow_next, Swindow_next, 0, 1, 0,
++ doc: /* Return WINDOW's right sibling window.
++WINDOW can be any window and defaults to the selected one.
++Return nil if WINDOW has no right sibling. */)
(Lisp_Object window)
{
-- return decode_window (window)->buffer;
++ return decode_any_window (window)->next;
}
--DEFUN ("window-height", Fwindow_height, Swindow_height, 0, 1, 0,
-- doc: /* Return the number of lines in WINDOW.
--WINDOW defaults to the selected window.
++DEFUN ("window-prev", Fwindow_prev, Swindow_prev, 0, 1, 0,
++ doc: /* Return WINDOW's left sibling window.
++WINDOW can be any window and defaults to the selected one.
++Return nil if WINDOW has no left sibling. */)
++ (Lisp_Object window)
++{
++ return decode_any_window (window)->prev;
++}
--The return value includes WINDOW's mode line and header line, if any.
++DEFUN ("window-use-time", Fwindow_use_time, Swindow_use_time, 0, 1, 0,
++ doc: /* Return WINDOW's use time.
++WINDOW defaults to the selected window. The window with the highest use
++time is the most recently selected one. The window with the lowest use
++time is the least recently selected one. */)
++ (Lisp_Object window)
++{
++ return decode_window (window)->use_time;
++}
++\f
++DEFUN ("window-total-size", Fwindow_total_size, Swindow_total_size, 0, 2, 0,
++ doc: /* Return the total number of lines of WINDOW.
++WINDOW can be any window and defaults to the selected one. The return
++value includes WINDOW's mode line and header line, if any. If WINDOW
++is internal, the return value is the sum of the total number of lines
++of WINDOW's child windows if these are vertically combined and the
++height of WINDOW's first child otherwise.
++
++Optional argument HORIZONTAL non-nil means return the total number of
++columns of WINDOW. In this case the return value includes any vertical
++dividers or scrollbars of WINDOW. If WINDOW is internal, the return
++value is the sum of the total number of columns of WINDOW's child
++windows if they are horizontally combined and the width of WINDOW's
++first child otherwise. */)
++ (Lisp_Object window, Lisp_Object horizontal)
++{
++ if (NILP (horizontal))
++ return decode_any_window (window)->total_lines;
++ else
++ return decode_any_window (window)->total_cols;
++}
--Note: The function does not take into account the value of `line-spacing'
--when calculating the number of lines in WINDOW. */)
++DEFUN ("window-new-total-size", Fwindow_new_total_size, Swindow_new_total_size, 0, 1, 0,
++ doc: /* Return new total size of WINDOW.
++WINDOW defaults to the selected window. */)
(Lisp_Object window)
{
-- return decode_any_window (window)->total_lines;
++ return decode_any_window (window)->new_total;
}
--DEFUN ("window-width", Fwindow_width, Swindow_width, 0, 1, 0,
-- doc: /* Return the number of display columns in WINDOW.
--WINDOW defaults to the selected window.
++DEFUN ("window-normal-size", Fwindow_normal_size, Swindow_normal_size, 0, 2, 0,
++ doc: /* Return normal height of WINDOW.
++WINDOW can be any window and defaults to the selected one. Optional
++argument HORIZONTAL non-nil means return normal width of WINDOW. */)
++ (Lisp_Object window, Lisp_Object horizontal)
++{
++ if (NILP (horizontal))
++ return decode_any_window (window)->normal_lines;
++ else
++ return decode_any_window (window)->normal_cols;
++}
--Note: The return value is the number of columns available for text in
--WINDOW. If you want to find out how many columns WINDOW takes up, use
--(let ((edges (window-edges))) (- (nth 2 edges) (nth 0 edges))). */)
++DEFUN ("window-new-normal-size", Fwindow_new_normal_size, Swindow_new_normal_size, 0, 1, 0,
++ doc: /* Return new normal size of WINDOW.
++WINDOW can be any window and defaults to the selected one. */)
(Lisp_Object window)
{
-- return make_number (window_box_text_cols (decode_any_window (window)));
++ return decode_any_window (window)->new_normal;
}
--DEFUN ("window-full-width-p", Fwindow_full_width_p, Swindow_full_width_p, 0, 1, 0,
-- doc: /* Return t if WINDOW is as wide as its frame.
--WINDOW defaults to the selected window. */)
++DEFUN ("window-left-column", Fwindow_left_column, Swindow_left_column, 0, 1, 0,
++ doc: /* Return left column of WINDOW.
++WINDOW can be any window and defaults to the selected one. */)
++ (Lisp_Object window)
++{
++ return decode_any_window (window)->left_col;
++}
++
++DEFUN ("window-top-line", Fwindow_top_line, Swindow_top_line, 0, 1, 0,
++ doc: /* Return top line of WINDOW.
++WINDOW can be any window and defaults to the selected one. */)
(Lisp_Object window)
{
-- return WINDOW_FULL_WIDTH_P (decode_any_window (window)) ? Qt : Qnil;
++ return decode_any_window (window)->top_line;
++}
++
++/* Return the number of lines of W's body. Don't count any mode or
++ header line of W. */
++
++int
++window_body_lines (struct window *w)
++{
++ int height = XFASTINT (w->total_lines);
++
++ if (!MINI_WINDOW_P (w))
++ {
++ if (WINDOW_WANTS_MODELINE_P (w))
++ --height;
++ if (WINDOW_WANTS_HEADER_LINE_P (w))
++ --height;
++ }
++
++ return height;
++}
++
++/* Return the number of columns of W's body. Don't count columns
++ occupied by the scroll bar or the vertical bar separating W from its
++ right sibling. On window-systems don't count fringes or display
++ margins either. */
++
++int
++window_body_cols (struct window *w)
++{
++ struct frame *f = XFRAME (WINDOW_FRAME (w));
++ int width = XINT (w->total_cols);
++
++ if (WINDOW_HAS_VERTICAL_SCROLL_BAR (w))
++ /* Scroll bars occupy a few columns. */
++ width -= WINDOW_CONFIG_SCROLL_BAR_COLS (w);
++ else if (!FRAME_WINDOW_P (f)
++ && !WINDOW_RIGHTMOST_P (w) && !WINDOW_FULL_WIDTH_P (w))
++ /* The column of `|' characters separating side-by-side windows
++ occupies one column only. */
++ width -= 1;
++
++ if (FRAME_WINDOW_P (f))
++ /* On window-systems, fringes and display margins cannot be
++ used for normal text. */
++ width -= (WINDOW_FRINGE_COLS (w)
++ + WINDOW_LEFT_MARGIN_COLS (w)
++ + WINDOW_RIGHT_MARGIN_COLS (w));
++
++ return width;
++}
++
++DEFUN ("window-body-size", Fwindow_body_size, Swindow_body_size, 0, 2, 0,
++ doc: /* Return the number of lines of WINDOW's body.
++WINDOW must be a live window and defaults to the selected one. The
++return value does not include WINDOW's mode line and header line, if
++any.
++
++Optional argument HORIZONTAL non-nil means return the number of columns
++of WINDOW's body. In this case, the return value does not include any
++vertical dividers or scroll bars owned by WINDOW. On a window-system
++the return value does not include the number of columns used for
++WINDOW's fringes or display margins either. */)
++ (Lisp_Object window, Lisp_Object horizontal)
++{
++ struct window *w = decode_any_window (window);
++
++ if (NILP (horizontal))
++ return make_number (window_body_lines (w));
++ else
++ return make_number (window_body_cols (w));
}
DEFUN ("window-hscroll", Fwindow_hscroll, Swindow_hscroll, 0, 1, 0,
return pos;
}
- doc: /* Return non-nil if position POS is currently in WINDOW.
++DEFUN ("pos-visible-in-window-p", Fpos_visible_in_window_p,
++ Spos_visible_in_window_p, 0, 3, 0,
+++ doc: /* Return non-nil if position POS is currently on the frame in WINDOW.
++Return nil if that position is scrolled vertically out of view.
++If a character is only partially visible, nil is returned, unless the
++optional argument PARTIALLY is non-nil.
++If POS is only out of view because of horizontal scrolling, return non-nil.
++If POS is t, it specifies the position of the last visible glyph in WINDOW.
++POS defaults to point in WINDOW; WINDOW defaults to the selected window.
--DEFUN ("window-dedicated-p", Fwindow_dedicated_p, Swindow_dedicated_p,
-- 0, 1, 0,
-- doc: /* Return non-nil when WINDOW is dedicated to its buffer.
--More precisely, return the value assigned by the last call of
--`set-window-dedicated-p' for WINDOW. Return nil if that function was
--never called with WINDOW as its argument, or the value set by that
--function was internally reset since its last call. WINDOW defaults to
--the selected window.
--
--When a window is dedicated to its buffer, `display-buffer' will refrain
--from displaying another buffer in it. `get-lru-window' and
--`get-largest-window' treat dedicated windows specially.
--`delete-windows-on', `replace-buffer-in-windows', `quit-window' and
--`kill-buffer' can delete a dedicated window and the containing frame.
--
--Functions like `set-window-buffer' may change the buffer displayed by a
--window, unless that window is "strongly" dedicated to its buffer, that
--is the value returned by `window-dedicated-p' is t. */)
-- (Lisp_Object window)
++If POS is visible, return t if PARTIALLY is nil; if PARTIALLY is non-nil,
++return value is a list of 2 or 6 elements (X Y [RTOP RBOT ROWH VPOS]),
++where X and Y are the pixel coordinates relative to the top left corner
++of the window. The remaining elements are omitted if the character after
++POS is fully visible; otherwise, RTOP and RBOT are the number of pixels
++off-window at the top and bottom of the row, ROWH is the height of the
++display row, and VPOS is the row number (0-based) containing POS. */)
- (Lisp_Object pos, Lisp_Object window, Lisp_Object partially)
+++ (Lisp_Object pos, Lisp_Object window, Lisp_Object partially)
{
-- return decode_window (window)->dedicated;
--}
--
--DEFUN ("set-window-dedicated-p", Fset_window_dedicated_p,
-- Sset_window_dedicated_p, 2, 2, 0,
-- doc: /* Mark WINDOW as dedicated according to FLAG.
--WINDOW defaults to the selected window. FLAG non-nil means mark WINDOW
--as dedicated to its buffer. FLAG nil means mark WINDOW as non-dedicated.
--Return FLAG.
++ register struct window *w;
- register int posint;
+++ register EMACS_INT posint;
++ register struct buffer *buf;
++ struct text_pos top;
++ Lisp_Object in_window = Qnil;
++ int rtop, rbot, rowh, vpos, fully_p = 1;
++ int x, y;
--When a window is dedicated to its buffer, `display-buffer' will refrain
--from displaying another buffer in it. `get-lru-window' and
--`get-largest-window' treat dedicated windows specially.
--`delete-windows-on', `replace-buffer-in-windows', `quit-window' and
--`kill-buffer' can delete a dedicated window and the containing
--frame.
++ w = decode_window (window);
++ buf = XBUFFER (w->buffer);
++ SET_TEXT_POS_FROM_MARKER (top, w->start);
--As a special case, if FLAG is t, mark WINDOW as "strongly" dedicated to
--its buffer. Functions like `set-window-buffer' may change the buffer
--displayed by a window, unless that window is strongly dedicated to its
--buffer. If and when `set-window-buffer' displays another buffer in a
--window, it also makes sure that the window is not marked as dedicated. */)
-- (Lisp_Object window, Lisp_Object flag)
--{
-- register struct window *w = decode_window (window);
++ if (EQ (pos, Qt))
++ posint = -1;
++ else if (!NILP (pos))
++ {
++ CHECK_NUMBER_COERCE_MARKER (pos);
++ posint = XINT (pos);
++ }
++ else if (w == XWINDOW (selected_window))
++ posint = PT;
++ else
++ posint = XMARKER (w->pointm)->charpos;
-- w->dedicated = flag;
-- return w->dedicated;
--}
++ /* If position is above window start or outside buffer boundaries,
++ or if window start is out of range, position is not visible. */
- if ((EQ (pos, Qt) || (posint >= CHARPOS (top) && posint <= BUF_ZV (buf)))
+++ if ((EQ (pos, Qt)
+++ || (posint >= CHARPOS (top) && posint <= BUF_ZV (buf)))
++ && CHARPOS (top) >= BUF_BEGV (buf)
++ && CHARPOS (top) <= BUF_ZV (buf)
++ && pos_visible_p (w, posint, &x, &y, &rtop, &rbot, &rowh, &vpos)
++ && (fully_p = !rtop && !rbot, (!NILP (partially) || fully_p)))
++ in_window = Qt;
++ if (!NILP (in_window) && !NILP (partially))
++ {
++ Lisp_Object part = Qnil;
++ if (!fully_p)
++ part = list4 (make_number (rtop), make_number (rbot),
++ make_number (rowh), make_number (vpos));
++ in_window = Fcons (make_number (x),
++ Fcons (make_number (y), part));
++ }
--DEFUN ("window-parameters", Fwindow_parameters, Swindow_parameters,
-- 0, 1, 0,
-- doc: /* Return the parameters of WINDOW and their values.
--WINDOW defaults to the selected window. The return value is a list of
--elements of the form (PARAMETER . VALUE). */)
-- (Lisp_Object window)
--{
-- return Fcopy_alist (decode_window (window)->window_parameters);
++ return in_window;
}
--DEFUN ("window-parameter", Fwindow_parameter, Swindow_parameter,
-- 2, 2, 0,
-- doc: /* Return WINDOW's value for PARAMETER.
--WINDOW defaults to the selected window. */)
-- (Lisp_Object window, Lisp_Object parameter)
--{
-- Lisp_Object result;
++DEFUN ("window-line-height", Fwindow_line_height,
++ Swindow_line_height, 0, 2, 0,
++ doc: /* Return height in pixels of text line LINE in window WINDOW.
++WINDOW defaults to the selected window.
-- result = Fassq (parameter, decode_window (window)->window_parameters);
-- return CDR_SAFE (result);
--}
++Return height of current line if LINE is omitted or nil. Return height of
++header or mode line if LINE is `header-line' or `mode-line'.
++Otherwise, LINE is a text line number starting from 0. A negative number
++counts from the end of the window.
--DEFUN ("set-window-parameter", Fset_window_parameter,
-- Sset_window_parameter, 3, 3, 0,
-- doc: /* Set WINDOW's value of PARAMETER to VALUE.
--WINDOW defaults to the selected window. Return VALUE. */)
-- (Lisp_Object window, Lisp_Object parameter, Lisp_Object value)
++Value is a list (HEIGHT VPOS YPOS OFFBOT), where HEIGHT is the height
++in pixels of the visible part of the line, VPOS and YPOS are the
++vertical position in lines and pixels of the line, relative to the top
++of the first text line, and OFFBOT is the number of off-window pixels at
++the bottom of the text line. If there are off-window pixels at the top
++of the (first) text line, YPOS is negative.
++
++Return nil if window display is not up-to-date. In that case, use
++`pos-visible-in-window-p' to obtain the information. */)
++ (Lisp_Object line, Lisp_Object window)
{
-- register struct window *w = decode_window (window);
-- Lisp_Object old_alist_elt;
++ register struct window *w;
++ register struct buffer *b;
++ struct glyph_row *row, *end_row;
++ int max_y, crop, i, n;
-- old_alist_elt = Fassq (parameter, w->window_parameters);
-- if (NILP (old_alist_elt))
-- w->window_parameters = Fcons (Fcons (parameter, value), w->window_parameters);
-- else
-- Fsetcdr (old_alist_elt, value);
-- return value;
--}
++ w = decode_window (window);
++ if (noninteractive || w->pseudo_window_p)
++ return Qnil;
++
++ CHECK_BUFFER (w->buffer);
++ b = XBUFFER (w->buffer);
++
++ /* Fail if current matrix is not up-to-date. */
++ if (NILP (w->window_end_valid)
++ || current_buffer->clip_changed
++ || current_buffer->prevent_redisplay_optimizations_p
++ || XFASTINT (w->last_modified) < BUF_MODIFF (b)
++ || XFASTINT (w->last_overlay_modified) < BUF_OVERLAY_MODIFF (b))
++ return Qnil;
++
++ if (NILP (line))
++ {
++ i = w->cursor.vpos;
++ if (i < 0 || i >= w->current_matrix->nrows
++ || (row = MATRIX_ROW (w->current_matrix, i), !row->enabled_p))
++ return Qnil;
++ max_y = window_text_bottom_y (w);
++ goto found_row;
++ }
++
++ if (EQ (line, Qheader_line))
++ {
++ if (!WINDOW_WANTS_HEADER_LINE_P (w))
++ return Qnil;
++ row = MATRIX_HEADER_LINE_ROW (w->current_matrix);
++ if (!row->enabled_p)
++ return Qnil;
++ return list4 (make_number (row->height),
++ make_number (0), make_number (0),
++ make_number (0));
++ }
++
++ if (EQ (line, Qmode_line))
++ {
++ row = MATRIX_MODE_LINE_ROW (w->current_matrix);
++ if (!row->enabled_p)
++ return Qnil;
++ return list4 (make_number (row->height),
++ make_number (0), /* not accurate */
++ make_number (WINDOW_HEADER_LINE_HEIGHT (w)
++ + window_text_bottom_y (w)),
++ make_number (0));
++ }
++
++ CHECK_NUMBER (line);
++ n = XINT (line);
++
++ row = MATRIX_FIRST_TEXT_ROW (w->current_matrix);
++ end_row = MATRIX_BOTTOM_TEXT_ROW (w->current_matrix, w);
++ max_y = window_text_bottom_y (w);
++ i = 0;
++
++ while ((n < 0 || i < n)
++ && row <= end_row && row->enabled_p
++ && row->y + row->height < max_y)
++ row++, i++;
++
++ if (row > end_row || !row->enabled_p)
++ return Qnil;
++
++ if (++n < 0)
++ {
++ if (-n > i)
++ return Qnil;
++ row += n;
++ i += n;
++ }
++
++ found_row:
++ crop = max (0, (row->y + row->height) - max_y);
++ return list4 (make_number (row->height + min (0, row->y) - crop),
++ make_number (i),
++ make_number (row->y),
++ make_number (crop));
++}
++
++DEFUN ("window-dedicated-p", Fwindow_dedicated_p, Swindow_dedicated_p,
++ 0, 1, 0,
++ doc: /* Return non-nil when WINDOW is dedicated to its buffer.
++More precisely, return the value assigned by the last call of
++`set-window-dedicated-p' for WINDOW. Return nil if that function was
++never called with WINDOW as its argument, or the value set by that
++function was internally reset since its last call. WINDOW defaults to
++the selected window.
++
++When a window is dedicated to its buffer, `display-buffer' will refrain
++from displaying another buffer in it. `get-lru-window' and
++`get-largest-window' treat dedicated windows specially.
++`delete-windows-on', `replace-buffer-in-windows', `quit-window' and
++`kill-buffer' can delete a dedicated window and the containing frame.
++
++Functions like `set-window-buffer' may change the buffer displayed by a
++window, unless that window is "strongly" dedicated to its buffer, that
++is the value returned by `window-dedicated-p' is t. */)
++ (Lisp_Object window)
++{
++ return decode_window (window)->dedicated;
++}
++
++DEFUN ("set-window-dedicated-p", Fset_window_dedicated_p,
++ Sset_window_dedicated_p, 2, 2, 0,
++ doc: /* Mark WINDOW as dedicated according to FLAG.
++WINDOW must be a live window and defaults to the selected one. FLAG
++non-nil means mark WINDOW as dedicated to its buffer. FLAG nil means
++mark WINDOW as non-dedicated. Return FLAG.
++
++When a window is dedicated to its buffer, `display-buffer' will refrain
++from displaying another buffer in it. `get-lru-window' and
++`get-largest-window' treat dedicated windows specially.
++`delete-windows-on', `replace-buffer-in-windows', `quit-window',
++`quit-restore-window' and `kill-buffer' can delete a dedicated window
++and the containing frame.
++
++As a special case, if FLAG is t, mark WINDOW as "strongly" dedicated to
++its buffer. Functions like `set-window-buffer' may change the buffer
++displayed by a window, unless that window is strongly dedicated to its
++buffer. If and when `set-window-buffer' displays another buffer in a
++window, it also makes sure that the window is no more dedicated. */)
++ (Lisp_Object window, Lisp_Object flag)
++{
++ register struct window *w = decode_window (window);
++
++ w->dedicated = flag;
++ return w->dedicated;
++}
++
++DEFUN ("window-prev-buffers", Fwindow_prev_buffers, Swindow_prev_buffers,
++ 0, 1, 0,
++ doc: /* Return buffers previously shown in WINDOW.
++WINDOW must be a live window and defaults to the selected one.
++
++The return value is either nil or a list of <buffer, window-start,
++window-point> triples where buffer was previously shown in WINDOW. */)
++ (Lisp_Object window)
++{
++ return decode_window (window)->prev_buffers;
++}
++
++DEFUN ("set-window-prev-buffers", Fset_window_prev_buffers,
++ Sset_window_prev_buffers, 2, 2, 0,
++ doc: /* Set WINDOW's previous buffers to PREV-BUFFERS.
++WINDOW must be a live window and defaults to the selected one. Return
++PREV-BUFFERS.
++
++PREV-BUFFERS should be either nil or a list of <buffer, window-start,
++window-point> triples where buffer was previously shown in WINDOW. */)
++ (Lisp_Object window, Lisp_Object prev_buffers)
++{
++ return decode_any_window (window)->prev_buffers = prev_buffers;
++}
++
++DEFUN ("window-next-buffers", Fwindow_next_buffers, Swindow_next_buffers,
++ 0, 1, 0,
++ doc: /* Return list of buffers recently re-shown in WINDOW.
++WINDOW must be a live window and defaults to the selected one. */)
++ (Lisp_Object window)
++{
++ return decode_window (window)->next_buffers;
++}
++
++DEFUN ("set-window-next-buffers", Fset_window_next_buffers,
++ Sset_window_next_buffers, 2, 2, 0,
++ doc: /* Set WINDOW's next buffers to NEXT-BUFFERS.
++WINDOW must be a live window and defaults to the selected one. Return
++NEXT-BUFFERS.
++
++NEXT-BUFFERS should be either nil or a list of buffers that have been
++recently re-shown in WINDOW. */)
++ (Lisp_Object window, Lisp_Object next_buffers)
++{
++ return decode_any_window (window)->next_buffers = next_buffers;
++}
++
++DEFUN ("window-parameters", Fwindow_parameters, Swindow_parameters,
++ 0, 1, 0,
++ doc: /* Return the parameters of WINDOW and their values.
++WINDOW defaults to the selected window. The return value is a list of
++elements of the form (PARAMETER . VALUE). */)
++ (Lisp_Object window)
++{
++ return Fcopy_alist (decode_any_window (window)->window_parameters);
++}
++
++DEFUN ("window-parameter", Fwindow_parameter, Swindow_parameter,
++ 2, 2, 0,
++ doc: /* Return WINDOW's value for PARAMETER.
++WINDOW defaults to the selected window. */)
++ (Lisp_Object window, Lisp_Object parameter)
++{
++ Lisp_Object result;
++
++ result = Fassq (parameter, decode_any_window (window)->window_parameters);
++ return CDR_SAFE (result);
++}
++
++DEFUN ("set-window-parameter", Fset_window_parameter,
++ Sset_window_parameter, 3, 3, 0,
++ doc: /* Set WINDOW's value of PARAMETER to VALUE.
++WINDOW defaults to the selected window. Return VALUE. */)
++ (Lisp_Object window, Lisp_Object parameter, Lisp_Object value)
++{
++ register struct window *w = decode_any_window (window);
++ Lisp_Object old_alist_elt;
++
++ old_alist_elt = Fassq (parameter, w->window_parameters);
++ if (NILP (old_alist_elt))
++ w->window_parameters = Fcons (Fcons (parameter, value), w->window_parameters);
++ else
++ Fsetcdr (old_alist_elt, value);
++ return value;
++}
DEFUN ("window-display-table", Fwindow_display_table, Swindow_display_table,
0, 1, 0,
depends on the value of (window-start WINDOW), so if calling this
function in a program gives strange scrolling, make sure the
window-start value is reasonable when this function is called. */)
-- (Lisp_Object window)
++ (Lisp_Object window, Lisp_Object root)
{
-- struct window *w;
++ struct window *w, *r, *s;
++ struct frame *f;
++ Lisp_Object sibling, pwindow, swindow, delta;
- int startpos, top, new_top, resize_failed;
+ EMACS_INT startpos;
-- int top, new_top;
+++ int top, new_top, resize_failed;
-- if (NILP (window))
-- window = selected_window;
-- else
-- CHECK_LIVE_WINDOW (window);
-- w = XWINDOW (window);
++ w = decode_any_window (window);
++ XSETWINDOW (window, w);
++ f = XFRAME (w->frame);
-- startpos = marker_position (w->start);
-- top = WINDOW_TOP_EDGE_LINE (w) - FRAME_TOP_MARGIN (XFRAME (WINDOW_FRAME (w)));
++ if (NILP (root))
++ /* ROOT is the frame's root window. */
++ {
++ root = FRAME_ROOT_WINDOW (f);
++ r = XWINDOW (root);
++ }
++ else
++ /* ROOT must be an ancestor of WINDOW. */
++ {
++ r = decode_any_window (root);
++ pwindow = XWINDOW (window)->parent;
++ while (!NILP (pwindow))
++ if (EQ (pwindow, root))
++ break;
++ else
++ pwindow = XWINDOW (pwindow)->parent;
++ if (!EQ (pwindow, root))
++ error ("Specified root is not an ancestor of specified window");
++ }
-- if (MINI_WINDOW_P (w) && top > 0)
++ if (EQ (window, root))
++ /* A noop. */
++ return Qnil;
++ /* I don't understand the "top > 0" part below. If we deal with a
++ standalone minibuffer it would have been caught by the preceding
++ test. */
++ else if (MINI_WINDOW_P (w)) /* && top > 0) */
error ("Can't expand minibuffer to full frame");
-- window_loop (DELETE_OTHER_WINDOWS, window, 0, WINDOW_FRAME (w));
--
-- /* Try to minimize scrolling, by setting the window start to the point
-- will cause the text at the old window start to be at the same place
-- on the frame. But don't try to do this if the window start is
-- outside the visible portion (as might happen when the display is
-- not current, due to typeahead). */
-- new_top = WINDOW_TOP_EDGE_LINE (w) - FRAME_TOP_MARGIN (XFRAME (WINDOW_FRAME (w)));
-- if (new_top != top
-- && startpos >= BUF_BEGV (XBUFFER (w->buffer))
-- && startpos <= BUF_ZV (XBUFFER (w->buffer)))
++ if (!NILP (w->buffer))
{
-- struct position pos;
-- struct buffer *obuf = current_buffer;
--
-- Fset_buffer (w->buffer);
-- /* This computation used to temporarily move point, but that can
-- have unwanted side effects due to text properties. */
-- pos = *vmotion (startpos, -top, w);
++ startpos = marker_position (w->start);
++ top = WINDOW_TOP_EDGE_LINE (w)
++ - FRAME_TOP_MARGIN (XFRAME (WINDOW_FRAME (w)));
++ /* Make sure WINDOW is the frame's selected window. */
++ if (!EQ (window, FRAME_SELECTED_WINDOW (f)))
++ {
++ if (EQ (selected_frame, w->frame))
++ Fselect_window (window, Qnil);
++ else
++ FRAME_SELECTED_WINDOW (f) = window;
++ }
++ }
++ else
++ {
++ /* See if the frame's selected window is a subwindow of WINDOW, by
++ finding all the selected window's parents and comparing each
++ one with WINDOW. If it isn't we need a new selected window for
++ this frame. */
++ swindow = FRAME_SELECTED_WINDOW (f);
++ while (1)
++ {
++ pwindow = swindow;
++ while (!NILP (pwindow) && !EQ (window, pwindow))
++ pwindow = XWINDOW (pwindow)->parent;
-- set_marker_both (w->start, w->buffer, pos.bufpos, pos.bytepos);
-- w->window_end_valid = Qnil;
-- w->start_at_line_beg = ((pos.bytepos == BEGV_BYTE
-- || FETCH_BYTE (pos.bytepos - 1) == '\n') ? Qt
-- : Qnil);
-- /* We need to do this, so that the window-scroll-functions
-- get called. */
-- w->optional_new_start = Qt;
++ if (EQ (window, pwindow))
++ /* If WINDOW is an ancestor of SWINDOW, then SWINDOW is ok
++ as the new selected window. */
++ break;
++ else
++ /* Else try the previous window of SWINDOW. */
++ swindow = Fprevious_window (swindow, Qlambda, Qnil);
++ }
-- set_buffer_internal (obuf);
++ if (!EQ (swindow, FRAME_SELECTED_WINDOW (f)))
++ {
++ if (EQ (selected_frame, w->frame))
++ Fselect_window (swindow, Qnil);
++ else
++ FRAME_SELECTED_WINDOW (f) = swindow;
++ }
}
-- return Qnil;
--}
++ BLOCK_INPUT;
++ free_window_matrices (r);
--DEFUN ("delete-windows-on", Fdelete_windows_on, Sdelete_windows_on,
-- 0, 2, "bDelete windows on (buffer): ",
-- doc: /* Delete all windows showing BUFFER-OR-NAME.
--BUFFER-OR-NAME may be a buffer or the name of an existing buffer and
--defaults to the current buffer.
++ windows_or_buffers_changed++;
++ Vwindow_list = Qnil;
++ FRAME_WINDOW_SIZES_CHANGED (f) = 1;
--Optional second argument FRAME controls which frames are affected.
--If optional argument FRAME is `visible', search all visible frames.
--If FRAME is 0, search all visible and iconified frames.
--If FRAME is nil, search all frames.
--If FRAME is t, search only the selected frame.
--If FRAME is a frame, search only that frame.
--When a window showing BUFFER-OR-NAME is dedicated and the only window of
--its frame, that frame is deleted when there are other frames left. */)
-- (Lisp_Object buffer_or_name, Lisp_Object frame)
--{
-- Lisp_Object buffer;
++ if (NILP (w->buffer))
++ {
++ resize_failed = 0;
++ /* Resize subwindows vertically. */
++ XSETINT (delta, XINT (r->total_lines) - XINT (w->total_lines));
++ w->top_line = r->top_line;
++ resize_root_window (window, delta, Qnil, Qnil);
++ if (resize_window_check (w, 0))
++ resize_window_apply (w, 0);
++ else
++ {
++ resize_root_window (window, delta, Qnil, Qt);
++ if (resize_window_check (w, 0))
++ resize_window_apply (w, 0);
++ else
++ resize_failed = 1;
++ }
-- /* FRAME uses t and nil to mean the opposite of what window_loop
-- expects. */
-- if (NILP (frame))
-- frame = Qt;
-- else if (EQ (frame, Qt))
-- frame = Qnil;
++ /* Resize subwindows horizontally. */
++ if (!resize_failed)
++ {
++ w->left_col = r->left_col;
++ XSETINT (delta, XINT (r->total_cols) - XINT (w->total_cols));
++ w->left_col = r->left_col;
++ resize_root_window (window, delta, Qt, Qnil);
++ if (resize_window_check (w, 1))
++ resize_window_apply (w, 1);
++ else
++ {
++ resize_root_window (window, delta, Qt, Qt);
++ if (resize_window_check (w, 1))
++ resize_window_apply (w, 1);
++ else
++ resize_failed = 1;
++ }
++ }
-- if (NILP (buffer_or_name))
-- buffer = Fcurrent_buffer ();
++ if (resize_failed)
++ /* Play safe, if we still can ... */
++ {
++ window = swindow;
++ w = XWINDOW (window);
++ }
++ }
++
++ /* Cleanly unlink WINDOW from window-tree. */
++ if (!NILP (w->prev))
++ /* Get SIBLING above (on the left of) WINDOW. */
++ {
++ sibling = w->prev;
++ s = XWINDOW (sibling);
++ s->next = w->next;
++ if (!NILP (s->next))
++ XWINDOW (s->next)->prev = sibling;
++ }
else
++ /* Get SIBLING below (on the right of) WINDOW. */
{
-- buffer = Fget_buffer (buffer_or_name);
-- CHECK_BUFFER (buffer);
++ sibling = w->next;
++ s = XWINDOW (sibling);
++ s->prev = Qnil;
++ if (!NILP (XWINDOW (w->parent)->vchild))
++ XWINDOW (w->parent)->vchild = sibling;
++ else
++ XWINDOW (w->parent)->hchild = sibling;
}
-- window_loop (DELETE_BUFFER_WINDOWS, buffer, 0, frame);
--
-- return Qnil;
--}
--
--DEFUN ("replace-buffer-in-windows", Freplace_buffer_in_windows,
-- Sreplace_buffer_in_windows,
-- 0, 1, "bReplace buffer in windows: ",
-- doc: /* Replace BUFFER-OR-NAME with some other buffer in all windows showing it.
--BUFFER-OR-NAME may be a buffer or the name of an existing buffer and
--defaults to the current buffer.
++ /* Delete ROOT and all subwindows of ROOT. */
++ if (!NILP (r->vchild))
++ {
++ delete_all_subwindows (r->vchild);
++ r->vchild = Qnil;
++ }
++ else if (!NILP (r->hchild))
++ {
++ delete_all_subwindows (r->hchild);
++ r->hchild = Qnil;
++ }
--When a window showing BUFFER-OR-NAME is dedicated that window is
--deleted. If that window is the only window on its frame, that frame is
--deleted too when there are other frames left. If there are no other
--frames left, some other buffer is displayed in that window. */)
-- (Lisp_Object buffer_or_name)
--{
-- Lisp_Object buffer;
++ replace_window (root, window, 1);
-- if (NILP (buffer_or_name))
-- buffer = Fcurrent_buffer ();
-- else
++ /* This must become SWINDOW anyway ....... */
++ if (!NILP (w->buffer) && !resize_failed)
{
-- buffer = Fget_buffer (buffer_or_name);
-- CHECK_BUFFER (buffer);
++ /* Try to minimize scrolling, by setting the window start to the
++ point will cause the text at the old window start to be at the
++ same place on the frame. But don't try to do this if the
++ window start is outside the visible portion (as might happen
++ when the display is not current, due to typeahead). */
++ new_top = WINDOW_TOP_EDGE_LINE (w) - FRAME_TOP_MARGIN (XFRAME (WINDOW_FRAME (w)));
++ if (new_top != top
++ && startpos >= BUF_BEGV (XBUFFER (w->buffer))
++ && startpos <= BUF_ZV (XBUFFER (w->buffer)))
++ {
++ struct position pos;
++ struct buffer *obuf = current_buffer;
++
++ Fset_buffer (w->buffer);
++ /* This computation used to temporarily move point, but that
++ can have unwanted side effects due to text properties. */
++ pos = *vmotion (startpos, -top, w);
++
++ set_marker_both (w->start, w->buffer, pos.bufpos, pos.bytepos);
++ w->window_end_valid = Qnil;
++ w->start_at_line_beg = ((pos.bytepos == BEGV_BYTE
++ || FETCH_BYTE (pos.bytepos - 1) == '\n') ? Qt
++ : Qnil);
++ /* We need to do this, so that the window-scroll-functions
++ get called. */
++ w->optional_new_start = Qt;
++
++ set_buffer_internal (obuf);
++ }
}
-- window_loop (UNSHOW_BUFFER, buffer, 0, Qt);
++ adjust_glyphs (f);
++ UNBLOCK_INPUT;
++
++ run_window_configuration_change_hook (f);
return Qnil;
}
return best_glyph != NULL;
}
++ #endif /* not used */
++
++ /* Find the positions of the first and the last glyphs in window W's
++ current matrix that occlude positions [STARTPOS..ENDPOS] in OBJECT
++ (assumed to be a string), and return in DPYINFO's mouse_face
++ members the pixel and column/row coordinates of those glyphs. */
++
++ static void
++ mouse_face_from_string_pos (struct window *w, Display_Info *dpyinfo,
++ Lisp_Object object,
++ EMACS_INT startpos, EMACS_INT endpos)
++ {
++ int yb = window_text_bottom_y (w);
++ struct glyph_row *r;
++ struct glyph *g, *e;
++ int gx;
++ int found = 0;
++
++ /* Find the glyph row with at least one position in the range
++ [STARTPOS..ENDPOS], and the first glyph in that row whose
++ position belongs to that range. */
++ for (r = MATRIX_FIRST_TEXT_ROW (w->current_matrix);
++ r->enabled_p && r->y < yb;
++ ++r)
++ {
++ if (!r->reversed_p)
++ {
++ g = r->glyphs[TEXT_AREA];
++ e = g + r->used[TEXT_AREA];
++ for (gx = r->x; g < e; gx += g->pixel_width, ++g)
++ if (EQ (g->object, object)
++ && startpos <= g->charpos && g->charpos <= endpos)
++ {
++ dpyinfo->mouse_face_beg_row = r - w->current_matrix->rows;
++ dpyinfo->mouse_face_beg_y = r->y;
++ dpyinfo->mouse_face_beg_col = g - r->glyphs[TEXT_AREA];
++ dpyinfo->mouse_face_beg_x = gx;
++ found = 1;
++ break;
++ }
++ }
++ else
++ {
++ struct glyph *g1;
++
++ e = r->glyphs[TEXT_AREA];
++ g = e + r->used[TEXT_AREA];
++ for ( ; g > e; --g)
++ if (EQ ((g-1)->object, object)
++ && startpos <= (g-1)->charpos && (g-1)->charpos <= endpos)
++ {
++ dpyinfo->mouse_face_beg_row = r - w->current_matrix->rows;
++ dpyinfo->mouse_face_beg_y = r->y;
++ dpyinfo->mouse_face_beg_col = g - r->glyphs[TEXT_AREA];
++ for (gx = r->x, g1 = r->glyphs[TEXT_AREA]; g1 < g; ++g1)
++ gx += g1->pixel_width;
++ dpyinfo->mouse_face_beg_x = gx;
++ found = 1;
++ break;
++ }
++ }
++ if (found)
++ break;
++ }
+
++ if (!found)
++ return;
++
++ /* Starting with the next row, look for the first row which does NOT
++ include any glyphs whose positions are in the range. */
++ for (++r; r->enabled_p && r->y < yb; ++r)
++ {
++ g = r->glyphs[TEXT_AREA];
++ e = g + r->used[TEXT_AREA];
++ found = 0;
++ for ( ; g < e; ++g)
++ if (EQ (g->object, object)
++ && startpos <= g->charpos && g->charpos <= endpos)
++ {
++ found = 1;
++ break;
++ }
++ if (!found)
++ break;
++ }
++
++ /* The highlighted region ends on the previous row. */
++ r--;
+
++ /* Set the end row and its vertical pixel coordinate. */
++ dpyinfo->mouse_face_end_row = r - w->current_matrix->rows;
++ dpyinfo->mouse_face_end_y = r->y;
++
++ /* Compute and set the end column and the end column's horizontal
++ pixel coordinate. */
++ if (!r->reversed_p)
++ {
++ g = r->glyphs[TEXT_AREA];
++ e = g + r->used[TEXT_AREA];
++ for ( ; e > g; --e)
++ if (EQ ((e-1)->object, object)
++ && startpos <= (e-1)->charpos && (e-1)->charpos <= endpos)
++ break;
++ dpyinfo->mouse_face_end_col = e - g;
++
++ for (gx = r->x; g < e; ++g)
++ gx += g->pixel_width;
++ dpyinfo->mouse_face_end_x = gx;
++ }
++ else
++ {
++ e = r->glyphs[TEXT_AREA];
++ g = e + r->used[TEXT_AREA];
++ for (gx = r->x ; e < g; ++e)
++ {
++ if (EQ (e->object, object)
++ && startpos <= e->charpos && e->charpos <= endpos)
++ break;
++ gx += e->pixel_width;
++ }
++ dpyinfo->mouse_face_end_col = e - r->glyphs[TEXT_AREA];
++ dpyinfo->mouse_face_end_x = gx;
++ }
++ }
/* See if position X, Y is within a hot-spot of an image. */