Merge from emacs-24; up to 117634
This commit is contained in:
commit
52b410c60a
24 changed files with 197 additions and 64 deletions
|
@ -1,3 +1,20 @@
|
|||
2014-10-30 Eli Zaretskii <eliz@gnu.org>
|
||||
|
||||
* frames.texi (Scroll Bars): Improve indexing of faces.
|
||||
|
||||
* killing.texi (Secondary Selection): Improve indexing of faces.
|
||||
|
||||
* search.texi (Basic Isearch, Query Replace): Improve indexing of faces.
|
||||
|
||||
* display.texi (Standard Faces, Text Display)
|
||||
(Useless Whitespace): Improve indexing of faces.
|
||||
|
||||
* frames.texi (Frame Commands): Document and index
|
||||
'frame-resize-pixelwise'.
|
||||
|
||||
* windows.texi (Split Window): Document and index
|
||||
'window-resize-pixelwise'.
|
||||
|
||||
2014-10-22 Tassilo Horn <tsdh@gnu.org>
|
||||
|
||||
* misc.texi (Document View): Adapt to latest doc-view changes wrt
|
||||
|
|
|
@ -578,6 +578,7 @@ Parameters}.
|
|||
|
||||
@node Standard Faces
|
||||
@section Standard Faces
|
||||
@cindex standard faces
|
||||
|
||||
Here are the standard faces for specifying text appearance. You can
|
||||
apply them to specific text when you want the effects they produce.
|
||||
|
@ -598,8 +599,10 @@ This face underlines text.
|
|||
This face forces use of a fixed-width font. It's reasonable to
|
||||
customize this face to use a different fixed-width font, if you like,
|
||||
but you should not make it a variable-width font.
|
||||
@cindex variable-pitch face
|
||||
@item variable-pitch
|
||||
This face forces use of a variable-width font.
|
||||
@cindex shadow face
|
||||
@item shadow
|
||||
This face is used for making the text less noticeable than the surrounding
|
||||
ordinary text. Usually this can be achieved by using shades of gray in
|
||||
|
@ -647,25 +650,34 @@ frame:
|
|||
|
||||
@table @code
|
||||
@item mode-line
|
||||
@cindex mode-line face
|
||||
@cindex faces for mode lines
|
||||
This face is used for the mode line of the currently selected window,
|
||||
and for menu bars when toolkit menus are not used. By default, it's
|
||||
drawn with shadows for a ``raised'' effect on graphical displays, and
|
||||
drawn as the inverse of the default face on non-windowed terminals.
|
||||
@item mode-line-inactive
|
||||
@cindex mode-line-inactive face
|
||||
Like @code{mode-line}, but used for mode lines of the windows other
|
||||
than the selected one (if @code{mode-line-in-non-selected-windows} is
|
||||
non-@code{nil}). This face inherits from @code{mode-line}, so changes
|
||||
in that face affect mode lines in all windows.
|
||||
@item mode-line-highlight
|
||||
Like @code{highlight}, but used for portions of text on mode lines.
|
||||
@cindex mode-line-highlight face
|
||||
Like @code{highlight}, but used for mouse-sensitive portions of text
|
||||
on mode lines. Such portions of text typically pop up tooltips
|
||||
(@pxref{Tooltips}) when the mouse pointer hovers above them.
|
||||
@item mode-line-buffer-id
|
||||
@cindex mode-line-buffer-id face
|
||||
This face is used for buffer identification parts in the mode line.
|
||||
@item header-line
|
||||
@cindex header-line face
|
||||
Similar to @code{mode-line} for a window's header line, which appears
|
||||
at the top of a window just as the mode line appears at the bottom.
|
||||
Most windows do not have a header line---only some special modes, such
|
||||
Info mode, create one.
|
||||
@item vertical-border
|
||||
@cindex vertical-border face
|
||||
This face is used for the vertical divider between windows on text
|
||||
terminals.
|
||||
@item minibuffer-prompt
|
||||
|
@ -1110,6 +1122,7 @@ empty lines at the end of a buffer, without realizing it. In most
|
|||
cases, this @dfn{trailing whitespace} has no effect, but sometimes it
|
||||
can be a nuisance.
|
||||
|
||||
@cindex trailing-whitespace face
|
||||
You can make trailing whitespace at the end of a line visible by
|
||||
setting the buffer-local variable @code{show-trailing-whitespace} to
|
||||
@code{t}. Then Emacs displays trailing whitespace, using the face
|
||||
|
@ -1418,6 +1431,8 @@ as octal escape sequences instead of caret escape sequences.
|
|||
@cindex non-breaking space
|
||||
@cindex non-breaking hyphen
|
||||
@cindex soft hyphen
|
||||
@cindex escape-glyph face
|
||||
@cindex nobreak-space face
|
||||
Some non-@acronym{ASCII} characters have the same appearance as an
|
||||
@acronym{ASCII} space or hyphen (minus) character. Such characters
|
||||
can cause problems if they are entered into a buffer without your
|
||||
|
|
|
@ -376,6 +376,9 @@ position (@pxref{Split Window}).
|
|||
between two side-by-side mode lines, you can move the vertical
|
||||
boundary to the left or right.
|
||||
|
||||
Note that resizing windows is affected by the value of
|
||||
@code{window-resize-pixelwise}, see @ref{Split Window}.
|
||||
|
||||
@node Creating Frames
|
||||
@section Creating Frames
|
||||
@cindex creating frames
|
||||
|
@ -469,9 +472,13 @@ hides window manager decorations, giving slightly more screen space to
|
|||
Emacs itself.)
|
||||
@end table
|
||||
|
||||
@vindex frame-resize-pixelwise
|
||||
Note that with some window managers you may have to customize the
|
||||
variable @code{frame-resize-pixelwise} to a non-@code{nil} value in
|
||||
order to make a frame truly ``maximized'' or ``fullscreen''.
|
||||
order to make a frame truly ``maximized'' or ``fullscreen''. This
|
||||
variable, when set to a non-@code{nil} value, in general allows
|
||||
resizing frames at pixel resolution, rather than in integral multiples
|
||||
of lines and columns.
|
||||
|
||||
The @kbd{C-x 5 0} (@code{delete-frame}) command deletes the selected
|
||||
frame. However, it will refuse to delete the last frame in an Emacs
|
||||
|
@ -955,6 +962,10 @@ end of the buffer is shown; if @code{nil}, the thumb will be at the
|
|||
bottom when the end of the buffer is shown. You can not over-scroll
|
||||
when the entire buffer is visible.
|
||||
|
||||
@cindex scroll-bar face
|
||||
The visual appearance of the scroll bars is controlled by the
|
||||
@code{scroll-bar} face.
|
||||
|
||||
@cindex Horizontal Scroll Bar
|
||||
@cindex Horizontal Scroll Bar mode
|
||||
On graphical displays with toolkit support, Emacs may also supply a
|
||||
|
@ -987,7 +998,6 @@ or disable horizontal scroll bars (@pxref{Resources}). To control the
|
|||
scroll bar height, change the @code{scroll-bar-height} frame parameter
|
||||
(@pxref{Frame Parameters,,, elisp, The Emacs Lisp Reference Manual}).
|
||||
|
||||
|
||||
@node Drag and Drop
|
||||
@section Drag and Drop
|
||||
@cindex drag and drop
|
||||
|
|
|
@ -588,6 +588,7 @@ you can access it using the following Emacs commands:
|
|||
@table @kbd
|
||||
@findex mouse-set-secondary
|
||||
@kindex M-Drag-Mouse-1
|
||||
@cindex secondary-selection face
|
||||
@item M-Drag-Mouse-1
|
||||
Set the secondary selection, with one end at the place where you press
|
||||
down the button, and the other end at the place where you release it
|
||||
|
|
|
@ -86,6 +86,7 @@ not be the first @samp{F} previously found. After another @kbd{O},
|
|||
the cursor moves to just after the first @samp{FOO}.
|
||||
|
||||
@cindex faces for highlighting search matches
|
||||
@cindex isearch face
|
||||
At each step, Emacs highlights the @dfn{current match}---the buffer
|
||||
text that matches the search string---using the @code{isearch} face
|
||||
(@pxref{Faces}). The current search string is also displayed in the
|
||||
|
@ -1280,6 +1281,8 @@ It works like @code{replace-regexp} except that it queries
|
|||
like @code{query-replace}.
|
||||
|
||||
@cindex faces for highlighting query replace
|
||||
@cindex query-replace face
|
||||
@cindex lazy-highlight face
|
||||
These commands highlight the current match using the face
|
||||
@code{query-replace}. They highlight other matches using
|
||||
@code{lazy-highlight} just like incremental search (@pxref{Incremental
|
||||
|
|
|
@ -134,6 +134,18 @@ clicking @kbd{C-Mouse-2} in the scroll bar, which puts a horizontal
|
|||
divider where you click (this feature does not work when Emacs uses
|
||||
GTK+ scroll bars).
|
||||
|
||||
@vindex window-resize-pixelwise
|
||||
By default, when you split a window, Emacs gives each of the
|
||||
resulting windows dimensions that are an integral multiple of the
|
||||
default font size of the frame. That might subdivide the screen
|
||||
estate unevenly between the resulting windows. If you set the
|
||||
variable @code{window-resize-pixelwise} to a non-@code{nil} value,
|
||||
Emacs will give each window the same number of pixels (give or take
|
||||
one pixel if the initial dimension was an odd number of pixels). Note
|
||||
that when a frame's pixel size is not a multiple of the frame's
|
||||
character size, at least one window may get resized pixelwise even if
|
||||
this option is @code{nil}.
|
||||
|
||||
@node Other Window
|
||||
@section Using Other Windows
|
||||
|
||||
|
|
|
@ -1,3 +1,12 @@
|
|||
2014-10-30 Glenn Morris <rgm@gnu.org>
|
||||
|
||||
* efaq.texi (Gnus does not work with NNTP): Remove; ancient.
|
||||
|
||||
2014-10-30 Stefan Monnier <monnier@iro.umontreal.ca>
|
||||
|
||||
* eieio.texi (Accessing Slots, CLOS compatibility): Adjust wording
|
||||
since `setf' is in core rather than in CL nowadays.
|
||||
|
||||
2014-10-29 Paul Eggert <eggert@cs.ucla.edu>
|
||||
|
||||
Simplify use of current-time and friends.
|
||||
|
|
|
@ -4190,7 +4190,6 @@ fontset, or you can select it by setting the default font in your
|
|||
* Replying to the sender of a message::
|
||||
* Automatically starting a mail or news reader::
|
||||
* Reading news with Emacs::
|
||||
* Gnus does not work with NNTP::
|
||||
* Making Gnus faster::
|
||||
* Catching up in all newsgroups::
|
||||
@end menu
|
||||
|
@ -4384,27 +4383,6 @@ Manual, gnus, The Gnus Manual}, which includes @ref{Frequently Asked
|
|||
Questions,, the Gnus FAQ, gnus, The Gnus Manual}.
|
||||
|
||||
|
||||
@node Gnus does not work with NNTP
|
||||
@section Why doesn't Gnus work via NNTP?
|
||||
@cindex Gnus and NNTP
|
||||
@cindex NNTP, Gnus fails to work with
|
||||
|
||||
There is a bug in NNTP version 1.5.10, such that when multiple requests
|
||||
are sent to the NNTP server, the server only handles the first one
|
||||
before blocking waiting for more input which never comes. NNTP version
|
||||
1.5.11 claims to fix this.
|
||||
|
||||
You can work around the bug inside Emacs like this:
|
||||
|
||||
@lisp
|
||||
(setq nntp-maximum-request 1)
|
||||
@end lisp
|
||||
|
||||
You can find out what version of NNTP your news server is running by
|
||||
telnetting to the NNTP port (usually 119) on the news server machine
|
||||
(i.e., @kbd{telnet server-machine 119}). The server should give its
|
||||
version number in the welcome message. Type @kbd{quit} to get out.
|
||||
|
||||
@node Making Gnus faster
|
||||
@section How do I make Gnus faster?
|
||||
@cindex Faster, starting Gnus
|
||||
|
|
|
@ -755,8 +755,8 @@ Unlike @code{oref}, the symbol for @var{slot} must be quoted.
|
|||
|
||||
@defun set-slot-value object slot value
|
||||
@anchor{set-slot-value}
|
||||
This is not a CLOS function, but is meant to mirror @code{slot-value} if
|
||||
you don't want to use the cl package's @code{setf} function. This
|
||||
This is not a CLOS function, but is the setter for @code{slot-value}
|
||||
used by the @code{setf} macro. This
|
||||
function sets the value of @var{slot} from @var{object}. Unlike
|
||||
@code{oset}, the symbol for @var{slot} must be quoted.
|
||||
@end defun
|
||||
|
@ -790,7 +790,7 @@ This establishes a lexical environment for referring to the slots in
|
|||
the instance named by the given slot-names as though they were
|
||||
variables. Within such a context the value of the slot can be
|
||||
specified by using its slot name, as if it were a lexically bound
|
||||
variable. Both setf and setq can be used to set the value of the
|
||||
variable. Both @code{setf} and @code{setq} can be used to set the value of the
|
||||
slot.
|
||||
|
||||
@var{spec-list} is of a form similar to @dfn{let}. For example:
|
||||
|
@ -1850,10 +1850,6 @@ for the given object. This is different than that found in CLOS because
|
|||
in @eieio{} this function accepts replacement arguments. This permits
|
||||
subclasses to modify arguments as they are passed up the tree. If no
|
||||
arguments are given, the expected CLOS behavior is used.
|
||||
@item setf
|
||||
If the common-lisp subsystem is loaded, the setf parameters are also
|
||||
loaded so the form @code{(setf (slot-value object slot) t)} should
|
||||
work.
|
||||
@end table
|
||||
|
||||
CLOS supports the @code{describe} command, but @eieio{} provides
|
||||
|
|
19
etc/DEBUG
19
etc/DEBUG
|
@ -398,9 +398,13 @@ to start debugging.
|
|||
Don't assume Emacs is `hung'--it may instead be in an infinite loop.
|
||||
To find out which, make the problem happen under GDB and stop Emacs
|
||||
once it is not responding. (If Emacs is using X Windows directly, you
|
||||
can stop Emacs by typing C-z at the GDB job.) Then try stepping with
|
||||
`step'. If Emacs is hung, the `step' command won't return. If it is
|
||||
looping, `step' will return.
|
||||
can stop Emacs by typing C-z at the GDB job. On MS-Windows, run Emacs
|
||||
as usual, and then attach GDB to it -- that will usually interrupt
|
||||
whatever Emacs is doing and let you perform the steps described
|
||||
below.)
|
||||
|
||||
Then try stepping with `step'. If Emacs is hung, the `step' command
|
||||
won't return. If it is looping, `step' will return.
|
||||
|
||||
If this shows Emacs is hung in a system call, stop it again and
|
||||
examine the arguments of the call. If you report the bug, it is very
|
||||
|
@ -420,10 +424,11 @@ stepping, you will see where the loop starts and ends. Also, examine
|
|||
the data being used in the loop and try to determine why the loop does
|
||||
not exit when it should.
|
||||
|
||||
You can also trying sending Emacs SIGUSR2, which, if `debug-on-event'
|
||||
has its default value, will cause Emacs to attempt to break it out of
|
||||
its current loop and into the Lisp debugger. This feature is useful
|
||||
when a C-level debugger is not conveniently available.
|
||||
On GNU and Unix systems, you can also trying sending Emacs SIGUSR2,
|
||||
which, if `debug-on-event' has its default value, will cause Emacs to
|
||||
attempt to break it out of its current loop and into the Lisp
|
||||
debugger. This feature is useful when a C-level debugger is not
|
||||
conveniently available.
|
||||
|
||||
** If certain operations in Emacs are slower than they used to be, here
|
||||
is some advice for how to find out why.
|
||||
|
|
31
etc/NEWS.24
31
etc/NEWS.24
|
@ -14,6 +14,37 @@ and NEWS.1-17 for changes in older Emacs versions.
|
|||
You can narrow news to a specific version by calling `view-emacs-news'
|
||||
with a prefix argument or by typing C-u C-h C-n.
|
||||
|
||||
Temporary note:
|
||||
+++ indicates that all necessary documentation updates are complete.
|
||||
(This means all relevant manuals in doc/ AND lisp doc-strings.)
|
||||
--- means no change in the manuals is needed.
|
||||
When you add a new item, use the appropriate mark if you are sure it applies,
|
||||
otherwise leave it unmarked.
|
||||
|
||||
|
||||
* Changes in Emacs 24.5
|
||||
|
||||
---
|
||||
** The default value of `history-length' has increased to 100.
|
||||
|
||||
|
||||
* Changes in Specialized Modes and Packages in Emacs 24.5
|
||||
|
||||
** `call-process-shell-command' and `process-file-shell-command'
|
||||
don't take "&rest args" any more.
|
||||
|
||||
** Obsolete packages
|
||||
|
||||
*** cc-compat.el
|
||||
|
||||
---
|
||||
*** crisp.el, tpu-edt.el, ws-mode.el
|
||||
These emulations of old editors are believed to be no longer relevant
|
||||
- contact emacs-devel@gnu.org if you disagree.
|
||||
|
||||
---
|
||||
*** vi.el, vip.el (try M-x viper instead)
|
||||
|
||||
|
||||
* Installation Changes in Emacs 24.4
|
||||
|
||||
|
|
|
@ -1,3 +1,27 @@
|
|||
2014-10-30 Stefan Monnier <monnier@iro.umontreal.ca>
|
||||
|
||||
* progmodes/cc-defs.el (c--macroexpand-all): New function (bug#18845).
|
||||
(c-lang-defconst):
|
||||
* progmodes/cc-langs.el (c-make-init-lang-vars-fun): Use it.
|
||||
|
||||
2014-10-30 Eli Zaretskii <eliz@gnu.org>
|
||||
|
||||
* progmodes/compile.el (compilation-start):
|
||||
If compilation-scroll-output is non-nil, don't force window-start of
|
||||
the compilation buffer to be at beginning of buffer. (Bug#18874)
|
||||
|
||||
* startup.el (fancy-about-text): Read the entire tutorial, not
|
||||
just its first 256 bytes. (Bug#18760)
|
||||
|
||||
2014-10-30 Stefan Monnier <monnier@iro.umontreal.ca>
|
||||
|
||||
* emacs-lisp/bytecomp.el: Require cl-extra (bug#18804).
|
||||
* emacs-lisp/cl-extra.el: Add missing provide.
|
||||
|
||||
* emacs-lisp/bytecomp.el (byte-compile-and-folded): Optimize case where
|
||||
all args are copyable (bug#18767).
|
||||
(=, <, >, <=, >=): Re-enable the optimization.
|
||||
|
||||
2014-10-29 Glenn Morris <rgm@gnu.org>
|
||||
|
||||
* net/rcirc.el (rcirc-fill-column): Unbump :version. Mark :risky.
|
||||
|
|
|
@ -120,7 +120,11 @@
|
|||
(require 'backquote)
|
||||
(require 'macroexp)
|
||||
(require 'cconv)
|
||||
(eval-when-compile (require 'cl-lib))
|
||||
|
||||
;; During bootstrap, cl-loaddefs.el is not created yet, so loading cl-lib
|
||||
;; doesn't setup autoloads for things like cl-every, which is why we have to
|
||||
;; require cl-extra instead (bug#18804).
|
||||
(require 'cl-extra)
|
||||
|
||||
(or (fboundp 'defsubst)
|
||||
;; This really ought to be loaded already!
|
||||
|
@ -3283,11 +3287,11 @@ If it is nil, then the handler is \"byte-compile-SYMBOL.\""
|
|||
(byte-defop-compiler cons 2)
|
||||
(byte-defop-compiler aref 2)
|
||||
(byte-defop-compiler set 2)
|
||||
(byte-defop-compiler (= byte-eqlsign) 2) ;; -and bug#18767
|
||||
(byte-defop-compiler (< byte-lss) 2) ;; -and bug#18767
|
||||
(byte-defop-compiler (> byte-gtr) 2) ;; -and bug#18767
|
||||
(byte-defop-compiler (<= byte-leq) 2) ;; -and bug#18767
|
||||
(byte-defop-compiler (>= byte-geq) 2) ;; -and bug#18767
|
||||
(byte-defop-compiler (= byte-eqlsign) 2-and)
|
||||
(byte-defop-compiler (< byte-lss) 2-and)
|
||||
(byte-defop-compiler (> byte-gtr) 2-and)
|
||||
(byte-defop-compiler (<= byte-leq) 2-and)
|
||||
(byte-defop-compiler (>= byte-geq) 2-and)
|
||||
(byte-defop-compiler get 2)
|
||||
(byte-defop-compiler nth 2)
|
||||
(byte-defop-compiler substring 2-3)
|
||||
|
@ -3354,13 +3358,14 @@ If it is nil, then the handler is \"byte-compile-SYMBOL.\""
|
|||
(defun byte-compile-and-folded (form)
|
||||
"Compile calls to functions like `<='.
|
||||
These implicitly `and' together a bunch of two-arg bytecodes."
|
||||
;; FIXME: bug#18767 means we can't do it this way!
|
||||
(let ((l (length form)))
|
||||
(cond
|
||||
((< l 3) (byte-compile-form `(progn ,(nth 1 form) t)))
|
||||
((= l 3) (byte-compile-two-args form))
|
||||
(t (byte-compile-form `(and (,(car form) ,(nth 1 form) ,(nth 2 form))
|
||||
(,(car form) ,@(nthcdr 2 form))))))))
|
||||
((cl-every #'macroexp-copyable-p (nthcdr 2 form))
|
||||
(byte-compile-form `(and (,(car form) ,(nth 1 form) ,(nth 2 form))
|
||||
(,(car form) ,@(nthcdr 2 form)))))
|
||||
(t (byte-compile-normal-call form)))))
|
||||
|
||||
(defun byte-compile-three-args (form)
|
||||
(if (not (= (length form) 4))
|
||||
|
|
|
@ -720,4 +720,5 @@ including `cl-block' and `cl-eval-when'."
|
|||
;; generated-autoload-file: "cl-loaddefs.el"
|
||||
;; End:
|
||||
|
||||
(provide 'cl-extra)
|
||||
;;; cl-extra.el ends here
|
||||
|
|
|
@ -984,7 +984,7 @@ Otherwise return the normal value."
|
|||
;; macros, since it enables certain macros to be shared between X and TTY modes
|
||||
;; by correctly mapping key sequences for Left/Right/... (on an ascii
|
||||
;; terminal) into logical keys left, right, etc.
|
||||
(defun viper-read-key ()
|
||||
(defun viper-read-key () ;; FIXME: Use `read-key'?
|
||||
(let ((overriding-local-map viper-overriding-map)
|
||||
(inhibit-quit t)
|
||||
help-char key)
|
||||
|
|
|
@ -531,6 +531,7 @@ If Viper is enabled, turn it off. Otherwise, turn it on."
|
|||
(if viper-mode
|
||||
()
|
||||
(setq viper-mode t)
|
||||
;; FIXME: Don't reload!
|
||||
(load-library "viper"))
|
||||
|
||||
(if viper-first-time ; Important check. Prevents mix-up of startup
|
||||
|
@ -887,6 +888,7 @@ Two differences:
|
|||
;; When viper-mode is executed in such a case, it will set the major mode
|
||||
;; back to fundamental-mode.
|
||||
(if (eq (default-value 'major-mode) 'fundamental-mode)
|
||||
;; FIXME: We should use after-change-major-mode-hook instead!
|
||||
(setq-default major-mode 'viper-mode))
|
||||
|
||||
(viper-setup-ESC-to-escape t)
|
||||
|
@ -936,6 +938,7 @@ Two differences:
|
|||
|
||||
(defadvice self-insert-command (around viper-self-insert-ad activate)
|
||||
"Ignore all self-inserting keys in the vi-state."
|
||||
;; FIXME: Use remapping?
|
||||
(if (and (eq viper-current-state 'vi-state)
|
||||
;; Do not use called-interactively-p here. XEmacs does not have it
|
||||
;; and interactive-p is just fine.
|
||||
|
|
|
@ -265,9 +265,7 @@ nil - don't add to mode line."
|
|||
(erc-track-add-to-mode-line val))))
|
||||
|
||||
(defun erc-modified-channels-object (strings)
|
||||
"Generate a new `erc-modified-channels-object' based on STRINGS.
|
||||
If STRINGS is nil, we initialize `erc-modified-channels-object' to
|
||||
an appropriate initial value for this flavor of Emacs."
|
||||
"Generate a new `erc-modified-channels-object' based on STRINGS."
|
||||
(if strings
|
||||
(if (featurep 'xemacs)
|
||||
(let ((e-m-c-s '("[")))
|
||||
|
@ -743,7 +741,7 @@ only consider active buffers visible.")
|
|||
(defvar erc-modified-channels-update-inside nil
|
||||
"Variable to prevent running `erc-modified-channels-update' multiple
|
||||
times. Without it, you cannot debug `erc-modified-channels-display',
|
||||
because the debugger also cases changes to the window-configuration.")
|
||||
because the debugger also causes changes to the window-configuration.")
|
||||
|
||||
(defun erc-modified-channels-update (&rest _args)
|
||||
"This function updates the information in `erc-modified-channels-alist'
|
||||
|
|
|
@ -174,6 +174,10 @@ This variant works around bugs in `eval-when-compile' in various
|
|||
|
||||
(put 'cc-eval-when-compile 'lisp-indent-hook 0))
|
||||
|
||||
(eval-and-compile
|
||||
(defalias 'c--macroexpand-all
|
||||
(if (fboundp 'macroexpand-all)
|
||||
'macroexpand-all 'cl-macroexpand-all)))
|
||||
|
||||
;;; Macros.
|
||||
|
||||
|
@ -1841,7 +1845,7 @@ system."
|
|||
immediately, i.e. at the same time as the `c-lang-defconst' form
|
||||
itself is evaluated."
|
||||
;; Evaluate at macro expansion time, i.e. in the
|
||||
;; `macroexpand-all' inside `c-lang-defconst'.
|
||||
;; `c--macroexpand-all' inside `c-lang-defconst'.
|
||||
(eval form))
|
||||
|
||||
(defmacro c-lang-defconst (name &rest args)
|
||||
|
@ -1885,7 +1889,7 @@ constant. A file is identified by its base name."
|
|||
|
||||
(let* ((sym (intern (symbol-name name) c-lang-constants))
|
||||
;; Make `c-lang-const' expand to a straightforward call to
|
||||
;; `c-get-lang-constant' in `macroexpand-all' below.
|
||||
;; `c-get-lang-constant' in `c--macroexpand-all' below.
|
||||
;;
|
||||
;; (The default behavior, i.e. to expand to a call inside
|
||||
;; `eval-when-compile' should be equivalent, since that macro
|
||||
|
@ -1948,7 +1952,7 @@ constant. A file is identified by its base name."
|
|||
;; reason, but we also use this expansion handle
|
||||
;; `c-lang-defconst-eval-immediately' and to register
|
||||
;; dependencies on the `c-lang-const's in VAL.)
|
||||
(setq val (macroexpand-all val))
|
||||
(setq val (c--macroexpand-all val))
|
||||
|
||||
(setq bindings `(cons (cons ',assigned-mode (lambda () ,val)) ,bindings)
|
||||
args (cdr args))))
|
||||
|
|
|
@ -3238,7 +3238,7 @@ accomplish that conveniently."
|
|||
`(lambda ()
|
||||
|
||||
;; This let sets up the context for `c-mode-var' and similar
|
||||
;; that could be in the result from `macroexpand-all'.
|
||||
;; that could be in the result from `c--macroexpand-all'.
|
||||
(let ((c-buffer-is-cc-mode ',mode)
|
||||
current-var source-eval)
|
||||
(c-make-emacs-variables-local)
|
||||
|
@ -3248,12 +3248,12 @@ accomplish that conveniently."
|
|||
(setq ,@(let ((c-buffer-is-cc-mode mode)
|
||||
(c-lang-const-expansion 'immediate))
|
||||
;; `c-lang-const' will expand to the evaluated
|
||||
;; constant immediately in `macroexpand-all'
|
||||
;; constant immediately in `c--macroexpand-all'
|
||||
;; below.
|
||||
(mapcan
|
||||
(lambda (init)
|
||||
`(current-var ',(car init)
|
||||
,(car init) ,(macroexpand-all
|
||||
,(car init) ,(c--macroexpand-all
|
||||
(elt init 1))))
|
||||
;; Note: The following `append' copies the
|
||||
;; first argument. That list is small, so
|
||||
|
|
|
@ -1676,7 +1676,16 @@ Returns the compilation buffer created."
|
|||
(list command mode name-function highlight-regexp))
|
||||
(set (make-local-variable 'revert-buffer-function)
|
||||
'compilation-revert-buffer)
|
||||
(and outwin (set-window-start outwin (point-min)))
|
||||
(and outwin
|
||||
;; Forcing the window-start overrides the usual redisplay
|
||||
;; feature of bringing point into view, so setting the
|
||||
;; window-start to top of the buffer risks losing the
|
||||
;; effect of moving point to EOB below, per
|
||||
;; compilation-scroll-output, if the command is long
|
||||
;; enough to push point outside of the window. This
|
||||
;; could happen, e.g., in `rgrep'.
|
||||
(not compilation-scroll-output)
|
||||
(set-window-start outwin (point-min)))
|
||||
|
||||
;; Position point as the user will see it.
|
||||
(let ((desired-visible-point
|
||||
|
|
|
@ -1496,7 +1496,10 @@ Each element in the list should be a list of strings or pairs
|
|||
(title (with-temp-buffer
|
||||
(insert-file-contents
|
||||
(expand-file-name tut tutorial-directory)
|
||||
nil 0 256)
|
||||
;; Reat the entire file, to make sure any
|
||||
;; coding cookies and other local variables
|
||||
;; get acted upon.
|
||||
nil)
|
||||
(search-forward ".")
|
||||
(buffer-substring (point-min) (1- (point))))))
|
||||
;; If there is a specific tutorial for the current language
|
||||
|
|
|
@ -1,3 +1,12 @@
|
|||
2014-10-30 Eli Zaretskii <eliz@gnu.org>
|
||||
|
||||
* fileio.c (Fexpand_file_name): Use make_unibyte_string, not
|
||||
build_string, when importing a home directory. (Bug#18873)
|
||||
|
||||
* dispnew.c (buffer_posn_from_coords): Use
|
||||
WINDOW_WANTS_HEADER_LINE_P, not WINDOW_WANTS_MODELINE_P, to
|
||||
account for the header-line height. (Bug#18839)
|
||||
|
||||
2014-10-28 Ulf Jasper <ulf.jasper@web.de>
|
||||
|
||||
* xml.c (parse_region): Do not forget the first document child.
|
||||
|
|
|
@ -5205,7 +5205,7 @@ buffer_posn_from_coords (struct window *w, int *x, int *y, struct display_pos *p
|
|||
start position, i.e. it excludes the header-line row, but
|
||||
MATRIX_ROW includes the header-line row. Adjust for a possible
|
||||
header-line row. */
|
||||
it_vpos = it.vpos + WINDOW_WANTS_MODELINE_P (w);
|
||||
it_vpos = it.vpos + WINDOW_WANTS_HEADER_LINE_P (w);
|
||||
if (it_vpos < w->current_matrix->nrows
|
||||
&& (row = MATRIX_ROW (w->current_matrix, it_vpos),
|
||||
row->enabled_p))
|
||||
|
|
|
@ -1163,7 +1163,7 @@ filesystem tree, not (expand-file-name ".." dirname). */)
|
|||
char newdir_utf8[MAX_UTF8_PATH];
|
||||
|
||||
filename_from_ansi (newdir, newdir_utf8);
|
||||
tem = build_string (newdir_utf8);
|
||||
tem = make_unibyte_string (newdir_utf8, strlen (newdir_utf8));
|
||||
}
|
||||
else
|
||||
#endif
|
||||
|
@ -1199,7 +1199,7 @@ filesystem tree, not (expand-file-name ".." dirname). */)
|
|||
/* `getpwnam' may return a unibyte string, which will
|
||||
bite us since we expect the directory to be
|
||||
multibyte. */
|
||||
tem = build_string (newdir);
|
||||
tem = make_unibyte_string (newdir, strlen (newdir));
|
||||
newdirlim = newdir + SBYTES (tem);
|
||||
if (multibyte && !STRING_MULTIBYTE (tem))
|
||||
{
|
||||
|
|
Loading…
Add table
Reference in a new issue