mirror of
git://git.sv.gnu.org/emacs.git
synced 2026-01-04 11:00:45 -08:00
upstream
This commit is contained in:
commit
67be5954c0
13 changed files with 86 additions and 72 deletions
|
|
@ -10,9 +10,8 @@
|
|||
"Macros with ;".
|
||||
(Macros with ;): New page.
|
||||
|
||||
* progmodes/cc-mode.texi (Movement Commands): Document
|
||||
`c-defun-tactic'. Document the new handling of nested scopes for
|
||||
movement by defuns.
|
||||
* cc-mode.texi (Movement Commands): Document `c-defun-tactic'.
|
||||
Document the new handling of nested scopes for movement by defuns.
|
||||
|
||||
2011-10-23 Michael Albinus <michael.albinus@gmx.de>
|
||||
|
||||
|
|
|
|||
|
|
@ -1,3 +1,21 @@
|
|||
2011-11-02 Martin Rudalics <rudalics@gmx.at>
|
||||
|
||||
* window.el (quit-window): Call unrecord-window-buffer after
|
||||
showing another buffer in the window. (Bug#9937)
|
||||
(bury-buffer): Call switch-to-prev-buffer with second argument
|
||||
'bury.
|
||||
|
||||
2011-11-02 Juanma Barranquero <lekktu@gmail.com>
|
||||
|
||||
* vc/vc-bzr.el (vc-bzr-state, vc-bzr-after-dir-status):
|
||||
Accept status with more than 9 shelves. (Bug#9935)
|
||||
Reported by Colin D Bennett <colin@gibibit.com>.
|
||||
|
||||
2011-11-01 Martin Rudalics <rudalics@gmx.at>
|
||||
|
||||
* help.el (with-help-window): Don't reference
|
||||
temp-buffer-show-specifiers in doc-string.
|
||||
|
||||
2011-10-31 Andreas Schwab <schwab@linux-m68k.org>
|
||||
|
||||
* subr.el (keymap--menu-item-with-binding): Ignore item if not a
|
||||
|
|
@ -14,8 +32,8 @@
|
|||
* net/newst-treeview.el: Remove "Time-stamp".
|
||||
(newsticker--group-manage-orphan-feeds): Do not call
|
||||
newsticker--treeview-tree-update.
|
||||
(newsticker-treeview-update, newsticker-treeview): Call
|
||||
newsticker--treeview-tree-update if necessary.
|
||||
(newsticker-treeview-update, newsticker-treeview):
|
||||
Call newsticker--treeview-tree-update if necessary.
|
||||
|
||||
2011-10-30 Martin Rudalics <rudalics@gmx.at>
|
||||
|
||||
|
|
@ -28,8 +46,7 @@
|
|||
(split-window, balance-windows-1)
|
||||
(shrink-window-if-larger-than-buffer):
|
||||
* calendar/calendar.el (calendar-generate-window):
|
||||
* help.el (resize-temp-buffer-window): Adjust callers
|
||||
accordingly.
|
||||
* help.el (resize-temp-buffer-window): Adjust callers accordingly.
|
||||
|
||||
2011-10-30 Stefan Monnier <monnier@iro.umontreal.ca>
|
||||
|
||||
|
|
@ -104,7 +121,7 @@
|
|||
|
||||
2011-10-28 Alan Mackenzie <acm@muc.de>
|
||||
|
||||
* progmodes/cc-defs.el (c-version). -> 5.32.2.
|
||||
* progmodes/cc-defs.el (c-version): -> 5.32.2.
|
||||
|
||||
2011-10-28 Alan Mackenzie <acm@muc.de>
|
||||
|
||||
|
|
@ -292,7 +309,7 @@
|
|||
Fix bug #9560, sporadic wrong indentation; improve instrumentation
|
||||
of c-parse-state.
|
||||
|
||||
* cc-engine.el (c-append-lower-brace-pair-to-state-cache):
|
||||
* progmodes/cc-engine.el (c-append-lower-brace-pair-to-state-cache):
|
||||
correct faulty logical expression.
|
||||
(c-parse-state-state, c-record-parse-state-state):
|
||||
(c-replay-parse-state-state): New defvar/defuns.
|
||||
|
|
@ -334,7 +351,7 @@
|
|||
|
||||
2011-10-20 Glenn Morris <rgm@gnu.org>
|
||||
|
||||
* vc/vc.el (vc-next-action): Handle removed directories. (Bug#9781)
|
||||
* vc/vc.el (vc-next-action): Handle removed directories. (Bug#9781)
|
||||
|
||||
2011-10-20 Christoph Scholtes <cschol2112@googlemail.com>
|
||||
|
||||
|
|
|
|||
|
|
@ -1,3 +1,10 @@
|
|||
2011-11-01 Teodor Zlatanov <tzz@lifelogs.com>
|
||||
|
||||
* gnus-util.el (gnus-bound-and-true-p): Remove.
|
||||
(gnus-bound-and-true-dumber-p): Rename to `gnus-bound-and-true-p'.
|
||||
* nnir.el: Use it.
|
||||
* nnmairix.el: Use it.
|
||||
|
||||
2011-10-31 Teodor Zlatanov <tzz@lifelogs.com>
|
||||
|
||||
* gnus-util.el (gnus-bound-and-true-dumber-p): Define new, slower, dumb
|
||||
|
|
|
|||
|
|
@ -1986,15 +1986,8 @@ definitions to shadow the loaded ones for use in file byte-compilation."
|
|||
(gnus-macroexpand-all expanded environment)))
|
||||
form))))
|
||||
|
||||
(eval-when-compile
|
||||
;; This is unnecessary in the compiled version as it is a macro.
|
||||
(if (fboundp 'bound-and-true-p)
|
||||
(defalias 'gnus-bound-and-true-p 'bound-and-true-p)
|
||||
(defmacro gnus-bound-and-true-p (var)
|
||||
"Return the value of symbol VAR if it is bound, else nil."
|
||||
`(and (boundp (quote ,var)) ,var))))
|
||||
|
||||
(defun gnus-bound-and-true-dumber-p (sym)
|
||||
;; simple check, can be a macro but this way, although slow, it's really clear
|
||||
(defun gnus-bound-and-true-p (sym)
|
||||
(and (boundp sym) (symbol-value sym)))
|
||||
|
||||
(provide 'gnus-util)
|
||||
|
|
|
|||
|
|
@ -1739,7 +1739,7 @@ environment unless `not-global' is non-nil."
|
|||
(when (eq (car (gnus-find-method-for-group gnus-newsgroup-name)) 'nnir)
|
||||
(setq gnus-summary-line-format
|
||||
(or nnir-summary-line-format gnus-summary-line-format))
|
||||
(when (gnus-bound-and-true-dumber-p 'gnus-registry-enabled)
|
||||
(when (gnus-bound-and-true-p 'gnus-registry-enabled)
|
||||
(remove-hook 'gnus-summary-article-delete-hook 'gnus-registry-action t)
|
||||
(remove-hook 'gnus-summary-article-move-hook 'gnus-registry-action t)
|
||||
(remove-hook 'gnus-summary-article-expire-hook 'gnus-registry-action t)
|
||||
|
|
|
|||
|
|
@ -1635,7 +1635,7 @@ search in raw mode."
|
|||
|
||||
(defun nnmairix-determine-original-group-from-registry (mid)
|
||||
"Try to determinale original group for message-id MID from the registry."
|
||||
(when (gnus-bound-and-true-dumber-p 'gnus-registry-enabled)
|
||||
(when (gnus-bound-and-true-p 'gnus-registry-enabled)
|
||||
(unless (string-match "^<" mid)
|
||||
(set mid (concat "<" mid)))
|
||||
(unless (string-match ">$" mid)
|
||||
|
|
|
|||
|
|
@ -1125,10 +1125,7 @@ HELP-WINDOW is the window used for displaying the help buffer."
|
|||
(defmacro with-help-window (buffer-name &rest body)
|
||||
"Display buffer with name BUFFER-NAME in a help window evaluating BODY.
|
||||
Select help window if the actual value of the user option
|
||||
`help-window-select' says so. Return last value in BODY.
|
||||
|
||||
You can specify where and how to show the buffer by binding the
|
||||
variable `temp-buffer-show-specifiers' to an appropriate value."
|
||||
`help-window-select' says so. Return last value in BODY."
|
||||
(declare (indent 1) (debug t))
|
||||
`(progn
|
||||
;; Make `help-window-point-marker' point nowhere. The only place
|
||||
|
|
|
|||
|
|
@ -444,7 +444,7 @@ If any error occurred in running `bzr status', then return nil."
|
|||
(let ((warnings (cdr result)))
|
||||
(when warnings
|
||||
;; bzr 2.3.0 returns info about shelves, which is not really a warning
|
||||
(when (string-match "[1-9]+ shel\\(f\\|ves\\) exists?\\..*?\n" warnings)
|
||||
(when (string-match "[0-9]+ shel\\(f\\|ves\\) exists?\\..*?\n" warnings)
|
||||
(setq warnings (replace-match "" nil nil warnings)))
|
||||
(unless (string= warnings "")
|
||||
(message "Warnings in `bzr' output: %s" warnings))))
|
||||
|
|
@ -891,7 +891,7 @@ stream. Standard error output is discarded."
|
|||
(goto-char (point-min))
|
||||
(while (not (eobp))
|
||||
;; Bzr 2.3.0 added this if there are shelves. (Bug#8170)
|
||||
(unless (looking-at "[1-9]+ shel\\(f\\|ves\\) exists?\\.")
|
||||
(unless (looking-at "[0-9]+ shel\\(f\\|ves\\) exists?\\.")
|
||||
(setq status-str
|
||||
(buffer-substring-no-properties (point) (+ (point) 3)))
|
||||
(setq translated (cdr (assoc status-str translation)))
|
||||
|
|
|
|||
|
|
@ -992,8 +992,8 @@ specific headers."
|
|||
(let ((def-dir default-directory)
|
||||
(backend vc-dir-backend))
|
||||
(vc-set-mode-line-busy-indicator)
|
||||
;; Call the `dir-status-file' backend function.
|
||||
;; `dir-status-file' is supposed to be asynchronous.
|
||||
;; Call the `dir-status-files' backend function.
|
||||
;; `dir-status-files' is supposed to be asynchronous.
|
||||
;; It should compute the results, and then call the function
|
||||
;; passed as an argument in order to update the vc-dir buffer
|
||||
;; with the results.
|
||||
|
|
|
|||
|
|
@ -2852,7 +2852,7 @@ displayed there."
|
|||
(t
|
||||
;; Switch to another buffer in window.
|
||||
(set-window-dedicated-p nil nil)
|
||||
(switch-to-prev-buffer nil 'kill)))
|
||||
(switch-to-prev-buffer nil 'bury)))
|
||||
|
||||
;; Always return nil.
|
||||
nil))
|
||||
|
|
@ -2985,7 +2985,6 @@ one. If non-nil, reset `quit-restore' parameter to nil."
|
|||
(setq resize (with-current-buffer buffer
|
||||
(and temp-buffer-resize-mode
|
||||
(/= (nth 3 quad) (window-total-size window)))))
|
||||
(unrecord-window-buffer window buffer)
|
||||
(set-window-dedicated-p window nil)
|
||||
(when resize
|
||||
;; Try to resize WINDOW to its old height but don't signal an
|
||||
|
|
@ -2993,9 +2992,12 @@ one. If non-nil, reset `quit-restore' parameter to nil."
|
|||
(condition-case nil
|
||||
(window-resize window (- (nth 3 quad) (window-total-size window)))
|
||||
(error nil)))
|
||||
;; Restore WINDOW's previous buffer, window start and point.
|
||||
;; Restore WINDOW's previous buffer, start and point position.
|
||||
(set-window-buffer-start-and-point
|
||||
window (nth 0 quad) (nth 1 quad) (nth 2 quad))
|
||||
;; Unrecord WINDOW's buffer here (Bug#9937) to make sure it's not
|
||||
;; re-recorded by `set-window-buffer'.
|
||||
(unrecord-window-buffer window buffer)
|
||||
;; Reset the quit-restore parameter.
|
||||
(set-window-parameter window 'quit-restore nil)
|
||||
;; Select old window.
|
||||
|
|
|
|||
|
|
@ -1,3 +1,17 @@
|
|||
2011-11-01 Eli Zaretskii <eliz@gnu.org>
|
||||
|
||||
* xdisp.c (mouse_face_from_buffer_pos): Fix a typo in a comment.
|
||||
Don't stop backward scan on the continuation glyph, even though
|
||||
its CHARPOS is positive.
|
||||
(mouse_face_from_buffer_pos, note_mouse_highlight): Rename
|
||||
cover_string to disp_string.
|
||||
|
||||
2011-11-01 Martin Rudalics <rudalics@gmx.at>
|
||||
|
||||
* window.c (temp_output_buffer_show): Don't use
|
||||
Vtemp_buffer_show_specifiers.
|
||||
(Vtemp_buffer_show_specifiers): Remove unused variable.
|
||||
|
||||
2011-10-30 Eli Zaretskii <eliz@gnu.org>
|
||||
|
||||
* xdisp.c (try_cursor_movement): Make sure ROW isn't decremented
|
||||
|
|
|
|||
15
src/window.c
15
src/window.c
|
|
@ -3187,10 +3187,7 @@ temp_output_buffer_show (register Lisp_Object buf)
|
|||
call1 (Vtemp_buffer_show_function, buf);
|
||||
else
|
||||
{
|
||||
window = display_buffer (buf, Vtemp_buffer_show_specifiers, Qnil);
|
||||
/* Reset Vtemp_buffer_show_specifiers immediately so it won't
|
||||
affect subsequent calls. */
|
||||
Vtemp_buffer_show_specifiers = Qnil;
|
||||
window = display_buffer (buf, Qnil, Qnil);
|
||||
|
||||
if (!EQ (XWINDOW (window)->frame, selected_frame))
|
||||
Fmake_frame_visible (WINDOW_FRAME (XWINDOW (window)));
|
||||
|
|
@ -6465,16 +6462,6 @@ If this function is used, then it must do the entire job of showing
|
|||
the buffer; `temp-buffer-show-hook' is not run unless this function runs it. */);
|
||||
Vtemp_buffer_show_function = Qnil;
|
||||
|
||||
DEFVAR_LISP ("temp-buffer-show-specifiers", Vtemp_buffer_show_specifiers,
|
||||
doc: /* Buffer display specifiers used by `with-output-to-temp-buffer'.
|
||||
These specifiers are passed by `with-output-to-temp-buffer' as second
|
||||
argument to `display-buffer'. Applications should only let-bind this
|
||||
around a call to `with-output-to-temp-buffer'.
|
||||
|
||||
For a description of buffer display specifiers see the variable
|
||||
`display-buffer-alist'. */);
|
||||
Vtemp_buffer_show_specifiers = Qnil;
|
||||
|
||||
DEFVAR_LISP ("minibuffer-scroll-window", Vminibuf_scroll_window,
|
||||
doc: /* Non-nil means it is the window that C-M-v in minibuffer should scroll. */);
|
||||
Vminibuf_scroll_window = Qnil;
|
||||
|
|
|
|||
50
src/xdisp.c
50
src/xdisp.c
|
|
@ -26046,7 +26046,7 @@ rows_from_pos_range (struct window *w,
|
|||
for the overlay or run of text properties specifying the mouse
|
||||
face. BEFORE_STRING and AFTER_STRING, if non-nil, are a
|
||||
before-string and after-string that must also be highlighted.
|
||||
COVER_STRING, if non-nil, is a display string that may cover some
|
||||
DISP_STRING, if non-nil, is a display string that may cover some
|
||||
or all of the highlighted text. */
|
||||
|
||||
static void
|
||||
|
|
@ -26057,7 +26057,7 @@ mouse_face_from_buffer_pos (Lisp_Object window,
|
|||
EMACS_INT end_charpos,
|
||||
Lisp_Object before_string,
|
||||
Lisp_Object after_string,
|
||||
Lisp_Object cover_string)
|
||||
Lisp_Object disp_string)
|
||||
{
|
||||
struct window *w = XWINDOW (window);
|
||||
struct glyph_row *first = MATRIX_FIRST_TEXT_ROW (w->current_matrix);
|
||||
|
|
@ -26066,7 +26066,7 @@ mouse_face_from_buffer_pos (Lisp_Object window,
|
|||
EMACS_INT ignore, pos;
|
||||
int x;
|
||||
|
||||
xassert (NILP (cover_string) || STRINGP (cover_string));
|
||||
xassert (NILP (disp_string) || STRINGP (disp_string));
|
||||
xassert (NILP (before_string) || STRINGP (before_string));
|
||||
xassert (NILP (after_string) || STRINGP (after_string));
|
||||
|
||||
|
|
@ -26076,7 +26076,7 @@ mouse_face_from_buffer_pos (Lisp_Object window,
|
|||
r1 = MATRIX_ROW (w->current_matrix, XFASTINT (w->window_end_vpos));
|
||||
/* If the before-string or display-string contains newlines,
|
||||
rows_from_pos_range skips to its last row. Move back. */
|
||||
if (!NILP (before_string) || !NILP (cover_string))
|
||||
if (!NILP (before_string) || !NILP (disp_string))
|
||||
{
|
||||
struct glyph_row *prev;
|
||||
while ((prev = r1 - 1, prev >= first)
|
||||
|
|
@ -26088,7 +26088,7 @@ mouse_face_from_buffer_pos (Lisp_Object window,
|
|||
while (--glyph >= beg && INTEGERP (glyph->object));
|
||||
if (glyph < beg
|
||||
|| !(EQ (glyph->object, before_string)
|
||||
|| EQ (glyph->object, cover_string)))
|
||||
|| EQ (glyph->object, disp_string)))
|
||||
break;
|
||||
r1 = prev;
|
||||
}
|
||||
|
|
@ -26113,10 +26113,10 @@ mouse_face_from_buffer_pos (Lisp_Object window,
|
|||
r2 = next;
|
||||
}
|
||||
/* The rest of the display engine assumes that mouse_face_beg_row is
|
||||
either above below mouse_face_end_row or identical to it. But
|
||||
with bidi-reordered continued lines, the row for START_CHARPOS
|
||||
could be below the row for END_CHARPOS. If so, swap the rows and
|
||||
store them in correct order. */
|
||||
either above mouse_face_end_row or identical to it. But with
|
||||
bidi-reordered continued lines, the row for START_CHARPOS could
|
||||
be below the row for END_CHARPOS. If so, swap the rows and store
|
||||
them in correct order. */
|
||||
if (r1->y > r2->y)
|
||||
{
|
||||
struct glyph_row *tem = r2;
|
||||
|
|
@ -26131,7 +26131,7 @@ mouse_face_from_buffer_pos (Lisp_Object window,
|
|||
hlinfo->mouse_face_end_row = MATRIX_ROW_VPOS (r2, w->current_matrix);
|
||||
|
||||
/* For a bidi-reordered row, the positions of BEFORE_STRING,
|
||||
AFTER_STRING, COVER_STRING, START_CHARPOS, and END_CHARPOS
|
||||
AFTER_STRING, DISP_STRING, START_CHARPOS, and END_CHARPOS
|
||||
could be anywhere in the row and in any order. The strategy
|
||||
below is to find the leftmost and the rightmost glyph that
|
||||
belongs to either of these 3 strings, or whose position is
|
||||
|
|
@ -26157,11 +26157,11 @@ mouse_face_from_buffer_pos (Lisp_Object window,
|
|||
x += glyph->pixel_width;
|
||||
|
||||
/* Scan the glyph row, looking for BEFORE_STRING, AFTER_STRING,
|
||||
or COVER_STRING, and the first glyph from buffer whose
|
||||
or DISP_STRING, and the first glyph from buffer whose
|
||||
position is between START_CHARPOS and END_CHARPOS. */
|
||||
for (; glyph < end
|
||||
&& !INTEGERP (glyph->object)
|
||||
&& !EQ (glyph->object, cover_string)
|
||||
&& !EQ (glyph->object, disp_string)
|
||||
&& !(BUFFERP (glyph->object)
|
||||
&& (glyph->charpos >= start_charpos
|
||||
&& glyph->charpos < end_charpos));
|
||||
|
|
@ -26208,11 +26208,11 @@ mouse_face_from_buffer_pos (Lisp_Object window,
|
|||
;
|
||||
|
||||
/* Scan the glyph row, looking for BEFORE_STRING, AFTER_STRING,
|
||||
or COVER_STRING, and the first glyph from buffer whose
|
||||
or DISP_STRING, and the first glyph from buffer whose
|
||||
position is between START_CHARPOS and END_CHARPOS. */
|
||||
for (; glyph > end
|
||||
&& !INTEGERP (glyph->object)
|
||||
&& !EQ (glyph->object, cover_string)
|
||||
&& !EQ (glyph->object, disp_string)
|
||||
&& !(BUFFERP (glyph->object)
|
||||
&& (glyph->charpos >= start_charpos
|
||||
&& glyph->charpos < end_charpos));
|
||||
|
|
@ -26268,17 +26268,16 @@ mouse_face_from_buffer_pos (Lisp_Object window,
|
|||
row, and also blanks and stretch glyphs inserted by
|
||||
extend_face_to_end_of_line. */
|
||||
while (end > glyph
|
||||
&& INTEGERP ((end - 1)->object)
|
||||
&& (end - 1)->charpos <= 0)
|
||||
&& INTEGERP ((end - 1)->object))
|
||||
--end;
|
||||
/* Scan the rest of the glyph row from the end, looking for the
|
||||
first glyph that comes from BEFORE_STRING, AFTER_STRING, or
|
||||
COVER_STRING, or whose position is between START_CHARPOS
|
||||
DISP_STRING, or whose position is between START_CHARPOS
|
||||
and END_CHARPOS */
|
||||
for (--end;
|
||||
end > glyph
|
||||
&& !INTEGERP (end->object)
|
||||
&& !EQ (end->object, cover_string)
|
||||
&& !EQ (end->object, disp_string)
|
||||
&& !(BUFFERP (end->object)
|
||||
&& (end->charpos >= start_charpos
|
||||
&& end->charpos < end_charpos));
|
||||
|
|
@ -26315,20 +26314,19 @@ mouse_face_from_buffer_pos (Lisp_Object window,
|
|||
x = r2->x;
|
||||
end++;
|
||||
while (end < glyph
|
||||
&& INTEGERP (end->object)
|
||||
&& end->charpos <= 0)
|
||||
&& INTEGERP (end->object))
|
||||
{
|
||||
x += end->pixel_width;
|
||||
++end;
|
||||
}
|
||||
/* Scan the rest of the glyph row from the end, looking for the
|
||||
first glyph that comes from BEFORE_STRING, AFTER_STRING, or
|
||||
COVER_STRING, or whose position is between START_CHARPOS
|
||||
DISP_STRING, or whose position is between START_CHARPOS
|
||||
and END_CHARPOS */
|
||||
for ( ;
|
||||
end < glyph
|
||||
&& !INTEGERP (end->object)
|
||||
&& !EQ (end->object, cover_string)
|
||||
&& !EQ (end->object, disp_string)
|
||||
&& !(BUFFERP (end->object)
|
||||
&& (end->charpos >= start_charpos
|
||||
&& end->charpos < end_charpos));
|
||||
|
|
@ -27323,7 +27321,7 @@ note_mouse_highlight (struct frame *f, int x, int y)
|
|||
/* The mouse-highlighting, if any, comes from an overlay
|
||||
or text property in the buffer. */
|
||||
Lisp_Object buffer IF_LINT (= Qnil);
|
||||
Lisp_Object cover_string IF_LINT (= Qnil);
|
||||
Lisp_Object disp_string IF_LINT (= Qnil);
|
||||
|
||||
if (STRINGP (object))
|
||||
{
|
||||
|
|
@ -27337,13 +27335,13 @@ note_mouse_highlight (struct frame *f, int x, int y)
|
|||
mouse_face = get_char_property_and_overlay
|
||||
(make_number (pos), Qmouse_face, w->buffer, &overlay);
|
||||
buffer = w->buffer;
|
||||
cover_string = object;
|
||||
disp_string = object;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
buffer = object;
|
||||
cover_string = Qnil;
|
||||
disp_string = Qnil;
|
||||
}
|
||||
|
||||
if (!NILP (mouse_face))
|
||||
|
|
@ -27395,7 +27393,7 @@ note_mouse_highlight (struct frame *f, int x, int y)
|
|||
XFASTINT (before),
|
||||
XFASTINT (after),
|
||||
before_string, after_string,
|
||||
cover_string);
|
||||
disp_string);
|
||||
cursor = No_Cursor;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue