Paul Eggert [Fri, 1 Jul 2011 05:12:00 +0000 (22:12 -0700)]
* eval.c (struct backtrace): Simplify and port the data structure.
Do not assume that "int nargs : BITS_PER_INT - 2;" produces a
signed bit field, as this assumption is not portable and it makes
Emacs crash when compiled with Sun C 5.8 on sparc. Do not use
"char debug_on_exit : 1" as this is not portable either; instead,
use the portable "unsigned int debug_on_exit : 1". Remove unused
member evalargs. Remove obsolete comments about cc bombing out.
Stefan Monnier [Fri, 1 Jul 2011 03:48:44 +0000 (23:48 -0400)]
* lisp/window.el (bury-buffer): Don't iconify the only frame.
(switch-to-buffer): Revert to Emacs<23 behavior, i.e. do not fallback
to pop-to-buffer. Use pop-to-buffer-same-frame if you don't like that.
Stefan Monnier [Fri, 1 Jul 2011 03:15:02 +0000 (23:15 -0400)]
* lisp/emacs-lisp/find-func.el (find-library--load-name): New fun.
(find-library-name): Use it to find relative load names when provided
absolute file name.
* plstore.el (plstore-select-keys, plstore-encrypt-to): New variable.
(plstore-save): Support public key encryption.
(plstore--init-from-buffer): New function.
(plstore-open): Use it; fix error when opening a non-existent file.
(plstore-revert): Use plstore--init-from-buffer.
* net/soap-client.el (soap-invoke, soap-wsdl-resolve-references):
Remove two rather uninteresting debugging-like messages to make
debbugs.el more silent.
Gnus developers [Thu, 30 Jun 2011 22:20:32 +0000 (22:20 +0000)]
gnus-group.el (gnus-read-ephemeral-emacs-bug-group): Take an optional quit window configuration.
auth-source.el (epg-context-set-passphrase-callback): Remove duplicate autoload.
nnir.el (nnir-request-article): Allow requesting articles by Message-ID with nnimap.
gnus-sum.el (gnus-refer-article-methods): Allow (nnir) entry to use current server.
auth-source.el: Autoload EPA/EPG functions.
(auth-source-netrc-use-gpg-tokens): Clarify that it should not be changed when EPA/EPG is not available.
(auth-source-backend): Rename "arg" member to "data".
(auth-source-backend-parse, auth-source-plstore-search)
(auth-source-plstore-create): Use it.
Alan Mackenzie [Thu, 30 Jun 2011 20:45:12 +0000 (20:45 +0000)]
progmodes/cc-guess.el: New file.
progmodes/cc-langs.el (c-mode-menu): Added "Style..." submenu.
progmodes/cc-styles.el (cc-choose-style-for-mode): New function derived
from `c-basic-common-init'.
progmodes/cc-mode.el (top-level): Require cc-guess.
(c-basic-common-init): Use `cc-choose-style-for-mode'.
Alan Mackenzie [Thu, 30 Jun 2011 15:12:59 +0000 (15:12 +0000)]
progmodes/cc-engine.el (c-guess-continued-construct): Correct the
handling of template-args-cont, particularly for when font lock is
disabled. Name this case as "CASE G".
Ken Manheimer [Thu, 30 Jun 2011 14:38:35 +0000 (10:38 -0400)]
* allout.el (allout-yank-processing): Fix injection of extra space between
bullet and non-whitespace character in first topic when pasting, ensuring
that the actual spacing in the pasted topic following the bullet char is
preserved. This extra space was causing pasted encrypted topics to get a
decrypted status even when the content was actually still encrypted. Now
the decryption status from before the paste is preserved.
(allout-flag-region): Set all allout overlays so they evaporate when
reduced to zero length (evanescent), to prevent overlay leakage.
Gnus developers [Thu, 30 Jun 2011 14:25:27 +0000 (14:25 +0000)]
Merge changes made in Gnus trunk.
gnus-art.el (gnus-request-article-this-buffer): Use existing function `gnus-refer-article-methods'.
auth-source.el: Require EPA and EPG.
(auth-source-passphrase-alist): New variable.
(auth-source-passphrase-callback-function, auth-source-token-passphrase-callback-function): Callbacks for the netrc field encryption (GPG tokens).
(auth-source-epa-extract-gpg-token, auth-source-epa-make-gpg-token): Symmetric encryption and decryption of the netrc GPG tokens.
(auth-source-netrc-normalize): Use them, simplifying the closure.
Jan Djärv [Thu, 30 Jun 2011 14:00:26 +0000 (16:00 +0200)]
Add GSettings support (GConf is going away).
* configure.in (gsettings): New option and check for GSettings.
* src/Makefile.in (SETTINGS_CFLAGS, SETTINGS_LIBS): Renamed from
GCONF_CFLAGS/LIBS.
* src/xsettings.c: Include glib.h if HAVE_GSETTINGS.
Let HAVE_GSETTINGS override HAVE_GCONF.
(store_monospaced_changed): New function.
(EMACS_SETTINGS): A new type derived from GObject to handle
GSettings notifications.
(emacs_settings_constructor, emacs_settings_get_property)
(emacs_settings_set_property, emacs_settings_class_init):
New functions.
(gsettings_client, gsettings_obj): New variables.
(GSETTINGS_SCHEMA): New define.
(something_changedCB): Call store_monospaced_changed.
(init_gsettings): New function.
(xsettings_initialize): Call init_gsettings.
(syms_of_xsettings): Initialize gsettings_client, gsettings_obj
to NULL.
message.el (message-point-in-header-p): Tweak the function to default to saying that we're not in the headers if there is no separator at all. This makes it possible to use the Message version of `M-q' in buffers with no headers (bug#7987).
(message-point-in-header-p): Fix last checkin to work with an empty mail-header-separator, too.
auth-source.el (auth-source-netrc-saver): If the user says "don't ask again, save the choice via customize.
message.el (message-send-mail-function): Add `sendmail-query-once'.
nnimap.el (nnimap-finish-retrieve-group-infos): If the server has ended the connection, bail out before waiting infinitely on a new connection.
Glenn Morris [Wed, 29 Jun 2011 18:37:31 +0000 (14:37 -0400)]
Silence ses.el compilation.
* lisp/ses.el (top-level): Require cl when compiling.
(ses-set-localvars): Fix error statement.
Call it at compile time to silence a storm of warnings.
Martin Rudalics [Wed, 29 Jun 2011 12:06:08 +0000 (14:06 +0200)]
Rename more functions to use window-/window-- prefixes.
* window.c (resize_root_window, grow_mini_window)
(shrink_mini_window): Rename Qresize_root_window to
Qwindow_resize_root_window and Qresize_root_window_vertically to
Qwindow_resize_root_window_vertically.
* window.el (normalize-live-buffer): Rename to
window-normalize-buffer.
(normalize-live-frame): Rename to window-normalize-frame.
(normalize-any-window): Rename to window-normalize-any-window.
(normalize-live-window): Rename to window-normalize-live-window.
(make-window-atom): Rename to window-make-atom.
(window-resize-reset): Rename to window--resize-reset.
(window-resize-reset-1): Rename to window--resize-reset-1.
(resize-mini-window): Rename to window--resize-mini-window.
(resize-subwindows-skip-p): Rename to
window--resize-subwindows-skip-p.
(resize-subwindows-normal): Rename to
window--resize-subwindows-normal.
(resize-subwindows): Rename to window--resize-subwindows.
(resize-other-windows): Rename to window--resize-siblings.
(resize-this-window): Rename to window--resize-this-window.
(resize-root-window): Rename to window--resize-root-window.
(resize-root-window-vertically): Rename to
window--resize-root-window-vertically.
(normalize-buffer-to-display): Rename to
window-normalize-buffer-to-display.
(normalize-buffer-to-switch-to): Rename to
window-normalize-buffer-to-switch-to.
Correspondingly update all callers of the functions listed
above.
(display-buffer-alist, display-buffer-normalize-arguments)
(display-buffer-normalize-options, display-buffer)
(display-buffer-alist-set): Use "function" instead of
"fun-with-args".
Teodor Zlatanov [Tue, 28 Jun 2011 22:18:09 +0000 (22:18 +0000)]
Merge changes made in Gnus trunk.
gnus-msg.el (gnus-bug): Add Package and Version pseudo-headers to bug reports.
gnus.el (gnus-bug-package): Use "gnus."
(gnus-maintainer): Direct bug reports to submit@debbugs.gnu.org.
Martin Rudalics [Tue, 28 Jun 2011 12:28:40 +0000 (14:28 +0200)]
Some more fixes of buffer display functions.
* window.el (display-buffer-in-side-window): Handle dedicated
windows as in display-buffer-reuse-window.
(display-buffer-normalize-alist): Use value of override
specifier.
(display-buffer-normalize-specifiers): Use value of
other-window-means-other-frame specifier.
(display-buffer-alist): Rewrite some texts in widgets.
(display-buffer): Spread arguments when calling function
specified by fun-with-args.
Deniz Dogan [Tue, 28 Jun 2011 10:18:02 +0000 (12:18 +0200)]
* doc/misc/rcirc.texi (Configuration): Bug-fix: `rcirc-default-user-full-name' is now `rcirc-default-full-name'. Reported by Elias Pipping <pipping@exherbo.org>.
Martin Rudalics [Mon, 27 Jun 2011 14:05:55 +0000 (16:05 +0200)]
Use better names for window-next/-prev and window-vchild/-hchild.
* window.c (Fwindow_vchild): Rename to Fwindow_top_child.
(Fwindow_hchild): Rename to Fwindow_left_child.
(Fwindow_next): Rename to Fwindow_next_sibling.
(Fwindow_prev): Rename to Fwindow_prev_sibling.
* window.el (window-right, window-left, window-child)
(window-child-count, window-last-child)
(window-iso-combination-p, walk-window-tree-1)
(window-atom-check-1, window-tree-1, delete-window)
(window-state-get-1, display-buffer-even-window-sizes): Adapt to
new naming conventions - window-vchild, window-hchild,
window-next and window-prev are now called window-top-child,
window-left-child, window-next-sibling and window-prev-sibling
respectively.
Martin Rudalics [Mon, 27 Jun 2011 09:27:44 +0000 (11:27 +0200)]
Have overlays with window property respect clone numbers.
* buffer.c (Qclone_number): Declare static and DEFSYM it.
(sort_overlays, overlay_strings): When an overlay's clone number
matches the window's clone number process the overlay even if
the overlay's window property doesn't match the current window.
Vincent Belaïche [Mon, 27 Jun 2011 08:14:10 +0000 (10:14 +0200)]
(ses-destroy-cell-variable-range): Fix heading comment convention.
(ses-call-printer): Does not pass an empty string to formatter when the cell is empty to keep from barking printer Calc math-format-value.
Vincent Belaïche [Mon, 27 Jun 2011 06:18:45 +0000 (08:18 +0200)]
(ses-relocate-range): Keep rest of arguments for ses-range.
(ses--clean-!, ses--clean-_): New functions.
(ses-range): Add configurability of readout order, and conversion to Calc vector.
Vincent Belaïche [Mon, 27 Jun 2011 06:02:27 +0000 (08:02 +0200)]
Update cycle detection algorithm.
(ses-localvars): Add ses--Dijkstra-attempt-nb and
ses--Dijkstra-weight-bound, and initial values thereof when
applicable.
(ses-set-localvars): New function.
(ses-make-cell): Add property-list as a cell element.
(ses-cell-property-get-fun, ses-cell-property-get)
(ses-cell-property-delq-fun, ses-cell-property-set-fun)
(ses-cell-property-pop-fun, ses-cell-property-get-handle-fun): New
functions.
(ses-cell-property-set, ses-cell-property-pop)
(ses-cell-property-get-handle): New macro.
(ses-cell-property-handle-car, ses-cell-property-handle-setcar):
New aliases, used for code readability.
(ses-calculate-cell, ses-update-cells): Use Dijkstra algorithm for
cycle detection.
(ses-self-reference-early-detection): New defcustom.
(ses-formula-references): Robustify against self-refering cells.
(ses-mode): Use ses-set-localvars.
(ses-command-hook): Add call to ses-initialize-Dijkstra-attempt
before lauching the update processing.
(ses-initialize-Dijkstra-attempt): New function.
(ses-recalculate-cell): Update for cycle detection based on
Dijkstra algorithm.
gnus-art.el (gnus-article-stop-animations): New function to stop any animations going on at article exit time.
gnus-registry.el (gnus-registry-user-format-function-M): Reinstate, since removing it breaks people upgrading.
shr.el (shr-put-image): Use the new interface for animating images.
(shr-put-image): Animate for 60 seconds.
Jan Djärv [Sun, 26 Jun 2011 18:47:07 +0000 (20:47 +0200)]
Fix wm_size-hints race between KDE/KWin and Gtk+ 3.
* emacsgtkfixed.c: State that this is only used with Gtk+3.
(_EmacsFixedPrivate): Remove minwidth/height.
Add struct frame *f.
(emacs_fixed_init): Initialize priv->f.
(get_parent_class, emacs_fixed_set_min_size): Remove.
(emacs_fixed_new): Set priv->f to argument.
(emacs_fixed_get_preferred_width)
(emacs_fixed_get_preferred_height): Use min_width/height from
frames size_hint to set minimum and natural.
(XSetWMSizeHints, XSetWMNormalHints): Override these functions
and use min_width/height from frames size_hint to set
min_width/height (Bug#8919).
* emacsgtkfixed.h: State that this is only used with Gtk+3.
(emacs_fixed_set_min_size): Remove.
(emacs_fixed_new): Take frame as argument.
* gtkutil.c (xg_create_frame_widgets): Pass f to emacs_fixed_new.
(x_wm_set_size_hint): Remove call to emacs_fixed_set_min_size. Fix
indentation.
Ken Manheimer [Sun, 26 Jun 2011 16:47:39 +0000 (12:47 -0400)]
* allout-widgets.el (allout-widgets-post-command-business): Stop decorating
intermediate isearch matches. They're not being undecorated when an
isearch is continued past, and isearch automatically collapses them. This
leads to "widget leaks", where decorated items accumulate in collapsed
areas. Lines with lots of hidden widgets can slow down cursor travel,
substantially. Too much complicated machinery would be needed to ensure
undecoration, so we're doing without this nicety.
(allout-widgets-tally-string): Don't try to do a hash-table-count of
allout-widgets-tally when it's nil. This eliminates spurious "Error during
redisplay: (wrong-type-argument hash-table-p nil)" warnings in *Messages*
when allout-widgets-maintain-tally is t.
Martin Rudalics [Sun, 26 Jun 2011 16:17:30 +0000 (18:17 +0200)]
Fix some more display-buffer related bugs.
* window.el (display-buffer-normalize-argument): Rename to
display-buffer-normalize-arguments. Handle special meaning of
LABEL argument. Respect special-display-function when popping
up a new frame. Fix code searching for a window showing the
buffer on another frame.
(display-buffer-normalize-specifiers): Call
display-buffer-normalize-arguments.
(display-buffer-in-window): Don't undedicate the window if its
buffer remains the same.
Reported by Drew Adams <drew.adams@oracle.com>.
(display-buffer-alist): Add choice for same-window macro
specfier.
(display-buffer): Mention special meaning of LABEL argument in
doc-string. Fix quoting. Don't pop up a new frame even as
fallback.
Gnus developers [Sun, 26 Jun 2011 12:41:14 +0000 (12:41 +0000)]
Merge changes made in Gnus trunk.
gnus.texi (Summary Mail Commands): Document `gnus-summary-reply-to-list-with-original'.
auth-source.el (with-auth-source-epa-overrides): Fix compilation error with `find-file-hooks' on Emacs 22.
(with-auth-source-epa-overrides): Ugly hack to Wrap the `find-file-hook' things in `symbol-value' to avoid compilation warnings on all architectures.
spam.el (spam-stat): Require in a normal fashion without binding `spam-stat-install-hooks' to avoid compilation warnings.
spam-stat.el (spam-stat-install-hooks): Removed.
(spam-stat-install-hooks): Don't run automatically.
gnus-msg.el (gnus-summary-reply-to-list-with-original): New command and keystroke.