Merge changes from emacs-23 branch
This commit is contained in:
commit
7c420169ba
47 changed files with 1461 additions and 505 deletions
|
@ -1,3 +1,8 @@
|
|||
2011-01-02 Eli Zaretskii <eliz@gnu.org>
|
||||
|
||||
* nt/README.W32: Update the information about PNG support libraries.
|
||||
(Bug#7716)
|
||||
|
||||
2010-12-27 Stefan Monnier <monnier@iro.umontreal.ca>
|
||||
|
||||
* bzrmerge.el: New file to help merge branches while skipping
|
||||
|
|
|
@ -1,3 +1,29 @@
|
|||
2011-01-02 Chong Yidong <cyd@stupidchicken.com>
|
||||
|
||||
* rmail.texi (Rmail Display): Edit for grammar and conciseness.
|
||||
|
||||
2011-01-02 Kenichi Handa <handa@m17n.org>
|
||||
|
||||
* rmail.texi (Rmail Display): Describe new features of Rmail in Info.
|
||||
|
||||
2011-01-02 Eli Zaretskii <eliz@gnu.org>
|
||||
|
||||
* frames.texi (Cut and Paste): Modify the section's name and text:
|
||||
don't mix "cut/paste" with "kill/yank".
|
||||
(Cut/Paste Other App): Describe the per-session emulation of PRIMARY.
|
||||
(Bug#7702)
|
||||
|
||||
* trouble.texi (Checklist): Mention debug-on-quit. (Bug#7667)
|
||||
|
||||
2011-01-02 Glenn Morris <rgm@gnu.org>
|
||||
|
||||
* maintaining.texi: Move inclusion of emerge after EDE, so that it
|
||||
matches its position in the menu. (Bug#7674)
|
||||
|
||||
2011-01-02 Glenn Morris <rgm@gnu.org>
|
||||
|
||||
* trouble.texi (Checklist): Mention not replying via news either.
|
||||
|
||||
2010-12-30 Tassilo Horn <tassilo@member.fsf.org>
|
||||
|
||||
* misc.texi (Document View): Update DocView section with newly
|
||||
|
|
|
@ -58,10 +58,10 @@ so that you can use many of the features described in this chapter.
|
|||
@end menu
|
||||
|
||||
@node Cut and Paste
|
||||
@section Killing and Yanking on Graphical Displays
|
||||
@section Cutting and Pasting on Graphical Displays
|
||||
|
||||
This section describes commands for selecting a region, killing, and
|
||||
yanking using the mouse.
|
||||
This section describes commands for selecting a region, cutting, and
|
||||
pasting using the mouse.
|
||||
|
||||
@menu
|
||||
* Mouse Commands:: Moving, cutting, and pasting, with the mouse.
|
||||
|
@ -248,6 +248,14 @@ has no ``memory'': each time you save something in the primary
|
|||
selection, either in Emacs or in another X application, the previous
|
||||
contents of the primary selection are lost.
|
||||
|
||||
@cindex MS-Windows, and primary selection
|
||||
MS-Windows provides no primary selection, but Emacs emulates it
|
||||
within a single Emacs session, by storing the selected text
|
||||
internally. Therefore, all the features and commands related to the
|
||||
primary selection work on Windows as they do on X, for cutting and
|
||||
pasting within the same session, but not across Emacs sessions or with
|
||||
other applications.
|
||||
|
||||
Whenever you kill some text using a command such as @kbd{C-w}
|
||||
(@code{kill-region}), or copy it into the kill ring using a command
|
||||
such as @kbd{M-w} (@code{kill-ring-save}), that text is also saved in
|
||||
|
|
|
@ -2354,7 +2354,3 @@ the target should be built.
|
|||
@ifnottex
|
||||
@include emerge-xtra.texi
|
||||
@end ifnottex
|
||||
|
||||
@ignore
|
||||
arch-tag: b9d83dfb-82ea-4ff6-bab5-05a3617091fb
|
||||
@end ignore
|
||||
|
|
|
@ -1101,57 +1101,90 @@ buffer before sorting it.
|
|||
@node Rmail Display
|
||||
@section Display of Messages
|
||||
|
||||
Rmail reformats the header of each message before displaying it for
|
||||
the first time. Reformatting hides uninteresting header fields to
|
||||
reduce clutter. You can use the @kbd{t} command to show the entire
|
||||
header or to repeat the header reformatting operation.
|
||||
This section describes how Rmail displays mail headers,
|
||||
@acronym{MIME} sections and attachments, and URLs.
|
||||
|
||||
@table @kbd
|
||||
@item t
|
||||
Toggle display of complete header (@code{rmail-toggle-header}).
|
||||
@end table
|
||||
|
||||
@vindex rmail-ignored-headers
|
||||
@vindex rmail-nonignored-headers
|
||||
Reformatting the header involves deleting most header fields, on the
|
||||
grounds that they are not interesting. The variable
|
||||
@code{rmail-ignored-headers} holds a regular expression that specifies
|
||||
which header fields to hide in this way---if it matches the beginning
|
||||
of a header field, that whole field is hidden. However, the variable
|
||||
@code{rmail-nonignored-headers} provides a further override: a header
|
||||
matching that regular expression is shown even if it matches
|
||||
@code{rmail-ignored-headers} too.
|
||||
|
||||
@vindex rmail-displayed-headers
|
||||
As an alternative to the previous two variables, you can set
|
||||
@code{rmail-displayed-headers} instead. If non-@code{nil}, this should
|
||||
be a regular expression specifying which headers to display.
|
||||
|
||||
@kindex t @r{(Rmail)}
|
||||
@findex rmail-toggle-header
|
||||
To see the complete, original header, use the @kbd{t} command
|
||||
(@code{rmail-toggle-header}). This discards the reformatted headers of
|
||||
the current message and displays it with the original header. Repeating
|
||||
@kbd{t} reformats the message again, which shows only the interesting
|
||||
headers according to the current values of the above variables.
|
||||
Selecting the message again also reformats it if necessary.
|
||||
Before displaying each message for the first time, Rmail reformats
|
||||
its header, hiding uninteresting header fields to reduce clutter. The
|
||||
@kbd{t} (@code{rmail-toggle-header}) command toggles this, switching
|
||||
between showing the reformatted header fields and showing the
|
||||
complete, original header. With a positive prefix argument, the
|
||||
command shows the reformatted header; with a zero or negative prefix
|
||||
argument, it shows the full header. Selecting the message again also
|
||||
reformats it if necessary.
|
||||
|
||||
When the @kbd{t} command has a prefix argument, a positive argument
|
||||
means to show the reformatted header, and a zero or negative argument
|
||||
means to show the full header.
|
||||
@vindex rmail-ignored-headers
|
||||
@vindex rmail-displayed-headers
|
||||
@vindex rmail-nonignored-headers
|
||||
The variable @code{rmail-ignored-headers} holds a regular expression
|
||||
specifying the header fields to hide; any matching header line will be
|
||||
hidden. The variable @code{rmail-nonignored-headers} overrides this:
|
||||
any header field matching that regular expression is shown even if it
|
||||
matches @code{rmail-ignored-headers} too. The variable
|
||||
@code{rmail-displayed-headers} is an alternative to these two
|
||||
variables; if non-@code{nil}, this should be a regular expression
|
||||
specifying which headers to display (the default is @code{nil}).
|
||||
|
||||
@vindex rmail-highlighted-headers
|
||||
Rmail highlights certain header fields that are especially
|
||||
interesting---by default, the @samp{From} and @samp{Subject} fields.
|
||||
The variable @code{rmail-highlighted-headers} holds a regular expression
|
||||
that specifies the header fields to highlight; if it matches the
|
||||
beginning of a header field, that whole field is highlighted. To turn
|
||||
off this feature, set @code{rmail-highlighted-headers} to @code{nil}.
|
||||
Customize the face @code{rmail-highlight} to adjust the style of the
|
||||
highlighting.
|
||||
This highlighting uses the @code{rmail-highlight} face. The variable
|
||||
@code{rmail-highlighted-headers} holds a regular expression specifying
|
||||
the header fields to highlight; if it matches the beginning of a
|
||||
header field, that whole field is highlighted. To disable this
|
||||
feature, set @code{rmail-highlighted-headers} to @code{nil}.
|
||||
|
||||
You can highlight and activate URLs in incoming messages using
|
||||
Goto Address mode:
|
||||
@cindex MIME messages (Rmail)
|
||||
@vindex rmail-enable-mime
|
||||
By default, Rmail automatically decodes @acronym{MIME} (Multipurpose
|
||||
Internet Mail Extensions) messages. If the message contains multiple
|
||||
parts (@acronym{MIME} entities), each part is represented by a tagline
|
||||
in the Rmail buffer. The tagline summarizes the part's depth, index,
|
||||
and type, and may also contain a button for handling it, e.g. saving
|
||||
it to a file or displaying it as an image in the Rmail buffer.
|
||||
|
||||
@table @kbd
|
||||
@findex rmail-mime-toggle-hidden
|
||||
@item @key{RET}
|
||||
Hide or show the @acronym{MIME} part at point
|
||||
(@code{rmail-mime-toggle-hidden}).
|
||||
|
||||
@findex rmail-mime-next-item
|
||||
@item @key{TAB}
|
||||
Move point to the next @acronym{MIME} part
|
||||
(@code{rmail-mime-next-item}).
|
||||
|
||||
@findex rmail-mime-previous-item
|
||||
@item @key{BackTab}
|
||||
Move point to the previous @acronym{MIME} part
|
||||
(@code{rmail-mime-previous-item}).
|
||||
|
||||
@findex rmail-mime
|
||||
@item v
|
||||
@kindex v @r{(Rmail)}
|
||||
Toggle between @acronym{MIME} display and raw message
|
||||
(@code{rmail-mime}).
|
||||
@end table
|
||||
|
||||
The @kbd{v} (@code{rmail-mime}) command toggles between the default
|
||||
@acronym{MIME} display described above, and a ``raw'' display showing
|
||||
the undecoded @acronym{MIME} data. With a prefix argument, this
|
||||
command toggles the display of only an entity at point.
|
||||
|
||||
To prevent Rmail from handling MIME decoded messages, change the
|
||||
variable @code{rmail-enable-mime} to @code{nil}. When this is the
|
||||
case, the @kbd{v} (@code{rmail-mime}) command instead creates a
|
||||
temporary buffer to display the current @acronym{MIME} message.
|
||||
|
||||
You can highlight and activate URLs in the Rmail buffer using Goto
|
||||
Address mode:
|
||||
|
||||
@c FIXME goto-addr.el commentary says to use goto-address instead.
|
||||
@smallexample
|
||||
|
@ -1163,13 +1196,6 @@ Then you can browse these URLs by clicking on them with @kbd{Mouse-2}
|
|||
(or @kbd{Mouse-1} quickly) or by moving to one and typing @kbd{C-c
|
||||
@key{RET}}. @xref{Goto Address mode, Activating URLs, Activating URLs}.
|
||||
|
||||
@cindex MIME messages (Rmail)
|
||||
@findex rmail-mime
|
||||
@kindex v @r{(Rmail)}
|
||||
The @kbd{v} (@code{rmail-mime}) command creates a temporary buffer
|
||||
displaying the current MIME message. By default, it displays plain text
|
||||
and multipart messages, and offers buttons to save attachments.
|
||||
|
||||
@node Rmail Coding
|
||||
@section Rmail and Coding Systems
|
||||
|
||||
|
|
|
@ -630,9 +630,10 @@ you can use.
|
|||
|
||||
All mail sent to the @samp{bug-gnu-emacs} mailing list is also
|
||||
gatewayed to the @samp{gnu.emacs.bug} newsgroup. The reverse is also
|
||||
true, but we ask you not to post bug reports via the newsgroup. It
|
||||
can make it much harder to contact you if we need to ask for more
|
||||
information, and it does not integrate well with the bug tracker.
|
||||
true, but we ask you not to post bug reports (or replies) via the
|
||||
newsgroup. It can make it much harder to contact you if we need to ask
|
||||
for more information, and it does not integrate well with the bug
|
||||
tracker.
|
||||
|
||||
If your data is more than 500,000 bytes, please don't include it
|
||||
directly in the bug report; instead, offer to send it on request, or
|
||||
|
@ -805,6 +806,13 @@ This use of the debugger is possible only if you know how to make the
|
|||
bug happen again. If you can't make it happen again, at least copy
|
||||
the whole error message.
|
||||
|
||||
@vindex debug-on-quit
|
||||
If Emacs appears to be stuck in an infinite loop or in a very long
|
||||
operation, typing @kbd{C-g} with the variable @code{debug-on-quit}
|
||||
non-@code{nil} will start the Lisp debugger and show a backtrace.
|
||||
This backtrace is useful for debugging such long loops, so if you can
|
||||
produce it, copy it into the bug report.
|
||||
|
||||
@item
|
||||
Check whether any programs you have loaded into the Lisp world,
|
||||
including your @file{.emacs} file, set any variables that may affect the
|
||||
|
|
|
@ -1,3 +1,12 @@
|
|||
2011-01-02 Eli Zaretskii <eliz@gnu.org>
|
||||
|
||||
* modes.texi (Emulating Mode Line): Fix last change.
|
||||
|
||||
2011-01-02 Eli Zaretskii <eliz@gnu.org>
|
||||
|
||||
* modes.texi (Emulating Mode Line): Update documentation of
|
||||
format-mode-line according to changes that fixed bug #7587.
|
||||
|
||||
2010-12-18 Stefan Monnier <monnier@iro.umontreal.ca>
|
||||
|
||||
* modes.texi (Derived Modes): Mention prog-mode.
|
||||
|
|
|
@ -2112,29 +2112,38 @@ the text that would appear in a mode line or header line
|
|||
based on a certain mode-line specification.
|
||||
|
||||
@defun format-mode-line format &optional face window buffer
|
||||
This function formats a line of text according to @var{format} as if
|
||||
it were generating the mode line for @var{window}, but instead of
|
||||
displaying the text in the mode line or the header line, it returns
|
||||
the text as a string. The argument @var{window} defaults to the
|
||||
selected window. If @var{buffer} is non-@code{nil}, all the
|
||||
information used is taken from @var{buffer}; by default, it comes from
|
||||
@var{window}'s buffer.
|
||||
This function formats a line of text according to @var{format} as if it
|
||||
were generating the mode line for @var{window}, but it also returns the
|
||||
text as a string. The argument @var{window} defaults to the selected
|
||||
window. If @var{buffer} is non-@code{nil}, all the information used is
|
||||
taken from @var{buffer}; by default, it comes from @var{window}'s
|
||||
buffer.
|
||||
|
||||
The value string normally has text properties that correspond to the
|
||||
faces, keymaps, etc., that the mode line would have. And any character
|
||||
for which no @code{face} property is specified gets a default
|
||||
value which is usually @var{face}. (If @var{face} is @code{t},
|
||||
that stands for either @code{mode-line} if @var{window} is selected,
|
||||
faces, keymaps, etc., that the mode line would have. Any character for
|
||||
which no @code{face} property is specified by @var{format} gets a
|
||||
default value determined by @var{face}. If @var{face} is @code{t}, that
|
||||
stands for either @code{mode-line} if @var{window} is selected,
|
||||
otherwise @code{mode-line-inactive}. If @var{face} is @code{nil} or
|
||||
omitted, that stands for no face property.)
|
||||
omitted, that stands for the default face. If @var{face} is an integer,
|
||||
the value returned by this function will have no text properties.
|
||||
|
||||
However, if @var{face} is an integer, the value has no text properties.
|
||||
You can also specify other valid faces as the value of @var{face}.
|
||||
If specified, that face provides the @code{face} property for characters
|
||||
whose face is not specified by @var{format}.
|
||||
|
||||
Note that using @code{mode-line}, @code{mode-line-inactive}, or
|
||||
@code{header-line} as @var{face} will actually redisplay the mode line
|
||||
or the header line, respectively, using the current definitions of the
|
||||
corresponding face, in addition to returning the formatted string.
|
||||
(Other faces do not cause redisplay.)
|
||||
|
||||
For example, @code{(format-mode-line header-line-format)} returns the
|
||||
text that would appear in the selected window's header line (@code{""}
|
||||
if it has no header line). @code{(format-mode-line header-line-format
|
||||
'header-line)} returns the same text, with each character
|
||||
carrying the face that it will have in the header line itself.
|
||||
carrying the face that it will have in the header line itself, and also
|
||||
redraws the header line.
|
||||
@end defun
|
||||
|
||||
@node Imenu
|
||||
|
|
|
@ -1,3 +1,7 @@
|
|||
2011-01-02 Jari Aalto <jari.aalto@cante.net> (tiny change)
|
||||
|
||||
* emacsclient.1: Arrange options alphabetically (Bug#7620).
|
||||
|
||||
2010-10-12 Glenn Morris <rgm@gnu.org>
|
||||
|
||||
* emacs.1: Small fixes.
|
||||
|
|
|
@ -49,36 +49,36 @@ If you set the variable `server-window' to a window or a frame, `C-x
|
|||
The programs follow the usual GNU command line syntax, with long
|
||||
options starting with two dashes (`-').
|
||||
.TP
|
||||
.B \-nw, \-t, \-\-tty
|
||||
open a new Emacs frame on the current terminal
|
||||
.TP
|
||||
.B -c, \-\-create-frame
|
||||
create a new frame instead of trying to use the current Emacs frame
|
||||
.TP
|
||||
.B \-e, \-\-eval
|
||||
do not visit files but instead evaluate the arguments as Emacs
|
||||
Lisp expressions.
|
||||
.TP
|
||||
.B \-n, \-\-no-wait
|
||||
returns
|
||||
immediately without waiting for you to "finish" the buffer in Emacs.
|
||||
.TP
|
||||
.B \-s, \-\-socket-name=FILENAME
|
||||
use socket named FILENAME for communication.
|
||||
.TP
|
||||
.B \-f, \-\-server-file=FILENAME
|
||||
use TCP configuration file FILENAME for communication.
|
||||
This can also be specified via the `EMACS_SERVER_FILE' environment variable.
|
||||
.TP
|
||||
.B \-a, \-\-alternate-editor=EDITOR
|
||||
if the Emacs server is not running, run the specified editor instead.
|
||||
This can also be specified via the `ALTERNATE_EDITOR' environment variable.
|
||||
If the value of EDITOR is the empty string, then Emacs is started in
|
||||
daemon mode and emacsclient will try to connect to it.
|
||||
.TP
|
||||
.B -c, \-\-create-frame
|
||||
create a new frame instead of trying to use the current Emacs frame
|
||||
.TP
|
||||
.B \-d, \-\-display=DISPLAY
|
||||
tell the server to display the files on the given display.
|
||||
.TP
|
||||
.B \-e, \-\-eval
|
||||
do not visit files but instead evaluate the arguments as Emacs
|
||||
Lisp expressions.
|
||||
.TP
|
||||
.B \-f, \-\-server-file=FILENAME
|
||||
use TCP configuration file FILENAME for communication.
|
||||
This can also be specified via the `EMACS_SERVER_FILE' environment variable.
|
||||
.TP
|
||||
.B \-n, \-\-no-wait
|
||||
returns
|
||||
immediately without waiting for you to "finish" the buffer in Emacs.
|
||||
.TP
|
||||
.B \-nw, \-t, \-\-tty
|
||||
open a new Emacs frame on the current terminal
|
||||
.TP
|
||||
.B \-s, \-\-socket-name=FILENAME
|
||||
use socket named FILENAME for communication.
|
||||
.TP
|
||||
.B \-V, \-\-version
|
||||
print version information and exit
|
||||
.TP
|
||||
|
|
|
@ -1,3 +1,7 @@
|
|||
2011-01-02 Kenichi Handa <handa@m17n.org>
|
||||
|
||||
* NEWS.23: Describe the changes for rmail's MIME handling.
|
||||
|
||||
2010-12-18 Chong Yidong <cyd@stupidchicken.com>
|
||||
|
||||
* images/separator.xpm: Tweak colors.
|
||||
|
|
21
etc/NEWS.23
21
etc/NEWS.23
|
@ -67,6 +67,27 @@ Bazaar recognizes the headers "Author", "Date" and "Fixes".
|
|||
Git, Mercurial, and Monotone recognize "Author" and "Date".
|
||||
Any unknown header is left as is in the message, so it is not lost.
|
||||
|
||||
** Rmail
|
||||
|
||||
*** The default value of `rmail-enable-mime' is now t. Rmail decodes
|
||||
MIME contents automatically. You can customize the variable
|
||||
`rmail-enable-mime' back to `nil' to disable this automatic MIME
|
||||
decoding.
|
||||
|
||||
*** The command `rmail-mime' change the displaying of a MIME message
|
||||
between decoded presentation form and raw data if `rmail-enable-mime'
|
||||
is non-nil. And, with prefix argument, it change only the displaying
|
||||
of the MIME entity at point.
|
||||
|
||||
*** The new command `rmail-mime-next-item' (bound to TAB) moves point
|
||||
to the next item of MIME message.
|
||||
|
||||
*** The new command `rmail-mime-previous-item' (bound to backtab) moves
|
||||
point to the previous item of MIME message.
|
||||
|
||||
*** The new command `rmail-mime-toggle-hidden' (RET) hide or show the
|
||||
body of the MIME entity at point.
|
||||
|
||||
** Obsolete packages
|
||||
|
||||
+++
|
||||
|
|
|
@ -1,3 +1,9 @@
|
|||
2011-01-02 Glenn Morris <rgm@gnu.org>
|
||||
|
||||
* ebrowse.c (version) <emacs_copyright>:
|
||||
* etags.c (print_version) <emacs_copyright>:
|
||||
* rcs2log (Copyright): Set short copyright year to 2011.
|
||||
|
||||
2010-11-27 Joe Matarazzo <joe.matarazzo@gmail.com> (tiny change)
|
||||
|
||||
* ebrowse.c (yylex): If end of input buffer encountered while
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
/* ebrowse.c --- parsing files for the ebrowse C++ browser
|
||||
|
||||
Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001,
|
||||
2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
|
||||
Free Software Foundation, Inc.
|
||||
2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011
|
||||
Free Software Foundation, Inc.
|
||||
|
||||
This file is part of GNU Emacs.
|
||||
|
||||
|
@ -3577,7 +3577,7 @@ void
|
|||
version (void)
|
||||
{
|
||||
/* Makes it easier to update automatically. */
|
||||
char emacs_copyright[] = "Copyright (C) 2010 Free Software Foundation, Inc.";
|
||||
char emacs_copyright[] = "Copyright (C) 2011 Free Software Foundation, Inc.";
|
||||
|
||||
printf ("ebrowse %s\n", VERSION);
|
||||
puts (emacs_copyright);
|
||||
|
@ -3877,7 +3877,4 @@ main (int argc, char **argv)
|
|||
return EXIT_SUCCESS;
|
||||
}
|
||||
|
||||
/* arch-tag: fc03b4bc-91a9-4c3d-b3b9-12a77fa86dd8
|
||||
(do not change this comment) */
|
||||
|
||||
/* ebrowse.c ends here */
|
||||
|
|
|
@ -29,8 +29,8 @@ IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|||
|
||||
|
||||
Copyright (C) 1984, 1987, 1988, 1989, 1993, 1994, 1995, 1998, 1999,
|
||||
2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
|
||||
Free Software Foundation, Inc.
|
||||
2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010,
|
||||
2011 Free Software Foundation, Inc.
|
||||
|
||||
This file is not considered part of GNU Emacs.
|
||||
|
||||
|
@ -891,7 +891,7 @@ static void
|
|||
print_version (void)
|
||||
{
|
||||
/* Makes it easier to update automatically. */
|
||||
char emacs_copyright[] = "Copyright (C) 2010 Free Software Foundation, Inc.";
|
||||
char emacs_copyright[] = "Copyright (C) 2011 Free Software Foundation, Inc.";
|
||||
|
||||
printf ("%s (%s %s)\n", (CTAGS) ? "ctags" : "etags", EMACS_NAME, VERSION);
|
||||
puts (emacs_copyright);
|
||||
|
@ -6725,7 +6725,4 @@ xrealloc (char *ptr, unsigned int size)
|
|||
* End:
|
||||
*/
|
||||
|
||||
/* arch-tag: 8a9b748d-390c-4922-99db-2eeefa921051
|
||||
(do not change this comment) */
|
||||
|
||||
/* etags.c ends here */
|
||||
|
|
|
@ -3,8 +3,8 @@
|
|||
# RCS to ChangeLog generator
|
||||
|
||||
# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 2001, 2002, 2003,
|
||||
# 2004, 2005, 2006, 2007, 2008, 2009, 2010
|
||||
# Free Software Foundation, Inc.
|
||||
# 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011
|
||||
# Free Software Foundation, Inc.
|
||||
|
||||
# Author: Paul Eggert <eggert@twinsun.com>
|
||||
|
||||
|
@ -22,7 +22,7 @@
|
|||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
|
||||
Copyright='Copyright (C) 2010 Free Software Foundation, Inc.
|
||||
Copyright='Copyright (C) 2011 Free Software Foundation, Inc.
|
||||
This program comes with NO WARRANTY, to the extent permitted by law.
|
||||
You may redistribute copies of this program
|
||||
under the terms of the GNU General Public License.
|
||||
|
@ -777,4 +777,3 @@ exec rm -fr $logdir
|
|||
# tab-width:4
|
||||
# End:
|
||||
|
||||
# arch-tag: cea067bd-a552-4254-ba17-078208933073
|
||||
|
|
118
lisp/ChangeLog
118
lisp/ChangeLog
|
@ -1,3 +1,119 @@
|
|||
2011-01-02 Eli Zaretskii <eliz@gnu.org>
|
||||
|
||||
* term/w32-win.el (dynamic-library-alist): Set up correctly for
|
||||
libpng versions both before and after 1.4.0. (Bug#7716)
|
||||
|
||||
2011-01-02 Eli Zaretskii <eliz@gnu.org>
|
||||
|
||||
* time.el (display-time-mode): Mention display-time-interval in
|
||||
the doc string. (Bug#7713)
|
||||
|
||||
2011-01-02 Kenichi Handa <handa@m17n.org>
|
||||
|
||||
* mail/rmailmm.el (rmail-mime-parse): Perform parsing in
|
||||
condition-case and return an error message string if something
|
||||
goes wrong.
|
||||
(rmail-show-mime): Adjust for the above change. Insert the
|
||||
header by rmail-mime-insert-header.
|
||||
|
||||
2011-01-02 Kenichi Handa <handa@m17n.org>
|
||||
|
||||
* mail/rmailmm.el: New key bindings for rmail-mime-next-item,
|
||||
rmail-mime-previous-item, and rmail-mime-toggle-hidden.
|
||||
(rmail-mime-mbox-buffer)
|
||||
(rmail-mime-view-buffer, rmail-mime-coding-system): New variables.
|
||||
(rmail-mime-entity): Argument changed. All codes handling an
|
||||
entity object are changed.
|
||||
(rmail-mime-entity-header, rmail-mime-entity-body): Adjust for
|
||||
the above change.
|
||||
(rmail-mime-entity-children, rmail-mime-entity-handler)
|
||||
(rmail-mime-entity-tagline): New functions.
|
||||
(rmail-mime-message-p): New function.
|
||||
(rmail-mime-save): Bind rmail-mime-mbox-buffer.
|
||||
(rmail-mime-entity-segment, rmail-mime-next-item)
|
||||
(rmail-mime-previous-item, rmail-mime-shown-mode)
|
||||
(rmail-mime-hidden-mode, rmail-mime-raw-mode)
|
||||
(rmail-mime-toggle-raw, rmail-mime-toggle-hidden)
|
||||
(rmail-mime-insert-tagline, rmail-mime-insert-header):
|
||||
New functions.
|
||||
(rmail-mime-text-handler): Call rmail-mime-insert-text.
|
||||
(rmail-mime-insert-decoded-text): New function.
|
||||
(rmail-mime-insert-text): Call rmail-mime-insert-decoded-text.
|
||||
(rmail-mime-insert-image): Argument changed. Caller changed.
|
||||
(rmail-mime-image): Call rmail-mime-toggle-hidden.
|
||||
(rmail-mime-set-bulk-data): New funciton.
|
||||
(rmail-mime-insert-bulk): Argument changed.
|
||||
(rmail-mime-multipart-handler): Return t.
|
||||
(rmail-mime-process-multipart): Argument changed.
|
||||
Handle "multipart/alternative" here.
|
||||
(rmail-mime-process): Argument changed.
|
||||
(rmail-mime-parse): Bind rmail-mime-mbox-buffer.
|
||||
(rmail-mime-insert): Argument changed. Handle raw display mode.
|
||||
(rmail-mime): Argument changed. Handle toggling of raw display
|
||||
mode.
|
||||
(rmail-show-mime): Bind rmail-mime-mbox-buffer and
|
||||
rmail-mime-view-buffer.
|
||||
(rmail-insert-mime-forwarded-message): Likewise.
|
||||
(rmail-search-mime-message): Likewise. Don't bind rmail-buffer.
|
||||
|
||||
* mail/rmail.el (rmail-show-message-1): If rmail-enable-mime is
|
||||
non-nil, handle the header in rmail-show-mime-function.
|
||||
|
||||
2011-01-02 Leo <sdl.web@gmail.com>
|
||||
|
||||
* help-fns.el (describe-variable): Fix previous change.
|
||||
|
||||
2011-01-02 Juri Linkov <juri@jurta.org>
|
||||
|
||||
* isearch.el (isearch-lazy-highlight-error): New variable.
|
||||
(isearch-lazy-highlight-new-loop): Compare `isearch-error' and
|
||||
`isearch-lazy-highlight-error'. Set `isearch-lazy-highlight-error'
|
||||
to the current value of `isearch-error' (Bug#7468).
|
||||
|
||||
2011-01-02 Chong Yidong <cyd@stupidchicken.com>
|
||||
|
||||
* help-fns.el (describe-variable): Don't emit trailing whitespace
|
||||
(Bug#7511).
|
||||
|
||||
2011-01-02 Chong Yidong <cyd@stupidchicken.com>
|
||||
|
||||
* textmodes/rst.el (rst-compile-pdf-preview)
|
||||
(rst-compile-slides-preview): Use make-temp-file (Bug#7646).
|
||||
|
||||
2011-01-02 Kevin Gallagher <Kevin.Gallagher@boeing.com>
|
||||
|
||||
* emulation/edt-mapper.el: Override mapping of function keys so
|
||||
that the later call to read-key-sequence works.
|
||||
|
||||
2011-01-02 Eli Zaretskii <eliz@gnu.org>
|
||||
|
||||
* mail/smtpmail.el (smtpmail-send-it): Write queued mail body with
|
||||
Unix EOLs. (Bug#7589)
|
||||
|
||||
2011-01-02 Leo <sdl.web@gmail.com>
|
||||
|
||||
* eshell/em-hist.el (eshell-previous-matching-input): Signal error
|
||||
if point is not behind eshell-last-output-end (Bug#7585).
|
||||
|
||||
2011-01-02 Stefan Monnier <monnier@iro.umontreal.ca>
|
||||
|
||||
* files.el (file-local-variables-alist):
|
||||
Make permanent-local (bug#7767).
|
||||
|
||||
2011-01-02 Glenn Morris <rgm@gnu.org>
|
||||
|
||||
* version.el (emacs-copyright): Set short copyright year to 2011.
|
||||
|
||||
2011-01-02 Mark Lillibridge <mark.lillibridge@hp.com> (tiny change)
|
||||
|
||||
* mail/mail-utils.el (mail-strip-quoted-names): Avoid clobbering
|
||||
an existing temp buffer. (Bug#7746)
|
||||
|
||||
2011-01-02 Glenn Morris <rgm@gnu.org>
|
||||
|
||||
* mail/mail-utils.el (mail-mbox-from): Handle From: headers with
|
||||
multiple addresses. (Bug#7760)
|
||||
|
||||
2010-12-31 Michael Albinus <michael.albinus@gmx.de>
|
||||
|
||||
* net/tramp-sh.el (tramp-methods): Add recursive options to "scpc"
|
||||
|
@ -20285,7 +20401,7 @@ See ChangeLog.14 for earlier changes.
|
|||
;; coding: utf-8
|
||||
;; End:
|
||||
|
||||
Copyright (C) 2009, 2010 Free Software Foundation, Inc.
|
||||
Copyright (C) 2009, 2010, 2011 Free Software Foundation, Inc.
|
||||
|
||||
This file is part of GNU Emacs.
|
||||
|
||||
|
|
|
@ -141,6 +141,48 @@
|
|||
(setq edt-term nil)
|
||||
(setq edt-term (getenv "TERM")))
|
||||
|
||||
;;;
|
||||
;;; Implements a workaround for a feature that was added to simple.el.
|
||||
;;;
|
||||
;;; Many function keys have no Emacs functions assigned to them by
|
||||
;;; default. A subset of these are typically assigned functions in the
|
||||
;;; EDT emulation. This includes all the keypad keys and a some others
|
||||
;;; like Delete.
|
||||
;;;
|
||||
;;; Logic in simple.el maps some of these unassigned function keys to
|
||||
;;; ordinary typing keys. Where this is the case, a call to
|
||||
;;; read-key-sequence, below, does not return the name of the function
|
||||
;;; key pressd by the user but, instead, it returns the name of the
|
||||
;;; key to which it has been mapped. It needs to know the name of the
|
||||
;;; key pressed by the user. As a workaround, we assign a function to
|
||||
;;; each of the unassigned function keys of interest, here. These
|
||||
;;; assignments override the mapping to other keys and are only
|
||||
;;; temporary since, when edt-mapper is finished executing, it causes
|
||||
;;; Emacs to exit.
|
||||
;;;
|
||||
|
||||
(mapc
|
||||
(lambda (function-key)
|
||||
(if (not (lookup-key (current-global-map) function-key))
|
||||
(define-key (current-global-map) function-key 'forward-char)))
|
||||
'([kp-0] [kp-1] [kp-2] [kp-3] [kp-4]
|
||||
[kp-5] [kp-6] [kp-7] [kp-8] [kp-9]
|
||||
[kp-space]
|
||||
[kp-tab]
|
||||
[kp-enter]
|
||||
[kp-multiply]
|
||||
[kp-add]
|
||||
[kp-separator]
|
||||
[kp-subtract]
|
||||
[kp-decimal]
|
||||
[kp-divide]
|
||||
[kp-equal]
|
||||
[backspace]
|
||||
[delete]
|
||||
[tab]
|
||||
[linefeed]
|
||||
[clear]))
|
||||
|
||||
;;;
|
||||
;;; Make sure the window is big enough to display the instructions,
|
||||
;;; except where window cannot be re-sized.
|
||||
|
|
|
@ -837,6 +837,8 @@ With prefix argument N, search for Nth previous match.
|
|||
If N is negative, find the next or Nth next match."
|
||||
(interactive (eshell-regexp-arg "Previous input matching (regexp): "))
|
||||
(setq arg (eshell-search-arg arg))
|
||||
(if (> eshell-last-output-end (point))
|
||||
(error "Point not located after prompt"))
|
||||
(let ((pos (eshell-previous-matching-input-string-position regexp arg)))
|
||||
;; Has a match been found?
|
||||
(if (null pos)
|
||||
|
@ -844,7 +846,7 @@ If N is negative, find the next or Nth next match."
|
|||
(setq eshell-history-index pos)
|
||||
(unless (minibuffer-window-active-p (selected-window))
|
||||
(message "History item: %d" (- (ring-length eshell-history-ring) pos)))
|
||||
;; Can't use kill-region as it sets this-command
|
||||
;; Can't use kill-region as it sets this-command
|
||||
(delete-region eshell-last-output-end (point))
|
||||
(insert-and-inherit (eshell-get-history pos)))))
|
||||
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
;;; files.el --- file input and output commands for Emacs
|
||||
|
||||
;; Copyright (C) 1985, 1986, 1987, 1992, 1993, 1994, 1995, 1996,
|
||||
;; 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006,
|
||||
;; 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
|
||||
;; 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
|
||||
;; 2006, 2007, 2008, 2009, 2010, 2011 Free Software Foundation, Inc.
|
||||
|
||||
;; Maintainer: FSF
|
||||
;; Package: emacs
|
||||
|
@ -2876,6 +2876,7 @@ is a file-local variable (a symbol) and VALUE is the value
|
|||
specified. The actual value in the buffer may differ from VALUE,
|
||||
if it is changed by the major or minor modes, or by the user.")
|
||||
(make-variable-buffer-local 'file-local-variables-alist)
|
||||
(put 'file-local-variables-alist 'permanent-local t)
|
||||
|
||||
(defvar dir-local-variables-alist nil
|
||||
"Alist of directory-local variable settings in the current buffer.
|
||||
|
|
|
@ -639,19 +639,16 @@ it is displayed along with the global value."
|
|||
(if valvoid
|
||||
(princ " is void as a variable.")
|
||||
(princ "'s "))))
|
||||
(if valvoid
|
||||
nil
|
||||
(unless valvoid
|
||||
(with-current-buffer standard-output
|
||||
(setq val-start-pos (point))
|
||||
(princ "value is ")
|
||||
(terpri)
|
||||
(let ((from (point)))
|
||||
(terpri)
|
||||
(pp val)
|
||||
;; Hyperlinks in variable's value are quite frequently
|
||||
;; inappropriate e.g C-h v <RET> features <RET>
|
||||
;; (help-xref-on-pp from (point))
|
||||
(if (< (point) (+ from 20))
|
||||
(delete-region (1- from) from))
|
||||
(if (< (point) (+ 68 (line-beginning-position 0)))
|
||||
(delete-region from (1+ from))
|
||||
(delete-region (1- from) from))
|
||||
(let* ((sv (get variable 'standard-value))
|
||||
(origval (and (consp sv)
|
||||
(condition-case nil
|
||||
|
@ -666,7 +663,6 @@ it is displayed along with the global value."
|
|||
(if (< (point) (+ from 20))
|
||||
(delete-region (1- from) from)))))))
|
||||
(terpri)
|
||||
|
||||
(when locus
|
||||
(if (bufferp locus)
|
||||
(princ (format "%socal in buffer %s; "
|
||||
|
|
|
@ -2581,6 +2581,7 @@ since they have special meaning in a regexp."
|
|||
(defvar isearch-lazy-highlight-regexp nil)
|
||||
(defvar isearch-lazy-highlight-space-regexp nil)
|
||||
(defvar isearch-lazy-highlight-forward nil)
|
||||
(defvar isearch-lazy-highlight-error nil)
|
||||
|
||||
(defun lazy-highlight-cleanup (&optional force)
|
||||
"Stop lazy highlighting and remove extra highlighting from current buffer.
|
||||
|
@ -2622,9 +2623,13 @@ by other Emacs features."
|
|||
(not (= (window-end) ; Window may have been split/joined.
|
||||
isearch-lazy-highlight-window-end))
|
||||
(not (eq isearch-forward
|
||||
isearch-lazy-highlight-forward))))
|
||||
isearch-lazy-highlight-forward))
|
||||
;; In case we are recovering from an error.
|
||||
(not (equal isearch-error
|
||||
isearch-lazy-highlight-error))))
|
||||
;; something important did indeed change
|
||||
(lazy-highlight-cleanup t) ;kill old loop & remove overlays
|
||||
(setq isearch-lazy-highlight-error isearch-error)
|
||||
(when (not isearch-error)
|
||||
(setq isearch-lazy-highlight-start-limit beg
|
||||
isearch-lazy-highlight-end-limit end)
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
;;; binhex.el --- elisp native binhex decode
|
||||
;;; binhex.el --- decode BinHex-encoded text
|
||||
|
||||
;; Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004,
|
||||
;; 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
|
||||
|
@ -23,6 +23,11 @@
|
|||
|
||||
;;; Commentary:
|
||||
|
||||
;; BinHex is a binary-to-text encoding scheme similar to uuencode.
|
||||
;; The command `binhex-decode-region' decodes BinHex-encoded text, via
|
||||
;; the external program "hexbin" if that is available, or an Emacs
|
||||
;; Lisp implementation if not.
|
||||
|
||||
;;; Code:
|
||||
|
||||
(eval-when-compile (require 'cl))
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
;;; mail-utils.el --- utility functions used both by rmail and rnews
|
||||
|
||||
;; Copyright (C) 1985, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008,
|
||||
;; 2009, 2010 Free Software Foundation, Inc.
|
||||
;; 2009, 2010, 2011 Free Software Foundation, Inc.
|
||||
|
||||
;; Maintainer: FSF
|
||||
;; Keywords: mail, news
|
||||
|
@ -185,8 +185,7 @@ Return a modified address list."
|
|||
;; Detect nested comments.
|
||||
(if (string-match "[ \t]*(\\([^)\\]\\|\\\\.\\|\\\\\n\\)*(" address)
|
||||
;; Strip nested comments.
|
||||
(with-current-buffer (get-buffer-create " *temp*")
|
||||
(erase-buffer)
|
||||
(with-temp-buffer
|
||||
(insert address)
|
||||
(set-syntax-table lisp-mode-syntax-table)
|
||||
(goto-char 1)
|
||||
|
@ -199,8 +198,7 @@ Return a modified address list."
|
|||
(forward-sexp 1)
|
||||
(error (goto-char (point-max))))
|
||||
(point))))
|
||||
(setq address (buffer-string))
|
||||
(erase-buffer))
|
||||
(setq address (buffer-string)))
|
||||
;; Strip non-nested comments an easier way.
|
||||
(while (setq pos (string-match
|
||||
;; This doesn't hack rfc822 nested comments
|
||||
|
@ -235,12 +233,12 @@ Return a modified address list."
|
|||
nil 'literal address 2)))
|
||||
address))))
|
||||
|
||||
;;; The following piece of ugliness is legacy code. The name was an
|
||||
;;; unfortunate choice --- a flagrant violation of the Emacs Lisp
|
||||
;;; coding conventions. `mail-dont-reply-to' would have been
|
||||
;;; infinitely better. Also, `rmail-dont-reply-to-names' might have
|
||||
;;; been better named `mail-dont-reply-to-names' and sourced from this
|
||||
;;; file instead of in rmail.el. Yuck. -pmr
|
||||
;; The following piece of ugliness is legacy code. The name was an
|
||||
;; unfortunate choice --- a flagrant violation of the Emacs Lisp
|
||||
;; coding conventions. `mail-dont-reply-to' would have been
|
||||
;; infinitely better. Also, `rmail-dont-reply-to-names' might have
|
||||
;; been better named `mail-dont-reply-to-names' and sourced from this
|
||||
;; file instead of in rmail.el. Yuck. -pmr
|
||||
(defun rmail-dont-reply-to (destinations)
|
||||
"Prune addresses from DESTINATIONS, a list of recipient addresses.
|
||||
All addresses matching `rmail-dont-reply-to-names' are removed from
|
||||
|
@ -394,13 +392,19 @@ matches may be returned from the message body."
|
|||
(defun mail-mbox-from ()
|
||||
"Return an mbox \"From \" line for the current message.
|
||||
The buffer should be narrowed to just the header."
|
||||
(let ((from (or (mail-fetch-field "from")
|
||||
(mail-fetch-field "really-from")
|
||||
(mail-fetch-field "sender")
|
||||
(mail-fetch-field "return-path")
|
||||
"unknown"))
|
||||
(date (mail-fetch-field "date")))
|
||||
(format "From %s %s\n" (mail-strip-quoted-names from)
|
||||
(let* ((from (mail-strip-quoted-names (or (mail-fetch-field "from")
|
||||
(mail-fetch-field "really-from")
|
||||
(mail-fetch-field "sender")
|
||||
(mail-fetch-field "return-path")
|
||||
"unknown")))
|
||||
(date (mail-fetch-field "date"))
|
||||
;; A From: header can contain multiple addresses, a "From "
|
||||
;; line must contain only one. (Bug#7760)
|
||||
;; See eg RFC 5322, 3.6.2. Originator Fields.
|
||||
(end (string-match "[ \t]*[,\n]" from)))
|
||||
(format "From %s %s\n" (if end
|
||||
(substring from 0 end)
|
||||
from)
|
||||
(or (and date
|
||||
(ignore-errors
|
||||
(current-time-string (date-to-time date))))
|
||||
|
|
|
@ -2691,75 +2691,72 @@ The current mail message becomes the message displayed."
|
|||
(message "Showing message %d" msg))
|
||||
(narrow-to-region beg end)
|
||||
(goto-char beg)
|
||||
(if (and rmail-enable-mime
|
||||
(re-search-forward "mime-version: 1.0" nil t))
|
||||
(let ((rmail-buffer mbox-buf)
|
||||
(rmail-view-buffer view-buf))
|
||||
(funcall rmail-show-mime-function))
|
||||
(setq body-start (search-forward "\n\n" nil t))
|
||||
(narrow-to-region beg (point))
|
||||
(goto-char beg)
|
||||
(save-excursion
|
||||
(if (re-search-forward "^X-Coding-System: *\\(.*\\)$" nil t)
|
||||
(setq coding-system (intern (match-string 1)))
|
||||
(setq coding-system (rmail-get-coding-system))))
|
||||
(setq character-coding (mail-fetch-field "content-transfer-encoding")
|
||||
is-text-message (rmail-is-text-p))
|
||||
(if character-coding
|
||||
(setq character-coding (downcase character-coding)))
|
||||
(narrow-to-region beg end)
|
||||
;; Decode the message body into an empty view buffer using a
|
||||
;; unibyte temporary buffer where the character decoding takes
|
||||
;; place.
|
||||
(with-current-buffer rmail-view-buffer
|
||||
(erase-buffer))
|
||||
(if (null character-coding)
|
||||
;; Do it directly since that is fast.
|
||||
(rmail-decode-region body-start end coding-system view-buf)
|
||||
;; Can this be done directly, skipping the temp buffer?
|
||||
(with-temp-buffer
|
||||
(set-buffer-multibyte nil)
|
||||
(insert-buffer-substring mbox-buf body-start end)
|
||||
(cond
|
||||
((string= character-coding "quoted-printable")
|
||||
;; See bug#5441.
|
||||
(or (mail-unquote-printable-region (point-min) (point-max)
|
||||
nil t 'unibyte)
|
||||
(message "Malformed MIME quoted-printable message")))
|
||||
((and (string= character-coding "base64") is-text-message)
|
||||
(condition-case err
|
||||
(base64-decode-region (point-min) (point-max))
|
||||
(error (message "%s" (cdr err)))))
|
||||
((eq character-coding 'uuencode)
|
||||
(error "uuencoded messages are not supported yet"))
|
||||
(t))
|
||||
(rmail-decode-region (point-min) (point-max)
|
||||
coding-system view-buf))))
|
||||
(with-current-buffer rmail-view-buffer
|
||||
;; We give the view buffer a buffer-local value of
|
||||
;; rmail-header-style based on the binding in effect when
|
||||
;; this function is called; `rmail-toggle-headers' can
|
||||
;; inspect this value to determine how to toggle.
|
||||
(set (make-local-variable 'rmail-header-style) header-style)
|
||||
;; Unquote quoted From lines
|
||||
(goto-char (point-min))
|
||||
(while (re-search-forward "^>+From " nil t)
|
||||
(beginning-of-line)
|
||||
(delete-char 1)
|
||||
(forward-line))
|
||||
(goto-char (point-min)))
|
||||
;; Copy the headers to the front of the message view buffer.
|
||||
(rmail-copy-headers beg end)
|
||||
;; Add the separator (blank line) between headers and body;
|
||||
(set (make-local-variable 'rmail-header-style) header-style))
|
||||
(if (and rmail-enable-mime
|
||||
(re-search-forward "mime-version: 1.0" nil t))
|
||||
(let ((rmail-buffer mbox-buf)
|
||||
(rmail-view-buffer view-buf))
|
||||
(funcall rmail-show-mime-function))
|
||||
(setq body-start (search-forward "\n\n" nil t))
|
||||
(narrow-to-region beg (point))
|
||||
(goto-char beg)
|
||||
(save-excursion
|
||||
(if (re-search-forward "^X-Coding-System: *\\(.*\\)$" nil t)
|
||||
(setq coding-system (intern (match-string 1)))
|
||||
(setq coding-system (rmail-get-coding-system))))
|
||||
(setq character-coding (mail-fetch-field "content-transfer-encoding")
|
||||
is-text-message (rmail-is-text-p))
|
||||
(if character-coding
|
||||
(setq character-coding (downcase character-coding)))
|
||||
(narrow-to-region beg end)
|
||||
;; Decode the message body into an empty view buffer using a
|
||||
;; unibyte temporary buffer where the character decoding takes
|
||||
;; place.
|
||||
(with-current-buffer rmail-view-buffer
|
||||
(erase-buffer))
|
||||
(if (null character-coding)
|
||||
;; Do it directly since that is fast.
|
||||
(rmail-decode-region body-start end coding-system view-buf)
|
||||
;; Can this be done directly, skipping the temp buffer?
|
||||
(with-temp-buffer
|
||||
(set-buffer-multibyte nil)
|
||||
(insert-buffer-substring mbox-buf body-start end)
|
||||
(cond
|
||||
((string= character-coding "quoted-printable")
|
||||
;; See bug#5441.
|
||||
(or (mail-unquote-printable-region (point-min) (point-max)
|
||||
nil t 'unibyte)
|
||||
(message "Malformed MIME quoted-printable message")))
|
||||
((and (string= character-coding "base64") is-text-message)
|
||||
(condition-case err
|
||||
(base64-decode-region (point-min) (point-max))
|
||||
(error (message "%s" (cdr err)))))
|
||||
((eq character-coding 'uuencode)
|
||||
(error "uuencoded messages are not supported yet"))
|
||||
(t))
|
||||
(rmail-decode-region (point-min) (point-max)
|
||||
coding-system view-buf)))
|
||||
(with-current-buffer rmail-view-buffer
|
||||
;; Prepare the separator (blank line) before the body.
|
||||
(goto-char (point-min))
|
||||
(insert "\n")
|
||||
;; Unquote quoted From lines
|
||||
(while (re-search-forward "^>+From " nil t)
|
||||
(beginning-of-line)
|
||||
(delete-char 1)
|
||||
(forward-line))
|
||||
(goto-char (point-min)))
|
||||
;; Copy the headers to the front of the message view buffer.
|
||||
(rmail-copy-headers beg end))
|
||||
;; highlight the message, activate any URL like text and add
|
||||
;; special highlighting for and quoted material.
|
||||
(with-current-buffer rmail-view-buffer
|
||||
(insert "\n")
|
||||
(goto-char (point-min))
|
||||
;; Decode the headers according to RFC2047.
|
||||
(save-excursion
|
||||
(search-forward "\n\n" nil 'move)
|
||||
(rfc2047-decode-region (point-min) (point)))
|
||||
(rmail-highlight-headers)
|
||||
;(rmail-activate-urls)
|
||||
;(rmail-process-quoted-material)
|
||||
|
@ -4289,18 +4286,28 @@ With prefix argument N moves forward N messages with these labels.
|
|||
|
||||
;;;***
|
||||
|
||||
;;;### (autoloads (rmail-mime) "rmailmm" "rmailmm.el" "b1ce015fd919b54cc7b1d0b2155489f9")
|
||||
;;;### (autoloads (rmail-mime) "rmailmm" "rmailmm.el" "3735f9bfe6ff3e612091857cc6b401b6")
|
||||
;;; Generated autoloads from rmailmm.el
|
||||
|
||||
(autoload 'rmail-mime "rmailmm" "\
|
||||
Process the current Rmail message as a MIME message.
|
||||
This creates a temporary \"*RMAIL*\" buffer holding a decoded
|
||||
copy of the message. Inline content-types are handled according to
|
||||
Toggle displaying of a MIME message.
|
||||
|
||||
The actualy behavior depends on the value of `rmail-enable-mime'.
|
||||
|
||||
If `rmail-enable-mime' is t (default), this command change the
|
||||
displaying of a MIME message between decoded presentation form
|
||||
and raw data.
|
||||
|
||||
With ARG, toggle the displaying of the current MIME entity only.
|
||||
|
||||
If `rmail-enable-mime' is nil, this creates a temporary
|
||||
\"*RMAIL*\" buffer holding a decoded copy of the message. Inline
|
||||
content-types are handled according to
|
||||
`rmail-mime-media-type-handlers-alist'. By default, this
|
||||
displays text and multipart messages, and offers to download
|
||||
attachments as specfied by `rmail-mime-attachment-dirs-alist'.
|
||||
|
||||
\(fn)" t nil)
|
||||
\(fn &optional ARG)" t nil)
|
||||
|
||||
;;;***
|
||||
|
||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -392,7 +392,14 @@ The list is in preference order.")
|
|||
(make-directory smtpmail-queue-dir t))
|
||||
(with-current-buffer buffer-data
|
||||
(erase-buffer)
|
||||
(set-buffer-file-coding-system smtpmail-code-conv-from nil t)
|
||||
(set-buffer-file-coding-system
|
||||
;; We will be reading the file with no-conversion in
|
||||
;; smtpmail-send-queued-mail below, so write it out
|
||||
;; with Unix EOLs.
|
||||
(coding-system-change-eol-conversion
|
||||
(or smtpmail-code-conv-from 'undecided)
|
||||
'unix)
|
||||
nil t)
|
||||
(insert-buffer-substring tembuf)
|
||||
(write-file file-data)
|
||||
(set-buffer buffer-elisp)
|
||||
|
|
|
@ -190,17 +190,25 @@ See the documentation of `create-fontset-from-fontset-spec' for the format.")
|
|||
|
||||
;;; Set default known names for external libraries
|
||||
(setq dynamic-library-alist
|
||||
'((xpm "libxpm.dll" "xpm4.dll" "libXpm-nox4.dll")
|
||||
(png "libpng12d.dll" "libpng12.dll" "libpng.dll"
|
||||
;; these are libpng 1.2.8 from GTK+
|
||||
"libpng13d.dll" "libpng13.dll")
|
||||
(jpeg "jpeg62.dll" "libjpeg.dll" "jpeg-62.dll" "jpeg.dll")
|
||||
(tiff "libtiff3.dll" "libtiff.dll")
|
||||
(gif "giflib4.dll" "libungif4.dll" "libungif.dll")
|
||||
(svg "librsvg-2-2.dll")
|
||||
(gdk-pixbuf "libgdk_pixbuf-2.0-0.dll")
|
||||
(glib "libglib-2.0-0.dll")
|
||||
(gobject "libgobject-2.0-0.dll")))
|
||||
(list
|
||||
'(xpm "libxpm.dll" "xpm4.dll" "libXpm-nox4.dll")
|
||||
;; Versions of libpng 1.4.x and later are incompatible with
|
||||
;; earlier versions. Set up the list of libraries according to
|
||||
;; the version we were compiled against. (If we were compiled
|
||||
;; without PNG support, libpng-version's value is -1.)
|
||||
(if (>= libpng-version 10400)
|
||||
;; libpng14-14.dll is libpng 1.4.3 from GTK+
|
||||
'(png "libpng14-14.dll" "libpng14.dll")
|
||||
'(png "libpng12d.dll" "libpng12.dll" "libpng3.dll" "libpng.dll"
|
||||
;; these are libpng 1.2.8 from GTK+
|
||||
"libpng13d.dll" "libpng13.dll"))
|
||||
'(jpeg "jpeg62.dll" "libjpeg.dll" "jpeg-62.dll" "jpeg.dll")
|
||||
'(tiff "libtiff3.dll" "libtiff.dll")
|
||||
'(gif "giflib4.dll" "libungif4.dll" "libungif.dll")
|
||||
'(svg "librsvg-2-2.dll")
|
||||
'(gdk-pixbuf "libgdk_pixbuf-2.0-0.dll")
|
||||
'(glib "libglib-2.0-0.dll")
|
||||
'(gobject "libgobject-2.0-0.dll")))
|
||||
|
||||
;;; multi-tty support
|
||||
(defvar w32-initialized nil
|
||||
|
|
|
@ -3340,7 +3340,7 @@ or of the entire buffer, if the region is not selected."
|
|||
(defun rst-compile-pdf-preview ()
|
||||
"Convert the document to a PDF file and launch a preview program."
|
||||
(interactive)
|
||||
(let* ((tmp-filename "/tmp/out.pdf")
|
||||
(let* ((tmp-filename (make-temp-file "rst-out" nil ".pdf"))
|
||||
(command (format "rst2pdf.py %s %s && %s %s"
|
||||
buffer-file-name tmp-filename
|
||||
rst-pdf-program tmp-filename)))
|
||||
|
@ -3355,7 +3355,7 @@ or of the entire buffer, if the region is not selected."
|
|||
(defun rst-compile-slides-preview ()
|
||||
"Convert the document to an S5 slide presentation and launch a preview program."
|
||||
(interactive)
|
||||
(let* ((tmp-filename "/tmp/slides.html")
|
||||
(let* ((tmp-filename (make-temp-file "rst-slides" nil ".html"))
|
||||
(command (format "rst2s5.py %s %s && %s %s"
|
||||
buffer-file-name tmp-filename
|
||||
rst-slides-program tmp-filename)))
|
||||
|
|
|
@ -463,7 +463,9 @@ update which can wait for the next redisplay."
|
|||
"Toggle display of time, load level, and mail flag in mode lines.
|
||||
With a numeric arg, enable this display if arg is positive.
|
||||
|
||||
When this display is enabled, it updates automatically every minute.
|
||||
When this display is enabled, it updates automatically every minute
|
||||
\(you can control the number of seconds between updates by
|
||||
customizing `display-time-interval').
|
||||
If `display-time-day-and-date' is non-nil, the current day and date
|
||||
are displayed as well.
|
||||
This runs the normal hook `display-time-hook' after each update."
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
;;; version.el --- record version number of Emacs -*- no-byte-compile: t -*-
|
||||
|
||||
;; Copyright (C) 1985, 1992, 1994, 1995, 1999, 2000, 2001, 2002, 2003,
|
||||
;; 2004, 2005, 2006, 2007, 2008, 2009, 2010
|
||||
;; 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011
|
||||
;; Free Software Foundation, Inc.
|
||||
|
||||
;; Maintainer: FSF
|
||||
|
@ -88,5 +88,4 @@ to the system configuration; look at `system-configuration' instead."
|
|||
;;version-control: never
|
||||
;;End:
|
||||
|
||||
;; arch-tag: e60dc445-6218-4a4c-a7df-f15a818642a0
|
||||
;;; version.el ends here
|
||||
|
|
|
@ -1,3 +1,10 @@
|
|||
2011-01-02 Glenn Morris <rgm@gnu.org>
|
||||
|
||||
* Cocoa/Emacs.base/Contents/Info.plist:
|
||||
* Cocoa/Emacs.base/Contents/Resources/English.lproj/InfoPlist.strings:
|
||||
* GNUstep/Emacs.base/Resources/Info-gnustep.plist:
|
||||
Set short copyright year to 2011.
|
||||
|
||||
2010-10-13 Glenn Morris <rgm@gnu.org>
|
||||
|
||||
* README: Remove information duplicated in AUTHORS.
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
<!--
|
||||
Copyright (C) 2008, 2009, 2010 Free Software Foundation, Inc.
|
||||
Copyright (C) 2008, 2009, 2010, 2011 Free Software Foundation, Inc.
|
||||
|
||||
This file is part of GNU Emacs.
|
||||
|
||||
|
@ -553,7 +553,7 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
|
|||
<key>CFBundleExecutable</key>
|
||||
<string>Emacs</string>
|
||||
<key>CFBundleGetInfoString</key>
|
||||
<string>Emacs 24.0.50 Copyright (C) 2010 Free Software Foundation, Inc.</string>
|
||||
<string>Emacs 24.0.50 Copyright (C) 2011 Free Software Foundation, Inc.</string>
|
||||
<key>CFBundleIconFile</key>
|
||||
<string>Emacs.icns</string>
|
||||
<key>CFBundleIdentifier</key>
|
||||
|
|
|
@ -3,4 +3,4 @@
|
|||
CFBundleName = "Emacs";
|
||||
CFBundleShortVersionString = "Version 24.0.50";
|
||||
CFBundleGetInfoString = "Emacs version 24.0.50, NS Windowing";
|
||||
NSHumanReadableCopyright = "Copyright (C) 2010 Free Software Foundation, Inc.";
|
||||
NSHumanReadableCopyright = "Copyright (C) 2011 Free Software Foundation, Inc.";
|
||||
|
|
|
@ -11,7 +11,7 @@
|
|||
"Carl Edman (NeXTStep)",
|
||||
"..see http://emacs-app.sf.net/authorship.html"
|
||||
);
|
||||
Copyright = "Copyright (C) 2010 Free Software Foundation, Inc.";
|
||||
Copyright = "Copyright (C) 2011 Free Software Foundation, Inc.";
|
||||
CopyrightDescription = "Released under the GNU General Public License Version 3 or later";
|
||||
FullVersionID = "Emacs 24.0.50, NS Windowing";
|
||||
NSExecutable = Emacs;
|
||||
|
|
|
@ -1,3 +1,11 @@
|
|||
2011-01-02 Eli Zaretskii <eliz@gnu.org>
|
||||
|
||||
* configure.bat (end): Unset environment variables used by this
|
||||
batch file.
|
||||
|
||||
* INSTALL: Update the information about PNG support libraries.
|
||||
(Bug#7716)
|
||||
|
||||
2010-11-23 Eli Zaretskii <eliz@gnu.org>
|
||||
|
||||
* config.nt (EXTERNALLY_VISIBLE): Define.
|
||||
|
|
17
nt/INSTALL
17
nt/INSTALL
|
@ -290,6 +290,23 @@
|
|||
If GTK 2.0 is installed, addpm will arrange for its image libraries
|
||||
to be on the DLL search path for Emacs.
|
||||
|
||||
For PNG images, we recommend to use versions 1.4.x and later of
|
||||
libpng, because previous versions had security issues. You can find
|
||||
precompiled libraries and headers on the GTK download page for
|
||||
Windows (http://www.gtk.org/download-windows.html).
|
||||
|
||||
Versions 1.4.0 and later of libpng are binary incompatible with
|
||||
earlier versions, so Emacs will only look for libpng libraries which
|
||||
are compatible with the version it was compiled against. That
|
||||
version is given by the value of the Lisp variable `libpng-version';
|
||||
e.g., 10403 means version 1.4.3. The variable `image-library-alist'
|
||||
is automatically set to name only those DLL names that are known to
|
||||
be compatible with the version given by `libpng-version'. If PNG
|
||||
support does not work for you even though you have the support DLL
|
||||
installed, check the name of the installed DLL against
|
||||
`image-library-alist' and the value of `libpng-version', and
|
||||
download compatible DLLs if needed.
|
||||
|
||||
* Experimental SVG support
|
||||
|
||||
SVG support is currently experimental, and not built by default.
|
||||
|
|
|
@ -116,14 +116,19 @@ See the end of the file for license conditions.
|
|||
libXpm library from X11R7.3.
|
||||
|
||||
Emacs can also support some other image formats with appropriate
|
||||
libraries. These libraries are all available as part of GTK, or from
|
||||
gnuwin32.sourceforge.net. Emacs will find them if the directory they
|
||||
are installed in is on the PATH.
|
||||
libraries. These libraries are all available as part of GTK
|
||||
download for Windows (http://www.gtk.org/download-windows.html), or
|
||||
from the GnuWin32 project. Emacs will find them if the directory
|
||||
they are installed in is on the PATH.
|
||||
|
||||
PNG: requires the PNG reference library 1.2 or later, which will
|
||||
be named libpng13d.dll, libpng13.dll, libpng12d.dll, libpng12.dll
|
||||
or libpng.dll. LibPNG requires zlib, which should come from the same
|
||||
source as you got libpng.
|
||||
PNG: requires the PNG reference library 1.4 or later, which will
|
||||
be named libpng14.dll or libpng14-14.dll. LibPNG requires zlib,
|
||||
which should come from the same source as you got libpng.
|
||||
Starting with Emacs 23.3, the precompiled Emacs binaries are
|
||||
built with libpng 1.4.x and later, and are incompatible with
|
||||
earlier versions of libpng DLLs. So if you have libpng 1.2.x,
|
||||
the PNG support will not work, and you will have to download
|
||||
newer versions.
|
||||
|
||||
JPEG: requires the Independant JPEG Group's libjpeg 6b or later,
|
||||
which will be called jpeg62.dll, libjpeg.dll, jpeg-62.dll or jpeg.dll.
|
||||
|
@ -134,6 +139,9 @@ See the end of the file for license conditions.
|
|||
GIF: requires libungif or giflib 4.1 or later, which will be
|
||||
called giflib4.dll, libungif4.dll or libungif.dll.
|
||||
|
||||
If you have image support DLLs under different names, customize the
|
||||
value of `image-library-alist'.
|
||||
|
||||
In addition, Emacs can be compiled to support SVG. This precompiled
|
||||
distribution has not been compiled that way, since the SVG library
|
||||
or one or more of its extensive dependencies appear to be
|
||||
|
|
|
@ -788,6 +788,19 @@ set mf=
|
|||
set distfiles=
|
||||
set HAVE_DISTFILES=
|
||||
set distFilesOk=
|
||||
set pngsupport=
|
||||
set jpegsupport=
|
||||
set gifsupport=
|
||||
set tiffsupport=
|
||||
set xpmsupport=
|
||||
set svgsupport=
|
||||
set libsOK=
|
||||
set HAVE_GIF=
|
||||
set HAVE_JPEG=
|
||||
set HAVE_PNG=
|
||||
set HAVE_TIFF=
|
||||
set HAVE_XPM=
|
||||
set dbginfo=
|
||||
|
||||
goto skipArchTag
|
||||
arch-tag: 300d20a4-1675-4e75-b615-7ce1a8c5376c
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 2000, 2001,
|
||||
# 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009
|
||||
# 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
|
||||
# Free Software Foundation, Inc.
|
||||
#
|
||||
# This file is part of GNU Emacs.
|
||||
|
@ -51,7 +51,7 @@ handle SIGALRM ignore
|
|||
# Using a constant runs into GDB bugs sometimes.
|
||||
define xgetptr
|
||||
set $bugfix = $arg0
|
||||
set $ptr = (gdb_use_union ? $bugfix.u.val : $bugfix & $valmask) | gdb_data_seg_bits
|
||||
set $ptr = (gdb_use_union ? (gdb_use_lsb ? $bugfix.u.val << gdb_gctypebits : $bugfix.u.val) : $bugfix & $valmask) | gdb_data_seg_bits
|
||||
end
|
||||
|
||||
define xgetint
|
||||
|
@ -1227,7 +1227,8 @@ define xbacktrace
|
|||
xprintsym (*$bt->function)
|
||||
printf " (0x%x)\n", $bt->args
|
||||
else
|
||||
printf "0x%x ", *$bt->function
|
||||
xgetptr *$bt->function
|
||||
printf "0x%x ", $ptr
|
||||
if $type == Lisp_Vectorlike
|
||||
xgetptr (*$bt->function)
|
||||
set $size = ((struct Lisp_Vector *) $ptr)->size
|
||||
|
|
|
@ -1,3 +1,54 @@
|
|||
2011-01-02 Eli Zaretskii <eliz@gnu.org>
|
||||
|
||||
* keyboard.c (Vselect_active_regions): Doc fix. (Bug#7702)
|
||||
|
||||
2011-01-02 Eli Zaretskii <eliz@gnu.org>
|
||||
|
||||
* image.c <Qlibpng_version>: New variable.
|
||||
(syms_of_image): Intern and staticpro it. Set its value to the
|
||||
version of PNG library we were compiled with.
|
||||
(my_png_error, png_load): Avoid GCC warnings about direct access
|
||||
to png_ptr->jmpbuf. (Bug#7716)
|
||||
(png_jmpbuf): New macro.
|
||||
(my_png_error, png_load): Use it instead of #ifdef'ing according
|
||||
to PNG_LIBPNG_VER_MAJOR and PNG_LIBPNG_VER_MINOR.
|
||||
|
||||
2011-01-02 Stefan Monnier <monnier@iro.umontreal.ca>
|
||||
|
||||
* .gdbinit (xgetptr): Fix the union+lsb case.
|
||||
(xbacktrace): Fix the union case.
|
||||
|
||||
2011-01-02 Stefan Monnier <monnier@iro.umontreal.ca>
|
||||
|
||||
* window.c (Fmove_to_window_line): Avoid abort when called in a buffer
|
||||
different from selected-window's.
|
||||
|
||||
2011-01-02 Eli Zaretskii <eliz@gnu.org>
|
||||
|
||||
* keyboard.c (parse_menu_item): Prepend " " to the key sequence
|
||||
equivalent of a menu item when the key sequence is given by the
|
||||
`:keys' attribute. (Bug#7662)
|
||||
|
||||
* xdisp.c (Fformat_mode_line): Doc fix: no need to state that only
|
||||
the basic faces are supported.
|
||||
|
||||
2011-01-02 Jan Djärv <jan.h.d@swipnet.se>
|
||||
|
||||
* xterm.c (x_check_fullscreen): Fix pixel/character mixup.
|
||||
|
||||
2011-01-02 Eli Zaretskii <eliz@gnu.org>
|
||||
|
||||
* xdisp.c (Fformat_mode_line): Fix last change.
|
||||
|
||||
2011-01-02 Chong Yidong <cyd@stupidchicken.com>
|
||||
|
||||
* xdisp.c (Fformat_mode_line): Restrict the FACE argument to basic
|
||||
faces (Bug#7587).
|
||||
|
||||
2011-01-02 Eli Zaretskii <eliz@gnu.org>
|
||||
|
||||
* fileio.c (Fexpand_file_name): One more doc fix.
|
||||
|
||||
2011-01-01 Chong Yidong <cyd@stupidchicken.com>
|
||||
|
||||
* gtkutil.c (xg_get_tool_bar_widgets): Use NULL for a missing
|
||||
|
|
|
@ -782,6 +782,8 @@ DEFUN ("expand-file-name", Fexpand_file_name, Sexpand_file_name, 1, 2, 0,
|
|||
Second arg DEFAULT-DIRECTORY is directory to start with if NAME is relative
|
||||
\(does not start with slash or tilde); if DEFAULT-DIRECTORY is nil or missing,
|
||||
the current buffer's value of `default-directory' is used.
|
||||
NAME should be a string that is a valid file name for the underlying
|
||||
filesystem.
|
||||
File name components that are `.' are removed, and
|
||||
so are file name components followed by `..', along with the `..' itself;
|
||||
note that these simplifications are done without checking the resulting
|
||||
|
|
27
src/image.c
27
src/image.c
|
@ -94,6 +94,11 @@ typedef struct w32_bitmap_record Bitmap_Record;
|
|||
without modifying lots of files). */
|
||||
extern void x_query_colors (struct frame *f, XColor *colors, int ncolors);
|
||||
extern void x_query_color (struct frame *f, XColor *color);
|
||||
|
||||
/* Version of libpng that we were compiled with, or -1 if no PNG
|
||||
support was compiled in. This is tested by w32-win.el to correctly
|
||||
set up the alist used to search for PNG libraries. */
|
||||
Lisp_Object Qlibpng_version;
|
||||
#endif /* HAVE_NTGUI */
|
||||
|
||||
#ifdef HAVE_NS
|
||||
|
@ -5523,6 +5528,12 @@ init_png_functions (Lisp_Object libraries)
|
|||
|
||||
#endif /* HAVE_NTGUI */
|
||||
|
||||
/* libpng before 1.4.0 didn't have png_jmpbuf; v1.4.0 and later
|
||||
deprecate direct access to png_ptr fields. */
|
||||
#ifndef png_jmpbuf
|
||||
# define png_jmpbuf(PTR) ((PTR)->jmpbuf)
|
||||
#endif
|
||||
|
||||
/* Error and warning handlers installed when the PNG library
|
||||
is initialized. */
|
||||
|
||||
|
@ -5530,8 +5541,10 @@ static void
|
|||
my_png_error (png_struct *png_ptr, const char *msg)
|
||||
{
|
||||
xassert (png_ptr != NULL);
|
||||
/* Avoid compiler warning about deprecated direct access to
|
||||
png_ptr's fields in libpng versions 1.4.x. */
|
||||
image_error ("PNG error: %s", build_string (msg), Qnil);
|
||||
longjmp (png_ptr->jmpbuf, 1);
|
||||
longjmp (png_jmpbuf (png_ptr), 1);
|
||||
}
|
||||
|
||||
|
||||
|
@ -5693,7 +5706,7 @@ png_load (struct frame *f, struct image *img)
|
|||
|
||||
/* Set error jump-back. We come back here when the PNG library
|
||||
detects an error. */
|
||||
if (setjmp (png_ptr->jmpbuf))
|
||||
if (setjmp (png_jmpbuf (png_ptr)))
|
||||
{
|
||||
error:
|
||||
if (png_ptr)
|
||||
|
@ -8776,6 +8789,16 @@ non-numeric, there is no explicit limit on the size of images. */);
|
|||
staticpro (&QCpt_height);
|
||||
#endif /* HAVE_GHOSTSCRIPT */
|
||||
|
||||
#ifdef HAVE_NTGUI
|
||||
Qlibpng_version = intern_c_string ("libpng-version");
|
||||
staticpro (&Qlibpng_version);
|
||||
#if HAVE_PNG
|
||||
SET_SYMBOL_VAL (XSYMBOL (Qlibpng_version), make_number (PNG_LIBPNG_VER));
|
||||
#else
|
||||
SET_SYMBOL_VAL (XSYMBOL (Qlibpng_version), make_number (-1));
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#if defined (HAVE_XPM) || defined (HAVE_NS)
|
||||
Qxpm = intern_c_string ("xpm");
|
||||
staticpro (&Qxpm);
|
||||
|
|
|
@ -7968,7 +7968,7 @@ parse_menu_item (Lisp_Object item, int inmenubar)
|
|||
/* The previous code preferred :key-sequence to :keys, so we
|
||||
preserve this behavior. */
|
||||
if (STRINGP (keyeq) && !CONSP (keyhint))
|
||||
keyeq = Fsubstitute_command_keys (keyeq);
|
||||
keyeq = concat2 (build_string (" "), Fsubstitute_command_keys (keyeq));
|
||||
else
|
||||
{
|
||||
Lisp_Object prefix = keyeq;
|
||||
|
@ -12386,7 +12386,7 @@ and tool-bar buttons. */);
|
|||
|
||||
DEFVAR_LISP ("select-active-regions",
|
||||
&Vselect_active_regions,
|
||||
doc: /* If non-nil, an active region automatically becomes the window selection.
|
||||
doc: /* If non-nil, an active region automatically sets the primary selection.
|
||||
If the value is `only', only temporarily active regions (usually made
|
||||
by mouse-dragging or shift-selection) set the window selection.
|
||||
|
||||
|
|
|
@ -5762,6 +5762,12 @@ zero means top of window, negative means relative to bottom of window. */)
|
|||
int this_scroll_margin;
|
||||
#endif
|
||||
|
||||
if (!(BUFFERP (w->buffer)
|
||||
&& XBUFFER (w->buffer) == current_buffer))
|
||||
/* This test is needed to make sure PT/PT_BYTE make sense in w->buffer
|
||||
when passed below to set_marker_both. */
|
||||
error ("move-to-window-line called from unrelated buffer");
|
||||
|
||||
window = selected_window;
|
||||
start = marker_position (w->start);
|
||||
if (start < BEGV || start > ZV)
|
||||
|
|
39
src/xdisp.c
39
src/xdisp.c
|
@ -19068,23 +19068,27 @@ DEFUN ("format-mode-line", Fformat_mode_line, Sformat_mode_line,
|
|||
First arg FORMAT specifies the mode line format (see `mode-line-format'
|
||||
for details) to use.
|
||||
|
||||
Optional second arg FACE specifies the face property to put
|
||||
on all characters for which no face is specified.
|
||||
The value t means whatever face the window's mode line currently uses
|
||||
\(either `mode-line' or `mode-line-inactive', depending).
|
||||
A value of nil means the default is no face property.
|
||||
If FACE is an integer, the value string has no text properties.
|
||||
By default, the format is evaluated for the currently selected window.
|
||||
|
||||
Optional second arg FACE specifies the face property to put on all
|
||||
characters for which no face is specified. The value nil means the
|
||||
default face. The value t means whatever face the window's mode line
|
||||
currently uses (either `mode-line' or `mode-line-inactive',
|
||||
depending on whether the window is the selected window or not).
|
||||
An integer value means the value string has no text
|
||||
properties.
|
||||
|
||||
Optional third and fourth args WINDOW and BUFFER specify the window
|
||||
and buffer to use as the context for the formatting (defaults
|
||||
are the selected window and the window's buffer). */)
|
||||
(Lisp_Object format, Lisp_Object face, Lisp_Object window, Lisp_Object buffer)
|
||||
are the selected window and the WINDOW's buffer). */)
|
||||
(Lisp_Object format, Lisp_Object face,
|
||||
Lisp_Object window, Lisp_Object buffer)
|
||||
{
|
||||
struct it it;
|
||||
int len;
|
||||
struct window *w;
|
||||
struct buffer *old_buffer = NULL;
|
||||
int face_id = -1;
|
||||
int face_id;
|
||||
int no_props = INTEGERP (face);
|
||||
int count = SPECPDL_INDEX ();
|
||||
Lisp_Object str;
|
||||
|
@ -19107,15 +19111,14 @@ are the selected window and the window's buffer). */)
|
|||
if (no_props)
|
||||
face = Qnil;
|
||||
|
||||
if (!NILP (face))
|
||||
{
|
||||
if (EQ (face, Qt))
|
||||
face = (EQ (window, selected_window) ? Qmode_line : Qmode_line_inactive);
|
||||
face_id = lookup_named_face (XFRAME (WINDOW_FRAME (w)), face, 0);
|
||||
}
|
||||
|
||||
if (face_id < 0)
|
||||
face_id = DEFAULT_FACE_ID;
|
||||
face_id = (NILP (face) || EQ (face, Qdefault)) ? DEFAULT_FACE_ID
|
||||
: EQ (face, Qt) ? (EQ (window, selected_window)
|
||||
? MODE_LINE_FACE_ID : MODE_LINE_INACTIVE_FACE_ID)
|
||||
: EQ (face, Qmode_line) ? MODE_LINE_FACE_ID
|
||||
: EQ (face, Qmode_line_inactive) ? MODE_LINE_INACTIVE_FACE_ID
|
||||
: EQ (face, Qheader_line) ? HEADER_LINE_FACE_ID
|
||||
: EQ (face, Qtool_bar) ? TOOL_BAR_FACE_ID
|
||||
: DEFAULT_FACE_ID;
|
||||
|
||||
if (XBUFFER (buffer) != current_buffer)
|
||||
old_buffer = current_buffer;
|
||||
|
|
14
src/xterm.c
14
src/xterm.c
|
@ -8612,9 +8612,13 @@ x_check_fullscreen (struct frame *f)
|
|||
if (f->output_data.x->parent_desc != FRAME_X_DISPLAY_INFO (f)->root_window)
|
||||
return; /* Only fullscreen without WM or with EWM hints (above). */
|
||||
|
||||
/* Setting fullscreen to nil doesn't do anything. We could save the
|
||||
last non-fullscreen size and restore it, but it seems like a
|
||||
lot of work for this unusual case (no window manager running). */
|
||||
|
||||
if (f->want_fullscreen != FULLSCREEN_NONE)
|
||||
{
|
||||
int width = FRAME_COLS (f), height = FRAME_LINES (f);
|
||||
int width = FRAME_PIXEL_WIDTH (f), height = FRAME_PIXEL_HEIGHT (f);
|
||||
struct x_display_info *dpyinfo = FRAME_X_DISPLAY_INFO (f);
|
||||
|
||||
switch (f->want_fullscreen)
|
||||
|
@ -8632,12 +8636,8 @@ x_check_fullscreen (struct frame *f)
|
|||
height = x_display_pixel_height (dpyinfo);
|
||||
}
|
||||
|
||||
if (FRAME_COLS (f) != width || FRAME_LINES (f) != height)
|
||||
{
|
||||
change_frame_size (f, height, width, 0, 1, 0);
|
||||
SET_FRAME_GARBAGED (f);
|
||||
cancel_mouse_face (f);
|
||||
}
|
||||
XResizeWindow (FRAME_X_DISPLAY (f), FRAME_OUTER_WINDOW (f),
|
||||
width, height);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue