Commit e867cb5d authored by Stefan Monnier's avatar Stefan Monnier
Browse files

Merge from `emacs-23'.

parents b2b8574b efee6a6d
......@@ -140,7 +140,7 @@ Remember to fix FOO, as discussed on emacs-devel at http://... .
** Not interested in tracker control messages (tags being set, etc)?
Discard mails matching:
^X-Emacs-PR-Message: (transcript|closed)
^X-GNU-PR-Message: (transcript|closed)
** How to avoid multiple copies of mails.
If you reply to reports in the normal way, this should work fine.
......@@ -166,18 +166,18 @@ Sending a mail to 123-done does the following:
2) Send a mail to the original submitter telling them that their bug
has been closed. This mail has a header:
X-Emacs-PR-Message: they-closed 123
X-GNU-PR-Message: they-closed 123
3) Send a mail to you and to the emacs-bug-tracker list confirming
that the bug has been closed. This mail has a header:
X-Emacs-PR-Message: closed 123
X-GNU-PR-Message: closed 123
4) Send a copy of your mail to the bug-gnu-emacs list in exactly the
same way as if you had sent mail to "123" (sans -done). This mail has
headers:
X-Emacs-PR-Message: cc-closed 123
X-GNU-PR-Message: cc-closed 123
Mail-Followup-To: 123@debbugs.gnu.org, person-who-closed
(This is Emacs-specific. Normally the bug list gets the same mail as in 3).
......
......@@ -221,6 +221,11 @@ lib-src/etags.c
lib-src/getopt1.c, getopt_int.h
- these are from the GNU C library. Leave the copyrights alone.
lisp/cedet/semantic/imenu.el
- See http://lists.gnu.org/archive/html/emacs-devel/2010-03/msg00410.html
in which Eric Ludlam established that the remaining contributions
from authors other than himself were negligible.
lisp/play/tetris.el
- no special rules about the copyright. We note here that we believe
(2007/1) there is no problem with our use of the name "tetris" or
......
2010-03-24 Glenn Morris <rgm@gnu.org>
* ack.texi (Acknowledgments):
* emacs.texi (Acknowledgments): Fix ispell attribution. (Bug#5759)
2010-03-20 Jan Djärv <jan.h.d@swipnet.se>
* xresources.texi (Table of Resources): Clarify toolBar number
for Gtk+.
* frames.texi (Menu Bars): menuBarLines => menuBar (bug#5736).
2010-03-21 Chong Yidong <cyd@stupidchicken.com>
* dired.texi (Dired Updating): Document dired-auto-revert-buffer.
* search.texi (Other Repeating Search): Document multi-isearch-buffers
and multi-isearch-buffers-regexp.
* indent.texi (Indentation): Clarify description of
indent-for-tab-command. Document tab-always-indent.
2010-03-20 Chong Yidong <cyd@stupidchicken.com>
* cmdargs.texi (Font X): Move most content to Fonts.
* frames.texi (Fonts): New node. Document font-use-system-font.
* emacs.texi (Top):
* xresources.texi (Table of Resources):
* mule.texi (Defining Fontsets, Charsets): Update xrefs.
2010-03-10 Chong Yidong <cyd@stupidchicken.com>
* Branch for 23.2.
......
@c This is part of the Emacs manual.
@c Copyright (C) 1994, 1995, 1996, 1997, 1999, 2000, 2001, 2002, 2003,
@c 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
@c 2004, 2005, 2006, 2007, 2008, 2009, 2010
@c Free Software Foundation, Inc.
@c See file emacs.texi for copying conditions.
@c
@node Acknowledgments, Screen, Concept Index, Top
......@@ -600,8 +601,7 @@ R.@: Dodd. He also wrote @file{ls-lisp.el}, a Lisp emulation of the
program.
@item
Geoff Kuenning and Ken Stevens wrote @file{ispell.el}, a spell-checker
interface.
Ken Stevens wrote @file{ispell.el}, a spell-checker interface.
@item
David K@ringaccent{a}gedal wrote @file{tempo.el}, providing support for
......
......@@ -755,10 +755,9 @@ remote machine.
@appendixsec Font Specification Options
@cindex font name (X Window System)
By default, Emacs displays text in X using a twelve point monospace
font. You can specify a different font using the command line option
@samp{-fn @var{font}} (or @samp{--font}, which is an alias for
@samp{-fn}).
You can use the command line option @samp{-fn @var{font}} (or
@samp{--font}, which is an alias for @samp{-fn}) to specify a default
font:
@table @samp
@item -fn @var{font}
......@@ -772,252 +771,14 @@ Use @var{font} as the default font.
When passing a font specification to Emacs on the command line, you
may need to ``quote'' it, by enclosing it in quotation marks, if it
contains characters that the shell treats specially (e.g. spaces).
Here is an example:
For example:
@smallexample
emacs -fn "DejaVu Sans Mono-12"
@end smallexample
@cindex X defaults file
@cindex X resources file
You can also specify the font using your X resources file (usually a
file named @file{.Xdefaults} or @file{.Xresources} in your home
directory), by adding a line like this:
@smallexample
emacs.font: @var{font}
@end smallexample
@noindent
You must restart X, or use the @command{xrdb} command, for the X
resources file to take effect. @xref{Resources}. When specifying a
font in your X resources file, you should not quote it.
@cindex fontconfig
Emacs recognizes two types of fonts: @dfn{client-side} fonts, which
are provided by the Xft and Fontconfig libraries, and
@dfn{server-side} fonts, which are provided by the X server itself.
Most client-side fonts support advanced font features such as
antialiasing and subpixel hinting, while server-side fonts do not.
There are four different ways to express a ``font name''. The first
format consists of @dfn{Fontconfig patterns}. Fontconfig patterns
match only client-side fonts provided by Xft and Fontconfig, and have
the following form:
@smallexample
@var{fontname}[-@var{fontsize}][:@var{name1}=@var{values1}][:@var{name2}=@var{values2}]...
@end smallexample
@noindent
Within this format, any of the elements in braces may be omitted.
Here, @var{fontname} is the ``family name'' of the font, such as
@samp{Monospace} or @samp{DejaVu Serif}; @var{fontsize} is the ``point
size'' of the font (one ``printer's point'' is about 1/72 of an inch);
and the @samp{@var{name}=@var{values}} entries specify settings such
as the slant and weight of the font. Each @var{values} may be a
single value, or a list of values separated by commas. In addition,
some property values are valid with only one kind of property name, in
which case the @samp{@var{name}=} part may be omitted.
Here is a list of common font properties:
@table @samp
@item slant
One of @samp{italic}, @samp{oblique} or @samp{roman}.
@item weight
One of @samp{light}, @samp{medium}, @samp{demibold}, @samp{bold} or
@samp{black}.
@item style
Some fonts define special styles which are a combination of slant and
weight. For instance, the font @samp{Dejavu Sans} defines the style
@samp{book}. This property, if specified, overrides the slant and
weight properties.
@item width
One of @samp{condensed}, @samp{normal}, or @samp{expanded}.
@item spacing
One of @samp{monospace}, @samp{proportional}, @samp{dual-width}, or
@samp{charcell}.
@end table
@noindent
Here are some examples of Fontconfig patterns:
@smallexample
Monospace
Monospace-12
Monospace-12:bold
DejaVu Sans Mono:bold:italic
Monospace-12:weight=bold:slant=italic
@end smallexample
See the Fontconfig manual for a more detailed description of
Fontconfig patterns. This manual is located in the file
@file{fontconfig-user.html}, which is distributed with Fontconfig. It
is also available online at
@url{http://fontconfig.org/fontconfig-user.html}. In particular, the
manual describes additional font properties that influence how the
font is hinted, antialiased, or scaled.
The second way to specify a font is to use a @dfn{GTK font
description}. Like Fontconfig patterns, GTK font descriptions match
only client-side fonts provided by Xft and Fontconfig. They have the
syntax
@smallexample
@var{fontname} [@var{properties}] [@var{fontsize}]
@end smallexample
@noindent
where @var{fontname} is the family name, @var{properties} is a list of
property values separated by spaces, and @var{fontsize} is the point
size. The properties that you may specify are as follows:
@table @samp
@item style
One of @samp{roman}, @samp{italic} or @samp{oblique}. If omitted, the
@samp{roman} style is used.
@item weight
One of @samp{medium}, @samp{ultra-light}, @samp{light},
@samp{semi-bold}, or @samp{bold}. If omitted, @samp{medium} weight is
used.
@end table
@noindent
Here are some examples of GTK font descriptions:
@smallexample
Monospace 12
Monospace Bold Italic 12
@end smallexample
@cindex XLFD
@cindex X Logical Font Description
The third way to specify a font is to use an @dfn{XLFD} (@dfn{X
Logical Font Description}), which is the traditional method for
specifying fonts under X. Each XLFD consists of fourteen words or
numbers, separated by dashes, like this:
@smallexample
-misc-fixed-medium-r-semicondensed--13-*-*-*-c-60-iso8859-1
@end smallexample
@noindent
A wildcard character (@samp{*}) in an XLFD matches any sequence of
characters (including none), and @samp{?} matches any single
character. However, matching is implementation-dependent, and can be
inaccurate when wildcards match dashes in a long name. For reliable
results, supply all 14 dashes and use wildcards only within a field.
Case is insignificant in an XLFD. The syntax for an XLFD is as
follows:
@smallexample
-@var{maker}-@var{family}-@var{weight}-@var{slant}-@var{widthtype}-@var{style}@dots{}
@dots{}-@var{pixels}-@var{height}-@var{horiz}-@var{vert}-@var{spacing}-@var{width}-@var{registry}-@var{encoding}
@end smallexample
@noindent
The entries have the following meanings:
@table @var
@item maker
The name of the font manufacturer.
@item family
The name of the font family (e.g. @samp{courier}).
@item weight
The font weight---normally either @samp{bold}, @samp{medium} or
@samp{light}. Some font names support other values.
@item slant
The font slant---normally @samp{r} (roman), @samp{i} (italic),
@samp{o} (oblique), @samp{ri} (reverse italic), or @samp{ot} (other).
Some font names support other values.
@item widthtype
The font width---normally @samp{condensed}, @samp{extended},
@samp{semicondensed} or @samp{normal} (some font names support other
values).
@item style
An optional additional style name. Usually it is empty---most long
font names have two hyphens in a row at this point.
@item pixels
The font height, in pixels.
@item height
The font height on the screen, measured in tenths of a printer's
point. This is the point size of the font, times ten. For a given
vertical resolution, @var{height} and @var{pixels} are proportional;
therefore, it is common to specify just one of them and use @samp{*}
for the other.
@item horiz
The horizontal resolution, in pixels per inch, of the screen for which
the font is intended.
@item vert
The vertical resolution, in pixels per inch, of the screen for which
the font is intended. Normally the resolution of the fonts on your
system is the right value for your screen; therefore, you normally
specify @samp{*} for this and @var{horiz}.
@item spacing
This is @samp{m} (monospace), @samp{p} (proportional) or @samp{c}
(character cell).
@item width
The average character width, in pixels, multiplied by ten.
@item registry
@itemx encoding
The X font character set that the font depicts. (X font character
sets are not the same as Emacs character sets, but they are similar.)
You can use the @command{xfontsel} program to check which choices you
have. Normally you should use @samp{iso8859} for @var{registry} and
@samp{1} for @var{encoding}.
@end table
Some fonts have shorter nicknames, which you can use instead of a
normal font specification. For instance,
@smallexample
-misc-fixed-medium-r-semicondensed--13-*-*-*-c-60-iso8859-1
@end smallexample
@noindent
is equivalent to @samp{6x13}. This is the fourth and final method of
specifying a font.
@cindex listing system fonts
You will probably want to use a fixed-width default font---that is,
a font in which all characters have the same width. Here's how to use
the @command{fc-list} command to list all fixed-width Xft and
Fontconfig fonts available on your system:
@example
fc-list :spacing=mono
fc-list :spacing=charcell
@end example
For server-side X fonts, any font with @samp{m} or @samp{c} in the
@var{spacing} field of the XLFD is a fixed-width font. Here's how to
use the @command{xlsfonts} program to list all the fixed-width fonts
available on your system:
@example
xlsfonts -fn '*x*' | egrep "^[0-9]+x[0-9]+"
xlsfonts -fn '*-*-*-*-*-*-*-*-*-*-*-m*'
xlsfonts -fn '*-*-*-*-*-*-*-*-*-*-*-c*'
@end example
@noindent
To see what a particular font looks like, use the @command{xfd} command.
For example:
@example
xfd -fn 6x13
@end example
@noindent
displays the entire font @samp{6x13}.
While running Emacs, you can set the font of a specific kind of text
(@pxref{Faces}), or of a particular frame (@pxref{Frame Parameters}).
@xref{Fonts}, for other ways to specify the default font and font name
formats.
@node Colors
@appendixsec Window Color Options
......
......@@ -1099,6 +1099,15 @@ then updating their lines in the buffer to indicate that status.
If you use @kbd{l} on a subdirectory header line, it updates the
contents of the corresponding subdirectory.
@vindex dired-auto-revert-buffer
If you use @kbd{C-x d} or some other Dired command to visit a
directory that is already being shown in a Dired buffer, Dired
switches to that buffer but does not update it. If the buffer is not
up-to-date, Dired displays a warning telling you to type @key{g} to
update it. You can also tell Emacs to revert each Dired buffer
automatically when you revisit it, by setting the variable
@code{dired-auto-revert-buffer} to a non-@code{nil} value.
@kindex k @r{(Dired)}
@findex dired-do-kill-lines
To delete the specified @emph{file lines} from the buffer---not
......
......@@ -12,8 +12,8 @@ This is the @value{EDITION} edition of the @cite{GNU Emacs Manual},@*
updated for Emacs version @value{EMACSVER}.
Copyright @copyright{} 1985, 1986, 1987, 1993, 1994, 1995, 1996, 1997,
1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
Free Software Foundation, Inc.
1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009,
2010 Free Software Foundation, Inc.
@quotation
Permission is granted to copy, distribute and/or modify this document
......@@ -502,6 +502,7 @@ Frames and Graphical Displays
* Mode Line Mouse:: Mouse clicks on the mode line.
* Creating Frames:: Creating additional Emacs frames with various contents.
* Frame Commands:: Iconifying, deleting, and switching frames.
* Fonts:: Changing the frame font.
* Speedbar:: How to make and use a speedbar frame.
* Multiple Displays:: How one Emacs job can talk to several displays.
* Special Buffer Frames:: You can make certain buffers have their own frames.
......@@ -1371,8 +1372,8 @@ Kahle, Tokuya Kameshima, Lute Kamstra, David Kastrup, David Kaufman,
Henry Kautz, Taichi Kawabata, Howard Kaye, Michael Kifer, Richard King,
Peter Kleiweg, Shuhei Kobayashi, Pavel Kobiakov, Larry K.@: Kolodney,
David M.@: Koppelman, Koseki Yoshinori, Robert Krawitz, Sebastian
Kremer, Ryszard Kubiak, Geoff Kuenning, David K@aa{}gedal, Daniel
LaLiberte, Karl Landstrom, Mario Lang, Aaron Larson, James R.@: Larus,
Kremer, Ryszard Kubiak, David K@aa{}gedal, Daniel LaLiberte,
Karl Landstrom, Mario Lang, Aaron Larson, James R.@: Larus,
Vinicius Jose Latorre, Werner Lemberg, Frederic Lepied, Peter
Liljenberg, Lars Lindberg, Chris Lindblad, Anders Lindgren, Thomas Link,
Juri Linkov, Francis Litterio, Emilio C. Lopes, K@'{a}roly L@H{o}rentey,
......
......@@ -39,6 +39,7 @@ so that you can use many of the features described in this chapter.
* Mode Line Mouse:: Mouse clicks on the mode line.
* Creating Frames:: Creating additional Emacs frames with various contents.
* Frame Commands:: Iconifying, deleting, and switching frames.
* Fonts:: Changing the frame font.
* Speedbar:: How to make and use a speedbar frame.
* Multiple Displays:: How one Emacs job can talk to several displays.
* Special Buffer Frames:: You can make certain buffers have their own frames.
......@@ -571,25 +572,19 @@ only the initial frame. @xref{Initial Parameters,,, elisp, The Emacs
Lisp Reference Manual}, for more information.
@cindex font (default)
For instance, one way to specify the principal font for all your
Emacs frames is to modify @code{default-frame-alist} to specify the
@code{font} parameter (@pxref{Font X}):
Here is an example of using @code{default-frame-alist} to specify
the default foreground color and font:
@example
(add-to-list 'default-frame-alist '(font . "10x20"))
@end example
@noindent
Here's a similar example for specifying a foreground color:
@example
(add-to-list 'default-frame-alist '(foreground-color . "blue"))
@end example
@noindent
By putting such customizations in your init file, you can control the
appearance of all the frames Emacs creates, including the initial one.
@xref{Init File}.
appearance of all the frames Emacs creates, including the initial one
(@pxref{Init File}). @xref{Fonts}, for other ways to set the default
font.
@node Frame Commands
@section Frame Commands
......@@ -645,6 +640,278 @@ select it, the variable should be @code{nil}. The default is
a frame that raises, so this variable has no effect in the native
MS-Windows build of Emacs.
@node Fonts
@section Fonts
@cindex fonts
By default, Emacs displays text in X using a 12-point monospace
font. There are several different ways to specify a different font:
@itemize
@item
Click on @samp{Set Default Font} in the @samp{Options} menu. To save
this for future sessions, click on @samp{Save Options} in the
@samp{Options} menu.
@item
Add a line to your init file (@pxref{Init File}), modifying the
variable @code{default-frame-alist} to specify the @code{font}
parameter (@pxref{Creating Frames}), like this:
@smallexample
(add-to-list 'default-frame-alist '(font . "DejaVu Sans Mono-12"))
@end smallexample
@cindex X defaults file
@cindex X resources file
@item
Add an @samp{emacs.font} X resource setting to your X resource file,
like this:
@smallexample
emacs.font: DejaVu Sans Mono-12
@end smallexample
@noindent
You must restart X, or use the @command{xrdb} command, for the X
resources file to take effect. @xref{Resources}. When specifying a
font in your X resources file, you should not quote it.
@item
If you are running Emacs on the GNOME desktop, you can tell Emacs to
use the default system font by setting the variable
@code{font-use-system-font} to @code{t} (the default is @code{nil}).
For this to work, Emacs must be compiled with Gconf support; this is
done automatically if the libraries are present at compile time.
@item
Use the command line option @samp{-fn} (or @samp{--font}). @xref{Font
X}.
@end itemize
@cindex fontconfig
On X, there are four different ways to express a ``font name''. The
first is to use a @dfn{Fontconfig pattern}. Fontconfig patterns have
the following form:
@smallexample
@var{fontname}[-@var{fontsize}][:@var{name1}=@var{values1}][:@var{name2}=@var{values2}]...
@end smallexample
@noindent
Within this format, any of the elements in braces may be omitted.
Here, @var{fontname} is the @dfn{family name} of the font, such as
@samp{Monospace} or @samp{DejaVu Serif}; @var{fontsize} is the
@dfn{point size} of the font (one @dfn{printer's point} is about 1/72
of an inch); and the @samp{@var{name}=@var{values}} entries specify
settings such as the slant and weight of the font. Each @var{values}
may be a single value, or a list of values separated by commas. In
addition, some property values are valid with only one kind of
property name, in which case the @samp{@var{name}=} part may be
omitted.
Here is a list of common font properties:
@table @samp
@item slant
One of @samp{italic}, @samp{oblique} or @samp{roman}.
@item weight
One of @samp{light}, @samp{medium}, @samp{demibold}, @samp{bold} or
@samp{black}.
@item style
Some fonts define special styles which are a combination of slant and
weight. For instance, @samp{Dejavu Sans} defines the @samp{book}
style, which overrides the slant and weight properties.
@item width
One of @samp{condensed}, @samp{normal}, or @samp{expanded}.
@item spacing
One of @samp{monospace}, @samp{proportional}, @samp{dual-width}, or
@samp{charcell}.
@end table
@noindent
Here are some examples of Fontconfig patterns:
@smallexample
Monospace
Monospace-12
Monospace-12:bold
DejaVu Sans Mono:bold:italic
Monospace-12:weight=bold:slant=italic
@end smallexample
See the Fontconfig manual for a more detailed description of
Fontconfig patterns. This manual is located in the file
@file{fontconfig-user.html}, distributed with Fontconfig. It is also
available online at @url{http://fontconfig.org/fontconfig-user.html}.
In particular, that manual describes additional font properties that
influence how the font is hinted, antialiased, or scaled.
The second way to specify a font is to use a @dfn{GTK font
description}. These have the syntax
@smallexample
@var{fontname} [@var{properties}] [@var{fontsize}]
@end smallexample
@noindent
where @var{fontname} is the family name, @var{properties} is a list of
property values separated by spaces, and @var{fontsize} is the point
size. The properties that you may specify are as follows:
@table @samp
@item style
One of @samp{roman}, @samp{italic} or @samp{oblique}. If omitted, the
@samp{roman} style is used.
@item weight
One of @samp{medium}, @samp{ultra-light}, @samp{light},
@samp{semi-bold}, or @samp{bold}. If omitted, @samp{medium} weight is
used.
@end table
@noindent
Here are some examples of GTK font descriptions:
@smallexample
Monospace 12
Monospace Bold Italic 12
@end smallexample
@cindex XLFD
@cindex X Logical Font Description
The third way to specify a font is to use an @dfn{XLFD} (@dfn{X
Logical Font Description}). This is the traditional method for
specifying fonts under X. Each XLFD consists of fourteen words or
numbers, separated by dashes, like this:
@smallexample
-misc-fixed-medium-r-semicondensed--13-*-*-*-c-60-iso8859-1
@end smallexample
@noindent
A wildcard character (@samp{*}) in an XLFD matches any sequence of
characters (including none), and @samp{?} matches any single
character. However, matching is implementation-dependent, and can be
inaccurate when wildcards match dashes in a long name. For reliable
results, supply all 14 dashes and use wildcards only within a field.
Case is insignificant in an XLFD. The syntax for an XLFD is as
follows:
@smallexample
-@var{maker}-@var{family}-@var{weight}-@var{slant}-@var{widthtype}-@var{style}@dots{}
@dots{}-@var{pixels}-@var{height}-@var{horiz}-@var{vert}-@var{spacing}-@var{width}-@var{registry}-@var{encoding}
@end smallexample
@noindent
The entries have the following meanings:
@table @var
@item maker
The name of the font manufacturer.
@item family
The name of the font family (e.g. @samp{courier}).
@item weight
The font weight---normally either @samp{bold}, @samp{medium} or
@samp{light}. Some font names support other values.
@item slant
The font slant---normally @samp{r} (roman), @samp{i} (italic),
@samp{o} (oblique), @samp{ri} (reverse italic), or @samp{ot} (other).
Some font names support other values.
@item widthtype
The font width---normally @samp{condensed}, @samp{extended},
@samp{semicondensed} or @samp{normal} (some font names support other
values).
@item style
An optional additional style name. Usually it is empty---most long
font names have two hyphens in a row at this point.