aboutsummaryrefslogtreecommitdiffstats
path: root/doc
diff options
context:
space:
mode:
authorStefan Monnier2010-04-19 11:07:52 -0400
committerStefan Monnier2010-04-19 11:07:52 -0400
commit6e104790e756226cbb5b7feaf01854103ded9f36 (patch)
tree5a1bd758627d6358a7083bb3d72108676bde8bdb /doc
parentb5feea0feaf721c66ff34ee2728c76a4c028fa0f (diff)
parent79d74ac527b79242175bca1b39ef12b1693c3523 (diff)
downloademacs-6e104790e756226cbb5b7feaf01854103ded9f36.tar.gz
emacs-6e104790e756226cbb5b7feaf01854103ded9f36.zip
Merge from emacs-23
Diffstat (limited to 'doc')
-rw-r--r--doc/emacs/ChangeLog39
-rw-r--r--doc/emacs/ack.texi5
-rw-r--r--doc/emacs/custom.texi41
-rw-r--r--doc/emacs/dired.texi8
-rw-r--r--doc/emacs/emacs.texi2
-rw-r--r--doc/emacs/help.texi4
-rw-r--r--doc/emacs/maintaining.texi79
-rw-r--r--doc/emacs/mark.texi27
-rw-r--r--doc/emacs/misc.texi2
-rw-r--r--doc/emacs/programs.texi68
-rw-r--r--doc/emacs/trouble.texi4
-rw-r--r--doc/lispref/ChangeLog14
-rw-r--r--doc/lispref/abbrevs.texi4
-rw-r--r--doc/lispref/buffers.texi2
-rw-r--r--doc/lispref/windows.texi10
-rw-r--r--doc/misc/ChangeLog28
-rw-r--r--doc/misc/gnus-coding.texi34
-rw-r--r--doc/misc/gnus.texi9
-rw-r--r--doc/misc/info.texi10
19 files changed, 331 insertions, 59 deletions
diff --git a/doc/emacs/ChangeLog b/doc/emacs/ChangeLog
index d589694e168..7c050b83af7 100644
--- a/doc/emacs/ChangeLog
+++ b/doc/emacs/ChangeLog
@@ -1,3 +1,42 @@
12010-04-18 Chong Yidong <cyd@stupidchicken.com>
2
3 * programs.texi (Semantic): New node.
4
5 * maintaining.texi (EDE): New node.
6
7 * emacs.texi: Update node listing.
8
9 * misc.texi (Gnus): Use the `C-h i' keybinding for info.
10
112010-04-18 Glenn Morris <rgm@gnu.org>
12
13 * emacs.texi (Acknowledgments): Remove duplicate.
14
15 * maintaining.texi (VC Directory Commands): Mention stashes and shelves.
16
172010-04-18 Glenn Morris <rgm@gnu.org>
18
19 * dired.texi (Misc Dired Features): Mention VC diff and log.
20 * maintaining.texi (Old Revisions, VC Change Log):
21 Mention that diff and log work in Dired buffers.
22
23 * help.texi (Help Summary): Mention M-x info-finder.
24
25 * ack.texi (Acknowledgments): Add mpc.el.
26
27 * custom.texi (Specifying File Variables, Directory Variables):
28 Document new commands for manipulating local variable lists.
29
302010-04-18 Glenn Morris <rgm@gnu.org>
31
32 * trouble.texi (Contributing): Add cindex entry.
33 Mention etc/CONTRIBUTE.
34
352010-04-18 Chong Yidong <cyd@stupidchicken.com>
36
37 * mark.texi (Persistent Mark): Copyedits. Replace undo example with
38 query-replace (Bug#5774).
39
12010-04-16 Glenn Morris <rgm@gnu.org> 402010-04-16 Glenn Morris <rgm@gnu.org>
2 41
3 * ack.texi, emacs.texi (Acknowledgments): Update for Org changes. 42 * ack.texi, emacs.texi (Acknowledgments): Update for Org changes.
diff --git a/doc/emacs/ack.texi b/doc/emacs/ack.texi
index bb2e9c926a0..2d4636dd74f 100644
--- a/doc/emacs/ack.texi
+++ b/doc/emacs/ack.texi
@@ -801,8 +801,9 @@ a directory-level front end to the CVS version control system;
801@file{reveal.el}, a minor mode for automatically revealing invisible 801@file{reveal.el}, a minor mode for automatically revealing invisible
802text; @file{smerge-mode.el}, a minor mode for resolving @code{diff3} 802text; @file{smerge-mode.el}, a minor mode for resolving @code{diff3}
803conflicts; @file{diff-mode.el}, a mode for viewing and editing context 803conflicts; @file{diff-mode.el}, a mode for viewing and editing context
804diffs; @file{css-mode.el} for Cascading Style Sheets; and 804diffs; @file{css-mode.el} for Cascading Style Sheets;
805@file{bibtex-style.el} for BibTeX Style files. 805@file{bibtex-style.el} for BibTeX Style files; and @file{mpc.el}, a
806client for the ``Music Player Daemon''.
806 807
807@item 808@item
808Morioka Tomohiko wrote several packages for MIME support in Gnus and 809Morioka Tomohiko wrote several packages for MIME support in Gnus and
diff --git a/doc/emacs/custom.texi b/doc/emacs/custom.texi
index f0faec4d40c..a8bba419c25 100644
--- a/doc/emacs/custom.texi
+++ b/doc/emacs/custom.texi
@@ -1,6 +1,7 @@
1@c This is part of the Emacs manual. 1@c This is part of the Emacs manual.
2@c Copyright (C) 1985, 1986, 1987, 1993, 1994, 1995, 1997, 2000, 2001, 2@c Copyright (C) 1985, 1986, 1987, 1993, 1994, 1995, 1997, 2000, 2001,
3@c 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. 3@c 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
4@c Free Software Foundation, Inc.
4@c See file emacs.texi for copying conditions. 5@c See file emacs.texi for copying conditions.
5@node Customization, Quitting, Amusements, Top 6@node Customization, Quitting, Amusements, Top
6@chapter Customization 7@chapter Customization
@@ -1086,11 +1087,22 @@ You can specify any number of variable/value pairs in this way, each
1086pair with a colon and semicolon as shown above. The special 1087pair with a colon and semicolon as shown above. The special
1087variable/value pair @code{mode: @var{modename};}, if present, 1088variable/value pair @code{mode: @var{modename};}, if present,
1088specifies a major or minor mode; if you use this to specify a major 1089specifies a major or minor mode; if you use this to specify a major
1089mode, it should come first in the line. The @var{value}s are are used 1090mode, it should come first in the line. The @var{value}s are used
1090literally, and not evaluated. 1091literally, and not evaluated.
1091 1092
1092 Here is an example that specifies Lisp mode and sets two variables 1093@findex add-file-local-variable-prop-line
1093with numeric values: 1094@findex delete-file-local-variable-prop-line
1095@findex copy-dir-locals-to-file-locals-prop-line
1096 You can use the command @code{add-file-local-variable-prop-line}
1097instead of adding entries by hand. It prompts for a variable
1098and value, and adds them to the first line in the appropriate way.
1099The command @code{delete-file-local-variable-prop-line} deletes a
1100variable from the line. The command
1101@code{copy-dir-locals-to-file-locals-prop-line} copies directory-local
1102variables (@pxref{Directory Variables}) to the first line.
1103
1104 Here is an example first line that specifies Lisp mode and sets two
1105variables with numeric values:
1094 1106
1095@smallexample 1107@smallexample
1096;; -*- mode: Lisp; fill-column: 75; comment-column: 50; -*- 1108;; -*- mode: Lisp; fill-column: 75; comment-column: 50; -*-
@@ -1144,6 +1156,17 @@ won't confuse other programs that the file is intended for. The
1144example above is for the C programming language, where comment lines 1156example above is for the C programming language, where comment lines
1145start with @samp{/*} and end with @samp{*/}. 1157start with @samp{/*} and end with @samp{*/}.
1146 1158
1159@findex add-file-local-variable
1160@findex delete-file-local-variable
1161@findex copy-dir-locals-to-file-locals
1162 You can construct the local variables list yourself, or use the
1163command @code{add-file-local-variable}. This prompts for a variable
1164and value, and adds them to the list. If necessary, it also adds the
1165start and end markers. The command @code{delete-file-local-variable}
1166deletes a variable from the list. The command
1167@code{copy-dir-locals-to-file-locals} copies directory-local variables
1168(@pxref{Directory Variables}) to the list.
1169
1147 As with the @samp{-*-} line, the variables in a local variables list 1170 As with the @samp{-*-} line, the variables in a local variables list
1148are used literally, and are not evaluated first. If you want to split 1171are used literally, and are not evaluated first. If you want to split
1149a long string across multiple lines of the file, you can use 1172a long string across multiple lines of the file, you can use
@@ -1323,6 +1346,16 @@ style for any C or Java source file. Finally, it specifies a different
1323subdirectory of the directory where you put the @file{.dir-locals.el} 1346subdirectory of the directory where you put the @file{.dir-locals.el}
1324file. 1347file.
1325 1348
1349@findex add-dir-local-variable
1350@findex delete-dir-local-variable
1351@findex copy-file-locals-to-dir-locals
1352 You can edit the @file{.dir-locals.el} file by hand, or use the
1353command @code{add-dir-local-variable}. This prompts for a mode (or
1354subdirectory), variable and value, and adds an entry to the file.
1355The command @code{delete-dir-local-variable} deletes an entry. The
1356command @code{copy-file-locals-to-dir-locals} copies file local
1357variables (@pxref{File Variables}) to the @file{.dir-locals.el} file.
1358
1326@findex dir-locals-set-class-variables 1359@findex dir-locals-set-class-variables
1327@findex dir-locals-set-directory-class 1360@findex dir-locals-set-directory-class
1328 Another method of specifying directory-local variables is to explicitly 1361 Another method of specifying directory-local variables is to explicitly
diff --git a/doc/emacs/dired.texi b/doc/emacs/dired.texi
index f1a8b0aa9c1..f6a4572f8dd 100644
--- a/doc/emacs/dired.texi
+++ b/doc/emacs/dired.texi
@@ -1,6 +1,7 @@
1@c This is part of the Emacs manual. 1@c This is part of the Emacs manual.
2@c Copyright (C) 1985, 1986, 1987, 1993, 1994, 1995, 1997, 2000, 2001, 2@c Copyright (C) 1985, 1986, 1987, 1993, 1994, 1995, 1997, 2000, 2001,
3@c 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. 3@c 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
4@c Free Software Foundation, Inc.
4@c See file emacs.texi for copying conditions. 5@c See file emacs.texi for copying conditions.
5@node Dired, Calendar/Diary, Rmail, Top 6@node Dired, Calendar/Diary, Rmail, Top
6@chapter Dired, the Directory Editor 7@chapter Dired, the Directory Editor
@@ -1339,6 +1340,11 @@ names into arguments for other Emacs commands. It also displays what
1339it added to the kill ring, so you can use it to display the list of 1340it added to the kill ring, so you can use it to display the list of
1340currently marked files in the echo area. 1341currently marked files in the echo area.
1341 1342
1343@cindex Dired and version control
1344 If the directory you are visiting is under version control
1345(@pxref{Version Control}), then the normal VC diff and log commands
1346will operate on the selected files.
1347
1342@findex dired-compare-directories 1348@findex dired-compare-directories
1343 The command @kbd{M-x dired-compare-directories} is used to compare 1349 The command @kbd{M-x dired-compare-directories} is used to compare
1344the current Dired buffer with another directory. It marks all the files 1350the current Dired buffer with another directory. It marks all the files
diff --git a/doc/emacs/emacs.texi b/doc/emacs/emacs.texi
index a92da3b4842..d4f6c1af92c 100644
--- a/doc/emacs/emacs.texi
+++ b/doc/emacs/emacs.texi
@@ -649,6 +649,7 @@ Editing Programs
649* Hideshow:: Displaying blocks selectively. 649* Hideshow:: Displaying blocks selectively.
650* Symbol Completion:: Completion on symbol names of your program or language. 650* Symbol Completion:: Completion on symbol names of your program or language.
651* Glasses:: Making identifiersLikeThis more readable. 651* Glasses:: Making identifiersLikeThis more readable.
652* Semantic:: Suite of editing tools based on source code parsing.
652* Misc for Programs:: Other Emacs features useful for editing programs. 653* Misc for Programs:: Other Emacs features useful for editing programs.
653* C Modes:: Special commands of C, C++, Objective-C, 654* C Modes:: Special commands of C, C++, Objective-C,
654 Java, and Pike modes. 655 Java, and Pike modes.
@@ -763,6 +764,7 @@ Maintaining Large Programs
763* Change Log:: Maintaining a change history for your program. 764* Change Log:: Maintaining a change history for your program.
764* Tags:: Go directly to any function in your program in one 765* Tags:: Go directly to any function in your program in one
765 command. Tags remembers which file it is in. 766 command. Tags remembers which file it is in.
767* EDE:: An integrated development environment for Emacs.
766* Emerge:: A convenient way of merging two versions of a program. 768* Emerge:: A convenient way of merging two versions of a program.
767 769
768Version Control 770Version Control
diff --git a/doc/emacs/help.texi b/doc/emacs/help.texi
index 4ee1a728ae6..ac3539881d8 100644
--- a/doc/emacs/help.texi
+++ b/doc/emacs/help.texi
@@ -133,7 +133,9 @@ Display documentation of the current major mode (@code{describe-mode}).
133@item C-h n 133@item C-h n
134Display news of recent Emacs changes (@code{view-emacs-news}). 134Display news of recent Emacs changes (@code{view-emacs-news}).
135@item C-h p 135@item C-h p
136Find packages by topic keyword (@code{finder-by-keyword}). 136Find packages by topic keyword (@code{finder-by-keyword}). For an
137alternative interface to the same information, try the @code{info-finder}
138command.
137@item C-h r 139@item C-h r
138Display the Emacs manual in Info (@code{info-emacs-manual}). 140Display the Emacs manual in Info (@code{info-emacs-manual}).
139@item C-h s 141@item C-h s
diff --git a/doc/emacs/maintaining.texi b/doc/emacs/maintaining.texi
index 8cc5b97d919..8c417bc12ac 100644
--- a/doc/emacs/maintaining.texi
+++ b/doc/emacs/maintaining.texi
@@ -14,6 +14,7 @@ programs.
14* Change Log:: Maintaining a change history for your program. 14* Change Log:: Maintaining a change history for your program.
15* Tags:: Go directly to any function in your program in one 15* Tags:: Go directly to any function in your program in one
16 command. Tags remembers which file it is in. 16 command. Tags remembers which file it is in.
17* EDE:: An integrated development environment for Emacs.
17@ifnottex 18@ifnottex
18* Emerge:: A convenient way of merging two versions of a program. 19* Emerge:: A convenient way of merging two versions of a program.
19@end ifnottex 20@end ifnottex
@@ -653,7 +654,8 @@ its own (@code{vc-revision-other-window}).
653@item C-x v = 654@item C-x v =
654Compare the files in the current fileset with the working revision(s) 655Compare the files in the current fileset with the working revision(s)
655you started from (@code{vc-diff}). With a prefix argument, prompt for 656you started from (@code{vc-diff}). With a prefix argument, prompt for
656two revisions of the current fileset and compare them. 657two revisions of the current fileset and compare them. You can call
658this command from a Dired buffer (@pxref{Dired}).
657 659
658@item C-x v D 660@item C-x v D
659Compare the entire tree corresponding to the current fileset with the 661Compare the entire tree corresponding to the current fileset with the
@@ -895,6 +897,7 @@ i.e. the ones you enter via the @samp{*VC-Log*} buffer. @xref{Log
895Buffer}.) Point is centered at the revision of the file currently 897Buffer}.) Point is centered at the revision of the file currently
896being visited. With a prefix argument, the command prompts for the 898being visited. With a prefix argument, the command prompts for the
897revision to center on, and the maximum number of revisions to display. 899revision to center on, and the maximum number of revisions to display.
900You can call this command from a Dired buffer (@pxref{Dired}).
898 901
899@findex vc-print-root-log 902@findex vc-print-root-log
900 Type @kbd{C-x v L} (@code{vc-print-root-log}) to display a 903 Type @kbd{C-x v L} (@code{vc-print-root-log}) to display a
@@ -1145,9 +1148,14 @@ directory buffer will be used.
1145 1148
1146 @kbd{M-s a C-M-s} does an incremental search on the marked files. 1149 @kbd{M-s a C-M-s} does an incremental search on the marked files.
1147 1150
1148 Commands are also accessible from the VC-dir menu. Note that some VC 1151@cindex stashes in version control
1149backends use the VC-dir menu to make available extra backend specific 1152@cindex shelves in version control
1150commands. 1153 Commands are also accessible from the VC-dir menu. Note that some
1154VC backends use the VC-dir menu to make available extra,
1155backend-specific, commands. For example, Git and Bazaar allow you to
1156manipulate @dfn{stashes} and @dfn{shelves}. (These provide a
1157mechanism to temporarily store uncommitted changes somewhere out of
1158the way, and bring them back at a later time.)
1151 1159
1152 Normal VC commands with the @kbd{C-x v} prefix work in VC directory 1160 Normal VC commands with the @kbd{C-x v} prefix work in VC directory
1153buffers. Some single-key shortcuts are available as well; @kbd{=}, 1161buffers. Some single-key shortcuts are available as well; @kbd{=},
@@ -2260,6 +2268,69 @@ name in the buffer. @xref{Symbol Completion}.
2260@include emerge-xtra.texi 2268@include emerge-xtra.texi
2261@end ifnottex 2269@end ifnottex
2262 2270
2271@node EDE
2272@section Emacs Development Environment
2273@cindex EDE (Emacs Development Environment)
2274@cindex Emacs Development Environment
2275@cindex Integrated development environment
2276
2277EDE (@dfn{Emacs Development Environment}) is a package that simplifies
2278the task of creating, building, and debugging large programs with
2279Emacs. It provides some of the features of an IDE, or @dfn{Integrated
2280Development Environment}, in Emacs.
2281
2282This section provides a brief description of EDE usage.
2283@ifnottex
2284For full details, see @ref{Top, EDE,, ede, Emacs Development Environment}.
2285@end ifnottex
2286@iftex
2287For full details on Ede, type @kbd{C-h i} and then select the EDE
2288manual.
2289@end iftex
2290
2291 EDE is implemented as a global minor mode (@pxref{Minor Modes}). To
2292enable it, type @kbd{M-x global-ede-mode} or click on the
2293@samp{Project Support (EDE)} item in the @samp{Tools} menu. You can
2294also enable EDE each time you start Emacs, by adding the following
2295line to your initialization file:
2296
2297@smallexample
2298(global-ede-mode t)
2299@end smallexample
2300
2301@noindent
2302Activating EDE adds a menu named @samp{Development} to the menu bar.
2303Many EDE commands, including the ones described below, can be invoked
2304from this menu.
2305
2306 EDE organizes files into @dfn{projects}, which correspond to
2307directory trees. The @dfn{project root} is the topmost directory of a
2308project. To define a new project, visit a file in the desired project
2309root and type @kbd{M-x ede-new}. This command prompts for a
2310@dfn{project type}, which refers to the underlying method that EDE
2311will use to manage the project (@pxref{Creating a Project, EDE,, ede,
2312Emacs Development Environment}). The most common project types are
2313@samp{Make}, which uses Makefiles, and @samp{Automake}, which uses GNU
2314Automake (@pxref{Top, Automake,, automake, Automake}). In both cases,
2315EDE also creates a file named @file{Project.ede}, which stores
2316information about the project.
2317
2318 A project may contain one or more @dfn{targets}. A target can be an
2319object file, executable program, or some other type of file, which is
2320``built'' from one or more of the files in the project.
2321
2322 To add a new @dfn{target} to a project, type @kbd{C-c . t}
2323(@code{M-x ede-new-target}). This command also asks if you wish to
2324``add'' the current file to that target, which means that the target
2325is to be built from that file. After you have defined a target, you
2326can add more files to it by typing @kbd{C-c . a}
2327(@code{ede-add-file}).
2328
2329 To build a target, type @kbd{C-c . c} (@code{ede-compile-target}).
2330To build all the targets in the project, type @kbd{C-c . C}
2331(@code{ede-compile-project}). EDE uses the file types to guess how
2332the target should be built.
2333
2263@ignore 2334@ignore
2264 arch-tag: b9d83dfb-82ea-4ff6-bab5-05a3617091fb 2335 arch-tag: b9d83dfb-82ea-4ff6-bab5-05a3617091fb
2265@end ignore 2336@end ignore
diff --git a/doc/emacs/mark.texi b/doc/emacs/mark.texi
index 5cf166c0cbf..217d5b1b06d 100644
--- a/doc/emacs/mark.texi
+++ b/doc/emacs/mark.texi
@@ -387,10 +387,10 @@ Mark}), or with shift-selection (@pxref{Shift Selection}).
387 387
388@findex transient-mark-mode 388@findex transient-mark-mode
389 To turn off Transient Mark mode, type @kbd{M-x transient-mark-mode}. 389 To turn off Transient Mark mode, type @kbd{M-x transient-mark-mode}.
390This command toggles the mode; you can use the same command to turn 390This command toggles the mode; you can use the same command to turn it
391Transient Mark mode on again. You can also turn off Transient Mark 391on again. You can also toggle Transient Mark mode using the
392mode using the menu bar: in the @samp{Options} menu, toggle the 392@samp{Active Region Highlighting} menu item in the @samp{Options}
393@samp{Active Region Highlighting} menu item. 393menu.
394 394
395 Here are the details of how Emacs behaves when Transient Mark mode 395 Here are the details of how Emacs behaves when Transient Mark mode
396is off: 396is off:
@@ -415,13 +415,12 @@ Many commands that move point long distances, like @kbd{M-<} and
415@kbd{C-s}, first set the mark where point was. 415@kbd{C-s}, first set the mark where point was.
416 416
417@item 417@item
418Some commands, which ordinarily operate on the region when the mark is 418Some commands, which ordinarily act on the region when the mark is
419active, instead act on the entire buffer. For instance, @kbd{C-x u} 419active, no longer do so. For example, normally @kbd{M-%}
420normally reverses changes within the region if the mark is active; 420(@code{query-replace}) performs replacements within the region, if the
421when Transient Mark mode is off, it acts on the entire buffer. 421mark is active. When Transient Mark mode is off, it always operates
422However, you can type @kbd{C-u C-x u} to make it operate on the 422from point to the end of the buffer. Commands that act this way are
423region. @xref{Undo}. Other commands that act this way are identified 423identified in their own documentation.
424in their own documentation.
425@end itemize 424@end itemize
426 425
427 While Transient Mark mode is off, you can activate it temporarily 426 While Transient Mark mode is off, you can activate it temporarily
@@ -437,9 +436,9 @@ command twice.)
437 436
438@item C-u C-x C-x 437@item C-u C-x C-x
439@kindex C-u C-x C-x 438@kindex C-u C-x C-x
440Activate the mark without changing it; enable Transient Mark mode just 439Activate the mark and enable Transient Mark mode temporarily, until
441once, until the mark is deactivated. (This is the @kbd{C-x C-x} 440the mark is next deactivated. (This is the @kbd{C-x C-x} command,
442command, @code{exchange-point-and-mark}, with a prefix argument.) 441@code{exchange-point-and-mark}, with a prefix argument.)
443@end table 442@end table
444 443
445 These commands set or activate the mark, and enable Transient Mark 444 These commands set or activate the mark, and enable Transient Mark
diff --git a/doc/emacs/misc.texi b/doc/emacs/misc.texi
index 808c3bfc3d3..7944a6b85e7 100644
--- a/doc/emacs/misc.texi
+++ b/doc/emacs/misc.texi
@@ -203,7 +203,7 @@ Here we introduce Gnus and describe several basic features.
203For full details, see @ref{Top, Gnus,, gnus, The Gnus Manual}. 203For full details, see @ref{Top, Gnus,, gnus, The Gnus Manual}.
204@end ifnottex 204@end ifnottex
205@iftex 205@iftex
206For full details on Gnus, type @kbd{M-x info} and then select the Gnus 206For full details on Gnus, type @kbd{C-h i} and then select the Gnus
207manual. 207manual.
208@end iftex 208@end iftex
209 209
diff --git a/doc/emacs/programs.texi b/doc/emacs/programs.texi
index dce6c38692e..72aa8ff121a 100644
--- a/doc/emacs/programs.texi
+++ b/doc/emacs/programs.texi
@@ -39,6 +39,7 @@ Highlight program syntax (@pxref{Font Lock}).
39* Hideshow:: Displaying blocks selectively. 39* Hideshow:: Displaying blocks selectively.
40* Symbol Completion:: Completion on symbol names of your program or language. 40* Symbol Completion:: Completion on symbol names of your program or language.
41* Glasses:: Making identifiersLikeThis more readable. 41* Glasses:: Making identifiersLikeThis more readable.
42* Semantic:: Suite of editing tools based on source code parsing.
42* Misc for Programs:: Other Emacs features useful for editing programs. 43* Misc for Programs:: Other Emacs features useful for editing programs.
43* C Modes:: Special commands of C, C++, Objective-C, 44* C Modes:: Special commands of C, C++, Objective-C,
44 Java, and Pike modes. 45 Java, and Pike modes.
@@ -1387,6 +1388,73 @@ current buffer; you can also add @code{glasses-mode} to the mode hook
1387of the programming language major modes in which you normally want 1388of the programming language major modes in which you normally want
1388to use Glasses mode. 1389to use Glasses mode.
1389 1390
1391@node Semantic
1392@section Semantic
1393@cindex Semantic package
1394
1395Semantic is a package that provides language-aware editing commands
1396based on @code{source code parsers}. This section provides a brief
1397description of Semantic;
1398@ifnottex
1399for full details, see @ref{Top, Semantic,, semantic, Semantic}.
1400@end ifnottex
1401@iftex
1402for full details, type @kbd{C-h i} (@code{info}) and then select the
1403Semantic manual.
1404@end iftex
1405
1406 Most of the ``language aware'' features in Emacs, such as font lock
1407(@pxref{Font Lock}), rely on ``rules of thumb''@footnote{Regular
1408expressions and syntax tables.} that usually give good results but are
1409never completely exact. In contrast, the parsers used by Semantic
1410have an exact understanding of programming language syntax. This
1411allows Semantic to provide search, navigation, and completion commands
1412that are powerful and precise.
1413
1414 To begin using Semantic, type @kbd{M-x semantic-mode} or click on
1415the menu item named @samp{Source Code Parsers (Semantic)} in the
1416@samp{Tools} menu. This enables Semantic mode, a global minor mode.
1417
1418 When Semantic mode is enabled, Emacs automatically attempts to
1419parses each file you visit. Currently, Semantic understands C, C++,
1420Scheme, Javascript, Java, HTML, and Make. Within each parsed buffer,
1421the following commands are available:
1422
1423@table @kbd
1424@item C-c , j
1425@kindex C-c , j
1426Prompt for the name of a function defined in the current file, and
1427move point there (@code{semantic-complete-jump-local}).
1428
1429@item C-c , J
1430@kindex C-c , J
1431Prompt for the name of a function defined in any file Emacs has
1432parsed, and move point there (@code{semantic-complete-jump}).
1433
1434@item C-c , @key{SPC}
1435@kindex C-c , @key{SPC}
1436Display a list of possible completions for the symbol at point
1437(@code{semantic-complete-analyze-inline}). This also activates a set
1438of special keybindings for choosing a completion: @key{RET} accepts
1439the current completion, @kbd{M-n} and @kbd{M-p} cycle through possible
1440completions, @key{TAB} completes as far as possible and then cycles,
1441and @kbd{C-g} or any other key aborts completion.
1442
1443@item C-c , l
1444@kindex C-c , l
1445Display a list of the possible completions of the symbol at point, in
1446another window (@code{semantic-analyze-possible-completions}).
1447@end table
1448
1449@noindent
1450In addition to the above commands, the Semantic package provides a
1451variety of other ways to make use of parser information. For
1452instance, you can use it to display a list of completions when Emacs
1453is idle.
1454@ifnottex
1455@xref{Top, Semantic,, semantic, Semantic}, for details.
1456@end ifnottex
1457
1390@node Misc for Programs 1458@node Misc for Programs
1391@section Other Features Useful for Editing Programs 1459@section Other Features Useful for Editing Programs
1392 1460
diff --git a/doc/emacs/trouble.texi b/doc/emacs/trouble.texi
index dd0d36c7601..69b5b82a056 100644
--- a/doc/emacs/trouble.texi
+++ b/doc/emacs/trouble.texi
@@ -1008,6 +1008,7 @@ form that is clearly safe to install.
1008 1008
1009@node Contributing, Service, Bugs, Top 1009@node Contributing, Service, Bugs, Top
1010@section Contributing to Emacs Development 1010@section Contributing to Emacs Development
1011@cindex contributing to Emacs
1011 1012
1012If you would like to help pretest Emacs releases to assure they work 1013If you would like to help pretest Emacs releases to assure they work
1013well, or if you would like to work on improving Emacs, please contact 1014well, or if you would like to work on improving Emacs, please contact
@@ -1027,6 +1028,9 @@ repository where it is actively maintained by a group of developers.
1027See the Emacs project page 1028See the Emacs project page
1028@url{http://savannah.gnu.org/projects/emacs/} for details. 1029@url{http://savannah.gnu.org/projects/emacs/} for details.
1029 1030
1031For more information on how to contribute, see the @file{etc/CONTRIBUTE}
1032file in the Emacs distribution.
1033
1030@node Service, Copying, Contributing, Top 1034@node Service, Copying, Contributing, Top
1031@section How To Get Help with GNU Emacs 1035@section How To Get Help with GNU Emacs
1032 1036
diff --git a/doc/lispref/ChangeLog b/doc/lispref/ChangeLog
index d3b268e10c7..ee95040496c 100644
--- a/doc/lispref/ChangeLog
+++ b/doc/lispref/ChangeLog
@@ -1,3 +1,17 @@
12010-04-14 Juri Linkov <juri@jurta.org>
2
3 Fix @deffn without category.
4
5 * abbrevs.texi (Abbrev Expansion): Replace @deffn with @defun
6 for `abbrev-insert'.
7
8 * buffers.texi (Indirect Buffers): Add category `Command'
9 to @deffn of `clone-indirect-buffer'.
10
11 * windows.texi (Cyclic Window Ordering): Replace @deffn with @defun
12 for `next-window' and `previous-window'. Add category `Command'
13 to @deffn of `pop-to-buffer'.
14
12010-04-01 Chong Yidong <cyd@stupidchicken.com> 152010-04-01 Chong Yidong <cyd@stupidchicken.com>
2 16
3 * nonascii.texi (Text Representations): Don't mark 17 * nonascii.texi (Text Representations): Don't mark
diff --git a/doc/lispref/abbrevs.texi b/doc/lispref/abbrevs.texi
index 5434aa62357..1bb33475240 100644
--- a/doc/lispref/abbrevs.texi
+++ b/doc/lispref/abbrevs.texi
@@ -281,7 +281,7 @@ function returns @code{nil} as its value, then @code{expand-abbrev}
281returns @code{nil} even though expansion did occur. 281returns @code{nil} even though expansion did occur.
282@end deffn 282@end deffn
283 283
284@deffn abbrev-insert abbrev &optional name start end 284@defun abbrev-insert abbrev &optional name start end
285This function inserts the abbrev expansion of @code{abbrev}, replacing 285This function inserts the abbrev expansion of @code{abbrev}, replacing
286the text between @code{start} and @code{end}. If @code{start} is 286the text between @code{start} and @code{end}. If @code{start} is
287omitted, it defaults to point. @code{name}, if non-@code{nil}, should 287omitted, it defaults to point. @code{name}, if non-@code{nil}, should
@@ -289,7 +289,7 @@ be the name by which this abbrev was found (a string); it is used to
289figure out whether to adjust the capitalization of the expansion. The 289figure out whether to adjust the capitalization of the expansion. The
290function returns @code{abbrev} if the abbrev was successfully 290function returns @code{abbrev} if the abbrev was successfully
291inserted. 291inserted.
292@end deffn 292@end defun
293 293
294@deffn Command abbrev-prefix-mark &optional arg 294@deffn Command abbrev-prefix-mark &optional arg
295This command marks the current location of point as the beginning of 295This command marks the current location of point as the beginning of
diff --git a/doc/lispref/buffers.texi b/doc/lispref/buffers.texi
index 2aa1f725641..2a7a603e733 100644
--- a/doc/lispref/buffers.texi
+++ b/doc/lispref/buffers.texi
@@ -1135,7 +1135,7 @@ non-@code{nil}, the initial state is copied from the actual base
1135buffer, not from @var{base-buffer}. 1135buffer, not from @var{base-buffer}.
1136@end deffn 1136@end deffn
1137 1137
1138@deffn clone-indirect-buffer newname display-flag &optional norecord 1138@deffn Command clone-indirect-buffer newname display-flag &optional norecord
1139This function creates and returns a new indirect buffer that shares 1139This function creates and returns a new indirect buffer that shares
1140the current buffer's base buffer and copies the rest of the current 1140the current buffer's base buffer and copies the rest of the current
1141buffer's attributes. (If the current buffer is not indirect, it is 1141buffer's attributes. (If the current buffer is not indirect, it is
diff --git a/doc/lispref/windows.texi b/doc/lispref/windows.texi
index 54006b35eb4..0e1062a622f 100644
--- a/doc/lispref/windows.texi
+++ b/doc/lispref/windows.texi
@@ -525,7 +525,7 @@ horizontal, the ordering is top to bottom in the left part, and so on.
525In general, within each set of siblings at any level in the window tree 525In general, within each set of siblings at any level in the window tree
526(@pxref{Window Tree}), the order is left to right, or top to bottom. 526(@pxref{Window Tree}), the order is left to right, or top to bottom.
527 527
528@deffn next-window &optional window minibuf all-frames 528@defun next-window &optional window minibuf all-frames
529@cindex minibuffer window, and @code{next-window} 529@cindex minibuffer window, and @code{next-window}
530This function returns the window following @var{window} in the cyclic 530This function returns the window following @var{window} in the cyclic
531ordering of windows. This is the window @kbd{C-x o} selects if typed 531ordering of windows. This is the window @kbd{C-x o} selects if typed
@@ -588,13 +588,13 @@ buffer @samp{windows.texi}:
588 @result{} #<window 56 on windows.texi> 588 @result{} #<window 56 on windows.texi>
589@end group 589@end group
590@end example 590@end example
591@end deffn 591@end defun
592 592
593@deffn previous-window &optional window minibuf all-frames 593@defun previous-window &optional window minibuf all-frames
594This function returns the window preceding @var{window} in the cyclic 594This function returns the window preceding @var{window} in the cyclic
595ordering of windows. The other arguments specify which windows to 595ordering of windows. The other arguments specify which windows to
596include in the cycle, as in @code{next-window}. 596include in the cycle, as in @code{next-window}.
597@end deffn 597@end defun
598 598
599@deffn Command other-window count &optional all-frames 599@deffn Command other-window count &optional all-frames
600This function selects another window in the cyclic ordering of windows. 600This function selects another window in the cyclic ordering of windows.
@@ -827,7 +827,7 @@ This function updates the buffer list just like @code{switch-to-buffer}
827unless @var{norecord} is non-@code{nil}. 827unless @var{norecord} is non-@code{nil}.
828@end deffn 828@end deffn
829 829
830@deffn pop-to-buffer buffer-or-name &optional other-window norecord 830@deffn Command pop-to-buffer buffer-or-name &optional other-window norecord
831This command makes @var{buffer-or-name} the current buffer and switches 831This command makes @var{buffer-or-name} the current buffer and switches
832to it in some window, preferably not the window previously selected. 832to it in some window, preferably not the window previously selected.
833The ``popped-to'' window becomes the selected window. Its frame is 833The ``popped-to'' window becomes the selected window. Its frame is
diff --git a/doc/misc/ChangeLog b/doc/misc/ChangeLog
index 996c788738b..a559873d403 100644
--- a/doc/misc/ChangeLog
+++ b/doc/misc/ChangeLog
@@ -1,3 +1,20 @@
12010-04-18 Teodor Zlatanov <tzz@lifelogs.com>
2
3 * gnus.texi (Gnus Versions, Oort Gnus): Mention the Git repo instead of
4 the CVS repo. Put the Git repo in the news section.
5
6 * gnus-coding.texi (Gnus Maintainance Guide): Fix title typo.
7 Removed some mentions of CVS. Mention the new Git repo.
8
92010-04-18 Andreas Seltenreich <seltenreich@gmx.de>
10
11 * gnus.texi (Score File Format): Fix typo. Reported by Štěpán Němec.
12 (Mail Group Commands): Add index entry.
13
142010-04-18 Glenn Morris <rgm@gnu.org>
15
16 * info.texi (Search Index): Mention Emacs's Info-virtual-index.
17
12010-04-18 Jay Belanger <jay.p.belanger@gmail.com> 182010-04-18 Jay Belanger <jay.p.belanger@gmail.com>
2 19
3 * calc.texi (Radix modes): Mention that the option prefix will 20 * calc.texi (Radix modes): Mention that the option prefix will
@@ -7,11 +24,10 @@
72010-04-15 Carsten Dominik <carsten.dominik@gmail.com> 242010-04-15 Carsten Dominik <carsten.dominik@gmail.com>
8 25
9 * org.texi (LaTeX and PDF export): Add a footnote about xetex. 26 * org.texi (LaTeX and PDF export): Add a footnote about xetex.
10 (LaTeX/PDF export commands): Section renamed and 27 (LaTeX/PDF export commands): Rename and Move section.
11 moved.
12 (Sectioning structure): Update. 28 (Sectioning structure): Update.
13 (References): New use case for field coordinates. 29 (References): New use case for field coordinates.
14 (The export dispatcher): Renamed from ASCII export. 30 (The export dispatcher): Rename from ASCII export.
15 (Setting up the staging area): Document the availability of 31 (Setting up the staging area): Document the availability of
16 encryption for MobileOrg. 32 encryption for MobileOrg.
17 (Images and tables): Document how to reference labels. 33 (Images and tables): Document how to reference labels.
@@ -44,12 +60,10 @@
44 scheduling and deadline commands. 60 scheduling and deadline commands.
45 (Search view): Point to the docstring of 61 (Search view): Point to the docstring of
46 `org-search-view' for more details. 62 `org-search-view' for more details.
47 (Agenda commands): Document that `>' prompts for a 63 (Agenda commands): Document that `>' prompts for a date.
48 date.
49 (Setting tags): Document variable 64 (Setting tags): Document variable
50 org-complete-tags-always-offer-all-agenda-tags. 65 org-complete-tags-always-offer-all-agenda-tags.
51 (Column attributes): Cross-reference special 66 (Column attributes): Cross-reference special properties.
52 properties.
53 67
542010-04-10 Michael Albinus <michael.albinus@gmx.de> 682010-04-10 Michael Albinus <michael.albinus@gmx.de>
55 69
diff --git a/doc/misc/gnus-coding.texi b/doc/misc/gnus-coding.texi
index fc88a6d47b6..fd637ece6a8 100644
--- a/doc/misc/gnus-coding.texi
+++ b/doc/misc/gnus-coding.texi
@@ -32,16 +32,16 @@ license to the document, as described in section 6 of the license.
32 32
33 33
34@titlepage 34@titlepage
35@title Gnus Coding Style and Maintainance Guide 35@title Gnus Coding Style and Maintenance Guide
36 36
37@author by Reiner Steib <Reiner.Steib@@gmx.de> 37@author by Reiner Steib <Reiner.Steib@@gmx.de>
38 38
39@insertcopying 39@insertcopying
40@end titlepage 40@end titlepage
41 41
42@c Obviously this is only a very rudimentary draft. We put it in CVS 42@c Obviously this is only a very rudimentary draft. We put it in the
43@c anyway hoping that it might annoy someone enough to fix it. ;-) 43@c repository anyway hoping that it might annoy someone enough to fix
44@c Fixing only a paragraph also is appreciated. 44@c it. ;-) Fixing only a paragraph also is appreciated.
45 45
46@ifnottex 46@ifnottex
47@node Top 47@node Top
@@ -255,15 +255,17 @@ XEmacs 21.1 and up.
255 255
256@section Stable and development versions 256@section Stable and development versions
257 257
258The development of Gnus normally is done on the CVS trunk, i.e. there 258The development of Gnus normally is done on the Git repository trunk
259are no separate branches to develop and test new features. Most of the 259as of April 19, 2010 (formerly it was done in CVS; the repository is
260time, the trunk is developed quite actively with more or less daily 260at http://git.gnus.org), i.e. there are no separate branches to
261changes. Only after a new major release, e.g. 5.10.1, there's usually a 261develop and test new features. Most of the time, the trunk is
262feature period of several months. After the release of Gnus 5.10.6 the 262developed quite actively with more or less daily changes. Only after
263development of new features started again on the trunk while the 5.10 263a new major release, e.g. 5.10.1, there's usually a feature period of
264series is continued on the stable branch (v5-10) from which more stable 264several months. After the release of Gnus 5.10.6 the development of
265releases will be done when needed (5.10.8, @dots{}). 265new features started again on the trunk while the 5.10 series is
266@ref{Gnus Development, ,Gnus Development, gnus, The Gnus Newsreader} 266continued on the stable branch (v5-10) from which more stable releases
267will be done when needed (5.10.8, @dots{}). @ref{Gnus Development,
268,Gnus Development, gnus, The Gnus Newsreader}
267 269
268Stable releases of Gnus finally become part of Emacs. E.g. Gnus 5.8 270Stable releases of Gnus finally become part of Emacs. E.g. Gnus 5.8
269became a part of Emacs 21 (relabeled to Gnus 5.9). The 5.10 series 271became a part of Emacs 21 (relabeled to Gnus 5.9). The 5.10 series
@@ -333,8 +335,12 @@ rather than having to actually fix the code.
333 335
334@item 336@item
335For general Gnus development changes, of course you just make the 337For general Gnus development changes, of course you just make the
336change on the Gnus CVS trunk and it goes into Emacs a few years 338change on the Gnus Git trunk and it goes into Emacs a few years
337later... :-) 339later... :-)
340
341With the new Git repository, we'll probably set up something to
342automatically synchronize with Emacs when possible. CVS was much less
343powerful for this kind of synchronization.
338@end itemize 344@end itemize
339 345
340Of course in any case, if you just can't wait for me to sync your 346Of course in any case, if you just can't wait for me to sync your
diff --git a/doc/misc/gnus.texi b/doc/misc/gnus.texi
index 7a3fe922cee..585c4d6bcb8 100644
--- a/doc/misc/gnus.texi
+++ b/doc/misc/gnus.texi
@@ -11331,6 +11331,7 @@ disappear forever into that big @file{/dev/null} in the sky.
11331 11331
11332@item B DEL 11332@item B DEL
11333@kindex B DEL (Summary) 11333@kindex B DEL (Summary)
11334@cindex deleting mail
11334@findex gnus-summary-delete-article 11335@findex gnus-summary-delete-article
11335@c @icon{gnus-summary-mail-delete} 11336@c @icon{gnus-summary-mail-delete}
11336Delete the mail article. This is ``delete'' as in ``delete it from your 11337Delete the mail article. This is ``delete'' as in ``delete it from your
@@ -21843,7 +21844,7 @@ You can do this with the following two score file entries:
21843 21844
21844When you enter the group the first time, you will only see the new 21845When you enter the group the first time, you will only see the new
21845threads. You then raise the score of the threads that you find 21846threads. You then raise the score of the threads that you find
21846interesting (with @kbd{I T} or @kbd{I S}), and ignore (@kbd{C y}) the 21847interesting (with @kbd{I T} or @kbd{I S}), and ignore (@kbd{c y}) the
21847rest. Next time you enter the group, you will see new articles in the 21848rest. Next time you enter the group, you will see new articles in the
21848interesting threads, plus any new threads. 21849interesting threads, plus any new threads.
21849 21850
@@ -27111,6 +27112,10 @@ Gnus 5.10 on May 1st 2003 (24 releases).
27111 27112
27112On the January 4th 2004, No Gnus was begun. 27113On the January 4th 2004, No Gnus was begun.
27113 27114
27115On April 19, 2010 Gnus development was moved to Git. See
27116http://git.gnus.org for details (http://www.gnus.org will be updated
27117with the information when possible).
27118
27114If you happen upon a version of Gnus that has a prefixed name -- 27119If you happen upon a version of Gnus that has a prefixed name --
27115``(ding) Gnus'', ``September Gnus'', ``Red Gnus'', ``Quassia Gnus'', 27120``(ding) Gnus'', ``September Gnus'', ``Red Gnus'', ``Quassia Gnus'',
27116``Pterodactyl Gnus'', ``Oort Gnus'', ``No Gnus'' -- don't panic. 27121``Pterodactyl Gnus'', ``Oort Gnus'', ``No Gnus'' -- don't panic.
@@ -28507,7 +28512,7 @@ directory is not used any more. You can safely delete the entire
28507hierarchy. 28512hierarchy.
28508 28513
28509@c FIXME: `gnus-load' is mentioned in README, which is not included in 28514@c FIXME: `gnus-load' is mentioned in README, which is not included in
28510@c CVS. We should find a better place for this item. 28515@c the repository. We should find a better place for this item.
28511@item 28516@item
28512@code{(require 'gnus-load)} 28517@code{(require 'gnus-load)}
28513 28518
diff --git a/doc/misc/info.texi b/doc/misc/info.texi
index 98fffabdd6b..b1157c0c4eb 100644
--- a/doc/misc/info.texi
+++ b/doc/misc/info.texi
@@ -15,7 +15,8 @@ This file describes how to use Info, the on-line, menu-driven GNU
15documentation system. 15documentation system.
16 16
17Copyright @copyright{} 1989, 1992, 1996, 1997, 1998, 1999, 2000, 2001, 17Copyright @copyright{} 1989, 1992, 1996, 1997, 1998, 1999, 2000, 2001,
182002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. 182002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
19Free Software Foundation, Inc.
19 20
20@quotation 21@quotation
21Permission is granted to copy, distribute and/or modify this document 22Permission is granted to copy, distribute and/or modify this document
@@ -1050,6 +1051,13 @@ their names when @kbd{i} prompts you for a topic. For example, if you
1050want to read the description of what the @kbd{C-l} key does, type 1051want to read the description of what the @kbd{C-l} key does, type
1051@kbd{iC-l@key{RET}} literally. 1052@kbd{iC-l@key{RET}} literally.
1052 1053
1054@findex Info-virtual-index
1055@kindex I @r{(Info mode)}
1056Emacs provides the command @code{Info-virtual-index}, bound to the
1057@kbd{I} key. This behaves like @kbd{i}, but constructs a virtual
1058info node displaying the results of an index search, making it easier
1059to select the one you want.
1060
1053@findex info-apropos 1061@findex info-apropos
1054@findex index-apropos 1062@findex index-apropos
1055If you aren't sure which manual documents the topic you are looking 1063If you aren't sure which manual documents the topic you are looking