Merge from `emacs-23'.
This commit is contained in:
commit
e867cb5d30
60 changed files with 1528 additions and 663 deletions
|
@ -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
|
||||
|
|
|
@ -1,3 +1,35 @@
|
|||
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.
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
@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.
|
||||
@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
|
||||
|
||||
The fourth and final method of specifying a font is to use a ``font
|
||||
nickname''. Certain fonts have shorter nicknames, which you can use
|
||||
instead of a normal font specification. For instance, @samp{6x13} is
|
||||
equivalent to
|
||||
|
||||
@smallexample
|
||||
-misc-fixed-medium-r-semicondensed--13-*-*-*-c-60-iso8859-1
|
||||
@end smallexample
|
||||
|
||||
@cindex client-side fonts
|
||||
@cindex server-side fonts
|
||||
On X, 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.
|
||||
Fontconfig and GTK patterns match only client-side fonts.
|
||||
|
||||
@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. For Xft and
|
||||
Fontconfig fonts, you can use the @command{fc-list} command to list
|
||||
the available fixed-width fonts, like this:
|
||||
|
||||
@example
|
||||
fc-list :spacing=mono fc-list :spacing=charcell
|
||||
@end example
|
||||
|
||||
@noindent
|
||||
For server-side X fonts, you can use the @command{xlsfonts} program to
|
||||
list the available fixed-width fonts, like this:
|
||||
|
||||
@example
|
||||
xlsfonts -fn '*x*' | egrep "^[0-9]+x[0-9]+"
|
||||
xlsfonts -fn '*-*-*-*-*-*-*-*-*-*-*-m*'
|
||||
xlsfonts -fn '*-*-*-*-*-*-*-*-*-*-*-c*'
|
||||
@end example
|
||||
|
||||
@noindent
|
||||
Any font with @samp{m} or @samp{c} in the @var{spacing} field of the
|
||||
XLFD is a fixed-width font. 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 also set the font of a specific kind of
|
||||
text (@pxref{Faces}), or a particular frame (@pxref{Frame
|
||||
Parameters}).
|
||||
|
||||
@node Speedbar
|
||||
@section Speedbar Frames
|
||||
@cindex speedbar
|
||||
|
@ -957,7 +1224,7 @@ menu-bar-mode} or by customizing the variable @code{menu-bar-mode}.
|
|||
With no argument, this command toggles Menu Bar mode, a
|
||||
minor mode. With an argument, the command turns Menu Bar mode on if the
|
||||
argument is positive, off if the argument is not positive. You can use
|
||||
the X resource @samp{menuBarLines} to control the initial setting of
|
||||
the X resource @samp{menuBar} to control the initial setting of
|
||||
Menu Bar mode. @xref{Resources}.
|
||||
|
||||
@kindex C-Mouse-3 @r{(when menu bar is disabled)}
|
||||
|
|
|
@ -37,34 +37,38 @@ Indent from point to the next prespecified tab stop column
|
|||
Indent from point to under an indentation point in the previous line.
|
||||
@end table
|
||||
|
||||
In most major modes, the @key{TAB} key runs the command
|
||||
@code{indent-for-tab-command}, which either performs indentation or
|
||||
inserts whitespace at point, depending on the situation.
|
||||
@noindent
|
||||
The @key{TAB} key runs @code{indent-for-tab-command} in most major
|
||||
modes (in C and related modes, @key{TAB} runs a separate command,
|
||||
@code{c-indent-line-or-region}, which behaves similarly). The major
|
||||
mode determines just what this entails.
|
||||
|
||||
In programming modes such as Lisp mode and C mode, @key{TAB} indents
|
||||
the current line if the region is inactive. If the region is active,
|
||||
it indents every line in the region (@pxref{Mark}). Indentation means
|
||||
adding or removing some combination of space and tab characters
|
||||
(@dfn{whitespace characters}) at the start of the line, in a way that
|
||||
makes sense given the text in the preceding lines. Exactly how
|
||||
indentation is performed depends on the major mode. @xref{Program
|
||||
Indent}.
|
||||
In text modes, @key{TAB} inserts some combination of space and tab
|
||||
characters to advance point to the next tab stop (@pxref{Tab Stops}).
|
||||
If the region is active and spans multiple lines, it advances the
|
||||
first character of each of those lines to the next tab stop
|
||||
(@pxref{Using Region}). For the purposes of this command, the
|
||||
position of the first non-whitespace character on the preceding line
|
||||
is treated as an additional tab stop. Thus, you can use @key{TAB} to
|
||||
``align'' point with the preceding line.
|
||||
|
||||
In text modes, @key{TAB} inserts some whitespace characters to
|
||||
advance point to the next tab stop (@pxref{Tab Stops}). For the
|
||||
purposes of this command, the position of the first non-whitespace
|
||||
character on the preceding line is treated as an additional tab stop.
|
||||
You can therefore use @key{TAB} to ``align'' point with the preceding
|
||||
line. If the region is active, @key{TAB} performs this action on
|
||||
every line in the region.
|
||||
In programming modes, @key{TAB} adds or removes some combination of
|
||||
space and tab characters at the start of the line, in a way that makes
|
||||
sense given the text in the preceding lines. If the region is active
|
||||
and spans multiple lines, all those lines are indented this way. If
|
||||
point was initially within the current line's indentation, it is
|
||||
positioned after that indentation; otherwise, it remains at same point
|
||||
in the newly-indented text. @xref{Program Indent}.
|
||||
|
||||
@vindex tab-width
|
||||
Indentation is often performed with the help of @dfn{tab characters}
|
||||
(@acronym{ASCII} code 9), which are displayed as a stretch of empty space
|
||||
extending to the next @dfn{display tab stop}. By default, there is
|
||||
one display tab stop every eight columns; the number of columns is
|
||||
determined by the variable @code{tab-width}. You can insert a single
|
||||
tab character by typing @kbd{C-q @key{TAB}}. @xref{Text Display}.
|
||||
Normally, indentation commands insert (or remove) an optimal mix of
|
||||
@dfn{tab characters} and spaces to align to the desired column. Tab
|
||||
characters (@acronym{ASCII} code 9) are displayed as a stretch of
|
||||
empty space extending to the next @dfn{display tab stop}. By default,
|
||||
there is one display tab stop every eight columns; the number of
|
||||
columns is determined by the variable @code{tab-width}. You can
|
||||
insert a single tab character by typing @kbd{C-q @key{TAB}}.
|
||||
@xref{Text Display}.
|
||||
|
||||
@findex edit-tab-stops
|
||||
@findex tab-to-tab-stop
|
||||
|
@ -74,11 +78,20 @@ whitespace characters around point, inserting just enough whitespace
|
|||
to advance point up to the next tab stop. By default, this involves
|
||||
deleting the existing whitespace and inserting a single tab character.
|
||||
|
||||
Normally, most of these indentation commands insert an optimal mix
|
||||
of tabs and spaces to align to the desired column. @xref{Just
|
||||
Spaces}, for how to disable use of tabs. However, @kbd{C-q @key{TAB}}
|
||||
always inserts a tab, even when tabs are disabled for the indentation
|
||||
commands.
|
||||
@xref{Just Spaces}, for how to disable use of tabs. However,
|
||||
@kbd{C-q @key{TAB}} always inserts a tab, even when tabs are disabled
|
||||
for the indentation commands.
|
||||
|
||||
@vindex tab-always-indent
|
||||
The variable @code{tab-always-indent} tweaks the behavior of the
|
||||
@key{TAB} (@code{indent-for-tab-command}) command. The default value,
|
||||
@code{t}, gives the behavior described above. If you change the value
|
||||
to the symbol @code{complete}, then @key{TAB} first tries to indent
|
||||
the current line, and if the line was already indented, it tries to
|
||||
complete the text at point (@pxref{Symbol Completion}). If the value
|
||||
is @code{nil}, then @key{TAB} indents the current line only if point
|
||||
is at the left margin or in the line's indentation; otherwise, it
|
||||
inserts a real tab character.
|
||||
|
||||
@menu
|
||||
* Indentation Commands:: Various commands and techniques for indentation.
|
||||
|
|
|
@ -1442,7 +1442,7 @@ field.
|
|||
fontset is called @code{create-fontset-from-fontset-spec}. You can also
|
||||
call this function explicitly to create a fontset.
|
||||
|
||||
@xref{Font X}, for more information about font naming in X.
|
||||
@xref{Fonts}, for more information about font naming.
|
||||
|
||||
@node Modifying Fontsets
|
||||
@section Modifying Fontsets
|
||||
|
@ -1619,7 +1619,7 @@ belong to one or more charsets.
|
|||
that you don't have to worry about them. However, it is sometimes
|
||||
helpful to know some of the underlying details about charsets.
|
||||
|
||||
One example is font selection (@pxref{Font X}). Each language
|
||||
One example is font selection (@pxref{Fonts}). Each language
|
||||
environment (@pxref{Language Environments}) defines a ``priority
|
||||
list'' for the various charsets. When searching for a font, Emacs
|
||||
initially attempts to find one that can display the highest-priority
|
||||
|
|
|
@ -1294,13 +1294,25 @@ point to the end of the buffer, or on the region if it is active.
|
|||
@findex keep-lines
|
||||
|
||||
@table @kbd
|
||||
@item M-x occur @key{RET} @var{regexp} @key{RET}
|
||||
Display a list showing each line in the buffer that contains a match
|
||||
for @var{regexp}. To limit the search to part of the buffer, narrow
|
||||
to that part (@pxref{Narrowing}). A numeric argument @var{n}
|
||||
specifies that @var{n} lines of context are to be displayed before and
|
||||
after each matching line. Currently, @code{occur} can not correctly
|
||||
handle multiline matches.
|
||||
@item M-x multi-isearch-buffers
|
||||
Prompt for one or more buffer names, ending with @key{RET}; then,
|
||||
begin a multi-buffer incremental search in those buffers. (If the
|
||||
search fails in one buffer, the next @kbd{C-s} tries searching the
|
||||
next specified buffer, and so forth.) With a prefix argument, prompt
|
||||
for a regexp and begin a multi-buffer incremental search in buffers
|
||||
matching that regexp.
|
||||
|
||||
@item M-x multi-isearch-buffers-regexp
|
||||
This command is just like @code{multi-isearch-buffers}, except it
|
||||
performs an incremental regexp search.
|
||||
|
||||
@item M-x occur
|
||||
Prompt for a regexp, and display a list showing each line in the
|
||||
buffer that contains a match for it. To limit the search to part of
|
||||
the buffer, narrow to that part (@pxref{Narrowing}). A numeric
|
||||
argument @var{n} specifies that @var{n} lines of context are to be
|
||||
displayed before and after each matching line. Currently,
|
||||
@code{occur} can not correctly handle multiline matches.
|
||||
|
||||
@kindex RET @r{(Occur mode)}
|
||||
@kindex o @r{(Occur mode)}
|
||||
|
@ -1325,41 +1337,42 @@ search is active; this uses the current search string.
|
|||
@item M-x list-matching-lines
|
||||
Synonym for @kbd{M-x occur}.
|
||||
|
||||
@item M-x multi-occur @key{RET} @var{buffers} @key{RET} @var{regexp} @key{RET}
|
||||
This function is just like @code{occur}, except it is able to search
|
||||
through multiple buffers. It asks you to specify the buffer names one by one.
|
||||
@item M-x multi-occur
|
||||
This command is just like @code{occur}, except it is able to search
|
||||
through multiple buffers. It asks you to specify the buffer names one
|
||||
by one.
|
||||
|
||||
@item M-x multi-occur-in-matching-buffers @key{RET} @var{bufregexp} @key{RET} @var{regexp} @key{RET}
|
||||
This function is similar to @code{multi-occur}, except the buffers to
|
||||
search are specified by a regular expression that matches visited
|
||||
file names. With a prefix argument, it uses the regular expression to match
|
||||
buffer names instead.
|
||||
@item M-x multi-occur-in-matching-buffers
|
||||
This command is similar to @code{multi-occur}, except the buffers to
|
||||
search are specified by a regular expression that matches visited file
|
||||
names. With a prefix argument, it uses the regular expression to
|
||||
match buffer names instead.
|
||||
|
||||
@item M-x how-many @key{RET} @var{regexp} @key{RET}
|
||||
Print the number of matches for @var{regexp} that exist in the buffer
|
||||
after point. If the region is active, this operates on the region
|
||||
instead.
|
||||
@item M-x how-many
|
||||
Prompt for a regexp, and print the number of matches for it in the
|
||||
buffer after point. If the region is active, this operates on the
|
||||
region instead.
|
||||
|
||||
@item M-x flush-lines @key{RET} @var{regexp} @key{RET}
|
||||
This command deletes each line that contains a match for @var{regexp},
|
||||
operating on the text after point; it deletes the current line if it
|
||||
contains a match starting after point. If the region is active, it
|
||||
operates on the region instead; if a line partially contained in the
|
||||
region contains a match entirely contained in the region, it is
|
||||
deleted.
|
||||
@item M-x flush-lines
|
||||
Prompt for a regexp, and delete each line that contains a match for
|
||||
it, operating on the text after point. This command deletes the
|
||||
current line if it contains a match starting after point. If the
|
||||
region is active, it operates on the region instead; if a line
|
||||
partially contained in the region contains a match entirely contained
|
||||
in the region, it is deleted.
|
||||
|
||||
If a match is split across lines, @code{flush-lines} deletes all those
|
||||
lines. It deletes the lines before starting to look for the next
|
||||
match; hence, it ignores a match starting on the same line at which
|
||||
another match ended.
|
||||
|
||||
@item M-x keep-lines @key{RET} @var{regexp} @key{RET}
|
||||
This command deletes each line that @emph{does not} contain a match
|
||||
for @var{regexp}, operating on the text after point; if point is not
|
||||
at the beginning of a line, it always keeps the current line. If the
|
||||
region is active, the command operates on the region instead; it never
|
||||
deletes lines that are only partially contained in the region (a
|
||||
newline that ends a line counts as part of that line).
|
||||
@item M-x keep-lines
|
||||
Prompt for a regexp, and delete each line that @emph{does not} contain
|
||||
a match for it, operating on the text after point. If point is not at
|
||||
the beginning of a line, this command always keeps the current line.
|
||||
If the region is active, the command operates on the region instead;
|
||||
it never deletes lines that are only partially contained in the region
|
||||
(a newline that ends a line counts as part of that line).
|
||||
|
||||
If a match is split across lines, this command keeps all those lines.
|
||||
@end table
|
||||
|
|
|
@ -193,7 +193,7 @@ Specifies whether to make the cursor blink. The default is @samp{on}. Use
|
|||
@end ifnottex
|
||||
|
||||
@item @code{font} (class @code{Font})
|
||||
Font name for the @code{default} font. @xref{Font X}. You can also
|
||||
Font name for the @code{default} font. @xref{Fonts}. You can also
|
||||
specify a fontset name (@pxref{Fontsets}).
|
||||
|
||||
@item @code{fontBackend} (class @code{FontBackend})
|
||||
|
@ -307,12 +307,14 @@ Name to display in the title bar of the initial Emacs frame.
|
|||
@item @code{toolBar} (class @code{ToolBar})
|
||||
@cindex tool bar
|
||||
Number of lines to reserve for the tool bar. A zero value suppresses
|
||||
the tool bar. If the value is non-zero and
|
||||
@code{auto-resize-tool-bars} is non-@code{nil}, the tool bar's size
|
||||
will be changed automatically so that all tool bar items are visible.
|
||||
the tool bar. For the Emacs tool bar (i.e. not Gtk+), if the value is
|
||||
non-zero and @code{auto-resize-tool-bars} is non-@code{nil}, the tool bar's
|
||||
size will be changed automatically so that all tool bar items are visible.
|
||||
If the value of @code{auto-resize-tool-bars} is @code{grow-only},
|
||||
the tool bar expands automatically, but does not contract automatically.
|
||||
To contract the tool bar, you must redraw the frame by entering @kbd{C-l}.
|
||||
For the Gtk+ tool bar, any non-zero value means on and
|
||||
@code{auto-resize-tool-bars} has no effect.
|
||||
|
||||
@item @code{useXIM} (class @code{UseXIM})
|
||||
@cindex XIM
|
||||
|
|
|
@ -1,3 +1,11 @@
|
|||
2010-03-24 Arni Magnusson <arnima@hafro.is> (tiny change)
|
||||
|
||||
* frames.texi (Cursor Parameters): Fix typo. (Bug#5760)
|
||||
|
||||
2010-03-24 Chong Yidong <cyd@stupidchicken.com>
|
||||
|
||||
* processes.texi (Network Processes): Document seqpacket type.
|
||||
|
||||
2010-03-20 Dan Nicolaescu <dann@ics.uci.edu>
|
||||
|
||||
* os.texi (System Environment): Do not mention lynxos.
|
||||
|
|
|
@ -821,7 +821,7 @@ This variable controls how the cursor looks in a window that is not
|
|||
selected. It supports the same values as the @code{cursor-type} frame
|
||||
parameter; also, @code{nil} means don't display a cursor in
|
||||
nonselected windows, and @code{t} (the default) means use a standard
|
||||
modificatoin of the usual cursor type (solid box becomes hollow box,
|
||||
modification of the usual cursor type (solid box becomes hollow box,
|
||||
and bar becomes a narrower bar).
|
||||
@end defopt
|
||||
|
||||
|
|
|
@ -2059,7 +2059,8 @@ necessary to make it unique.
|
|||
@item :type @var{type}
|
||||
Specify the communication type. A value of @code{nil} specifies a
|
||||
stream connection (the default); @code{datagram} specifies a datagram
|
||||
connection. Both connections and servers can be of either type.
|
||||
connection; @code{seqpacket} specifies a ``sequenced packet stream''
|
||||
connection. Both connections and servers can be of these types.
|
||||
|
||||
@item :server @var{server-flag}
|
||||
If @var{server-flag} is non-@code{nil}, create a server. Otherwise,
|
||||
|
|
|
@ -1,3 +1,7 @@
|
|||
2010-03-24 Michael Albinus <michael.albinus@gmx.de>
|
||||
|
||||
* trampver.texi: Update release number.
|
||||
|
||||
2010-03-10 Chong Yidong <cyd@stupidchicken.com>
|
||||
|
||||
* Branch for 23.2.
|
||||
|
|
|
@ -9,7 +9,7 @@
|
|||
@c In the Tramp CVS, the version number is auto-frobbed from
|
||||
@c configure.ac, so you should edit that file and run
|
||||
@c "autoconf && ./configure" to change the version number.
|
||||
@set trampver 2.1.18-pre
|
||||
@set trampver 2.1.18-23.2
|
||||
|
||||
@c Other flags from configuration
|
||||
@set instprefix /usr/local
|
||||
|
|
|
@ -1,3 +1,8 @@
|
|||
2010-03-24 Francesc Rocher <rocher@member.fsf.org>
|
||||
|
||||
* MORE.STUFF: Remove CEDET entry, now distributed as part of
|
||||
Emacs.
|
||||
|
||||
2010-03-22 Teodor Zlatanov <tzz@lifelogs.com>
|
||||
|
||||
* gnus/gnus-setup.ast: Add finish links to the top nodes.
|
||||
|
|
|
@ -130,10 +130,6 @@ Several are for Debian GNU/Linux in particular.
|
|||
|
||||
* Boxquote: <URL:http://www.davep.org/emacs/>
|
||||
|
||||
* CEDET: Collection of Emacs Development Environment Tools, including
|
||||
EIEIO, Semantic, Speedbar, EDE, and COGRE:
|
||||
<URL:http://cedet.sourceforge.net/>
|
||||
|
||||
* CJK-emacs: Converting MULE-encoded text to TeX:
|
||||
<URL:ftp://ctan.tug.org/tex-archive/language/chinese/CJK/> and
|
||||
mirrors of the `CTAN' TeX archives.
|
||||
|
|
170
etc/NEWS.23
170
etc/NEWS.23
|
@ -71,14 +71,14 @@ uses `system-move-file-to-trash' for trashing.)
|
|||
Customize `make-pointer-invisible' to disable this feature.
|
||||
|
||||
** Font changes
|
||||
|
||||
+++
|
||||
*** Emacs can use the system default monospaced font in Gnome.
|
||||
To enable this feature, set `font-use-system-font' to non-nil (it is
|
||||
nil by default). If the system default changes, Emacs changes also.
|
||||
This feature requires Gconf support, which is automatically included
|
||||
at compile-time if configure detects the gconf libraries (you can
|
||||
disable this with the configure option --without-gconf).
|
||||
|
||||
---
|
||||
*** On X11, Emacs reacts to Xft changes made by configuration tools,
|
||||
via the XSETTINGS mechanism. This includes antialias, hinting,
|
||||
hintstyle, RGBA, DPI and lcdfilter changes.
|
||||
|
@ -143,7 +143,7 @@ subsequent kills are not duplicated in the `kill-ring'.
|
|||
** Completion changes
|
||||
|
||||
*** The new command `completion-at-point' provides mode-sensitive completion.
|
||||
|
||||
+++
|
||||
*** tab-always-indent set to `complete' lets TAB do completion as well.
|
||||
+++
|
||||
*** The new completion-style `initials' is available.
|
||||
|
@ -185,6 +185,7 @@ that file exists.
|
|||
|
||||
** LaTeX mode now provides completion (via completion-at-point).
|
||||
|
||||
---
|
||||
** sym-comp.el is now declared obsolete, superceded by completion-at-point.
|
||||
|
||||
** lucid.el and levents.el are now declared obsolete.
|
||||
|
@ -197,20 +198,16 @@ is similar to `pcomplete' but using the standard completion UI code.
|
|||
*** The Calc settings file is now a file named calc.el in
|
||||
user-emacs-directory; but the old location, ~/.calc.el, is used if
|
||||
that file exists.
|
||||
|
||||
---
|
||||
*** Graphing commands (`g f' etc.) now work on MS-Windows, if you have
|
||||
the native Windows port of Gnuplot version 3.8 or later installed.
|
||||
|
||||
** Calendar and diary
|
||||
|
||||
+++
|
||||
*** Fancy diary display is now the default.
|
||||
If you prefer the simple display, customize `diary-display-function'.
|
||||
|
||||
+++
|
||||
*** The diary's fancy display now enables view-mode.
|
||||
|
||||
---
|
||||
*** The command `calendar-current-date' accepts an optional argument
|
||||
giving an offset from today.
|
||||
|
@ -225,9 +222,9 @@ exempt buffers that do correspond to files, customize the value of
|
|||
`desktop-files-not-to-save' instead.
|
||||
|
||||
** Dired
|
||||
|
||||
*** The new variable `dired-auto-revert-buffer' allows to revert
|
||||
dired buffers automatically on revisiting.
|
||||
+++
|
||||
*** The new variable `dired-auto-revert-buffer', if non-nil, causes
|
||||
Dired buffers to be reverted automatically on revisiting them.
|
||||
|
||||
** DocView
|
||||
|
||||
|
@ -338,22 +335,17 @@ displayed in the *vc-dir* header, shelves can be created, removed and applied.
|
|||
are stripped when copying text from the ChangeLog to the *VC-Log* buffer.
|
||||
|
||||
** Elint
|
||||
|
||||
---
|
||||
*** Elint now uses compilation-mode.
|
||||
|
||||
---
|
||||
*** Elint can now scan individual files and whole directories,
|
||||
and can be run in batch mode.
|
||||
|
||||
---
|
||||
*** Elint does a more thorough initialization, and recognizes more built-in
|
||||
functions and variables. Customize `elint-scan-preloaded' if you want
|
||||
to sacrifice some accuracy for a faster startup.
|
||||
|
||||
---
|
||||
*** Elint attempts some basic understanding of featurep and (f)boundp tests.
|
||||
|
||||
---
|
||||
*** Customize `elint-ignored-warnings' to suppress some warnings.
|
||||
|
||||
|
@ -368,7 +360,7 @@ Command*'.
|
|||
`comint-history-isearch' is non-nil. New commands `comint-history-isearch-backward'
|
||||
and `comint-history-isearch-backward-regexp' (bound to M-r) start Isearch
|
||||
in the input history regardless of the value of `comint-history-isearch'.
|
||||
|
||||
+++
|
||||
*** Interactively `multi-isearch-buffers' and `multi-isearch-buffers-regexp'
|
||||
read buffer names to search, one by one, ended with RET. With a prefix
|
||||
argument, they ask for a regexp, and search in buffers whose names match
|
||||
|
@ -376,19 +368,16 @@ the specified regexp. Interactively `multi-isearch-files' and
|
|||
`multi-isearch-files-regexp' read file names to search, one by one,
|
||||
ended with RET. With a prefix argument, they ask for a wildcard, and
|
||||
search in file buffers whose file names match the specified wildcard.
|
||||
|
||||
+++
|
||||
*** Autorevert Tail mode now works also for remote files.
|
||||
|
||||
+++
|
||||
*** The new built-in commands `su' and `sudo' support Tramp.
|
||||
That means, they change `default-directory' to the new users value,
|
||||
and let commands run under that user permissions. It works even when
|
||||
`default-directory' is already remote. Calling the external commands
|
||||
is possible by `*su' or `*sudo', repectively.
|
||||
|
||||
---
|
||||
*** When running in a new enough xterm (newer than version 242), emacs
|
||||
*** When running in a new enough xterm (newer than version 242), Emacs
|
||||
asks xterm what the background color is and it sets up faces
|
||||
accordingly for a dark background if needed (the current default is to
|
||||
consider the background light).
|
||||
|
@ -468,70 +457,94 @@ mode from `auto-mode-alist' (or Fundamental mode) and `image-minor-mode'.
|
|||
|
||||
* Lisp changes in Emacs 23.2
|
||||
|
||||
** make-network-socket can now also create `seqpacket' Unix sockets.
|
||||
|
||||
** New function `completion-in-region' to use the standard completion
|
||||
facilities on a particular region of text.
|
||||
|
||||
+++
|
||||
** The 4th arg to all-completions (aka hide-spaces) is declared obsolete.
|
||||
|
||||
---
|
||||
** read-file-name-predicate is obsolete. It was used to pass the predicate
|
||||
to read-file-name-internal because read-file-name-internal abused its `pred'
|
||||
argument to pass the current directory, but this hack is not needed
|
||||
any more.
|
||||
|
||||
** Frame parameter changes
|
||||
|
||||
+++
|
||||
*** You can give the `fullscreen' frame parameter the value `maximized'.
|
||||
This maximizes the frame.
|
||||
|
||||
+++
|
||||
*** The new frame parameter `sticky' makes Emacs frames sticky in
|
||||
virtual desktops.
|
||||
|
||||
---
|
||||
** completion-base-size is obsoleted by completion-base-position.
|
||||
This change causes a few backward incompatibilities, mostly with
|
||||
choose-completion-string-functions where the `mini-p' argument has
|
||||
been replaced by a `base-position' argument, and where the `base-size'
|
||||
argument is now always nil.
|
||||
|
||||
** called-interactively-p now takes one argument and replaces interactive-p
|
||||
which is now marked obsolete.
|
||||
** New function set-advertised-calling-convention makes it possible
|
||||
to obsolete arguments as well as make some arguments mandatory.
|
||||
** eval-next-after-load is obsolete.
|
||||
** New hook `after-load-functions' run after loading an Elisp file.
|
||||
|
||||
** You can control which binding is preferentially shown in menus and
|
||||
docstrings by adding a `:advertised-binding' property to the corresponding
|
||||
command's symbol. That property can hold a single binding or a list
|
||||
of bindings.
|
||||
|
||||
** New macro with-silent-modifications to tweak text properties without
|
||||
affecting the buffer's modification state.
|
||||
** All the default-FOO variables that hold the default value of the FOO
|
||||
variable, are now declared obsolete.
|
||||
|
||||
** read-key is a function halfway between read-event and read-key-sequence.
|
||||
It reads a single key, but obeys input and escape sequence decoding.
|
||||
|
||||
** start-process-shell-command and start-file-process-shell-command
|
||||
now only take a single `command' argument.
|
||||
** Frame parameter changes
|
||||
+++
|
||||
*** You can give the `fullscreen' frame parameter the value `maximized'.
|
||||
This maximizes the frame.
|
||||
+++
|
||||
*** The new frame parameter `sticky' makes Emacs frames sticky in
|
||||
virtual desktops.
|
||||
|
||||
** The variable `process-file-side-effects' shall be bound to nil, if
|
||||
a `process-file' call does not change a remote file. By this, file
|
||||
name handlers like Tramp can apply optimizations.
|
||||
** Completion changes
|
||||
|
||||
*** completion-base-size is obsoleted by completion-base-position.
|
||||
This change causes a few backward incompatibilities, mostly with
|
||||
choose-completion-string-functions where the `mini-p' argument has
|
||||
been replaced by a `base-position' argument, and where the `base-size'
|
||||
argument is now always nil.
|
||||
|
||||
*** New function `completion-in-region' to use the standard completion
|
||||
facilities on a particular region of text.
|
||||
+++
|
||||
*** The 4th arg to all-completions (aka hide-spaces) is declared obsolete.
|
||||
|
||||
*** completion-annotate-function specifies how to compute annotations
|
||||
for completions displayed in *Completions*.
|
||||
|
||||
** Minibuffer changes
|
||||
---
|
||||
*** read-file-name-predicate is obsolete. It was used to pass the predicate
|
||||
to read-file-name-internal because read-file-name-internal abused its `pred'
|
||||
argument to pass the current directory, but this hack is not needed
|
||||
any more.
|
||||
|
||||
** Changes to file-manipulation functions
|
||||
+++
|
||||
*** `delete-directory' has an optional parameter RECURSIVE.
|
||||
+++
|
||||
*** New function `copy-directory', which copies a directory recursively.
|
||||
|
||||
** called-interactively-p now takes one argument and replaces interactive-p
|
||||
which is now marked obsolete.
|
||||
|
||||
** New function set-advertised-calling-convention makes it possible
|
||||
to obsolete arguments as well as make some arguments mandatory.
|
||||
|
||||
** You can control which binding is preferentially shown in menus and
|
||||
docstrings by adding a `:advertised-binding' property to the corresponding
|
||||
command's symbol. That property can hold a single binding or a list
|
||||
of bindings.
|
||||
|
||||
** Network and process changes
|
||||
+++
|
||||
*** start-process-shell-command and start-file-process-shell-command
|
||||
now only take a single `command' argument.
|
||||
+++
|
||||
*** The new variable `process-file-side-effects' should be set to nil
|
||||
if a `process-file' call does not change a remote file. This allows
|
||||
file name handlers such as Tramp to optimizations.
|
||||
+++
|
||||
*** make-network-process can now also create `seqpacket' Unix sockets.
|
||||
|
||||
** Loading changes
|
||||
|
||||
*** eval-next-after-load is obsolete.
|
||||
|
||||
*** New hook `after-load-functions' run after loading an Elisp file.
|
||||
|
||||
** Byte compilation changes
|
||||
---
|
||||
*** Changing the file-names generated by byte-compilation by redefining
|
||||
the function `byte-compile-dest-file' before loading bytecomp.el is obsolete.
|
||||
Instead, customize byte-compile-dest-file-function.
|
||||
---
|
||||
*** `byte-compile-warnings' has new members, `constants' and `suspicious'.
|
||||
|
||||
** New macro with-silent-modifications to tweak text properties without
|
||||
affecting the buffer's modification state.
|
||||
|
||||
+++
|
||||
** Hash tables have a new printed representation that is readable.
|
||||
The feature `hashtable-print-readable' identifies this new
|
||||
functionality.
|
||||
|
||||
** New functions performing Unicode normalization are added:
|
||||
** New functions for performing Unicode normalization:
|
||||
ucs-normalize-NFD-region, ucs-normalize-NFD-string,
|
||||
ucs-normalize-NFC-region, ucs-normalize-NFC-string,
|
||||
ucs-normalize-NFKD-region, ucs-normalize-NFKD-string,
|
||||
|
@ -539,25 +552,10 @@ ucs-normalize-NFKC-region, ucs-normalize-NFKC-string,
|
|||
ucs-normalize-HFS-NFD-region, ucs-normalize-HFS-NFD-string,
|
||||
ucs-normalize-HFS-NFC-region, ucs-normalize-HFS-NFC-string.
|
||||
|
||||
** completion-annotate-function specifies how to compute annotations
|
||||
for completions displayed in *Completions*.
|
||||
|
||||
+++
|
||||
** Face aliases can now be marked as obsolete, using the macro
|
||||
`define-obsolete-face-alias'.
|
||||
|
||||
---
|
||||
** Changing the file-names generated by byte-compilation by redefining
|
||||
the function `byte-compile-dest-file' before loading bytecomp.el is obsolete.
|
||||
Instead, customize byte-compile-dest-file-function.
|
||||
|
||||
---
|
||||
** `byte-compile-warnings' has new members, `constants' and `suspicious'.
|
||||
|
||||
** `delete-directory' has an optional parameter RECURSIVE.
|
||||
|
||||
** New function `copy-directory', which copies a directory recursively.
|
||||
|
||||
+++
|
||||
** New function `window-full-height-p', analogous to the full-width version.
|
||||
|
||||
|
|
15
etc/PROBLEMS
15
etc/PROBLEMS
|
@ -1418,6 +1418,21 @@ single copies. You do not need any other drivers or options.
|
|||
|
||||
* Runtime problems on character terminals
|
||||
|
||||
** The meta key does not work on xterm.
|
||||
Typing M-x rings the terminal bell, and inserts a string like ";120~".
|
||||
For recent xterm versions (>= 216), Emacs uses xterm's modifyOtherKeys
|
||||
feature to generate strings for key combinations that are not
|
||||
otherwise usable. One circumstance in which this can cause problems
|
||||
is if you have specified the X resource
|
||||
|
||||
xterm*VT100.Translations
|
||||
|
||||
to contain translations that use the meta key. Then xterm will not
|
||||
use meta in modified function-keys, which confuses Emacs. To fix
|
||||
this, you can remove the X resource or put this in your init file:
|
||||
|
||||
(xterm-remove-modify-other-keys)
|
||||
|
||||
** Emacs spontaneously displays "I-search: " at the bottom of the screen.
|
||||
|
||||
This means that Control-S/Control-Q (XON/XOFF) "flow control" is being
|
||||
|
|
|
@ -1,3 +1,101 @@
|
|||
2010-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
|
||||
|
||||
* progmodes/make-mode.el (makefile-rule-action-regex): Backtrack less.
|
||||
(makefile-make-font-lock-keywords): Adjust rule since submatch 1 may
|
||||
not be present any more.
|
||||
|
||||
2010-03-24 Juanma Barranquero <lekktu@gmail.com>
|
||||
|
||||
* faces.el (set-face-attribute): Fix typo in docstring.
|
||||
(face-valid-attribute-values): Reflow docstring.
|
||||
|
||||
* cedet/srecode/table.el (srecode-template-table): Fix docstring typo.
|
||||
|
||||
2010-03-24 Glenn Morris <rgm@gnu.org>
|
||||
|
||||
* textmodes/flyspell.el (sgml-lexical-context): Autoload it (Bug#5752).
|
||||
|
||||
2010-03-24 Chong Yidong <cyd@stupidchicken.com>
|
||||
|
||||
* indent.el (indent-for-tab-command): Doc fix.
|
||||
|
||||
2010-03-24 Alan Mackenzie <acm@muc.de>
|
||||
|
||||
* progmodes/cc-engine.el (c-remove-stale-state-cache):
|
||||
Fix off-by-one error. Fixes bug #5747.
|
||||
|
||||
2010-03-24 Juanma Barranquero <lekktu@gmail.com>
|
||||
|
||||
* image-dired.el (image-dired-display-thumbs): Fix typo in docstring.
|
||||
(image-dired-read-comment): Doc fix.
|
||||
|
||||
* json.el (json-object-type, json-array-type, json-key-type)
|
||||
(json-false, json-null, json-read-number):
|
||||
* minibuffer.el (completion-in-region-functions):
|
||||
* calendar/cal-tex.el (cal-tex-daily-end, cal-tex-number-weeks)
|
||||
(cal-tex-cursor-week):
|
||||
* emacs-lisp/trace.el (trace-function):
|
||||
* eshell/em-basic.el (eshell/printnl):
|
||||
* eshell/em-dirs.el (eshell-last-dir-ring, eshell-parse-drive-letter)
|
||||
(eshell-read-last-dir-ring, eshell-write-last-dir-ring):
|
||||
* obsolete/levents.el (allocate-event, event-key, event-object)
|
||||
(event-point, event-process, event-timestamp, event-to-character)
|
||||
(event-window, event-x, event-x-pixel, event-y, event-y-pixel):
|
||||
* textmodes/reftex-vars.el (reftex-index-macros-builtin)
|
||||
(reftex-section-levels, reftex-auto-recenter-toc, reftex-toc-mode-hook)
|
||||
(reftex-cite-punctuation, reftex-search-unrecursed-path-first)
|
||||
(reftex-highlight-selection): Fix typos in docstrings.
|
||||
|
||||
2010-03-24 Juanma Barranquero <lekktu@gmail.com>
|
||||
|
||||
* minibuffer.el (completion-in-region-functions): Fix docstring typos.
|
||||
|
||||
2010-03-24 Glenn Morris <rgm@gnu.org>
|
||||
|
||||
* mail/rmail.el (rmail-highlight-face): Restore option deleted
|
||||
2008-02-13 without comment; mark it obsolete.
|
||||
(rmail-highlight-headers): Use rmail-highlight-face once more.
|
||||
|
||||
2010-03-24 Chong Yidong <cyd@stupidchicken.com>
|
||||
|
||||
* woman.el (woman2-process-escapes): Only consume the newline if
|
||||
the filler character is on a line by itself (Bug#5729).
|
||||
|
||||
2010-03-24 Kenichi Handa <handa@m17n.org>
|
||||
|
||||
* language/indian.el (devanagari-composable-pattern): Add more
|
||||
consonants.
|
||||
|
||||
2010-03-24 Michael Albinus <michael.albinus@gmx.de>
|
||||
|
||||
* net/trampver.el: Update release number.
|
||||
|
||||
2010-03-24 Glenn Morris <rgm@gnu.org>
|
||||
|
||||
* Makefile.in (ELCFILES): Add cedet/semantic/imenu.el.
|
||||
|
||||
2010-03-24 Michael Albinus <michael.albinus@gmx.de>
|
||||
|
||||
* net/tramp.el (tramp-find-executable):
|
||||
Use `tramp-get-connection-buffer'. Make the regexp for checking
|
||||
output of "wc -l" more robust.
|
||||
(tramp-find-shell): Use another shell but /bin/sh on OpenSolaris.
|
||||
(tramp-open-connection-setup-interactive-shell): Remove workaround
|
||||
for OpenSolaris bug, it is not needed anymore.
|
||||
|
||||
2010-03-24 Eric M. Ludlam <zappo@gnu.org>
|
||||
|
||||
* cedet/semantic/imenu.el: New file, from the CEDET repository
|
||||
(Bug#5412).
|
||||
|
||||
2010-03-24 Glenn Morris <rgm@gnu.org>
|
||||
|
||||
* emacs-lisp/cl-macs.el (defsubst*): Add autoload cookie. (Bug#4427)
|
||||
|
||||
2010-03-24 Wilson Snyder <wsnyder@wsnyder.org>
|
||||
|
||||
* files.el (auto-mode-alist): Accept more verilog file patterns.
|
||||
|
||||
2010-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
|
||||
|
||||
* vc-dir.el (vc-dir-headers): Abbreviate the working dir.
|
||||
|
|
|
@ -134,7 +134,7 @@ At present, this only affects `cal-tex-cursor-day'."
|
|||
|
||||
(defcustom cal-tex-daily-end 20
|
||||
"The last hour of the daily LaTeX calendar page.
|
||||
At present, this only affects `cal-tex-cursor-day'"
|
||||
At present, this only affects `cal-tex-cursor-day'."
|
||||
:type 'integer
|
||||
:group 'calendar-tex)
|
||||
|
||||
|
@ -654,7 +654,7 @@ in the calendar starting in MONTH YEAR."
|
|||
|
||||
(defun cal-tex-number-weeks (month year n)
|
||||
"Determine the number of weeks in a range of dates.
|
||||
Compute the number of weeks in the calendar starting with MONTH and YEAR,
|
||||
Compute the number of weeks in the calendar starting with MONTH and YEAR,
|
||||
and lasting N months, including only the days in WHICH-DAYS. As it stands,
|
||||
this is only an upper bound."
|
||||
(let ((d (list month 1 year)))
|
||||
|
@ -683,7 +683,7 @@ this is only an upper bound."
|
|||
(defun cal-tex-cursor-week (&optional n event)
|
||||
"Make a LaTeX calendar buffer for a two-page one-week calendar.
|
||||
It applies to the week that point is in. The optional prefix
|
||||
argument N specifies the number of weeks (default 1). The calendar
|
||||
argument N specifies number of weeks (default 1). The calendar
|
||||
shows holidays if `cal-tex-holidays' is non-nil (note that diary
|
||||
entries are not shown). The calendar shows the hours 8-12am, 1-5pm."
|
||||
(interactive (list (prefix-numeric-value current-prefix-arg)
|
||||
|
@ -1778,7 +1778,7 @@ Add trailing COMMENT if present."
|
|||
(cal-tex-comment "end framebox"))
|
||||
|
||||
|
||||
(defun cal-tex-b-makebox ( width position )
|
||||
(defun cal-tex-b-makebox (width position)
|
||||
"Insert makebox with parameters WIDTH and POSITION (clr)."
|
||||
(insert "\\makebox[" width "][" position "]{" )
|
||||
(cal-tex-comment))
|
||||
|
|
537
lisp/cedet/semantic/imenu.el
Normal file
537
lisp/cedet/semantic/imenu.el
Normal file
|
@ -0,0 +1,537 @@
|
|||
;;; semantic/imenu.el --- Use Semantic as an imenu tag generator
|
||||
|
||||
;;; Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, 2007, 2008, 2010
|
||||
;; Free Software Foundation, Inc.
|
||||
|
||||
;; Author: Eric M. Ludlam <zappo@gnu.org>
|
||||
;; Maintainer: Eric Ludlam
|
||||
|
||||
;; This file is part of GNU Emacs.
|
||||
|
||||
;; GNU Emacs is free software: you can redistribute it and/or modify
|
||||
;; it under the terms of the GNU General Public License as published by
|
||||
;; the Free Software Foundation, either version 3 of the License, or
|
||||
;; (at your option) any later version.
|
||||
|
||||
;; GNU Emacs is distributed in the hope that it will be useful,
|
||||
;; but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
;; GNU General Public License for more details.
|
||||
|
||||
;; You should have received a copy of the GNU General Public License
|
||||
;; along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
;;; Commentary:
|
||||
;;
|
||||
;; This support function can be used in any buffer which supports
|
||||
;; the bovinator to create the imenu index.
|
||||
;;
|
||||
;; To use this in a buffer, do this in a hook.
|
||||
;;
|
||||
;; (add-hook 'mode-hook
|
||||
;; (lambda ()
|
||||
;; (setq imenu-create-index-function 'semantic-create-imenu-index)
|
||||
;; ))
|
||||
|
||||
(require 'semantic)
|
||||
(require 'semantic/format)
|
||||
(require 'semantic/db)
|
||||
(require 'semantic/db-file)
|
||||
(require 'semantic/sort)
|
||||
(require 'imenu)
|
||||
|
||||
(declare-function pulse-momentary-highlight-one-line "pulse" (o &optional face))
|
||||
(declare-function semanticdb-semantic-init-hook-fcn "db-mode")
|
||||
|
||||
;; Because semantic imenu tags will hose the current imenu handling
|
||||
;; code in speedbar, force semantic/sb in.
|
||||
(if (featurep 'speedbar)
|
||||
(require 'semantic/sb)
|
||||
(add-hook 'speedbar-load-hook (lambda () (require 'semantic/sb))))
|
||||
|
||||
(defgroup semantic-imenu nil
|
||||
"Semantic interface to Imenu."
|
||||
:group 'semantic
|
||||
:group 'imenu
|
||||
)
|
||||
|
||||
;;;###autoload
|
||||
(defcustom semantic-imenu-summary-function 'semantic-format-tag-abbreviate
|
||||
"*Function to use when creating items in Imenu.
|
||||
Some useful functions are found in `semantic-format-tag-functions'."
|
||||
:group 'semantic-imenu
|
||||
:type semantic-format-tag-custom-list)
|
||||
(make-variable-buffer-local 'semantic-imenu-summary-function)
|
||||
|
||||
;;;###autoload
|
||||
(defcustom semantic-imenu-bucketize-file t
|
||||
"*Non-nil if tags in a file are to be grouped into buckets."
|
||||
:group 'semantic-imenu
|
||||
:type 'boolean)
|
||||
(make-variable-buffer-local 'semantic-imenu-bucketize-file)
|
||||
|
||||
(defcustom semantic-imenu-adopt-external-members t
|
||||
"*Non-nil if types in a file should adopt externally defined members.
|
||||
C++ and CLOS can define methods that are not in the body of a class
|
||||
definition."
|
||||
:group 'semantic-imenu
|
||||
:type 'boolean)
|
||||
|
||||
(defcustom semantic-imenu-buckets-to-submenu t
|
||||
"*Non-nil if buckets of tags are to be turned into submenus.
|
||||
This option is ignored if `semantic-imenu-bucketize-file' is nil."
|
||||
:group 'semantic-imenu
|
||||
:type 'boolean)
|
||||
(make-variable-buffer-local 'semantic-imenu-buckets-to-submenu)
|
||||
|
||||
;;;###autoload
|
||||
(defcustom semantic-imenu-expand-type-members t
|
||||
"*Non-nil if types should have submenus with members in them."
|
||||
:group 'semantic-imenu
|
||||
:type 'boolean)
|
||||
(make-variable-buffer-local 'semantic-imenu-expand-type-members)
|
||||
(semantic-varalias-obsolete 'semantic-imenu-expand-type-parts
|
||||
'semantic-imenu-expand-type-members "23.2")
|
||||
|
||||
(defcustom semantic-imenu-bucketize-type-members t
|
||||
"*Non-nil if members of a type should be grouped into buckets.
|
||||
nil means to keep them in the same order.
|
||||
Overriden to nil if `semantic-imenu-bucketize-file' is nil."
|
||||
:group 'semantic-imenu
|
||||
:type 'boolean)
|
||||
(make-variable-buffer-local 'semantic-imenu-bucketize-type-parts)
|
||||
(semantic-varalias-obsolete 'semantic-imenu-bucketize-type-parts
|
||||
'semantic-imenu-bucketize-type-members "23.2")
|
||||
|
||||
(defcustom semantic-imenu-sort-bucket-function nil
|
||||
"*Function to use when sorting tags in the buckets of functions.
|
||||
See `semantic-bucketize' and the FILTER argument for more details on this function."
|
||||
:group 'semantic-imenu
|
||||
:type '(radio (const :tag "No Sorting" nil)
|
||||
(const semantic-sort-tags-by-name-increasing)
|
||||
(const semantic-sort-tags-by-name-decreasing)
|
||||
(const semantic-sort-tags-by-type-increasing)
|
||||
(const semantic-sort-tags-by-type-decreasing)
|
||||
(const semantic-sort-tags-by-name-increasing-ci)
|
||||
(const semantic-sort-tags-by-name-decreasing-ci)
|
||||
(const semantic-sort-tags-by-type-increasing-ci)
|
||||
(const semantic-sort-tags-by-type-decreasing-ci)
|
||||
(function)))
|
||||
(make-variable-buffer-local 'semantic-imenu-sort-bucket-function)
|
||||
|
||||
(defcustom semantic-imenu-index-directory nil
|
||||
"*Non nil to index the entire directory for tags.
|
||||
Doesn't actually parse the entire directory, but displays tags for all files
|
||||
currently listed in the current Semantic database.
|
||||
This variable has no meaning if semanticdb is not active."
|
||||
:group 'semantic-imenu
|
||||
:type 'boolean)
|
||||
|
||||
(defcustom semantic-imenu-auto-rebuild-directory-indexes nil
|
||||
"*If non-nil automatically rebuild directory index imenus.
|
||||
That is when a directory index imenu is updated, automatically rebuild
|
||||
other buffer local ones based on the same semanticdb."
|
||||
:group 'semantic-imenu
|
||||
:type 'boolean)
|
||||
|
||||
(defvar semantic-imenu-directory-current-file nil
|
||||
"When building a file index, this is the file name currently being built.")
|
||||
|
||||
(defvar semantic-imenu-auto-rebuild-running nil
|
||||
"Non-nil if `semantic-imenu-rebuild-directory-indexes' is running.")
|
||||
|
||||
;;;###autoload
|
||||
(defvar semantic-imenu-expandable-tag-classes '(type)
|
||||
"List of expandable tag classes.
|
||||
Tags of those classes will be given submenu with children.
|
||||
By default, a `type' has interesting children. In Texinfo, however, a
|
||||
`section' has interesting children.")
|
||||
(make-variable-buffer-local 'semantic-imenu-expandable-tag-classes)
|
||||
(semantic-varalias-obsolete 'semantic-imenu-expandable-token
|
||||
'semantic-imenu-expandable-tag-classes "23.2")
|
||||
|
||||
;;; Code:
|
||||
(defun semantic-imenu-tag-overlay (tag)
|
||||
"Return the overlay belonging to tag.
|
||||
If TAG doesn't have an overlay, and instead as a vector of positions,
|
||||
concoct a combination of file name, and position."
|
||||
(let ((o (semantic-tag-overlay tag)))
|
||||
(if (not (semantic-overlay-p o))
|
||||
(let ((v (make-vector 3 nil)))
|
||||
(aset v 0 semantic-imenu-directory-current-file)
|
||||
(aset v 1 (aref o 0))
|
||||
(aset v 2 (aref o 1))
|
||||
v)
|
||||
o)))
|
||||
|
||||
|
||||
(defun semantic-imenu-goto-function (name position &optional rest)
|
||||
"Move point associated with NAME to POSITION.
|
||||
Used to override function `imenu-default-goto-function' so that we can continue
|
||||
to use overlays to maintain the current position.
|
||||
Optional argument REST is some extra stuff."
|
||||
(require 'pulse)
|
||||
(if (semantic-overlay-p position)
|
||||
(let ((os (semantic-overlay-start position))
|
||||
(ob (semantic-overlay-buffer position)))
|
||||
(if os
|
||||
(progn
|
||||
(if (not (eq ob (current-buffer)))
|
||||
(switch-to-buffer ob))
|
||||
(imenu-default-goto-function name os rest)
|
||||
(pulse-momentary-highlight-one-line (point))
|
||||
)
|
||||
;; This should never happen, but check anyway.
|
||||
(message "Imenu is out of date, try again. (internal bug)")
|
||||
(setq imenu--index-alist nil)))
|
||||
;; When the POSITION is actually a pair of numbers in an array, then
|
||||
;; the file isn't loaded into the current buffer.
|
||||
(if (vectorp position)
|
||||
(let ((file (aref position 0))
|
||||
(pos (aref position 1)))
|
||||
(and file (find-file file))
|
||||
(imenu-default-goto-function name pos rest)
|
||||
(pulse-momentary-highlight-one-line (point))
|
||||
)
|
||||
;; When the POSITION is the symbol 'file-only' it means that this
|
||||
;; is a directory index entry and there is no tags in this
|
||||
;; file. So just jump to the beginning of the file.
|
||||
(if (eq position 'file-only)
|
||||
(progn
|
||||
(find-file name)
|
||||
(imenu-default-goto-function name (point-min) rest)
|
||||
(pulse-momentary-highlight-one-line (point))
|
||||
)
|
||||
;; Probably POSITION don't came from a semantic imenu. Try
|
||||
;; the default imenu goto function.
|
||||
(condition-case nil
|
||||
(progn
|
||||
(imenu-default-goto-function name position rest)
|
||||
(pulse-momentary-highlight-one-line (point))
|
||||
)
|
||||
(error
|
||||
(message "Semantic Imenu override problem. (Internal bug)")
|
||||
(setq imenu--index-alist nil)))))
|
||||
))
|
||||
|
||||
(defun semantic-imenu-flush-fcn (&optional ignore)
|
||||
"This function is called as a hook to clear the imenu cache.
|
||||
It is cleared after any parsing.
|
||||
IGNORE arguments."
|
||||
(if (eq imenu-create-index-function 'semantic-create-imenu-index)
|
||||
(setq imenu--index-alist nil
|
||||
imenu-menubar-modified-tick 0))
|
||||
(remove-hook 'semantic-after-toplevel-cache-change-hook
|
||||
'semantic-imenu-flush-fcn t)
|
||||
(remove-hook 'semantic-after-partial-cache-change-hook
|
||||
'semantic-imenu-flush-fcn t)
|
||||
)
|
||||
|
||||
;;;###autoload
|
||||
(defun semantic-create-imenu-index (&optional stream)
|
||||
"Create an imenu index for any buffer which supports Semantic.
|
||||
Uses the output of the Semantic parser to create the index.
|
||||
Optional argument STREAM is an optional stream of tags used to create menus."
|
||||
(setq imenu-default-goto-function 'semantic-imenu-goto-function)
|
||||
(prog1
|
||||
(if (and semantic-imenu-index-directory
|
||||
(featurep 'semanticdb)
|
||||
(semanticdb-minor-mode-p))
|
||||
(semantic-create-imenu-directory-index
|
||||
(or stream (semantic-fetch-tags-fast)))
|
||||
(semantic-create-imenu-index-1
|
||||
(or stream (semantic-fetch-tags-fast)) nil))
|
||||
(semantic-make-local-hook 'semantic-after-toplevel-cache-change-hook)
|
||||
(add-hook 'semantic-after-toplevel-cache-change-hook
|
||||
'semantic-imenu-flush-fcn nil t)
|
||||
(semantic-make-local-hook 'semantic-after-partial-cache-change-hook)
|
||||
(add-hook 'semantic-after-partial-cache-change-hook
|
||||
'semantic-imenu-flush-fcn nil t)))
|
||||
|
||||
(defun semantic-create-imenu-directory-index (&optional stream)
|
||||
"Create an IMENU tag index based on all files active in semanticdb.
|
||||
Optional argument STREAM is the stream of tags for the current buffer."
|
||||
(if (not semanticdb-current-database)
|
||||
(semantic-create-imenu-index-1 stream nil)
|
||||
;; We have a database, list all files, with the current file on top.
|
||||
(let ((index (list
|
||||
(cons (oref semanticdb-current-table file)
|
||||
(or (semantic-create-imenu-index-1 stream nil)
|
||||
;; No tags in this file
|
||||
'file-only))))
|
||||
(tables (semanticdb-get-database-tables semanticdb-current-database)))
|
||||
(while tables
|
||||
(let ((semantic-imenu-directory-current-file
|
||||
(oref (car tables) file))
|
||||
tags)
|
||||
(when (and (not (eq (car tables) semanticdb-current-table))
|
||||
(semanticdb-live-p (car tables))
|
||||
(semanticdb-equivalent-mode (car tables))
|
||||
)
|
||||
(setq tags (oref (car tables) tags)
|
||||
index (cons (cons semantic-imenu-directory-current-file
|
||||
(or (and tags
|
||||
;; don't pass nil stream because
|
||||
;; it will use the current
|
||||
;; buffer
|
||||
(semantic-create-imenu-index-1
|
||||
(oref (car tables) tags)
|
||||
nil))
|
||||
;; no tags in the file
|
||||
'file-only))
|
||||
index)))
|
||||
(setq tables (cdr tables))))
|
||||
|
||||
;; If enabled automatically rebuild other imenu directory
|
||||
;; indexes based on the same Semantic database
|
||||
(or (not semantic-imenu-auto-rebuild-directory-indexes)
|
||||
;; If auto rebuild already in progress does nothing
|
||||
semantic-imenu-auto-rebuild-running
|
||||
(unwind-protect
|
||||
(progn
|
||||
(setq semantic-imenu-auto-rebuild-running t)
|
||||
(semantic-imenu-rebuild-directory-indexes
|
||||
semanticdb-current-database))
|
||||
(setq semantic-imenu-auto-rebuild-running nil)))
|
||||
|
||||
(nreverse index))))
|
||||
|
||||
(defun semantic-create-imenu-index-1 (stream &optional parent)
|
||||
"Create an imenu index for any buffer which supports Semantic.
|
||||
Uses the output of the Semantic parser to create the index.
|
||||
STREAM is a stream of tags used to create menus.
|
||||
Optional argument PARENT is a tag parent of STREAM."
|
||||
(let ((tags stream)
|
||||
(semantic-imenu-adopt-external-members
|
||||
semantic-imenu-adopt-external-members))
|
||||
;; If we should regroup, do so.
|
||||
(if semantic-imenu-adopt-external-members
|
||||
(setq tags (semantic-adopt-external-members tags)
|
||||
;; Don't allow recursion here.
|
||||
semantic-imenu-adopt-external-members nil))
|
||||
;; Test for bucketing vs not.
|
||||
(if semantic-imenu-bucketize-file
|
||||
(let ((buckets (semantic-bucketize
|
||||
tags parent
|
||||
semantic-imenu-sort-bucket-function))
|
||||
item name
|
||||
index)
|
||||
(cond
|
||||
((null buckets)
|
||||
nil)
|
||||
((or (cdr-safe buckets) ;; if buckets has more than one item in it.
|
||||
(not semantic-imenu-buckets-to-submenu)) ;; to force separators between buckets
|
||||
(while buckets
|
||||
(setq name (car (car buckets))
|
||||
item (cdr (car buckets)))
|
||||
(if semantic-imenu-buckets-to-submenu
|
||||
(progn
|
||||
;; Make submenus
|
||||
(if item
|
||||
(setq index
|
||||
(cons (cons name
|
||||
(semantic-create-imenu-subindex item))
|
||||
index))))
|
||||
;; Glom everything together with "---" between
|
||||
(if item
|
||||
(setq index
|
||||
(append index
|
||||
;; do not create a menu separator in the parent menu
|
||||
;; when creating a sub-menu
|
||||
(if (memq (semantic-tag-class (car item))
|
||||
semantic-imenu-expandable-tag-classes)
|
||||
(semantic-create-imenu-subindex item)
|
||||
(cons
|
||||
'("---")
|
||||
(semantic-create-imenu-subindex item)))))
|
||||
))
|
||||
(setq buckets (cdr buckets)))
|
||||
(if semantic-imenu-buckets-to-submenu
|
||||
(nreverse index)
|
||||
index))
|
||||
(t
|
||||
(setq name (car (car buckets))
|
||||
item (cdr (car buckets)))
|
||||
(semantic-create-imenu-subindex item))))
|
||||
;; Else, group everything together
|
||||
(semantic-create-imenu-subindex tags))))
|
||||
|
||||
(defun semantic-create-imenu-subindex (tags)
|
||||
"From TAGS, create an imenu index of interesting things."
|
||||
(let ((notypecheck (not semantic-imenu-expand-type-members))
|
||||
children index tag parts)
|
||||
(while tags
|
||||
(setq tag (car tags)
|
||||
children (semantic-tag-components-with-overlays tag))
|
||||
(if (and (not notypecheck)
|
||||
(memq (semantic-tag-class tag)
|
||||
semantic-imenu-expandable-tag-classes)
|
||||
children
|
||||
)
|
||||
;; to keep an homogeneous menu organisation, type menu items
|
||||
;; always have a sub-menu with at least the *definition*
|
||||
;; item (even if the tag has no type components)
|
||||
(progn
|
||||
(setq parts children)
|
||||
;; There is options which create the submenu
|
||||
;; * Type has an overlay, but children do.
|
||||
;; The type doesn't have to have it's own overlay,
|
||||
;; but a type with no overlay and no children should be
|
||||
;; invalid.
|
||||
(setq index
|
||||
(cons
|
||||
(cons
|
||||
(funcall semantic-imenu-summary-function tag)
|
||||
;; Add a menu for getting at the type definitions
|
||||
(if (and parts
|
||||
;; Note to self: enable menu items for
|
||||
;; sub parts even if they are not proper
|
||||
;; tags.
|
||||
(semantic-tag-p (car parts)))
|
||||
(let ((submenu
|
||||
(if (and semantic-imenu-bucketize-type-members
|
||||
semantic-imenu-bucketize-file)
|
||||
(semantic-create-imenu-index-1 parts tag)
|
||||
(semantic-create-imenu-subindex parts))))
|
||||
;; Only add a *definition* if we have a postion
|
||||
;; in that type tag.
|
||||
(if (semantic-tag-with-position-p tag)
|
||||
(cons
|
||||
(cons "*definition*"
|
||||
(semantic-imenu-tag-overlay tag))
|
||||
submenu)
|
||||
submenu))
|
||||
;; There were no parts, or something like that, so
|
||||
;; instead just put the definition here.
|
||||
(if (semantic-tag-with-position-p tag)
|
||||
(semantic-imenu-tag-overlay tag)
|
||||
nil)
|
||||
))
|
||||
index)))
|
||||
(if (semantic-tag-with-position-p tag)
|
||||
(setq index (cons
|
||||
(cons
|
||||
(funcall semantic-imenu-summary-function tag)
|
||||
(semantic-imenu-tag-overlay tag))
|
||||
index))))
|
||||
(setq tags (cdr tags)))
|
||||
;; `imenu--split-submenus' sort submenus according to
|
||||
;; `imenu-sort-function' setting and split them up if they are
|
||||
;; longer than `imenu-max-items'.
|
||||
(imenu--split-submenus (nreverse index))))
|
||||
|
||||
;;; directory imenu rebuilding.
|
||||
;;
|
||||
(defun semantic-imenu-rebuild-directory-indexes (db)
|
||||
"Rebuild directory index imenus based on Semantic database DB."
|
||||
(let ((l (buffer-list))
|
||||
b)
|
||||
(while l
|
||||
(setq b (car l)
|
||||
l (cdr l))
|
||||
(if (and (not (eq b (current-buffer)))
|
||||
(buffer-live-p b))
|
||||
(with-current-buffer b
|
||||
;; If there is a buffer local Semantic index directory
|
||||
;; imenu
|
||||
(when (and (eq imenu-create-index-function
|
||||
'semantic-create-imenu-index)
|
||||
semanticdb-current-database
|
||||
(eq semanticdb-current-database db))
|
||||
;; Rebuild the imenu
|
||||
(imenu--cleanup)
|
||||
(setq imenu--index-alist nil)
|
||||
(funcall
|
||||
(if (fboundp 'imenu-menu-filter)
|
||||
;; XEmacs imenu
|
||||
'imenu-menu-filter
|
||||
;; Emacs imenu
|
||||
'imenu-update-menubar))))))))
|
||||
|
||||
(defun semantic-imenu-semanticdb-hook ()
|
||||
"Function to be called from `semanticdb-mode-hook'.
|
||||
Clears all imenu menus that may be depending on the database."
|
||||
(require 'semantic/db-mode)
|
||||
(semantic-map-buffers
|
||||
#'(lambda ()
|
||||
;; Set up semanticdb environment if enabled.
|
||||
(if (semanticdb-minor-mode-p)
|
||||
(semanticdb-semantic-init-hook-fcn))
|
||||
;; Clear imenu cache to redraw the imenu.
|
||||
(semantic-imenu-flush-fcn))))
|
||||
|
||||
(add-hook 'semanticdb-mode-hook 'semantic-imenu-semanticdb-hook)
|
||||
|
||||
;;; Interactive Utilities
|
||||
;;
|
||||
(defun semantic-imenu-toggle-bucketize-file ()
|
||||
"Toggle the ability of imenu to bucketize the current file."
|
||||
(interactive)
|
||||
(setq semantic-imenu-bucketize-file (not semantic-imenu-bucketize-file))
|
||||
;; Force a rescan
|
||||
(setq imenu--index-alist nil))
|
||||
|
||||
(defun semantic-imenu-toggle-buckets-to-submenu ()
|
||||
"Toggle the ability of imenu to turn buckets into submenus."
|
||||
(interactive)
|
||||
(setq semantic-imenu-buckets-to-submenu (not semantic-imenu-buckets-to-submenu))
|
||||
;; Force a rescan
|
||||
(setq imenu--index-alist nil))
|
||||
|
||||
(defun semantic-imenu-toggle-bucketize-type-parts ()
|
||||
"Toggle the ability of imenu to bucketize the current file."
|
||||
(interactive)
|
||||
(setq semantic-imenu-bucketize-type-members (not semantic-imenu-bucketize-type-members))
|
||||
;; Force a rescan
|
||||
(setq imenu--index-alist nil))
|
||||
|
||||
;;; Which function support
|
||||
;;
|
||||
;; The which-function library will display the current function in the
|
||||
;; mode line. It tries do do this through imenu. With a semantic parsed
|
||||
;; buffer, there is a much more efficient way of doing this.
|
||||
;; Advise `which-function' so that we optionally use semantic tags
|
||||
;; instead, and get better stuff.
|
||||
(require 'advice)
|
||||
|
||||
(defvar semantic-which-function 'semantic-default-which-function
|
||||
"Function to convert semantic tags into `which-function' text.")
|
||||
|
||||
(defcustom semantic-which-function-use-color nil
|
||||
"*Use color when displaying the current function with `which-function'."
|
||||
:group 'semantic-imenu
|
||||
:type 'boolean)
|
||||
|
||||
(defun semantic-default-which-function (taglist)
|
||||
"Convert TAGLIST into a string usable by `which-function'.
|
||||
Returns the first tag name in the list, unless it is a type,
|
||||
in which case it concatenates them together."
|
||||
(cond ((eq (length taglist) 1)
|
||||
(semantic-format-tag-abbreviate
|
||||
(car taglist) nil semantic-which-function-use-color))
|
||||
((memq (semantic-tag-class (car taglist))
|
||||
semantic-imenu-expandable-tag-classes)
|
||||
(concat (semantic-format-tag-name
|
||||
(car taglist) nil semantic-which-function-use-color)
|
||||
(car semantic-type-relation-separator-character)
|
||||
;; recurse until we no longer have a type
|
||||
;; or any tags left.
|
||||
(semantic-default-which-function (cdr taglist))))
|
||||
(t (semantic-format-tag-abbreviate
|
||||
(car taglist) nil semantic-which-function-use-color))))
|
||||
|
||||
;; (defadvice which-function (around semantic-which activate)
|
||||
;; "Choose the function to display via semantic if it is currently active."
|
||||
;; (if (and (featurep 'semantic) semantic--buffer-cache)
|
||||
;; (let ((ol (semantic-find-tag-by-overlay)))
|
||||
;; (setq ad-return-value (funcall semantic-which-function ol)))
|
||||
;; ad-do-it))
|
||||
|
||||
(provide 'semantic/imenu)
|
||||
|
||||
;; Local variables:
|
||||
;; generated-autoload-file: "loaddefs.el"
|
||||
;; generated-autoload-load-name: "semantic/imenu"
|
||||
;; End:
|
||||
|
||||
;;; semantic/imenu.el ends here
|
|
@ -66,7 +66,7 @@ Format is from the `file-attributes' function.")
|
|||
If this is nil, then this template table belongs to a set of generic
|
||||
templates that can be used with no additional dictionary values.
|
||||
When it is non-nil, it is assumed the template macros need specialized
|
||||
Emacs Lisp code to fill in the dictoinary.")
|
||||
Emacs Lisp code to fill in the dictionary.")
|
||||
(priority :initarg :priority
|
||||
:type number
|
||||
:documentation
|
||||
|
|
|
@ -273,8 +273,8 @@ Not documented
|
|||
|
||||
;;;***
|
||||
|
||||
;;;### (autoloads (compiler-macroexpand define-compiler-macro assert
|
||||
;;;;;; check-type typep deftype cl-struct-setf-expander defstruct
|
||||
;;;### (autoloads (defsubst* compiler-macroexpand define-compiler-macro
|
||||
;;;;;; assert check-type typep deftype cl-struct-setf-expander defstruct
|
||||
;;;;;; define-modify-macro callf2 callf letf* letf rotatef shiftf
|
||||
;;;;;; remf cl-do-pop psetf setf get-setf-method defsetf define-setf-method
|
||||
;;;;;; declare the locally multiple-value-setq multiple-value-bind
|
||||
|
@ -282,7 +282,7 @@ Not documented
|
|||
;;;;;; flet progv psetq do-all-symbols do-symbols dotimes dolist
|
||||
;;;;;; do* do loop return-from return block etypecase typecase ecase
|
||||
;;;;;; case load-time-value eval-when destructuring-bind function*
|
||||
;;;;;; defmacro* defun* gentemp gensym) "cl-macs" "cl-macs.el" "e10a7e42199c08dc39460f67dd2d424b")
|
||||
;;;;;; defmacro* defun* gentemp gensym) "cl-macs" "cl-macs.el" "273ba25f4a116c61a464dbe55f1f8c63")
|
||||
;;; Generated autoloads from cl-macs.el
|
||||
|
||||
(autoload 'gensym "cl-macs" "\
|
||||
|
@ -739,6 +739,14 @@ Not documented
|
|||
|
||||
\(fn FORM)" nil nil)
|
||||
|
||||
(autoload 'defsubst* "cl-macs" "\
|
||||
Define NAME as a function.
|
||||
Like `defun', except the function is automatically declared `inline',
|
||||
ARGLIST allows full Common Lisp conventions, and BODY is implicitly
|
||||
surrounded by (block NAME ...).
|
||||
|
||||
\(fn NAME ARGLIST [DOCSTRING] BODY...)" nil (quote macro))
|
||||
|
||||
;;;***
|
||||
|
||||
;;;### (autoloads (tree-equal nsublis sublis nsubst-if-not nsubst-if
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
;;; cl-macs.el --- Common Lisp macros
|
||||
|
||||
;; Copyright (C) 1993, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
|
||||
;; Free Software Foundation, Inc.
|
||||
;; Copyright (C) 1993, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008,
|
||||
;; 2009, 2010 Free Software Foundation, Inc.
|
||||
|
||||
;; Author: Dave Gillespie <daveg@synaptics.com>
|
||||
;; Version: 2.02
|
||||
|
@ -2596,6 +2596,7 @@ and then returning foo."
|
|||
(byte-compile-normal-call form)
|
||||
(byte-compile-form form)))
|
||||
|
||||
;;;###autoload
|
||||
(defmacro defsubst* (name args &rest body)
|
||||
"Define NAME as a function.
|
||||
Like `defun', except the function is automatically declared `inline',
|
||||
|
|
|
@ -253,7 +253,7 @@
|
|||
For every call of FUNCTION Lisp-style trace messages that display argument
|
||||
and return values will be inserted into BUFFER. This function generates the
|
||||
trace advice for FUNCTION and activates it together with any other advice
|
||||
there might be!! The trace BUFFER will popup whenever FUNCTION is called.
|
||||
there might be!! The trace BUFFER will popup whenever FUNCTION is called.
|
||||
Do not use this to trace functions that switch buffers or do any other
|
||||
display oriented stuff, use `trace-function-background' instead."
|
||||
(interactive
|
||||
|
|
|
@ -125,7 +125,7 @@ or `eshell-printn' for display."
|
|||
(eshell-echo args output-newline)))
|
||||
|
||||
(defun eshell/printnl (&rest args)
|
||||
"Print out each of the argument, separated by newlines."
|
||||
"Print out each of the arguments, separated by newlines."
|
||||
(let ((elems (eshell-flatten-list args)))
|
||||
(while elems
|
||||
(eshell-printn (eshell-echo (list (car elems))))
|
||||
|
|
|
@ -178,7 +178,7 @@ thing again."
|
|||
Thus, this does not include the current directory.")
|
||||
|
||||
(defvar eshell-last-dir-ring nil
|
||||
"The last directory that eshell was in.")
|
||||
"The last directory that Eshell was in.")
|
||||
|
||||
;;; Functions:
|
||||
|
||||
|
@ -267,7 +267,7 @@ Thus, this does not include the current directory.")
|
|||
(char-to-string (char-before))))
|
||||
|
||||
(defun eshell-parse-drive-letter ()
|
||||
"An argument beginning X:[^/] is a drive letter reference."
|
||||
"An argument beginning with X:[^/] is a drive letter reference."
|
||||
(when (and (not eshell-current-argument)
|
||||
(looking-at "\\([A-Za-z]:\\)\\([^/\\\\]\\|\\'\\)"))
|
||||
(goto-char (match-end 1))
|
||||
|
@ -517,7 +517,7 @@ in the minibuffer:
|
|||
msg)))
|
||||
|
||||
(defun eshell-read-last-dir-ring ()
|
||||
"Sets the buffer's `eshell-last-dir-ring' from a history file."
|
||||
"Set the buffer's `eshell-last-dir-ring' from a history file."
|
||||
(let ((file eshell-last-dir-ring-file-name))
|
||||
(cond
|
||||
((or (null file)
|
||||
|
@ -545,7 +545,7 @@ in the minibuffer:
|
|||
(setq eshell-last-dir-ring ring))))))
|
||||
|
||||
(defun eshell-write-last-dir-ring ()
|
||||
"Writes the buffer's `eshell-last-dir-ring' to a history file."
|
||||
"Write the buffer's `eshell-last-dir-ring' to a history file."
|
||||
(let ((file eshell-last-dir-ring-file-name))
|
||||
(cond
|
||||
((or (null file)
|
||||
|
|
|
@ -590,7 +590,7 @@ the default for new frames (this is done automatically each time an
|
|||
attribute is changed on all frames).
|
||||
|
||||
ARGS must come in pairs ATTRIBUTE VALUE. ATTRIBUTE must be a valid
|
||||
face attribute name. All attributes can be set to `unspecified';
|
||||
face attribute name. All attributes can be set to `unspecified';
|
||||
this fact is not further mentioned below.
|
||||
|
||||
The following attributes are recognized:
|
||||
|
@ -988,9 +988,9 @@ Otherwise, return a single face."
|
|||
(defun face-valid-attribute-values (attribute &optional frame)
|
||||
"Return valid values for face attribute ATTRIBUTE.
|
||||
The optional argument FRAME is used to determine available fonts
|
||||
and colors. If it is nil or not specified, the selected frame is
|
||||
used. Value is an alist of (NAME . VALUE) if ATTRIBUTE expects a value
|
||||
out of a set of discrete values. Value is `integerp' if ATTRIBUTE expects
|
||||
and colors. If it is nil or not specified, the selected frame is used.
|
||||
Value is an alist of (NAME . VALUE) if ATTRIBUTE expects a value out
|
||||
of a set of discrete values. Value is `integerp' if ATTRIBUTE expects
|
||||
an integer value."
|
||||
(let ((valid
|
||||
(case attribute
|
||||
|
|
|
@ -1,3 +1,11 @@
|
|||
2010-03-24 Juanma Barranquero <lekktu@gmail.com>
|
||||
|
||||
* message.el (message-interactive): Doc fix.
|
||||
(message-qmail-inject-args): Reflow.
|
||||
(message-kill-to-signature): Fix typo in docstring.
|
||||
|
||||
* smiley.el (smiley-buffer): Fix typo in docstring.
|
||||
|
||||
2010-03-24 Glenn Morris <rgm@gnu.org>
|
||||
|
||||
* mail-source.el (gnus-message): Declare.
|
||||
|
|
|
@ -440,7 +440,7 @@ whitespace)."
|
|||
;; Default to the value of `mail-interactive', available in all Emacsen
|
||||
;; that Gnus supports.
|
||||
"Non-nil means when sending a message wait for and display errors.
|
||||
nil means let mailer mail back a message to report errors."
|
||||
A value of nil means let mailer mail back a message to report errors."
|
||||
:version "23.2"
|
||||
:group 'message-sending
|
||||
:group 'message-mail
|
||||
|
@ -861,8 +861,8 @@ If this is nil, use `user-mail-address'. If it is the symbol
|
|||
|
||||
(defcustom message-qmail-inject-args nil
|
||||
"Arguments passed to qmail-inject programs.
|
||||
This should be a list of strings, one string for each argument. It
|
||||
may also be a function.
|
||||
This should be a list of strings, one string for each argument.
|
||||
It may also be a function.
|
||||
|
||||
For e.g., if you wish to set the envelope sender address so that bounces
|
||||
go to the right place or to deal with listserv's usage of that address, you
|
||||
|
@ -3254,7 +3254,7 @@ or in the synonym headers, defined by `message-header-synonyms'."
|
|||
|
||||
(defun message-kill-to-signature (&optional arg)
|
||||
"Kill all text up to the signature.
|
||||
If a numberic argument or prefix arg is given, leave that number
|
||||
If a numeric argument or prefix arg is given, leave that number
|
||||
of lines before the signature intact."
|
||||
(interactive "P")
|
||||
(save-excursion
|
||||
|
|
|
@ -196,8 +196,8 @@ A list of images is returned."
|
|||
|
||||
;;;###autoload
|
||||
(defun smiley-buffer (&optional buffer)
|
||||
"Run `smiley-region' at the buffer, specified in the argument or
|
||||
interactively. If there's no argument, do it at the current buffer"
|
||||
"Run `smiley-region' at the BUFFER, specified in the argument or
|
||||
interactively. If there's no argument, do it at the current buffer."
|
||||
(interactive "bBuffer to run smiley-region: ")
|
||||
(save-excursion
|
||||
(if buffer
|
||||
|
|
|
@ -801,7 +801,7 @@ you have the dired buffer in the left window and the
|
|||
With optional argument APPEND, append thumbnail to thumbnail buffer
|
||||
instead of erasing it first.
|
||||
|
||||
Option argument DO-NOT-POP controls if `pop-to-buffer' should be
|
||||
Optional argument DO-NOT-POP controls if `pop-to-buffer' should be
|
||||
used or not. If non-nil, use `display-buffer' instead of
|
||||
`pop-to-buffer'. This is used from functions like
|
||||
`image-dired-next-line-and-display' and
|
||||
|
@ -2113,8 +2113,7 @@ FILE-COMMENTS is an alist on the following form:
|
|||
|
||||
(defun image-dired-read-comment (&optional file)
|
||||
"Read comment for an image.
|
||||
Read comment for an image, optionally using old comment from FILE
|
||||
as initial value."
|
||||
Optionally use old comment from FILE as initial value."
|
||||
(let ((comment
|
||||
(read-string
|
||||
"Comment: "
|
||||
|
|
|
@ -85,8 +85,10 @@ special; we don't actually use them here."
|
|||
(defun indent-for-tab-command (&optional arg)
|
||||
"Indent line or region in proper way for current major mode or insert a tab.
|
||||
Depending on `tab-always-indent', either insert a tab or indent.
|
||||
If initial point was within line's indentation, position after
|
||||
the indentation. Else stay at same point in text.
|
||||
|
||||
In most major modes, if point was in the current line's indentation,
|
||||
it is moved to the first non-whitespace character after indenting;
|
||||
otherwise it stays at the same position in the text.
|
||||
|
||||
If a prefix argument is given, also rigidly indent the entire
|
||||
balanced expression which starts at the beginning of the current
|
||||
|
|
12
lisp/json.el
12
lisp/json.el
|
@ -62,12 +62,12 @@
|
|||
|
||||
(defvar json-object-type 'alist
|
||||
"Type to convert JSON objects to.
|
||||
Must be one of `alist', `plist', or `hash-table'. Consider let-binding
|
||||
Must be one of `alist', `plist', or `hash-table'. Consider let-binding
|
||||
this around your call to `json-read' instead of `setq'ing it.")
|
||||
|
||||
(defvar json-array-type 'vector
|
||||
"Type to convert JSON arrays to.
|
||||
Must be one of `vector' or `list'. Consider let-binding this around
|
||||
Must be one of `vector' or `list'. Consider let-binding this around
|
||||
your call to `json-read' instead of `setq'ing it.")
|
||||
|
||||
(defvar json-key-type nil
|
||||
|
@ -83,19 +83,19 @@ If nil, `json-read' will guess the type based on the value of
|
|||
`plist' `keyword'
|
||||
|
||||
Note that values other than `string' might behave strangely for
|
||||
Sufficiently Weird keys. Consider let-binding this around your call to
|
||||
Sufficiently Weird keys. Consider let-binding this around your call to
|
||||
`json-read' instead of `setq'ing it.")
|
||||
|
||||
(defvar json-false :json-false
|
||||
"Value to use when reading JSON `false'.
|
||||
If this has the same value as `json-null', you might not be able to tell
|
||||
the difference between `false' and `null'. Consider let-binding this
|
||||
the difference between `false' and `null'. Consider let-binding this
|
||||
around your call to `json-read' instead of `setq'ing it.")
|
||||
|
||||
(defvar json-null nil
|
||||
"Value to use when reading JSON `null'.
|
||||
If this has the same value as `json-false', you might not be able to
|
||||
tell the difference between `false' and `null'. Consider let-binding
|
||||
tell the difference between `false' and `null'. Consider let-binding
|
||||
this around your call to `json-read' instead of `setq'ing it.")
|
||||
|
||||
|
||||
|
@ -218,7 +218,7 @@ KEYWORD is the keyword expected."
|
|||
|
||||
(defun json-read-number (&optional sign)
|
||||
"Read the JSON number following point.
|
||||
The optional SIGN argument is for internal use.
|
||||
The optional SIGN argument is for internal use.
|
||||
|
||||
N.B.: Only numbers which can fit in Emacs Lisp's native number
|
||||
representation will be parsed correctly."
|
||||
|
|
|
@ -141,7 +141,7 @@ South Indian language Malayalam is supported in this language environment."))
|
|||
(defconst devanagari-composable-pattern
|
||||
(let ((table
|
||||
'(("V" . "[\u0904-\u0914\u0960-\u0961\u0972]") ; independent vowel
|
||||
("C" . "[\u0915-\u0939]") ; consonant
|
||||
("C" . "[\u0915-\u0939\u0958-\u095F\u097B-\u097C\u097E-\u097F]") ; consonant
|
||||
("R" . "\u0930") ; RA
|
||||
("n" . "\u093C") ; NUKTA
|
||||
("H" . "\u094D") ; HALANT
|
||||
|
|
|
@ -381,6 +381,20 @@ The variable `rmail-highlighted-headers' specifies which headers."
|
|||
:group 'rmail-headers
|
||||
:version "22.1")
|
||||
|
||||
;; This was removed in Emacs 23.1 with no notification, an unnecessary
|
||||
;; incompatible change.
|
||||
(defcustom rmail-highlight-face 'rmail-highlight
|
||||
"Face used by Rmail for highlighting headers."
|
||||
;; Note that nil doesn't actually mean use the default face, it
|
||||
;; means use either bold or highlight. It's not worth fixing this
|
||||
;; now that this is obsolete.
|
||||
:type '(choice (const :tag "Default" nil)
|
||||
face)
|
||||
:group 'rmail-headers)
|
||||
(make-obsolete-variable 'rmail-highlight-face
|
||||
"customize the face `rmail-highlight' instead."
|
||||
"23.2")
|
||||
|
||||
(defface rmail-header-name
|
||||
'((t (:inherit font-lock-function-name-face)))
|
||||
"Face to use for highlighting the header names.
|
||||
|
@ -2883,7 +2897,7 @@ using the coding system CODING."
|
|||
|
||||
(defun rmail-highlight-headers ()
|
||||
"Highlight the headers specified by `rmail-highlighted-headers'.
|
||||
Uses the face `rmail-highlight'."
|
||||
Uses the face specified by `rmail-highlight-face'."
|
||||
(if rmail-highlighted-headers
|
||||
(save-excursion
|
||||
(search-forward "\n\n" nil 'move)
|
||||
|
@ -2891,6 +2905,11 @@ Uses the face `rmail-highlight'."
|
|||
(narrow-to-region (point-min) (point))
|
||||
(let ((case-fold-search t)
|
||||
(inhibit-read-only t)
|
||||
;; When rmail-highlight-face is removed, just
|
||||
;; use 'rmail-highlight here.
|
||||
(face (or rmail-highlight-face
|
||||
(if (face-differs-from-default-p 'bold)
|
||||
'bold 'highlight)))
|
||||
;; List of overlays to reuse.
|
||||
(overlays rmail-overlay-list))
|
||||
(goto-char (point-min))
|
||||
|
@ -2909,12 +2928,12 @@ Uses the face `rmail-highlight'."
|
|||
(progn
|
||||
(setq overlay (car overlays)
|
||||
overlays (cdr overlays))
|
||||
(overlay-put overlay 'face 'rmail-highlight)
|
||||
(overlay-put overlay 'face face)
|
||||
(move-overlay overlay beg (point)))
|
||||
;; Make a new overlay and add it to
|
||||
;; rmail-overlay-list.
|
||||
(setq overlay (make-overlay beg (point)))
|
||||
(overlay-put overlay 'face 'rmail-highlight)
|
||||
(overlay-put overlay 'face face)
|
||||
(setq rmail-overlay-list
|
||||
(cons overlay rmail-overlay-list))))))))))
|
||||
|
||||
|
|
|
@ -1,3 +1,15 @@
|
|||
2010-03-24 Juanma Barranquero <lekktu@gmail.com>
|
||||
|
||||
* mh-scan.el (mh-scan-cmd-note-width): Doc fix.
|
||||
(mh-scan-format-mh, mh-scan-body-regexp, mh-scan-cur-msg-number-regexp)
|
||||
(mh-scan-cur-msg-number-regexp, mh-scan-date-regexp)
|
||||
(mh-scan-deleted-msg-regexp, mh-scan-good-msg-regexp)
|
||||
(mh-scan-msg-format-regexp, mh-scan-msg-format-string)
|
||||
(mh-scan-msg-number-regexp, mh-scan-rcpt-regexp)
|
||||
(mh-scan-refiled-msg-regexp, mh-scan-sent-to-me-sender-regexp)
|
||||
(mh-scan-subject-regexp, mh-update-scan-format)
|
||||
(mh-msg-num-width-to-column): Fix typos in docstrings.
|
||||
|
||||
2010-03-10 Chong Yidong <cyd@stupidchicken.com>
|
||||
|
||||
* Branch for 23.2.
|
||||
|
|
|
@ -61,7 +61,7 @@
|
|||
"%{subject}%<{body}<<%{body}%>")
|
||||
"*Scan format string for MH.
|
||||
This string is passed to the scan program via the -format
|
||||
argument. This format is identical to the default except that
|
||||
argument. This format is identical to the default except that
|
||||
additional hints for fontification have been added to the fifth
|
||||
column (remember that in Emacs, the first column is 0).
|
||||
|
||||
|
@ -109,14 +109,14 @@ non-empty Newsgroups: field is present.")
|
|||
Note that the default setting of `mh-folder-font-lock-keywords'
|
||||
expects this expression to contain at least one parenthesized
|
||||
expression which matches the body text as in the default of
|
||||
\"\\\\(<<\\\\([^\\n]+\\\\)?\\\\)\". If this regular expression is
|
||||
\"\\\\(<<\\\\([^\\n]+\\\\)?\\\\)\". If this regular expression is
|
||||
not correct, the body fragment will not be highlighted with the
|
||||
face `mh-folder-body'.")
|
||||
|
||||
(defvar mh-scan-cur-msg-number-regexp "^\\( *[0-9]+\\+\\).*"
|
||||
"This regular expression matches the current message.
|
||||
|
||||
It must match from the beginning of the line. Note that the
|
||||
It must match from the beginning of the line. Note that the
|
||||
default setting of `mh-folder-font-lock-keywords' expects this
|
||||
expression to contain at least one parenthesized expression which
|
||||
matches the message number as in the default of
|
||||
|
@ -125,9 +125,9 @@ matches the message number as in the default of
|
|||
|
||||
This expression includes the leading space and current message
|
||||
marker \"+\" within the parenthesis since it looks better to
|
||||
highlight these items as well. The highlighting is done with the
|
||||
face `mh-folder-cur-msg-number'. This regular expression should
|
||||
be correct as it is needed by non-fontification functions. See
|
||||
highlight these items as well. The highlighting is done with the
|
||||
face `mh-folder-cur-msg-number'. This regular expression should
|
||||
be correct as it is needed by non-fontification functions. See
|
||||
also `mh-note-cur'.")
|
||||
|
||||
(defvar mh-scan-date-regexp "\\([0-9][0-9]/[0-9][0-9]\\)"
|
||||
|
@ -137,14 +137,14 @@ It must not be anchored to the beginning or the end of the line.
|
|||
Note that the default setting of `mh-folder-font-lock-keywords'
|
||||
expects this expression to contain only one parenthesized
|
||||
expression which matches the date field as in the default of
|
||||
\"\\\\([0-9][0-9]/[0-9][0-9]\\\\)\"}. If this regular expression
|
||||
\"\\\\([0-9][0-9]/[0-9][0-9]\\\\)\"}. If this regular expression
|
||||
is not correct, the date will not be highlighted with the face
|
||||
`mh-folder-date'.")
|
||||
|
||||
(defvar mh-scan-deleted-msg-regexp "^\\( *[0-9]+\\)D"
|
||||
"This regular expression matches deleted messages.
|
||||
|
||||
It must match from the beginning of the line. Note that the
|
||||
It must match from the beginning of the line. Note that the
|
||||
default setting of `mh-folder-font-lock-keywords' expects this
|
||||
expression to contain at least one parenthesized expression which
|
||||
matches the message number as in the default of
|
||||
|
@ -152,15 +152,15 @@ matches the message number as in the default of
|
|||
\"^\\\\( *[0-9]+\\\\)D\".
|
||||
|
||||
This expression includes the leading space within the parenthesis
|
||||
since it looks better to highlight it as well. The highlighting
|
||||
is done with the face `mh-folder-deleted'. This regular
|
||||
since it looks better to highlight it as well. The highlighting
|
||||
is done with the face `mh-folder-deleted'. This regular
|
||||
expression should be correct as it is needed by non-fontification
|
||||
functions. See also `mh-note-deleted'.")
|
||||
functions. See also `mh-note-deleted'.")
|
||||
|
||||
(defvar mh-scan-good-msg-regexp "^\\( *[0-9]+\\)[^D^0-9]"
|
||||
"This regular expression matches \"good\" messages.
|
||||
|
||||
It must match from the beginning of the line. Note that the
|
||||
It must match from the beginning of the line. Note that the
|
||||
default setting of `mh-folder-font-lock-keywords' expects this
|
||||
expression to contain at least one parenthesized expression which
|
||||
matches the message number as in the default of
|
||||
|
@ -168,8 +168,8 @@ matches the message number as in the default of
|
|||
\"^\\\\( *[0-9]+\\\\)[^D^0-9]\".
|
||||
|
||||
This expression includes the leading space within the parenthesis
|
||||
since it looks better to highlight it as well. The highlighting
|
||||
is done with the face `mh-folder-msg-number'. This regular
|
||||
since it looks better to highlight it as well. The highlighting
|
||||
is done with the face `mh-folder-msg-number'. This regular
|
||||
expression should be correct as it is needed by non-fontification
|
||||
functions.")
|
||||
|
||||
|
@ -177,21 +177,21 @@ functions.")
|
|||
"This regular expression finds the message number width in a scan format.
|
||||
|
||||
Note that the message number must be placed in a parenthesized
|
||||
expression as in the default of \"%\\\\([0-9]*\\\\)(msg)\". This
|
||||
expression as in the default of \"%\\\\([0-9]*\\\\)(msg)\". This
|
||||
variable is only consulted if `mh-scan-format-file' is set to
|
||||
\"Use MH-E scan Format\".")
|
||||
|
||||
(defvar mh-scan-msg-format-string "%d"
|
||||
"This is a format string for width of the message number in a scan format.
|
||||
|
||||
Use \"0%d\" for zero-filled message numbers. This variable is only
|
||||
Use \"0%d\" for zero-filled message numbers. This variable is only
|
||||
consulted if `mh-scan-format-file' is set to \"Use MH-E scan
|
||||
Format\".")
|
||||
|
||||
(defvar mh-scan-msg-number-regexp "^ *\\([0-9]+\\)"
|
||||
"This regular expression extracts the message number.
|
||||
|
||||
It must match from the beginning of the line. Note that the
|
||||
It must match from the beginning of the line. Note that the
|
||||
message number must be placed in a parenthesized expression as in
|
||||
the default of \"^ *\\\\([0-9]+\\\\)\".")
|
||||
|
||||
|
@ -211,9 +211,9 @@ message number within the expression as in the default of
|
|||
Note that the default setting of `mh-folder-font-lock-keywords'
|
||||
expects this expression to contain two parenthesized expressions.
|
||||
The first is expected to match the \"To:\" that the default scan
|
||||
format file generates. The second is expected to match the
|
||||
format file generates. The second is expected to match the
|
||||
recipient's name as in the default of
|
||||
\"\\\\(To:\\\\)\\\\(..............\\\\)\". If this regular
|
||||
\"\\\\(To:\\\\)\\\\(..............\\\\)\". If this regular
|
||||
expression is not correct, the \"To:\" string will not be
|
||||
highlighted with the face `mh-folder-to' and the recipient will
|
||||
not be highlighted with the face `mh-folder-address'")
|
||||
|
@ -221,7 +221,7 @@ not be highlighted with the face `mh-folder-address'")
|
|||
(defvar mh-scan-refiled-msg-regexp "^\\( *[0-9]+\\)\\^"
|
||||
"This regular expression matches refiled messages.
|
||||
|
||||
It must match from the beginning of the line. Note that the
|
||||
It must match from the beginning of the line. Note that the
|
||||
default setting of `mh-folder-font-lock-keywords' expects this
|
||||
expression to contain at least one parenthesized expression which
|
||||
matches the message number as in the default of
|
||||
|
@ -229,10 +229,10 @@ matches the message number as in the default of
|
|||
\"^\\\\( *[0-9]+\\\\)\\\\^\".
|
||||
|
||||
This expression includes the leading space within the parenthesis
|
||||
since it looks better to highlight it as well. The highlighting
|
||||
is done with the face `mh-folder-refiled'. This regular
|
||||
since it looks better to highlight it as well. The highlighting
|
||||
is done with the face `mh-folder-refiled'. This regular
|
||||
expression should be correct as it is needed by non-fontification
|
||||
functions. See also `mh-note-refiled'.")
|
||||
functions. See also `mh-note-refiled'.")
|
||||
|
||||
(defvar mh-scan-sent-to-me-sender-regexp
|
||||
"^ *[0-9]+.\\([bct]\\).....[ ]*\\(..................\\)"
|
||||
|
@ -240,7 +240,7 @@ functions. See also `mh-note-refiled'.")
|
|||
|
||||
Note that the default setting of `mh-folder-font-lock-keywords'
|
||||
expects this expression to contain at least two parenthesized
|
||||
expressions. The first should match the fontification hint (see
|
||||
expressions. The first should match the fontification hint (see
|
||||
`mh-scan-format-nmh') and the second should match the user name
|
||||
as in the default of
|
||||
|
||||
|
@ -255,15 +255,15 @@ highlighted with the face `mh-folder-sent-to-me-sender'.")
|
|||
"^ *[0-9]+........[ ]*...................\\([Rr][Ee]\\(\\[[0-9]+\\]\\)?:\\s-*\\)*\\([^<\n]*\\)"
|
||||
"This regular expression matches the subject.
|
||||
|
||||
It must match from the beginning of the line. Note that the
|
||||
It must match from the beginning of the line. Note that the
|
||||
default setting of `mh-folder-font-lock-keywords' expects this
|
||||
expression to contain at least three parenthesized expressions.
|
||||
The first is expected to match the \"Re:\" string, if any, and is
|
||||
highlighted with the face `mh-folder-followup'. The second
|
||||
highlighted with the face `mh-folder-followup'. The second
|
||||
matches an optional bracketed number after \"Re:\", such as in
|
||||
\"Re[2]:\" (and is thus a sub-expression of the first expression)
|
||||
and the third is expected to match the subject line itself which
|
||||
is highlighted with the face `mh-folder-subject'. For example,
|
||||
is highlighted with the face `mh-folder-subject'. For example,
|
||||
the default (broken on multiple lines for readability) is
|
||||
|
||||
^ *[0-9]+........[ ]*...................
|
||||
|
@ -296,9 +296,9 @@ Note that columns in Emacs start with 0.")
|
|||
(defvar mh-scan-cmd-note-width 1
|
||||
"Number of columns consumed by the cmd-note field in `mh-scan-format'.
|
||||
|
||||
This column will have one of the values: \" \", \"D\", \"^\", \"+\" and
|
||||
where \" \" is the default value,
|
||||
This column will have one of the values: \" \", \"D\", \"^\", \"+\", where
|
||||
|
||||
\" \" is the default value,
|
||||
\"D\" is the `mh-note-deleted' character,
|
||||
\"^\" is the `mh-note-refiled' character, and
|
||||
\"+\" is the `mh-note-cur' character.")
|
||||
|
@ -434,7 +434,7 @@ Note that columns in Emacs start with 0."
|
|||
"Return a scan format with the (msg) width in the FMT replaced with WIDTH.
|
||||
|
||||
The message number width portion of the format is discovered
|
||||
using `mh-scan-msg-format-regexp'. Its replacement is controlled
|
||||
using `mh-scan-msg-format-regexp'. Its replacement is controlled
|
||||
with `mh-scan-msg-format-string'."
|
||||
(or (and
|
||||
(string-match mh-scan-msg-format-regexp fmt)
|
||||
|
@ -469,7 +469,7 @@ Note that columns in Emacs start with 0.
|
|||
|
||||
If `mh-scan-format-file' is set to \"Use MH-E scan Format\" this
|
||||
means that either `mh-scan-format-mh' or `mh-scan-format-nmh' are
|
||||
in use. This function therefore assumes that the first column is
|
||||
in use. This function therefore assumes that the first column is
|
||||
empty (to provide room for the cursor), the following WIDTH
|
||||
columns contain the message number, and the column for notations
|
||||
comes after that."
|
||||
|
|
|
@ -1102,12 +1102,12 @@ variables.")
|
|||
(exit-minibuffer))
|
||||
|
||||
(defvar completion-in-region-functions nil
|
||||
"Wrapper hook around `complete-in-region'.
|
||||
"Wrapper hook around `completion-in-region'.
|
||||
The functions on this special hook are called with 5 arguments:
|
||||
NEXT-FUN START END COLLECTION PREDICATE.
|
||||
NEXT-FUN is a function of four arguments (START END COLLECTION PREDICATE)
|
||||
that performs the default operation. The other four argument are like
|
||||
the ones passed to `complete-in-region'. The functions on this hook
|
||||
that performs the default operation. The other four arguments are like
|
||||
the ones passed to `completion-in-region'. The functions on this hook
|
||||
are expected to perform completion on START..END using COLLECTION
|
||||
and PREDICATE, either by calling NEXT-FUN or by doing it themselves.")
|
||||
|
||||
|
|
|
@ -6295,7 +6295,7 @@ only in DIRLIST.
|
|||
Returns the absolute file name of PROGNAME, if found, and nil otherwise.
|
||||
|
||||
This function expects to be in the right *tramp* buffer."
|
||||
(with-current-buffer (tramp-get-buffer vec)
|
||||
(with-current-buffer (tramp-get-connection-buffer vec)
|
||||
(let (result)
|
||||
;; Check whether the executable is in $PATH. "which(1)" does not
|
||||
;; report always a correct error code; therefore we check the
|
||||
|
@ -6303,7 +6303,7 @@ This function expects to be in the right *tramp* buffer."
|
|||
(unless ignore-path
|
||||
(tramp-send-command vec (format "which \\%s | wc -w" progname))
|
||||
(goto-char (point-min))
|
||||
(if (looking-at "^1$")
|
||||
(if (looking-at "^\\s-*1$")
|
||||
(setq result (concat "\\" progname))))
|
||||
(unless result
|
||||
(when ignore-tilde
|
||||
|
@ -6404,12 +6404,15 @@ file exists and nonzero exit status otherwise."
|
|||
(with-current-buffer (tramp-get-buffer vec)
|
||||
(tramp-send-command vec "echo ~root" t)
|
||||
(cond
|
||||
((string-match "^~root$" (buffer-string))
|
||||
((or (string-match "^~root$" (buffer-string))
|
||||
;; The default shell (ksh93) of OpenSolaris is buggy.
|
||||
(string-equal (tramp-get-connection-property vec "uname" "")
|
||||
"SunOS 5.11"))
|
||||
(setq shell
|
||||
(or (tramp-find-executable
|
||||
vec "bash" (tramp-get-remote-path vec) t)
|
||||
vec "bash" (tramp-get-remote-path vec) t t)
|
||||
(tramp-find-executable
|
||||
vec "ksh" (tramp-get-remote-path vec) t)))
|
||||
vec "ksh" (tramp-get-remote-path vec) t t)))
|
||||
(unless shell
|
||||
(tramp-error
|
||||
vec 'file-error
|
||||
|
@ -6838,9 +6841,11 @@ process to set up. VEC specifies the connection."
|
|||
;; "test foo; echo $?" to check if various conditions hold, and
|
||||
;; there are buggy /bin/sh implementations which don't execute the
|
||||
;; "echo $?" part if the "test" part has an error. In particular,
|
||||
;; the Solaris /bin/sh is a problem. I'm betting that all systems
|
||||
;; with buggy /bin/sh implementations will have a working bash or
|
||||
;; ksh. Whee...
|
||||
;; the OpenSolaris /bin/sh is a problem. There are also other
|
||||
;; problems with /bin/sh of OpenSolaris, like redirection of stderr
|
||||
;; in in function declarations, or changing HISTFILE in place.
|
||||
;; Therefore, OpenSolaris' /bin/sh is replaced by bash, when
|
||||
;; detected.
|
||||
(tramp-find-shell vec)
|
||||
|
||||
;; Disable unexpected output.
|
||||
|
@ -6849,12 +6854,6 @@ process to set up. VEC specifies the connection."
|
|||
;; Set the environment.
|
||||
(tramp-message vec 5 "Setting default environment")
|
||||
|
||||
;; On OpenSolaris, there is a bug when HISTFILE is changed in place
|
||||
;; <http://bugs.opensolaris.org/view_bug.do?bug_id=6834184>. We
|
||||
;; apply the workaround.
|
||||
(if (string-equal (tramp-get-connection-property vec "uname" "") "SunOS 5.11")
|
||||
(tramp-send-command vec "unset HISTFILE" t))
|
||||
|
||||
(let ((env (copy-sequence tramp-remote-process-environment))
|
||||
unset item)
|
||||
(while env
|
||||
|
|
|
@ -29,7 +29,7 @@
|
|||
;; "autoconf && ./configure" to change them. (X)Emacs version check is defined
|
||||
;; in macro AC_EMACS_INFO of aclocal.m4; should be changed only there.
|
||||
|
||||
(defconst tramp-version "2.1.18-pre"
|
||||
(defconst tramp-version "2.1.18-23.2"
|
||||
"This version of Tramp.")
|
||||
|
||||
(defconst tramp-bug-report-address "tramp-devel@gnu.org"
|
||||
|
|
|
@ -61,7 +61,7 @@
|
|||
(put 'timeout 'event-symbol-elements '(eval))
|
||||
|
||||
(defun allocate-event ()
|
||||
"Returns an empty event structure.
|
||||
"Return an empty event structure.
|
||||
In this emulation, it returns nil."
|
||||
nil)
|
||||
|
||||
|
@ -142,7 +142,7 @@ It will be the next event read after all pending events."
|
|||
(nth 1 event))
|
||||
|
||||
(defun event-key (event)
|
||||
"Returns the KeySym of the given key-press event.
|
||||
"Return the KeySym of the given key-press event.
|
||||
The value is an ASCII printing character (not upper case) or a symbol."
|
||||
(if (symbolp event)
|
||||
(car (get event 'event-symbol-elements))
|
||||
|
@ -150,11 +150,11 @@ The value is an ASCII printing character (not upper case) or a symbol."
|
|||
(downcase (if (< base 32) (logior base 64) base)))))
|
||||
|
||||
(defun event-object (event)
|
||||
"Returns the function argument of the given timeout, menu, or eval event."
|
||||
"Return the function argument of the given timeout, menu, or eval event."
|
||||
(nth 2 event))
|
||||
|
||||
(defun event-point (event)
|
||||
"Returns the character position of the given mouse-related event.
|
||||
"Return the character position of the given mouse-related event.
|
||||
If the event did not occur over a window, or did
|
||||
not occur over text, then this returns nil. Otherwise, it returns an index
|
||||
into the buffer visible in the event's window."
|
||||
|
@ -201,18 +201,18 @@ or for window WINDOW if that is specified."
|
|||
(window-start start-window)))))
|
||||
|
||||
(defun event-process (event)
|
||||
"Returns the process of the given process-output event."
|
||||
"Return the process of the given process-output event."
|
||||
(nth 1 event))
|
||||
|
||||
(defun event-timestamp (event)
|
||||
"Returns the timestamp of the given event object.
|
||||
"Return the timestamp of the given event object.
|
||||
In Lucid Emacs, this works for any kind of event.
|
||||
In this emulation, it returns nil for non-mouse-related events."
|
||||
(and (listp event)
|
||||
(posn-timestamp (event-end event))))
|
||||
|
||||
(defun event-to-character (event &optional lenient)
|
||||
"Returns the closest ASCII approximation to the given event object.
|
||||
"Return the closest ASCII approximation to the given event object.
|
||||
If the event isn't a keypress, this returns nil.
|
||||
If the second argument is non-nil, then this is lenient in its
|
||||
translation; it will ignore modifier keys other than control and meta,
|
||||
|
@ -229,25 +229,25 @@ will be returned for events which have no direct ASCII equivalent."
|
|||
event nil)))
|
||||
|
||||
(defun event-window (event)
|
||||
"Returns the window of the given mouse-related event object."
|
||||
"Return the window of the given mouse-related event object."
|
||||
(posn-window (event-end event)))
|
||||
|
||||
(defun event-x (event)
|
||||
"Returns the X position in characters of the given mouse-related event."
|
||||
"Return the X position in characters of the given mouse-related event."
|
||||
(/ (car (posn-col-row (event-end event)))
|
||||
(frame-char-width (window-frame (event-window event)))))
|
||||
|
||||
(defun event-x-pixel (event)
|
||||
"Returns the X position in pixels of the given mouse-related event."
|
||||
"Return the X position in pixels of the given mouse-related event."
|
||||
(car (posn-col-row (event-end event))))
|
||||
|
||||
(defun event-y (event)
|
||||
"Returns the Y position in characters of the given mouse-related event."
|
||||
"Return the Y position in characters of the given mouse-related event."
|
||||
(/ (cdr (posn-col-row (event-end event)))
|
||||
(frame-char-height (window-frame (event-window event)))))
|
||||
|
||||
(defun event-y-pixel (event)
|
||||
"Returns the Y position in pixels of the given mouse-related event."
|
||||
"Return the Y position in pixels of the given mouse-related event."
|
||||
(cdr (posn-col-row (event-end event))))
|
||||
|
||||
(defun key-press-event-p (obj)
|
||||
|
|
|
@ -2624,7 +2624,7 @@ comment at the start of cc-engine.el for more info."
|
|||
(< (point-max) c-state-old-cpp-end)))
|
||||
(point-max)
|
||||
(min (point-max) c-state-old-cpp-beg)))
|
||||
(while (and c-state-cache (> (c-state-cache-top-lparen) upper-lim))
|
||||
(while (and c-state-cache (>= (c-state-cache-top-lparen) upper-lim))
|
||||
(setq c-state-cache (cdr c-state-cache)))
|
||||
;; If `upper-lim' is inside the last recorded brace pair, remove its
|
||||
;; RBrace and indicate we'll need to search backwards for a previous
|
||||
|
|
|
@ -272,7 +272,7 @@ not be enclosed in { } or ( )."
|
|||
"Characters to skip to find a line that might be a dependency.")
|
||||
|
||||
(defvar makefile-rule-action-regex
|
||||
"^\t[ \t]*\\([-@]*\\)[ \t]*\\(\\(?:.*\\\\\n\\)*.*\\)"
|
||||
"^\t[ \t]*\\(?:\\([-@]+\\)[ \t]*\\)\\(.*\\(?:\\\\\n.*\\)*\\)"
|
||||
"Regex used to highlight rule action lines in font lock mode.")
|
||||
|
||||
(defconst makefile-makepp-rule-action-regex
|
||||
|
@ -355,8 +355,9 @@ not be enclosed in { } or ( )."
|
|||
(3 'font-lock-string-face prepend t))
|
||||
|
||||
;; Rule actions.
|
||||
;; FIXME: When this spans multiple lines we need font-lock-multiline.
|
||||
(makefile-match-action
|
||||
(1 font-lock-type-face)
|
||||
(1 font-lock-type-face nil t)
|
||||
(2 'makefile-shell prepend)
|
||||
;; Only makepp has builtin commands.
|
||||
(3 font-lock-builtin-face prepend t))
|
||||
|
|
|
@ -359,7 +359,7 @@ property of the major mode name.")
|
|||
(put 'html-mode 'flyspell-mode-predicate 'sgml-mode-flyspell-verify)
|
||||
(put 'nxml-mode 'flyspell-mode-predicate 'sgml-mode-flyspell-verify)
|
||||
|
||||
(declare-function sgml-lexical-context "sgml-mode" &optional limit)
|
||||
(autoload 'sgml-lexical-context "sgml-mode")
|
||||
|
||||
(defun sgml-mode-flyspell-verify ()
|
||||
"Function used for `flyspell-generic-check-word-predicate' in SGML mode.
|
||||
|
|
|
@ -100,22 +100,22 @@
|
|||
|
||||
("enumerate" ?i "item:" "~\\ref{%s}" item
|
||||
(regexp "items?" "Punkte?"))
|
||||
|
||||
|
||||
("equation" ?e "eq:" "~(\\ref{%s})" t
|
||||
(regexp "equations?" "eqs?\\." "eqn\\." "Gleichung\\(en\\)?" "Gl\\."))
|
||||
("eqnarray" ?e "eq:" nil eqnarray-like)
|
||||
|
||||
|
||||
("figure" ?f "fig:" "~\\ref{%s}" caption
|
||||
(regexp "figure?[sn]?" "figs?\\." "Abbildung\\(en\\)?" "Abb\\."))
|
||||
("figure*" ?f nil nil caption)
|
||||
|
||||
|
||||
("table" ?t "tab:" "~\\ref{%s}" caption
|
||||
(regexp "tables?" "tab\\." "Tabellen?"))
|
||||
("table*" ?t nil nil caption)
|
||||
|
||||
|
||||
("\\footnote[]{}" ?n "fn:" "~\\ref{%s}" 2
|
||||
(regexp "footnotes?" "Fussnoten?"))
|
||||
|
||||
|
||||
("any" ?\ " " "~\\ref{%s}" nil)
|
||||
|
||||
;; The label macro is hard coded, but it *could* be defined like this:
|
||||
|
@ -207,7 +207,7 @@ The following conventions are valid for all alist entries:
|
|||
`?t' should point to a textual citation (citation as a noun).
|
||||
`?p' should point to a parenthetical citation.")
|
||||
|
||||
(defconst reftex-index-macros-builtin
|
||||
(defconst reftex-index-macros-builtin
|
||||
'((default "Default \\index and \\glossary macros"
|
||||
(("\\index{*}" "idx" ?i "" nil t)
|
||||
("\\glossary{*}" "glo" ?g "" nil t)))
|
||||
|
@ -219,9 +219,9 @@ The following conventions are valid for all alist entries:
|
|||
(Index-Shortcut "index.sty with \\shortindexingon"
|
||||
(("\\index[]{*}" 1 ?i "" nil t)
|
||||
("\\index*[]{*}" 1 ?I "" nil nil)
|
||||
("^[]{*}" 1 ?^ "" texmathp t)
|
||||
("^[]{*}" 1 ?^ "" texmathp t)
|
||||
("_[]{*}" 1 ?_ "" texmathp nil))))
|
||||
"Builtin stuff for reftex-index-macros.
|
||||
"Builtin stuff for `reftex-index-macros'.
|
||||
Lower-case symbols correspond to a style file of the same name in the LaTeX
|
||||
distribution. Mixed-case symbols are convenience aliases.")
|
||||
)
|
||||
|
@ -231,7 +231,7 @@ distribution. Mixed-case symbols are convenience aliases.")
|
|||
(defgroup reftex nil
|
||||
"LaTeX label and citation support."
|
||||
:tag "RefTeX"
|
||||
:link '(url-link :tag "Home Page"
|
||||
:link '(url-link :tag "Home Page"
|
||||
"http://staff.science.uva.nl/~dominik/Tools/reftex/")
|
||||
:link '(emacs-commentary-link :tag "Commentary in reftex.el" "reftex.el")
|
||||
:link '(custom-manual "(reftex)Top")
|
||||
|
@ -280,7 +280,7 @@ the backslash). The cdr is a number indicating its level. A negative
|
|||
level means the same level as the positive value, but the section will
|
||||
never get a number. The cdr may also be a function which will be called
|
||||
to after the section-re matched to determine the level.
|
||||
This list is also used for promotion and demption of sectioning commands.
|
||||
This list is also used for promotion and demotion of sectioning commands.
|
||||
If you are using a document class which has several sets of sectioning
|
||||
commands, promotion only works correctly if this list is sorted first
|
||||
by set, then within each set by level. The promotion commands always
|
||||
|
@ -318,7 +318,7 @@ are currently working in. Recentering happens whenever Emacs is idle for
|
|||
more than `reftex-idle-time' seconds.
|
||||
|
||||
Value t means, turn on immediately when RefTeX gets started. Then,
|
||||
recentering will work for any toc window created during the session.
|
||||
recentering will work for any TOC window created during the session.
|
||||
|
||||
Value 'frame (the default) means, turn automatic recentering on only while the
|
||||
dedicated TOC frame does exist, and do the recentering only in that frame. So
|
||||
|
@ -326,14 +326,14 @@ when creating that frame (with \"d\" key in an ordinary TOC window), the
|
|||
automatic recentering is turned on. When the frame gets destroyed, automatic
|
||||
recentering is turned off again.
|
||||
|
||||
This feature can be turned on and off from the menu
|
||||
This feature can be turned on and off from the menu
|
||||
\(Ref->Options)."
|
||||
:group 'reftex-table-of-contents-browser
|
||||
:type '(choice
|
||||
(const :tag "never" nil)
|
||||
(const :tag "always" t)
|
||||
(const :tag "in dedicated frame only" frame)))
|
||||
|
||||
|
||||
(defcustom reftex-toc-split-windows-horizontally nil
|
||||
"*Non-nil means, create TOC window by splitting window horizontally."
|
||||
:group 'reftex-table-of-contents-browser
|
||||
|
@ -407,7 +407,7 @@ When nil, follow-mode will be suspended for stuff in unvisited files."
|
|||
:type 'boolean)
|
||||
|
||||
(defcustom reftex-toc-mode-hook nil
|
||||
"Mode hook for reftex-toc-mode."
|
||||
"Mode hook for `reftex-toc-mode'."
|
||||
:group 'reftex-table-of-contents-browser
|
||||
:type 'hook)
|
||||
|
||||
|
@ -425,7 +425,7 @@ When nil, follow-mode will be suspended for stuff in unvisited files."
|
|||
'(amsmath endnotes fancybox floatfig longtable picinpar
|
||||
rotating sidecap subfigure supertab wrapfig LaTeX)
|
||||
"Default label alist specifications. LaTeX should always be the last entry.
|
||||
The value of this variable is a list of symbols with associations in the
|
||||
The value of this variable is a list of symbols with associations in the
|
||||
constant `reftex-label-alist-builtin'. Check that constant for a full list
|
||||
of options."
|
||||
:group 'reftex-defining-label-environments
|
||||
|
@ -624,7 +624,7 @@ list. However, builtin defaults should normally be set with the variable
|
|||
(defcustom reftex-section-prefixes '((0 . "part:") (1 . "cha:") (t . "sec:"))
|
||||
"Prefixes for section labels.
|
||||
When the label prefix given in an entry in `reftex-label-alist' contains `%S',
|
||||
this list is used to determine the correct prefix string depending on the
|
||||
this list is used to determine the correct prefix string depending on the
|
||||
current section level.
|
||||
The list is an alist, with each entry of the form (KEY . PREFIX)
|
||||
Possible keys are sectioning macro names like `chapter', section levels
|
||||
|
@ -686,7 +686,7 @@ non-footnote labels."
|
|||
(regexp)
|
||||
(repeat :tag "List"
|
||||
(string :tag "prefix (with colon)"))))
|
||||
|
||||
|
||||
(defcustom reftex-special-environment-functions nil
|
||||
"List of functions to be called when trying to figure out current environment.
|
||||
These are special functions to detect \"environments\" which do not
|
||||
|
@ -732,7 +732,7 @@ And here is the setup for RefTeX:
|
|||
(let ((pos (point)) p1)
|
||||
(save-excursion
|
||||
;; Search for any of the linguex item macros at the beginning of a line
|
||||
(if (re-search-backward
|
||||
(if (re-search-backward
|
||||
\"^[ \\t]*\\\\(\\\\\\\\\\\\(ex\\\\|a\\\\|b\\\\|c\\\\|d\\\\|e\\\\|f\\\\)g?\\\\.\\\\)\" bound t)
|
||||
(progn
|
||||
(setq p1 (match-beginning 1))
|
||||
|
@ -742,7 +742,7 @@ And here is the setup for RefTeX:
|
|||
nil
|
||||
;; OK, we got it
|
||||
(cons \"linguex\" p1)))
|
||||
;; Return nil for not found
|
||||
;; Return nil for not found
|
||||
nil))))
|
||||
|
||||
3. Tell RefTeX to use this function
|
||||
|
@ -941,7 +941,7 @@ This is used to string together whole reference sets, like
|
|||
|
||||
(defcustom reftex-vref-is-default nil
|
||||
"*Non-nil means, the varioref macro \\vref is used as default.
|
||||
In the selection buffer, the `v' key toggles the reference macro between
|
||||
In the selection buffer, the `v' key toggles the reference macro between
|
||||
`\\ref' and `\\vref'. The value of this variable determines the default
|
||||
which is active when entering the selection process.
|
||||
Instead of nil or t, this may also be a string of type letters indicating
|
||||
|
@ -952,7 +952,7 @@ the label types for which it should be true."
|
|||
|
||||
(defcustom reftex-fref-is-default nil
|
||||
"*Non-nil means, the fancyref macro \\fref is used as default.
|
||||
In the selection buffer, the `V' key toggles the reference macro between
|
||||
In the selection buffer, the `V' key toggles the reference macro between
|
||||
`\\ref', `\\fref' and `\\Fref'. The value of this variable determines
|
||||
the default which is active when entering the selection process.
|
||||
Instead of nil or t, this may also be a string of type letters indicating
|
||||
|
@ -979,7 +979,7 @@ a label type. If you set this variable to nil, RefTeX will always prompt."
|
|||
|
||||
(defcustom reftex-format-ref-function nil
|
||||
"Function which produces the string to insert as a reference.
|
||||
Normally should be nil, because the format to insert a reference can
|
||||
Normally should be nil, because the format to insert a reference can
|
||||
already be specified in `reftex-label-alist'.
|
||||
This hook also is used by the special commands to insert `\\vref' and `\\fref'
|
||||
references, so even if you set this, your setting will be ignored by
|
||||
|
@ -1060,13 +1060,13 @@ It is also possible to access all other BibTeX database fields:
|
|||
%i institution %j journal %k key %m month
|
||||
%n number %o organization %p pages %P first page
|
||||
%r address %s school %u publisher %t title
|
||||
%v volume %y year
|
||||
%v volume %y year
|
||||
%B booktitle, abbreviated %T title, abbreviated
|
||||
|
||||
Usually, only %l is needed. The other stuff is mainly for the echo area
|
||||
display, and for (setq reftex-comment-citations t).
|
||||
|
||||
%< as a special operator kills punctuation and space around it after the
|
||||
%< as a special operator kills punctuation and space around it after the
|
||||
string has been formatted.
|
||||
|
||||
A pair of square brackets indicates an optional argument, and RefTeX
|
||||
|
@ -1081,7 +1081,7 @@ will be prompted for a character to select one of the possible format
|
|||
strings.
|
||||
In order to configure this variable, you can either set
|
||||
`reftex-cite-format' directly yourself or set it to the SYMBOL of one of
|
||||
the predefined styles. The predefined symbols are those which have an
|
||||
the predefined styles. The predefined symbols are those which have an
|
||||
association in the constant `reftex-cite-format-builtin'.
|
||||
E.g.: (setq reftex-cite-format 'natbib)"
|
||||
:group 'reftex-citation-support
|
||||
|
@ -1164,8 +1164,8 @@ possible percent escapes."
|
|||
(defcustom reftex-cite-punctuation '(", " " \\& " " {\\it et al.}")
|
||||
"Punctuation for formatting of name lists in citations.
|
||||
This is a list of 3 strings.
|
||||
1. normal names separator, like \", \" in Jones, Brown and Miller
|
||||
2. final names separator, like \" and \" in Jones, Brown and Miller
|
||||
1. Normal names separator, like \", \" in Jones, Brown and Miller
|
||||
2. Final names separator, like \" and \" in Jones, Brown and Miller
|
||||
3. The \"et al\" string, like \" {\\it et al.}\" in Jones {\\it et al.}"
|
||||
:group 'reftex-citation-support
|
||||
:type '(list
|
||||
|
@ -1175,7 +1175,7 @@ This is a list of 3 strings.
|
|||
|
||||
(defcustom reftex-format-cite-function nil
|
||||
"Function which produces the string to insert as a citation.
|
||||
Normally should be nil, because the format to insert a reference can
|
||||
Normally should be nil, because the format to insert a reference can
|
||||
already be specified in `reftex-cite-format'.
|
||||
The function will be called with two arguments, the CITATION KEY and the
|
||||
DEFAULT FORMAT, which is taken from `reftex-cite-format'. The function
|
||||
|
@ -1258,7 +1258,7 @@ package here."
|
|||
:group 'reftex-index-support
|
||||
:set 'reftex-set-dirty
|
||||
:type `(list
|
||||
(repeat
|
||||
(repeat
|
||||
:inline t
|
||||
(list :value ("" "idx" ?a "" nil)
|
||||
(string :tag "Macro with args")
|
||||
|
@ -1285,7 +1285,7 @@ package here."
|
|||
This is a list with (MACRO-KEY DEFAULT-TAG).
|
||||
|
||||
MACRO-KEY: Character identifying an index macro - see `reftex-index-macros'.
|
||||
DEFAULT-TAG: This is the tag to be used if the macro requires a TAG argument.
|
||||
DEFAULT-TAG: This is the tag to be used if the macro requires a TAG argument.
|
||||
When this is nil and a TAG is needed, RefTeX will ask for it.
|
||||
When this is the empty string and the TAG argument of the index
|
||||
macro is optional, the TAG argument will be omitted."
|
||||
|
@ -1426,7 +1426,7 @@ to that section."
|
|||
|
||||
(defcustom reftex-index-include-context nil
|
||||
"*Non-nil means, display the index definition context in the index buffer.
|
||||
This flag may also be toggled from the index buffer with the `c' key."
|
||||
This flag may also be toggled from the index buffer with the `c' key."
|
||||
:group 'reftex-index-support
|
||||
:type 'boolean)
|
||||
|
||||
|
@ -1449,7 +1449,7 @@ This is used when `reftex-view-crossref' is called with point in an
|
|||
argument of a macro. Note that crossref viewing for citations,
|
||||
references (both ways) and index entries is hard-coded. This variable
|
||||
is only to configure additional structures for which crossreference
|
||||
viewing can be useful. Each entry has the structure
|
||||
viewing can be useful. Each entry has the structure
|
||||
|
||||
\(MACRO-RE SEARCH-RE HIGHLIGHT).
|
||||
|
||||
|
@ -1470,7 +1470,7 @@ argument of a \\ref or \\cite macro, and no other message is being
|
|||
displayed, the echo area will display information about that cross
|
||||
reference. You can also set the variable to the symbol `window'. In
|
||||
this case a small temporary window is used for the display.
|
||||
This feature can be turned on and off from the menu
|
||||
This feature can be turned on and off from the menu
|
||||
\(Ref->Options)."
|
||||
:group 'reftex-viewing-cross-references
|
||||
:type '(choice (const :tag "off" nil)
|
||||
|
@ -1516,7 +1516,7 @@ Several entries are possible.
|
|||
- If an element is the name of an environment variable, its content is used.
|
||||
- If an element starts with an exclamation mark, it is used as a command
|
||||
to retrieve the path. A typical command with the kpathsearch library would
|
||||
be `!kpsewhich -show-path=.tex'.
|
||||
be `!kpsewhich -show-path=.tex'.
|
||||
- Otherwise the element itself is interpreted as a path.
|
||||
Multiple directories can be separated by the system dependent `path-separator'.
|
||||
Directories ending in `//' or `!!' will be expanded recursively.
|
||||
|
@ -1531,7 +1531,7 @@ Several entries are possible.
|
|||
- If an element is the name of an environment variable, its content is used.
|
||||
- If an element starts with an exclamation mark, it is used as a command
|
||||
to retrieve the path. A typical command with the kpathsearch library would
|
||||
be `!kpsewhich -show-path=.bib'.
|
||||
be `!kpsewhich -show-path=.bib'.
|
||||
- Otherwise the element itself is interpreted as a path.
|
||||
Multiple directories can be separated by the system dependent `path-separator'.
|
||||
Directories ending in `//' or `!!' will be expanded recursively.
|
||||
|
@ -1575,7 +1575,7 @@ Note that if you are using external file finders, this option has no effect."
|
|||
"*Non-nil means, search all specified directories before trying recursion.
|
||||
Thus, in a path \".//:/tex/\", search first \"./\", then \"/tex/\" and then
|
||||
all subdirectories of \"./\". If this option is nil, the subdirectories of
|
||||
\"./\" are searched before \"/tex/\". This is mainly for speed - most of the
|
||||
\"./\" are searched before \"/tex/\". This is mainly for speed - most of the
|
||||
time the recursive path is for the system files and not for the user files.
|
||||
Set this to nil if the default makes RefTeX finding files with equal names
|
||||
in wrong sequence."
|
||||
|
@ -1588,7 +1588,7 @@ Normally, RefTeX searches the paths given in the environment variables
|
|||
TEXINPUTS and BIBINPUTS to find TeX files and BibTeX database files.
|
||||
With this option turned on, it calls an external program specified in the
|
||||
option `reftex-external-file-finders' instead. As a side effect,
|
||||
the variables `reftex-texpath-environment-variables' and
|
||||
the variables `reftex-texpath-environment-variables' and
|
||||
`reftex-bibpath-environment-variables' will be ignored."
|
||||
:group 'reftex-finding-files
|
||||
:type 'boolean)
|
||||
|
@ -1679,7 +1679,7 @@ list."
|
|||
(defcustom reftex-save-parse-info nil
|
||||
"*Non-nil means, save information gathered with parsing in a file.
|
||||
The file MASTER.rel in the same directory as MASTER.tex is used to save the
|
||||
information. When this variable is t,
|
||||
information. When this variable is t,
|
||||
- accessing the parsing information for the first time in an editing session
|
||||
will read that file (if available) instead of parsing the document.
|
||||
- exiting Emacs or killing a buffer in reftex-mode will cause a new version
|
||||
|
@ -1753,7 +1753,7 @@ Normally, the text near the cursor is the selected text, and it is
|
|||
highlighted. This is the entry most keys in the selction and *toc*
|
||||
buffers act on. However, if you mainly use the mouse to select an
|
||||
item, you may find it nice to have mouse-triggered highlighting
|
||||
instead or as well. The variable may have one of these values:
|
||||
instead or as well. The variable may have one of these values:
|
||||
|
||||
nil No highlighting.
|
||||
cursor Highlighting is cursor driven.
|
||||
|
@ -1882,7 +1882,7 @@ RefTeX uses `fset' to take over the function calls. Changing the variable
|
|||
may require a restart of Emacs in order to become effective."
|
||||
:group 'reftex-miscellaneous-configurations
|
||||
:group 'LaTeX
|
||||
:type '(choice
|
||||
:type '(choice
|
||||
(const :tag "No plug-ins" nil)
|
||||
(const :tag "All possible plug-ins" t)
|
||||
(list
|
||||
|
|
|
@ -3876,10 +3876,14 @@ Optional argument NUMERIC, if non-nil, means the argument is numeric."
|
|||
;; The first two cases below could be merged (maybe)!
|
||||
(let ((from (point)))
|
||||
;; Discard zero width filler character used to hide leading dots
|
||||
;; and zero width characters. If on a line by itself, consume the
|
||||
;; newline as well, as this may interfere with (Bug#3651).
|
||||
(while (re-search-forward "\\\\[&|^]\n?" to t)
|
||||
(woman-delete-match 0))
|
||||
;; and zero width characters.
|
||||
(while (re-search-forward "\\\\[&|^]" to t)
|
||||
(woman-delete-match 0)
|
||||
;; If on a line by itself, consume newline as well (Bug#3651).
|
||||
(and (eq (char-before (match-beginning 0)) ?\n)
|
||||
(eq (char-after (match-beginning 0)) ?\n)
|
||||
(delete-char 1)))
|
||||
|
||||
(goto-char from)
|
||||
;; Interrupt text processing -- CONTINUE current text with the
|
||||
;; next text line (after any control lines, unless processing to
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
<!--
|
||||
Copyright (C) 2008, 2009 Free Software Foundation, Inc.
|
||||
Copyright (C) 2008, 2009, 2010 Free Software Foundation, Inc.
|
||||
|
||||
This file is part of GNU Emacs.
|
||||
|
||||
|
|
|
@ -1,3 +1,29 @@
|
|||
2010-03-24 Jan Djärv <jan.h.d@swipnet.se>
|
||||
|
||||
* frame.c (x_get_arg): Handle RES_TYPE_BOOLEAN_NUMBER (bug #5736).
|
||||
|
||||
* xfns.c (Fx_create_frame): Make menuBar a RES_TYPE_BOOLEAN_NUMBER.
|
||||
|
||||
* dispextern.h (resource_types): RES_TYPE_BOOLEAN_NUMBER is new.
|
||||
|
||||
2010-03-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
|
||||
|
||||
* xfns.c (Fx_create_frame) [USE_LUCID]: Add BLOCK_INPUT around
|
||||
XLoadQueryFont.
|
||||
|
||||
2010-03-24 Kenichi Handa <handa@m17n.org>
|
||||
|
||||
* coding.c (decode_coding_ccl): Fix previous change for the
|
||||
multibyte case.
|
||||
(encode_coding_ccl): Don't setup ccl program here. Fix for the
|
||||
case that the output buffer is fullfilled.
|
||||
(encode_coding): Setup ccl program here.
|
||||
|
||||
2010-03-24 Andreas Politz <politza@fh-trier.de> (tiny change)
|
||||
|
||||
* editfns.c (Fformat): Account for string precision when computing
|
||||
field width (Bug#5710).
|
||||
|
||||
2010-03-23 Dan Nicolaescu <dann@ics.uci.edu>
|
||||
|
||||
* s/gnu-linux.h (LIBS_SYSTEM): Remove, same as default.
|
||||
|
|
|
@ -7154,9 +7154,9 @@
|
|||
(ENCODE_ISO_CHARACTER): Bug of handling return value of unify_char
|
||||
fixed.
|
||||
(DECODE_SJIS_BIG5_CHARACTER): New macro.
|
||||
(decode_coding_sjis_big5): Handle character unificatoin table.
|
||||
(decode_coding_sjis_big5): Handle character unification table.
|
||||
Use macro DECODE_SJIS_BIG5_CHARACTER.
|
||||
(encode_coding_sjis_big5): Handle character unificatoin table.
|
||||
(encode_coding_sjis_big5): Handle character unification table.
|
||||
Use macro ENCODE_SJIS_BIG5_CHARACTER.
|
||||
(setup_coding_system): Handle members
|
||||
character_unification_table_for_decode and
|
||||
|
|
52
src/coding.c
52
src/coding.c
|
@ -5245,7 +5245,7 @@ decode_coding_ccl (coding)
|
|||
int multibytep = coding->src_multibyte;
|
||||
struct ccl_program *ccl = &coding->spec.ccl->ccl;
|
||||
int source_charbuf[1024];
|
||||
int source_byteidx[1024];
|
||||
int source_byteidx[1025];
|
||||
Lisp_Object attrs, charset_list;
|
||||
|
||||
CODING_GET_INFO (coding, attrs, charset_list);
|
||||
|
@ -5256,11 +5256,14 @@ decode_coding_ccl (coding)
|
|||
int i = 0;
|
||||
|
||||
if (multibytep)
|
||||
while (i < 1024 && p < src_end)
|
||||
{
|
||||
source_byteidx[i] = p - src;
|
||||
source_charbuf[i++] = STRING_CHAR_ADVANCE (p);
|
||||
}
|
||||
{
|
||||
while (i < 1024 && p < src_end)
|
||||
{
|
||||
source_byteidx[i] = p - src;
|
||||
source_charbuf[i++] = STRING_CHAR_ADVANCE (p);
|
||||
}
|
||||
source_byteidx[i] = p - src;
|
||||
}
|
||||
else
|
||||
while (i < 1024 && p < src_end)
|
||||
source_charbuf[i++] = *p++;
|
||||
|
@ -5270,7 +5273,7 @@ decode_coding_ccl (coding)
|
|||
ccl_driver (ccl, source_charbuf, charbuf, i, charbuf_end - charbuf,
|
||||
charset_list);
|
||||
charbuf += ccl->produced;
|
||||
if (multibytep && ccl->consumed < i)
|
||||
if (multibytep)
|
||||
src += source_byteidx[ccl->consumed];
|
||||
else
|
||||
src += ccl->consumed;
|
||||
|
@ -5304,7 +5307,7 @@ static int
|
|||
encode_coding_ccl (coding)
|
||||
struct coding_system *coding;
|
||||
{
|
||||
struct ccl_program ccl;
|
||||
struct ccl_program *ccl = &coding->spec.ccl->ccl;
|
||||
int multibytep = coding->dst_multibyte;
|
||||
int *charbuf = coding->charbuf;
|
||||
int *charbuf_end = charbuf + coding->charbuf_used;
|
||||
|
@ -5315,35 +5318,34 @@ encode_coding_ccl (coding)
|
|||
Lisp_Object attrs, charset_list;
|
||||
|
||||
CODING_GET_INFO (coding, attrs, charset_list);
|
||||
setup_ccl_program (&ccl, CODING_CCL_ENCODER (coding));
|
||||
|
||||
ccl.last_block = coding->mode & CODING_MODE_LAST_BLOCK;
|
||||
ccl.dst_multibyte = coding->dst_multibyte;
|
||||
if (coding->consumed_char == coding->src_chars
|
||||
&& coding->mode & CODING_MODE_LAST_BLOCK)
|
||||
ccl->last_block = 1;
|
||||
|
||||
while (charbuf < charbuf_end)
|
||||
{
|
||||
ccl_driver (&ccl, charbuf, destination_charbuf,
|
||||
ccl_driver (ccl, charbuf, destination_charbuf,
|
||||
charbuf_end - charbuf, 1024, charset_list);
|
||||
if (multibytep)
|
||||
{
|
||||
ASSURE_DESTINATION (ccl.produced * 2);
|
||||
for (i = 0; i < ccl.produced; i++)
|
||||
ASSURE_DESTINATION (ccl->produced * 2);
|
||||
for (i = 0; i < ccl->produced; i++)
|
||||
EMIT_ONE_BYTE (destination_charbuf[i] & 0xFF);
|
||||
}
|
||||
else
|
||||
{
|
||||
ASSURE_DESTINATION (ccl.produced);
|
||||
for (i = 0; i < ccl.produced; i++)
|
||||
ASSURE_DESTINATION (ccl->produced);
|
||||
for (i = 0; i < ccl->produced; i++)
|
||||
*dst++ = destination_charbuf[i] & 0xFF;
|
||||
produced_chars += ccl.produced;
|
||||
produced_chars += ccl->produced;
|
||||
}
|
||||
charbuf += ccl.consumed;
|
||||
if (ccl.status == CCL_STAT_QUIT
|
||||
|| ccl.status == CCL_STAT_INVALID_CMD)
|
||||
charbuf += ccl->consumed;
|
||||
if (ccl->status == CCL_STAT_QUIT
|
||||
|| ccl->status == CCL_STAT_INVALID_CMD)
|
||||
break;
|
||||
}
|
||||
|
||||
switch (ccl.status)
|
||||
switch (ccl->status)
|
||||
{
|
||||
case CCL_STAT_SUSPEND_BY_SRC:
|
||||
record_conversion_result (coding, CODING_RESULT_INSUFFICIENT_SRC);
|
||||
|
@ -7534,6 +7536,7 @@ encode_coding (coding)
|
|||
Lisp_Object attrs;
|
||||
Lisp_Object translation_table;
|
||||
int max_lookup;
|
||||
struct ccl_spec cclspec;
|
||||
|
||||
attrs = CODING_ID_ATTRS (coding->id);
|
||||
if (coding->encoder == encode_coding_raw_text)
|
||||
|
@ -7555,6 +7558,11 @@ encode_coding (coding)
|
|||
|
||||
ALLOC_CONVERSION_WORK_AREA (coding);
|
||||
|
||||
if (coding->encoder == encode_coding_ccl)
|
||||
{
|
||||
coding->spec.ccl = &cclspec;
|
||||
setup_ccl_program (&cclspec.ccl, CODING_CCL_ENCODER (coding));
|
||||
}
|
||||
do {
|
||||
coding_set_source (coding);
|
||||
consume_chars (coding, translation_table, max_lookup);
|
||||
|
|
|
@ -318,10 +318,10 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
/* Define to 1 if you have the <kerberos/krb.h> header file. */
|
||||
#undef HAVE_KERBEROS_KRB_H
|
||||
|
||||
/* Define to 1 if `e_text' is member of `krb5_error'. */
|
||||
/* Define to 1 if `e_text' is a member of `krb5_error'. */
|
||||
#undef HAVE_KRB5_ERROR_E_TEXT
|
||||
|
||||
/* Define to 1 if `text' is member of `krb5_error'. */
|
||||
/* Define to 1 if `text' is a member of `krb5_error'. */
|
||||
#undef HAVE_KRB5_ERROR_TEXT
|
||||
|
||||
/* Define to 1 if you have the <krb5.h> header file. */
|
||||
|
@ -615,25 +615,25 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
/* Define to 1 if you have the `strsignal' function. */
|
||||
#undef HAVE_STRSIGNAL
|
||||
|
||||
/* Define to 1 if `ifr_addr' is member of `struct ifreq'. */
|
||||
/* Define to 1 if `ifr_addr' is a member of `struct ifreq'. */
|
||||
#undef HAVE_STRUCT_IFREQ_IFR_ADDR
|
||||
|
||||
/* Define to 1 if `ifr_broadaddr' is member of `struct ifreq'. */
|
||||
/* Define to 1 if `ifr_broadaddr' is a member of `struct ifreq'. */
|
||||
#undef HAVE_STRUCT_IFREQ_IFR_BROADADDR
|
||||
|
||||
/* Define to 1 if `ifr_flags' is member of `struct ifreq'. */
|
||||
/* Define to 1 if `ifr_flags' is a member of `struct ifreq'. */
|
||||
#undef HAVE_STRUCT_IFREQ_IFR_FLAGS
|
||||
|
||||
/* Define to 1 if `ifr_hwaddr' is member of `struct ifreq'. */
|
||||
/* Define to 1 if `ifr_hwaddr' is a member of `struct ifreq'. */
|
||||
#undef HAVE_STRUCT_IFREQ_IFR_HWADDR
|
||||
|
||||
/* Define to 1 if `ifr_netmask' is member of `struct ifreq'. */
|
||||
/* Define to 1 if `ifr_netmask' is a member of `struct ifreq'. */
|
||||
#undef HAVE_STRUCT_IFREQ_IFR_NETMASK
|
||||
|
||||
/* Define to 1 if `n_un.n_name' is member of `struct nlist'. */
|
||||
/* Define to 1 if `n_un.n_name' is a member of `struct nlist'. */
|
||||
#undef HAVE_STRUCT_NLIST_N_UN_N_NAME
|
||||
|
||||
/* Define to 1 if `tm_zone' is member of `struct tm'. */
|
||||
/* Define to 1 if `tm_zone' is a member of `struct tm'. */
|
||||
#undef HAVE_STRUCT_TM_TM_ZONE
|
||||
|
||||
/* Define to 1 if `struct utimbuf' is declared by <utime.h>. */
|
||||
|
@ -860,6 +860,9 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
/* Define to the one symbol short name of this package. */
|
||||
#undef PACKAGE_TARNAME
|
||||
|
||||
/* Define to the home page for this package. */
|
||||
#undef PACKAGE_URL
|
||||
|
||||
/* Define to the version of this package. */
|
||||
#undef PACKAGE_VERSION
|
||||
|
||||
|
@ -919,6 +922,28 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
/* Define to 1 if using the Motif X toolkit. */
|
||||
#undef USE_MOTIF
|
||||
|
||||
/* Enable extensions on AIX 3, Interix. */
|
||||
#ifndef _ALL_SOURCE
|
||||
# undef _ALL_SOURCE
|
||||
#endif
|
||||
/* Enable GNU extensions on systems that have them. */
|
||||
#ifndef _GNU_SOURCE
|
||||
# undef _GNU_SOURCE
|
||||
#endif
|
||||
/* Enable threading extensions on Solaris. */
|
||||
#ifndef _POSIX_PTHREAD_SEMANTICS
|
||||
# undef _POSIX_PTHREAD_SEMANTICS
|
||||
#endif
|
||||
/* Enable extensions on HP NonStop. */
|
||||
#ifndef _TANDEM_SOURCE
|
||||
# undef _TANDEM_SOURCE
|
||||
#endif
|
||||
/* Enable general extensions on Solaris. */
|
||||
#ifndef __EXTENSIONS__
|
||||
# undef __EXTENSIONS__
|
||||
#endif
|
||||
|
||||
|
||||
/* Define to 1 if we should use toolkit scroll bars. */
|
||||
#undef USE_TOOLKIT_SCROLL_BARS
|
||||
|
||||
|
@ -954,28 +979,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
/* Define to 1 if you need to in order for `stat' and other things to work. */
|
||||
#undef _POSIX_SOURCE
|
||||
|
||||
/* Enable extensions on AIX 3, Interix. */
|
||||
#ifndef _ALL_SOURCE
|
||||
# undef _ALL_SOURCE
|
||||
#endif
|
||||
/* Enable GNU extensions on systems that have them. */
|
||||
#ifndef _GNU_SOURCE
|
||||
# undef _GNU_SOURCE
|
||||
#endif
|
||||
/* Enable threading extensions on Solaris. */
|
||||
#ifndef _POSIX_PTHREAD_SEMANTICS
|
||||
# undef _POSIX_PTHREAD_SEMANTICS
|
||||
#endif
|
||||
/* Enable extensions on HP NonStop. */
|
||||
#ifndef _TANDEM_SOURCE
|
||||
# undef _TANDEM_SOURCE
|
||||
#endif
|
||||
/* Enable general extensions on Solaris. */
|
||||
#ifndef __EXTENSIONS__
|
||||
# undef __EXTENSIONS__
|
||||
#endif
|
||||
|
||||
|
||||
/* Define to rpl_ if the getopt replacement functions and variables should be
|
||||
used. */
|
||||
#undef __GETOPT_PREFIX
|
||||
|
|
|
@ -3122,7 +3122,8 @@ enum resource_types
|
|||
RES_TYPE_FLOAT,
|
||||
RES_TYPE_BOOLEAN,
|
||||
RES_TYPE_STRING,
|
||||
RES_TYPE_SYMBOL
|
||||
RES_TYPE_SYMBOL,
|
||||
RES_TYPE_BOOLEAN_NUMBER
|
||||
};
|
||||
|
||||
extern Lisp_Object x_get_arg P_ ((Display_Info *, Lisp_Object,
|
||||
|
|
|
@ -4005,6 +4005,13 @@ x_get_arg (dpyinfo, alist, param, attribute, class, type)
|
|||
case RES_TYPE_NUMBER:
|
||||
return make_number (atoi (SDATA (tem)));
|
||||
|
||||
case RES_TYPE_BOOLEAN_NUMBER:
|
||||
if (!strcmp (SDATA (tem), "on")
|
||||
|| !strcmp (SDATA (tem), "true"))
|
||||
return make_number (1);
|
||||
return make_number (atoi (SDATA (tem)));
|
||||
break;
|
||||
|
||||
case RES_TYPE_FLOAT:
|
||||
return make_float (atof (SDATA (tem)));
|
||||
|
||||
|
|
|
@ -3347,7 +3347,9 @@ This function is an internal primitive--use `make-frame' instead. */)
|
|||
#ifdef USE_LUCID
|
||||
/* Prevent lwlib/xlwmenu.c from crashing because of a bug
|
||||
whereby it fails to get any font. */
|
||||
BLOCK_INPUT;
|
||||
xlwmenu_default_font = XLoadQueryFont (FRAME_X_DISPLAY (f), "fixed");
|
||||
UNBLOCK_INPUT;
|
||||
#endif
|
||||
|
||||
/* Frame contents get displaced if an embedded X window has a border. */
|
||||
|
@ -3421,7 +3423,7 @@ This function is an internal primitive--use `make-frame' instead. */)
|
|||
init_frame_faces (f);
|
||||
|
||||
x_default_parameter (f, parms, Qmenu_bar_lines, make_number (1),
|
||||
"menuBar", "MenuBar", RES_TYPE_NUMBER);
|
||||
"menuBar", "MenuBar", RES_TYPE_BOOLEAN_NUMBER);
|
||||
x_default_parameter (f, parms, Qtool_bar_lines, make_number (1),
|
||||
"toolBar", "ToolBar", RES_TYPE_NUMBER);
|
||||
x_default_parameter (f, parms, Qbuffer_predicate, Qnil,
|
||||
|
|
|
@ -1,23 +1,23 @@
|
|||
/** testjavacomp.java ---
|
||||
*
|
||||
* Copyright (C) 2009 Eric M. Ludlam
|
||||
* Copyright (C) 2009, 2010 Free Software Foundation, Inc.
|
||||
*
|
||||
* Author: Eric M. Ludlam <eric@siege-engine.com>
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; either version 2, or (at
|
||||
* your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful, but
|
||||
* WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* General Public License for more details.
|
||||
*
|
||||
* This file is part of GNU Emacs.
|
||||
*
|
||||
* GNU Emacs is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* GNU Emacs is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; see the file COPYING. If not, write to
|
||||
* the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
|
||||
* Boston, MA 02110-1301, USA.
|
||||
* along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
package tests.testjavacomp;
|
||||
|
|
|
@ -1,23 +1,23 @@
|
|||
/** testpolymorph.cpp --- A sequence of polymorphism examples.
|
||||
*
|
||||
* Copyright (C) 2009 Eric M. Ludlam
|
||||
* Copyright (C) 2009, 2010 Free Software Foundation, Inc.
|
||||
*
|
||||
* Author: Eric M. Ludlam <eric@siege-engine.com>
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; either version 2, or (at
|
||||
* your option) any later version.
|
||||
* This file is part of GNU Emacs.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful, but
|
||||
* WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* General Public License for more details.
|
||||
* GNU Emacs is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* GNU Emacs is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; see the file COPYING. If not, write to
|
||||
* the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
|
||||
* Boston, MA 02110-1301, USA.
|
||||
* along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include <cmath>
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue