summaryrefslogtreecommitdiff
path: root/doc/emacs
diff options
context:
space:
mode:
Diffstat (limited to 'doc/emacs')
-rw-r--r--doc/emacs/ChangeLog278
-rw-r--r--doc/emacs/Makefile.in120
-rw-r--r--doc/emacs/ack.texi26
-rw-r--r--doc/emacs/basic.texi29
-rw-r--r--doc/emacs/building.texi226
-rw-r--r--doc/emacs/cmdargs.texi9
-rw-r--r--doc/emacs/dired.texi28
-rw-r--r--doc/emacs/display.texi51
-rw-r--r--doc/emacs/emacs.texi136
-rw-r--r--doc/emacs/emacsver.texi4
-rw-r--r--doc/emacs/files.texi2
-rw-r--r--doc/emacs/frames.texi22
-rw-r--r--doc/emacs/killing.texi29
-rw-r--r--doc/emacs/maintaining.texi17
-rw-r--r--doc/emacs/makefile.w32-in1
-rw-r--r--doc/emacs/misc.texi38
-rw-r--r--doc/emacs/msdog.texi14
-rw-r--r--doc/emacs/mule.texi103
-rw-r--r--doc/emacs/regs.texi2
-rw-r--r--doc/emacs/rmail.texi3
-rw-r--r--doc/emacs/search.texi3
-rw-r--r--doc/emacs/xresources.texi48
22 files changed, 896 insertions, 293 deletions
diff --git a/doc/emacs/ChangeLog b/doc/emacs/ChangeLog
index a374272135f..c2d058119a4 100644
--- a/doc/emacs/ChangeLog
+++ b/doc/emacs/ChangeLog
@@ -1,12 +1,12 @@
-2010-12-30 Chong Yidong <cyd@stupidchicken.com>
+2011-01-02 Chong Yidong <cyd@stupidchicken.com>
* rmail.texi (Rmail Display): Edit for grammar and conciseness.
-2010-12-27 Kenichi Handa <handa@m17n.org>
+2011-01-02 Kenichi Handa <handa@m17n.org>
* rmail.texi (Rmail Display): Describe new features of Rmail in Info.
-2010-12-25 Eli Zaretskii <eliz@gnu.org>
+2011-01-02 Eli Zaretskii <eliz@gnu.org>
* frames.texi (Cut and Paste): Modify the section's name and text:
don't mix "cut/paste" with "kill/yank".
@@ -15,34 +15,45 @@
* trouble.texi (Checklist): Mention debug-on-quit. (Bug#7667)
-2010-12-18 Glenn Morris <rgm@gnu.org>
+2011-01-02 Glenn Morris <rgm@gnu.org>
* maintaining.texi: Move inclusion of emerge after EDE, so that it
matches its position in the menu. (Bug#7674)
-2010-12-14 Glenn Morris <rgm@gnu.org>
+2011-01-02 Glenn Morris <rgm@gnu.org>
* trouble.texi (Checklist): Mention not replying via news either.
-2010-12-11 Eli Zaretskii <eliz@gnu.org>
+2010-12-30 Tassilo Horn <tassilo@member.fsf.org>
+
+ * misc.texi (Document View): Update DocView section with newly
+ supported document formats.
+
+2010-12-21 Chong Yidong <cyd@stupidchicken.com>
+
+ * killing.texi: Resection the Info version to conform to the
+ printed manual, to avoid making sections on Accumulating Text, CUA
+ and Rectangles into full chapters.
+
+2010-12-13 Eli Zaretskii <eliz@gnu.org>
* custom.texi (Init Syntax): Add index entries for "character syntax".
(Bug#7576)
-2010-12-11 Karel Klíč <kklic@redhat.com>
+2010-12-13 Karel Klíč <kklic@redhat.com>
* text.texi (HTML Mode): Small fixes. (Bug#7607)
-2010-12-10 Glenn Morris <rgm@gnu.org>
+2010-12-13 Glenn Morris <rgm@gnu.org>
* trouble.texi (Checklist): Fix typo in newsgroup name.
-2010-12-05 Chong Yidong <cyd@stupidchicken.com>
+2010-12-13 Chong Yidong <cyd@stupidchicken.com>
* search.texi (Word Search): Note that the lazy highlight always
matches to whole words (Bug#7470).
-2010-12-04 Eli Zaretskii <eliz@gnu.org>
+2010-12-13 Eli Zaretskii <eliz@gnu.org>
* display.texi (Optional Mode Line): Make the description of
load-average more accurate.
@@ -52,17 +63,17 @@
(Windows Startup): New node. Move the stuff about the current
directory from "Windows HOME".
-2010-11-23 Bob Rogers <rogers-emacs@rgrjr.dyndns.org>
+2010-11-27 Bob Rogers <rogers-emacs@rgrjr.dyndns.org>
* maintaining.texi (VC With A Locking VCS, VC Directory Commands):
* vc1-xtra.texi (Customizing VC, General VC Options): Small fixes.
-2010-11-21 Chong Yidong <cyd@stupidchicken.com>
+2010-11-27 Chong Yidong <cyd@stupidchicken.com>
* maintaining.texi (Version Control Systems): Fix repeated sentence.
Suggested by Štěpán Němec.
-2010-11-20 Chong Yidong <cyd@stupidchicken.com>
+2010-11-27 Chong Yidong <cyd@stupidchicken.com>
* maintaining.texi (Version Control): Say "commit", not "check in".
(Version Control Systems): Simplify descriptions.
@@ -77,11 +88,122 @@
* emacs.texi (Top): Update node listing.
-2010-11-06 Eli Zaretskii <eliz@gnu.org>
+2010-11-13 Eli Zaretskii <eliz@gnu.org>
+
+ * rmail.texi (Rmail Coding): Characters with no fonts are not
+ necessarily displayed as empty boxes.
+
+ * mule.texi (Language Environments, Fontsets): Characters with no
+ fonts are not necessarily displayed as empty boxes.
+
+ * display.texi (Text Display): Document display of glyphless
+ characters.
+
+2010-11-13 Glenn Morris <rgm@gnu.org>
+
+ * basic.texi (Position Info): Add M-x count-words-region.
+
+2010-11-11 Glenn Morris <rgm@gnu.org>
+
+ * msdog.texi (ls in Lisp): Update for ls-lisp changes.
+
+2010-11-09 Eli Zaretskii <eliz@gnu.org>
* msdog.texi (Windows HOME): Add information regarding startup
directory when invoking Emacs from a desktop shortcut. (bug#7300)
+2010-10-11 Glenn Morris <rgm@gnu.org>
+
+ * Makefile.in (MAKEINFO): Add explicit -I$srcdir.
+
+ * Makefile.in (.texi.dvi): Remove unnecessary suffix rule.
+ (DVIPS): New variable.
+ (.PHONY): Add html, ps.
+ (html, emacs.html, ps, emacs.ps, emacs-xtra.ps): New targets.
+ (clean): Delete html, ps files.
+
+2010-10-09 Eli Zaretskii <eliz@gnu.org>
+
+ * makefile.w32-in (EMACSSOURCES): Add emacsver.texi.
+
+2010-10-09 Glenn Morris <rgm@gnu.org>
+
+ * Makefile.in (VPATH): Remove.
+ (infodir): Make it absolute.
+ (mkinfodir, $(infodir)/emacs, infoclean): No need to cd $srcdir.
+
+ * Makefile.in (dist): Anchor regexps.
+
+ * Makefile.in (EMACSSOURCES): Put emacs.texi first.
+ ($(infodir)/emacs, emacs.dvi, emacs.pdf, emacs-xtra.dvi)
+ (emacs-xtra.pdf): Use $<.
+
+ * Makefile.in (infoclean): Remove harmless, long-standing error.
+
+ * Makefile.in ($(infodir)): Delete rule.
+ (mkinfodir): New.
+ ($(infodir)/emacs): Use $mkinfodir instead of infodir.
+
+ * Makefile.in (distclean): Do not delete emacsver.texi.
+ (dist): Remove reference to emacsver.texi.in.
+ * emacsver.texi: New file, replacing emacsver.texi.in.
+
+2010-10-09 Glenn Morris <rgm@gnu.org>
+
+ * emacsver.texi.in: New file.
+ * emacs.texi: Set EMACSVER by including emacsver.texi.
+ * Makefile.in (distclean): Delete emacsver.texi.
+ (dist): Copy emacsver.texi.
+ (EMACSSOURCES): Add emacsver.texi.
+
+ * ack.texi (Acknowledgments): No more b2m.c.
+
+ * Makefile.in (.PHONY): Declare info, dvi, pdf, dist.
+ (emacs): Remove rule.
+ (dist): No need to deal with the emacs rule any more.
+
+2010-10-07 Glenn Morris <rgm@gnu.org>
+
+ * Makefile.in (version): New, set by configure.
+ (clean): Delete dist tar file.
+ (dist): Use version in tar name.
+
+2010-10-06 Glenn Morris <rgm@gnu.org>
+
+ * Makefile.in (EMACS_XTRA): Add the main source file.
+ (emacs-xtra.dvi, emacs-xtra.pdf): Remove explicit emacs-xtra.texi.
+ (mostlyclean): No core files, reorder other files.
+ (clean): Delete specific dvi and pdf files.
+ (infoclean, dist): New rules.
+ (maintainer-clean): Use infoclean.
+ ($(infodir)): Add parallel build workaround.
+
+2010-10-04 Glenn Morris <rgm@gnu.org>
+
+ * Makefile.in (SHELL): Set it.
+ (INFO_TARGETS, DVI_TARGETS): Remove variables.
+ (info, dvi): Replace above variables with their expansions.
+ (info): Move mkdir from here...
+ ($(infodir)/emacs): ... to here (for parallel builds).
+ (pdf): New target.
+ ($(infodir)/emacs): Pass -o option to makeinfo.
+ (.PHONY): Declare clean rules.
+ (maintainer-clean): Delete dvi and pdf files.
+ Guard against cd failures. Use a more restrictive delete.
+
+2010-10-02 Glenn Morris <rgm@gnu.org>
+
+ * misc.texi (Shell Mode): Remove reference to old function name.
+
+2010-09-30 Eli Zaretskii <eliz@gnu.org>
+
+ * maintaining.texi (VC Mode Line): Mention all the possible VC status
+ indicator characters.
+
+2010-09-29 Glenn Morris <rgm@gnu.org>
+
+ * Makefile.in (top_srcdir): Remove unused variable.
+
2010-09-14 Glenn Morris <rgm@gnu.org>
* cal-xtra.texi (Fancy Diary Display): Emphasize that sort should be
@@ -90,7 +212,7 @@
* calendar.texi (Appointments): Also updated when a diary include file
is saved.
-2010-09-12 Glenn Morris <rgm@gnu.org>
+2010-09-14 Glenn Morris <rgm@gnu.org>
* trouble.texi (Bugs): Update the section intro.
(Known Problems): New section.
@@ -98,18 +220,35 @@
(Sending Patches): Bug fixes are best as responses to existing bugs.
* emacs.texi (Known Problems): Add menu entry for new section.
-2010-09-04 Chong Yidong <cyd@stupidchicken.com>
+2010-09-09 Glenn Morris <rgm@gnu.org>
+
+ * xresources.texi: Untabify.
+
+2010-09-06 Chong Yidong <cyd@stupidchicken.com>
* dired.texi (Dired Enter): Minor doc fix (Bug#6982).
-2010-09-02 Glenn Morris <rgm@gnu.org>
+2010-09-06 Glenn Morris <rgm@gnu.org>
* misc.texi (Saving Emacs Sessions): Mention desktop-path. (Bug#6948)
+2010-09-02 Jan Djärv <jan.h.d@swipnet.se>
+
+ * frames.texi (Cut/Paste Other App): Remove vut-buffer text.
+
2010-08-21 Glenn Morris <rgm@gnu.org>
* misc.texi (Amusements): Mention bubbles and animate.
+2010-07-31 Eli Zaretskii <eliz@gnu.org>
+
+ * files.texi (Visiting): Add more index entries for
+ large-file-warning-threshold.
+
+2010-07-29 Jan Djärv <jan.h.d@swipnet.se>
+
+ * frames.texi (Tool Bars): Add doc for tool-bar-position.
+
2010-06-23 Glenn Morris <rgm@gnu.org>
* abbrevs.texi, basic.texi, buffers.texi, building.texi, calendar.texi:
@@ -126,31 +265,67 @@
* basic.texi (Inserting Text): Fix typo.
-2010-05-07 Chong Yidong <cyd@stupidchicken.com>
+2010-06-10 Glenn Morris <rgm@gnu.org>
- * Version 23.2 released.
+ * ack.texi (Acknowledgments):
+ * emacs.texi (Acknowledgments): Update for notifications.el.
-2010-05-07 Chong Yidong <cyd@stupidchicken.com>
+2010-05-31 Daiki Ueno <ueno@unixuser.org>
+
+ * dired.texi (Operating on Files): Mention encryption commands
+ (Bug#6315).
+
+2010-05-29 Eli Zaretskii <eliz@gnu.org>
+
+ * basic.texi (Moving Point): Update due to renaming of commands bound
+ to arrows. Document bidi-aware behavior of C-<right> and C-<left>.
+
+2010-05-18 Eli Zaretskii <eliz@gnu.org>
+
+ * display.texi (Fringes): Document reversal of fringe arrows for R2L
+ paragraphs.
+ (Line Truncation): Fix wording for bidi display.
+
+ * basic.texi (Moving Point): Document bidi-aware behavior of the arrow
+ keys.
+
+2010-05-08 Chong Yidong <cyd@stupidchicken.com>
* building.texi (GDB Graphical Interface): Remove misleading comparison
to an IDE (Bug#6128).
-2010-05-03 Štěpán Němec <stepnem@gmail.com> (tiny change)
+2010-05-08 Štěpán Němec <stepnem@gmail.com> (tiny change)
* programs.texi (Man Page):
* misc.texi (Invoking emacsclient):
* mini.texi (Repetition):
* mark.texi (Setting Mark): Fix typos.
-2010-04-25 Chong Yidong <cyd@stupidchicken.com>
+2010-05-08 Chong Yidong <cyd@stupidchicken.com>
* misc.texi (Printing): Document htmlfontify-buffer.
-2010-04-21 Glenn Morris <rgm@gnu.org>
+2010-05-08 Glenn Morris <rgm@gnu.org>
* calendar.texi (Displaying the Diary, Format of Diary File):
Fix external cross-references for TeX format output.
+2010-05-07 Chong Yidong <cyd@stupidchicken.com>
+
+ * Version 23.2 released.
+
+2010-05-02 Jan Djärv <jan.h.d@swipnet.se>
+
+ * cmdargs.texi (Initial Options): Mention --chdir.
+
+2010-04-21 Jan Djärv <jan.h.d@swipnet.se>
+
+ * frames.texi (Tool Bars): Add tool-bar-style.
+
+2010-04-21 Glenn Morris <rgm@gnu.org>
+
+ * ack.texi, emacs.texi (Acknowledgments): Add SELinux support.
+
2010-04-18 Chong Yidong <cyd@stupidchicken.com>
* programs.texi (Semantic): New node.
@@ -161,13 +336,13 @@
* misc.texi (Gnus): Use the `C-h i' keybinding for info.
-2010-04-16 Glenn Morris <rgm@gnu.org>
+2010-04-18 Glenn Morris <rgm@gnu.org>
* emacs.texi (Acknowledgments): Remove duplicate.
* maintaining.texi (VC Directory Commands): Mention stashes and shelves.
-2010-04-15 Glenn Morris <rgm@gnu.org>
+2010-04-18 Glenn Morris <rgm@gnu.org>
* dired.texi (Misc Dired Features): Mention VC diff and log.
* maintaining.texi (Old Revisions, VC Change Log):
@@ -180,16 +355,28 @@
* custom.texi (Specifying File Variables, Directory Variables):
Document new commands for manipulating local variable lists.
-2010-04-09 Glenn Morris <rgm@gnu.org>
+2010-04-18 Glenn Morris <rgm@gnu.org>
* trouble.texi (Contributing): Add cindex entry.
Mention etc/CONTRIBUTE.
-2010-04-06 Chong Yidong <cyd@stupidchicken.com>
+2010-04-18 Chong Yidong <cyd@stupidchicken.com>
* mark.texi (Persistent Mark): Copyedits. Replace undo example with
query-replace (Bug#5774).
+2010-04-16 Glenn Morris <rgm@gnu.org>
+
+ * ack.texi, emacs.texi (Acknowledgments): Update for Org changes.
+
+2010-04-11 Jan Djärv <jan.h.d@swipnet.se>
+
+ * xresources.texi (Lucid Resources): Mention faceName for dialogs.
+
+2010-04-08 Jan Djärv <jan.h.d@swipnet.se>
+
+ * xresources.texi (Lucid Resources): Mention faceName to set Xft fonts.
+
2010-03-30 Eli Zaretskii <eliz@gnu.org>
* mule.texi (Input Methods): Mention "C-x 8 RET" and add a
@@ -198,13 +385,13 @@
* basic.texi (Inserting Text): Add an index entry for "C-x 8 RET".
Mention completion provided by `ucs-insert'.
-2010-03-28 Chong Yidong <cyd@stupidchicken.com>
+2010-03-30 Chong Yidong <cyd@stupidchicken.com>
* sending.texi (Sending Mail): Note variables that may need
customizing.
(Mail Sending): Expand discussion of send-mail-function.
-2010-03-28 Chong Yidong <cyd@stupidchicken.com>
+2010-03-30 Chong Yidong <cyd@stupidchicken.com>
Document Message mode as the default mail mode.
@@ -233,7 +420,7 @@
* emacs.texi (Top): Fix xrefs.
-2010-03-25 Chong Yidong <cyd@stupidchicken.com>
+2010-03-30 Chong Yidong <cyd@stupidchicken.com>
* maintaining.texi (VC With A Merging VCS): C-x v v now creates a
repository if there is none.
@@ -249,6 +436,25 @@
* misc.texi (Navigation): Document doc-view-continuous.
(Shell Ring): Document new M-r binding. M-s is no longer bound.
+2010-03-30 Juri Linkov <juri@jurta.org>
+
+ * search.texi (Other Repeating Search): Remove line that `occur'
+ can not handle multiline matches.
+
+2010-03-30 Eli Zaretskii <eliz@gnu.org>
+
+ * mule.texi (International): Mention support of bidirectional editing.
+ (Bidirectional Editing): New section.
+
+2010-03-28 Nick Roberts <nickrob@snap.net.nz>
+
+ * emacs.texi (Top): Update node names to those in building.texi.
+
+2010-03-27 Nick Roberts <nickrob@snap.net.nz>
+
+ doc/emacs/building.texi: Describe restored GDB/MI fuctionality removed by 2009-12-29T07:15:34Z!nickrob@snap.net.nz.
+ doc/emacs/emacs.texi: Update node names for building.texi.
+
2010-03-24 Glenn Morris <rgm@gnu.org>
* ack.texi (Acknowledgments):
@@ -281,6 +487,10 @@
* xresources.texi (Table of Resources):
* mule.texi (Defining Fontsets, Charsets): Update xrefs.
+2010-03-10 Chong Yidong <cyd@stupidchicken.com>
+
+ * Branch for 23.2.
+
2010-03-06 Chong Yidong <cyd@stupidchicken.com>
* custom.texi (Init Examples): Add xref to Locals.
@@ -647,7 +857,7 @@
2009-06-23 Miles Bader <miles@gnu.org>
- * display.texi (Scrolling): Document `recenter-redisplay'
+ * display.texi (Scrolling): Document `recenter-redisplay'.
(Temporary Face Changes): Document `text-scale-set'.
2009-06-21 Chong Yidong <cyd@stupidchicken.com>
@@ -1776,7 +1986,7 @@
(Fortran Columns): Mention font-locking.
(Fortran Abbrev): Word syntax not relevant with new-style abbrev.
-2008-08-23 Johan Bockgard <bojohan@muon>
+2008-08-23 Johan Bockgård <bojohan@muon>
* basic.texi (Moving Point): Fix <prior>/<next> confusion.
@@ -5745,7 +5955,7 @@
2005-03-05 Juri Linkov <juri@jurta.org>
* cmdargs.texi (Emacs Invocation): Add cindex
- "invocation (command line arguments)"
+ "invocation (command line arguments)".
(Misc X): Add -nbc, --no-blinking-cursor.
2005-03-04 Ulf Jasper <ulf.jasper@web.de>
@@ -7327,7 +7537,6 @@
;; Local Variables:
;; coding: utf-8
-;; fill-column: 79
;; End:
Copyright (C) 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2001, 2002,
@@ -7348,4 +7557,3 @@
You should have received a copy of the GNU General Public License
along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
-
diff --git a/doc/emacs/Makefile.in b/doc/emacs/Makefile.in
index 3f2f635dc7c..0d22870a5db 100644
--- a/doc/emacs/Makefile.in
+++ b/doc/emacs/Makefile.in
@@ -18,42 +18,38 @@
# You should have received a copy of the GNU General Public License
# along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
+SHELL = /bin/sh
-# Where to find the source code. $(srcdir) will be the man
-# subdirectory of the source tree. This is
-# set by the configure script's `--srcdir' option.
+# Where to find the source code. $(srcdir) will be the doc/emacs subdirectory
+# of the source tree. This is set by configure's `--srcdir' option.
srcdir=@srcdir@
-top_srcdir=@top_srcdir@
-# Tell make where to find source files; this is needed for the makefiles.
-VPATH=@srcdir@
+# Only for make dist.
+version=@version@
## Where the output files go.
## Note that the setfilename command in the .texi files assumes this.
-infodir=../../info
+## This is a bit funny. Because the info files are in the
+## distribution tarfiles, they are always made in $scrdir/../../info,
+## even for out-of-tree builds.
+infodir = $(srcdir)/../../info
# Directory with the (customized) texinfo.tex file.
texinfodir = $(srcdir)/../misc
# The makeinfo program is part of the Texinfo distribution.
# Use --force so that it generates output even if there are errors.
-MAKEINFO = makeinfo --force
-
-INFO_TARGETS = $(infodir)/emacs
-DVI_TARGETS = emacs.dvi
-
+MAKEINFO = makeinfo --force -I $(srcdir)
TEXI2DVI = texi2dvi
TEXI2PDF = texi2pdf
+DVIPS = dvips
-# The following rule does not work with all versions of `make'.
-.SUFFIXES: .texi .dvi
-.texi.dvi:
- $(TEXI2DVI) $<
ENVADD = TEXINPUTS="$(srcdir):$(texinfodir):$(TEXINPUTS)" MAKEINFO="$(MAKEINFO) -I$(srcdir)"
-EMACS_XTRA=\
+EMACS_XTRA= \
+ ${srcdir}/emacs-xtra.texi \
$(srcdir)/arevert-xtra.texi \
$(srcdir)/cal-xtra.texi \
$(srcdir)/dired-xtra.texi \
@@ -66,6 +62,7 @@ EMACS_XTRA=\
EMACSSOURCES= \
${srcdir}/emacs.texi \
+ ${srcdir}/emacsver.texi \
${srcdir}/doclicense.texi \
${srcdir}/gpl.texi \
${srcdir}/screen.texi \
@@ -111,56 +108,85 @@ EMACSSOURCES= \
${srcdir}/kmacro.texi \
$(EMACS_XTRA)
-info: $(infodir) $(INFO_TARGETS)
+## This seems pointless. The info/ directory exists in both the
+## repository and the release tarfiles. We do not use any
+## equivalent of mkdir -p/mkinstalldirs, so this is not a general
+## solution anyway. The second test -d is for parallel builds.
+mkinfodir = @test -d ${infodir} || mkdir ${infodir} || test -d ${infodir}
-$(infodir):
- mkdir $@
+.PHONY: info dvi html pdf ps
-dvi: $(DVI_TARGETS)
+info: $(infodir)/emacs
+dvi: emacs.dvi
+html: emacs.html
+pdf: emacs.pdf
+ps: emacs.ps
-# Note that all the Info targets build the Info files
-# in srcdir. There is no provision for Info files
-# to exist in the build directory.
+# Note that all the Info targets build the Info files in srcdir.
+# There is no provision for Info files to exist in the build directory.
# In a distribution of Emacs, the Info files should be up to date.
-emacs : $(infodir)/emacs
-
$(infodir)/emacs: ${EMACSSOURCES}
- cd $(srcdir); $(MAKEINFO) emacs.texi
+ $(mkinfodir)
+ $(MAKEINFO) -o $@ $<
emacs.dvi: ${EMACSSOURCES}
- $(ENVADD) $(TEXI2DVI) ${srcdir}/emacs.texi
+ $(ENVADD) $(TEXI2DVI) $<
+
+emacs.ps: emacs.dvi
+ $(DVIPS) -o $@ $<
emacs.pdf: ${EMACSSOURCES}
- $(ENVADD) $(TEXI2PDF) ${srcdir}/emacs.texi
+ $(ENVADD) $(TEXI2PDF) $<
+emacs.html: ${EMACSSOURCES}
+ $(MAKEINFO) --html -o $@ $<
-emacs-xtra.dvi: emacs-xtra.texi $(EMACS_XTRA)
- $(ENVADD) $(TEXI2DVI) ${srcdir}/emacs-xtra.texi
+emacs-xtra.dvi: $(EMACS_XTRA)
+ $(ENVADD) $(TEXI2DVI) $<
-emacs-xtra.pdf: emacs-xtra.texi $(EMACS_XTRA)
- $(ENVADD) $(TEXI2PDF) ${srcdir}/emacs-xtra.texi
+emacs-xtra.ps: emacs-xtra.dvi
+ $(DVIPS) -o $@ $<
+emacs-xtra.pdf: $(EMACS_XTRA)
+ $(ENVADD) $(TEXI2PDF) $<
+.PHONY: mostlyclean clean distclean maintainer-clean infoclean
+
+## Temp files.
mostlyclean:
- rm -f *.log *.cp *.fn *.ky *.op *.ops *.pg *.vr core *.tp *.core
- rm -f *.aux *.cps *.fns *.kys *.pgs *.vrs *.toc
+ rm -f *.aux *.log *.toc *.cp *.cps *.fn *.fns *.ky *.kys \
+ *.op *.ops *.pg *.pgs *.tp *.tps *.vr *.vrs
+## Products not in the release tarfiles.
clean: mostlyclean
- rm -f *.dvi
+ rm -f emacs.dvi emacs-xtra.dvi emacs.pdf emacs-xtra.pdf \
+ emacs.ps emacs-xtra.ps
+ rm -rf emacs.html/
+ rm -f emacs-manual-${version}.tar*
distclean: clean
-# rm -f Makefile
-
-maintainer-clean: distclean
- for file in $(INFO_TARGETS); do rm -f $${file}*; done
-
-
-# Formerly this directory had texindex.c and getopt.c in it
-# and this makefile built them to make texindex.
-# That caused trouble because this is run entirely in the source directory.
-# Since we expect to get texi2dvi from elsewhere,
-# it is ok to expect texindex from elsewhere also.
+## In the standalone tarfile, the clean rule runs this.
+infoclean:
+ -cd $(infodir) && rm -f emacs emacs-[1-9] emacs-[1-9][0-9]
+
+maintainer-clean: distclean infoclean
+
+.PHONY: dist
+
+## Make a standalone tarfile of the Emacs manual sources.
+## The [c] is a dumb way to prevent configure expanding it.
+dist:
+ rm -rf emacs-manual-${version}
+ mkdir emacs-manual-${version}
+ cp ${srcdir}/*.texi ${texinfodir}/texinfo.tex \
+ ${srcdir}/ChangeLog* emacs-manual-${version}/
+ sed -e 's/@sr[c]dir@/./' -e 's/^\(texinfodir *=\).*/\1 ./' \
+ -e 's/^\(infodir *=\).*/\1 ./' -e 's/^\(clean:.*\)/\1 infoclean/' \
+ -e "s/@ver[s]ion@/${version}/" \
+ ${srcdir}/Makefile.in > emacs-manual-${version}/Makefile
+ tar -cf emacs-manual-${version}.tar emacs-manual-${version}
+ rm -rf emacs-manual-${version}
### Makefile ends here
diff --git a/doc/emacs/ack.texi b/doc/emacs/ack.texi
index ff76beb3496..1e15f82dd1c 100644
--- a/doc/emacs/ack.texi
+++ b/doc/emacs/ack.texi
@@ -227,6 +227,10 @@ Mathias Dahl wrote @file{image-dired.el}, a package for viewing image
files as ``thumbnails.''
@item
+Julien Danjou wrote an implementation of ``Desktop Notifications''
+(@file{notifications.el}).
+
+@item
Vivek Dasmohapatra wrote @file{htmlfontify.el}, to convert a buffer or
source tree to HTML.
@@ -252,11 +256,11 @@ Jan Dj@"{a}rv added support for the GTK+ toolkit and X drag-and-drop.
Carsten Dominik wrote Ref@TeX{}, a package for setting up labels and
cross-references in La@TeX{} documents; and co-wrote IDLWAVE mode
(q.v.@:). He was the main author of Org mode, for maintaining notes,
-todo lists, and project planning. Thomas Baumann, Lennart Borgman,
-Baoqiu Cui, Daniel German, Bastien Guerry, Tassilo Horn, Philip Jackson,
-Tokuya Kameshima, Ross Patterson, Sebastian Rose, Eric Schulte, Andy
-Stewart, David O'Toole, John Wiegley, and Piotr Zielinski also wrote
-various Org mode components.
+todo lists, and project planning. Thomas Baumann, Jan Bcker, Lennart
+Borgman, Baoqiu Cui, Daniel German, Bastien Guerry, Tassilo Horn, Philip
+Jackson, Tokuya Kameshima, Ross Patterson, Sebastian Rose, Eric Schulte,
+Paul Sexton, Ulf Stegemann, Andy Stewart, David O'Toole, John Wiegley,
+and Piotr Zielinski also wrote various Org mode components.
@item
Scott Draves wrote @file{tq.el}, help functions for maintaining
@@ -574,6 +578,10 @@ files and running a PostScript interpreter interactively from within
Emacs.
@item
+Karel Kl@'{@dotless{i}}@v{c} contributed SELinux support, for preserving the
+Security-Enchanced Linux context of files on backup and copy.
+
+@item
Shuhei Kobayashi wrote @file{hex-util.el}, for operating on hexadecimal
strings; support for HMAC (Keyed-Hashing for Message Authentication);
and a Lisp implementation of the SHA1 Secure Hash Algorithm.
@@ -1313,10 +1321,6 @@ Directory Client; and @code{eshell}, a command shell implemented
entirely in Emacs Lisp. He also contributed to Org mode (q.v.@:).
@item
-Ed Wilkinson wrote @file{b2m.c}, a program to convert mail files from
-RMAIL format to Unix @code{mbox} format.
-
-@item
Mike Williams wrote @file{mouse-sel.el}, providing enhanced mouse
selection; and @file{thingatpt.el}, a library of functions for finding
the ``thing'' (word, line, s-expression) containing point.
@@ -1410,7 +1414,3 @@ Detlev Zundel wrote @file{re-builder.el}, a package for building regexps
with visual feedback.
@end itemize
-
-@ignore
- arch-tag: bb1d0fa4-0240-4992-b5d4-8602d1e3d4ba
-@end ignore
diff --git a/doc/emacs/basic.texi b/doc/emacs/basic.texi
index abe6081a335..fb97b65d240 100644
--- a/doc/emacs/basic.texi
+++ b/doc/emacs/basic.texi
@@ -147,6 +147,8 @@ keyboard commands that move point in more sophisticated ways.
@findex move-end-of-line
@findex forward-char
@findex backward-char
+@findex right-char
+@findex left-char
@findex next-line
@findex previous-line
@findex beginning-of-buffer
@@ -162,19 +164,33 @@ Move to the beginning of the line (@code{move-beginning-of-line}).
@itemx @key{End}
Move to the end of the line (@code{move-end-of-line}).
@item C-f
-@itemx @key{right}
Move forward one character (@code{forward-char}).
+@item @key{right}
+Move one character to the right (@code{right-char}). This
+moves one character forward in text that is read in the usual
+left-to-right direction, but one character @emph{backward} if the text
+is read right-to-left, as needed for right-to-left scripts such as
+Arabic. @xref{Bidirectional Editing}.
@item C-b
-@itemx @key{left}
Move backward one character (@code{backward-char}).
+@item @key{left}
+Move one character to the left (@code{left-char}). This
+moves one character backward in left-to-right text and one character
+forward in right-to-left text.
@item M-f
@itemx M-@key{right}
-@itemx C-@key{right}
Move forward one word (@code{forward-word}).
+@item C-@key{right}
+Move one word to the right (@code{right-word}). This moves one word
+forward in left-to-right text and one word backward in right-to-left
+text.
@item M-b
@itemx M-@key{left}
-@itemx C-@key{left}
Move backward one word (@code{backward-word}).
+@item C-@key{left}
+Move one word to the left (@code{left-word}). This moves one word
+backward in left-to-right text and one word forward in right-to-left
+text.
@item C-n
@itemx @key{down}
Move down one screen line (@code{next-line}). This command attempts
@@ -521,6 +537,8 @@ Toggle automatic display of the current line number or column number.
Display the number of lines in the current region. Normally bound to
@kbd{M-=}, except in a few specialist modes. @xref{Mark}, for
information about the region.
+@item M-x count-words-region
+Display the number of words in the current region.
@item C-x =
Display the character code of character after point, character position of
point, and column of point (@code{what-cursor-position}).
@@ -727,6 +745,3 @@ additional times, to delete a total of 80 characters, by typing @kbd{C-x
z z z}. The first @kbd{C-x z} repeats the command once, and each
subsequent @kbd{z} repeats it once again.
-@ignore
- arch-tag: cda8952a-c439-41c1-aecf-4bc0d6482956
-@end ignore
diff --git a/doc/emacs/building.texi b/doc/emacs/building.texi
index dcfa60ecc81..98420b1f569 100644
--- a/doc/emacs/building.texi
+++ b/doc/emacs/building.texi
@@ -853,18 +853,19 @@ use @kbd{M-x gud-gdb}. You need to use text command mode to debug
multiple programs within one Emacs session.
@menu
-* GDB-UI Layout:: Control the number of displayed buffers.
+* GDB User Interface Layout:: Control the number of displayed buffers.
* Source Buffers:: Use the mouse in the fringe/margin to
control your program.
* Breakpoints Buffer:: A breakpoint control panel.
+* Threads Buffer:: Displays your threads.
* Stack Buffer:: Select a frame from the call stack.
-* Other GDB-UI Buffers:: Input/output, locals, registers,
+* Other GDB Buffers:: Input/output, locals, registers,
assembler, threads and memory buffers.
* Watch Expressions:: Monitor variable values in the speedbar.
-* Reverse Debugging:: Execute and reverse debug your program.
+* Multithreaded Debugging:: Debugging programs with several threads.
@end menu
-@node GDB-UI Layout
+@node GDB User Interface Layout
@subsubsection GDB User Interface Layout
@cindex GDB User Interface layout
@@ -1014,10 +1015,92 @@ Visit the source line for the current breakpoint
Visit the source line for the breakpoint you click on.
@end table
+@vindex gdb-show-threads-by-default
When @code{gdb-many-windows} is non-@code{nil}, the breakpoints buffer
shares its window with the threads buffer. To switch from one to the
other click with @kbd{Mouse-1} on the relevant button in the header
-line.
+line. If @code{gdb-show-threads-by-default} is non-@code{nil}, the
+threads buffer, rather than the breakpoints buffer, is shown at start
+up.
+
+@node Threads Buffer
+@subsubsection Threads Buffer
+
+@findex gdb-select-thread
+The threads buffer displays a summary of all threads currently in your
+program (@pxref{Threads, Threads, Debugging programs with multiple
+threads, gdb, The GNU debugger}). Move point to any thread in the list
+and press @key{RET} to select it (@code{gdb-select-thread}) and
+display the associated source in the primary source buffer.
+Alternatively, click @kbd{Mouse-2} on a thread to select it. Contents
+of all GDB buffers are updated whenever you select a thread.
+
+ You can customize variables under @code{gdb-buffers} group to select
+fields included in threads buffer.
+
+@table @code
+@item gdb-thread-buffer-verbose-names
+@vindex gdb-thread-buffer-verbose-names
+Show long thread names like @samp{Thread 0x4e2ab70 (LWP 1983)} in
+threads buffer.
+
+@item gdb-thread-buffer-arguments
+@vindex gdb-thread-buffer-arguments
+Show arguments of thread top frames in threads buffer.
+
+@item gdb-thread-buffer-locations
+@vindex gdb-thread-buffer-locations
+Show file information or library names in threads buffer.
+
+@item gdb-thread-buffer-addresses
+@vindex gdb-thread-buffer-addresses
+Show addresses for thread frames in threads buffer.
+@end table
+
+ It’s possible to observe information for several threads
+simultaneously (in addition to buffers which show information for
+currently selected thread) using the following keys from the threads
+buffer.
+
+@table @kbd
+@item d
+@kindex d @r{(GDB threads buffer)}
+@findex gdb-display-disassembly-for-thread
+Display disassembly buffer for the thread at current line.
+(@code{gdb-display-disassembly-for-thread})
+
+@item f
+@kindex f @r{(GDB threads buffer)}
+@findex gdb-display-stack-for-thread
+Display stack buffer for the thread at current line.
+(@code{gdb-display-stack-for-thread}).
+
+@item l
+@kindex l @r{(GDB threads buffer)}
+@findex gdb-display-locals-for-thread
+Display locals buffer for the thread at current line.
+(@code{gdb-display-locals-for-thread}).
+
+@item r
+@kindex r @r{(GDB threads buffer)}
+@findex gdb-display-registers-for-thread
+Display registers buffer for the thread at current line.
+(@code{gdb-display-registers-for-thread}).
+@end table
+
+Pressing their upper-case counterparts, @kbd{D}, @kbd{F} ,@kbd{L} and
+@kbd{R} displays the corresponding buffer in a new frame.
+
+ When you create a buffer showing information about some specific
+thread, it becomes bound to that thread and keeps showing actual
+information while you debug your program. Every GDB buffer contains a
+number of thread it shows information for in its mode name. Thread
+number is also included in the buffer name of bound buffers to prevent
+buffer names clashing.
+
+Further commands are available in the threads buffer which depend on the
+mode of GDB that is used for controlling execution of your program.
+(@pxref{Multithreaded Debugging, Stopping and Starting Multi-threaded Programs}).
@node Stack Buffer
@subsubsection Stack Buffer
@@ -1035,7 +1118,7 @@ that stack frame and type @key{RET} (@code{gdb-frames-select}), or click
selecting a stack frame updates it to display the local variables of the
new frame.
-@node Other GDB-UI Buffers
+@node Other GDB Buffers
@subsubsection Other Buffers
@table @asis
@@ -1079,21 +1162,6 @@ arrow points to the current instruction, and you can set and remove
breakpoints as in a source buffer. Breakpoint icons also appear in
the fringe or margin.
-@item Threads Buffer
-@findex gdb-threads-select
-The threads buffer displays a summary of all threads currently in your
-program (@pxref{Threads, Threads, Debugging programs with multiple
-threads, gdb, The GNU debugger}). Move point to any thread in the
-list and press @key{RET} to select it (@code{gdb-threads-select}) and
-display the associated source in the primary source buffer.
-Alternatively, click @kbd{Mouse-2} on a thread to select it. If the
-locals buffer is visible, its contents update to display the variables
-that are local in the new thread.
-
-When there is more than one main thread and the threads buffer is
-present, Emacs displays the selected thread number in the mode line of
-many of the GDB-UI Buffers.
-
@item Memory Buffer
The memory buffer lets you examine sections of program memory
(@pxref{Memory, Memory, Examining memory, gdb, The GNU debugger}).
@@ -1104,9 +1172,9 @@ displays. Alternatively, use @kbd{S} or @kbd{N} respectively. Click
size for these data items.
@end table
-When @code{gdb-many-windows} is non-@code{nil}, the threads buffer
-shares its window with the breakpoints buffer, and the locals buffer
-with the registers buffer. To switch from one to the other click with
+When @code{gdb-many-windows} is non-@code{nil}, the locals buffer
+shares its window with the registers buffer, just like breakpoints
+and threads buffers. To switch from one to the other click with
@kbd{Mouse-1} on the relevant button in the header line.
@node Watch Expressions
@@ -1175,26 +1243,96 @@ expressions updates, set @code{gdb-speedbar-auto-raise} to
non-@code{nil}. This can be useful if you are debugging with a full
screen Emacs frame.
-@node Reverse Debugging
-@subsubsection Reverse Debugging
-
- The GDB tool bar shares many buttons with the other GUD debuggers
-for tasks like stepping and printing expressions. It also has a
-further set of buttons that allow reverse debugging (@pxref{Process
-Record and Replay, , ,gdb, The GNU debugger}). This is useful when it
-takes a long time to reproduce the conditions where your program fails
-or for transient problems, like race conditions in multi-threaded
-programs, where a failure might otherwise be hard to reproduce.
-
-To use reverse debugging, set a breakpoint slightly before the
-location of interest and run your program to that point. Enable
-process recording by clicking on the record button. At this point, a
-new set of buttons appear. These buttons allow program execution in
-the reverse direction. Run your program over the code where the
-problem occurs, and then use the new set of buttons to retrace your
-steps, examine values, and analyze the problem. When analysis is
-complete, turn off process recording by clicking on the record button
-again.
+@node Multithreaded Debugging
+@subsubsection Stopping and Starting Multi-threaded Programs
+@cindex Multithreaded debugging in GDB
+
+@subsubheading All-stop Debugging
+
+In all-stop mode, whenever your program stops, @emph{all} threads of
+execution stop. Likewise, whenever you restart the program, all
+threads start executing. @xref{All-Stop Mode, , All-Stop Mode, gdb,
+The GNU debugger}. You can enable this behaviour in Emacs by setting
+@code{gdb-non-stop-setting} to @code{nil} before starting a debugging
+session.
+
+@subsubheading Non-stop Debugging
+@cindex Non-stop debugging in GDB
+
+For some multi-threaded targets, GDB supports a further mode of
+operation in which you can examine stopped program threads in the
+debugger while other threads continue to execute freely.
+@xref{Non-Stop Mode, , Non-Stop Mode, gdb, The GNU debugger}.
+This is referred to as @dfn{non-stop} mode.
+
+Versions of GDB prior to 7.0 do not support non-stop mode and it does
+not work on all targets. In such cases, Emacs uses all-stop mode
+regardless of the value of @code{gdb-non-stop-setting}.
+
+@vindex gdb-non-stop-setting
+If the variable @code{gdb-non-stop-setting} is non-@code{nil} (the
+default value), Emacs tries to start GDB in non-stop mode. Note that
+GDB debugging session needs to be restarted for change of this setting
+to take effect.
+
+@vindex gdb-switch-when-another-stopped
+When a thread stops in non-stop mode, Emacs automatically switches to
+that thread. It may be undesirable to allow switching of current
+thread when some other stopped thread is already selected. Set
+@code{gdb-switch-when-another-stopped} to @code{nil} to prevent this.
+
+@vindex gdb-switch-reasons
+Emacs can decide whether or not to switch to the stopped thread
+depending on the reason which caused the stop. Customize
+@code{gdb-switch-reasons} to select stop reasons which make Emacs
+switch thread.
+
+@vindex gdb-stopped-hooks
+The variable @code{gdb-stopped-hooks} allows you to execute your
+functions whenever some thread stops.
+
+ In non-stop mode, you can switch between different modes for GUD
+execution control commands.
+
+@vindex gdb-gud-control-all-threads
+@table @dfn
+@item Non-stop/A
+
+When @code{gdb-gud-control-all-threads} is @code{t} (the default
+value), interruption and continuation commands apply to all threads,
+so you can halt or continue all your threads with one command using
+@code{gud-stop-subjob} and @code{gud-cont}, respectively. The
+@samp{Go} button is shown on the toolbar when at least one thread is
+stopped, whereas @samp{Stop} button is shown when at least one thread
+is running.
+
+@item Non-stop/T
+
+When @code{gdb-gud-control-all-threads} is @code{nil}, only the
+current thread is stopped/continued. @samp{Go} and @samp{Stop}
+buttons on the GUD toolbar are shown depending on the state of current
+thread.
+@end table
+
+You can change the current value of @code{gdb-gud-control-all-threads}
+from the tool bar or from @samp{GUD->GDB-MI} menu.
+
+ Stepping commands always apply to the current thread.
+
+@subsubheading Fine Thread Control
+
+ In non-stop mode, you can interrupt/continue your threads without
+selecting them. Hitting @kbd{i} in threads buffer interrupts thread
+under point, @kbd{c} continues it, @kbd{s} steps through. More such
+commands may be added in the future.
+
+Combined with creating bound buffers for any thread, this allows you
+to change and track state of many threads in the same time.
+
+ Note that when you interrupt a thread, it stops with @samp{signal
+received} reason. If that reason is included in your
+@code{gdb-switch-reasons} (it is by default), Emacs will switch to
+that thread.
@node Executing Lisp
@section Executing Lisp Expressions
diff --git a/doc/emacs/cmdargs.texi b/doc/emacs/cmdargs.texi
index 2f711ab098c..dc0ff935f78 100644
--- a/doc/emacs/cmdargs.texi
+++ b/doc/emacs/cmdargs.texi
@@ -193,6 +193,15 @@ Certain options prevent loading of some of these files or substitute
other files for them.
@table @samp
+@item -chdir @var{directory}
+@opindex -chdir
+@itemx --chdir=@var{directory}
+@opindex --chdir
+@cindex change Emacs directory
+Change to @var{directory} before doing anything else. This is mainly used
+by session management in X so that Emacs starts in the same directory as it
+stopped. This makes desktop saving and restoring easier.
+
@item -t @var{device}
@opindex -t
@itemx --terminal=@var{device}
diff --git a/doc/emacs/dired.texi b/doc/emacs/dired.texi
index 3d33006dcac..92105e65664 100644
--- a/doc/emacs/dired.texi
+++ b/doc/emacs/dired.texi
@@ -687,6 +687,34 @@ suitable guess made using the variables @code{lpr-command} and
Compress the specified files (@code{dired-do-compress}). If the file
appears to be a compressed file already, uncompress it instead.
+@findex epa-dired-do-decrypt
+@kindex :d @r{(Dired)}
+@cindex decrypting files (in Dired)
+@item :d
+Decrypt the specified files (@code{epa-dired-do-decrypt}).
+@xref{Dired integration,,, epa, EasyPG Assistant User's Manual}.
+
+@findex epa-dired-do-verify
+@kindex :v @r{(Dired)}
+@cindex verifying digital signatures on files (in Dired)
+@item :v
+Verify digital signatures on the specified files (@code{epa-dired-do-verify}).
+@xref{Dired integration,,, epa, EasyPG Assistant User's Manual}.
+
+@findex epa-dired-do-sign
+@kindex :s @r{(Dired)}
+@cindex signing files (in Dired)
+@item :s
+Digitally sign the specified files (@code{epa-dired-do-sign}).
+@xref{Dired integration,,, epa, EasyPG Assistant User's Manual}.
+
+@findex epa-dired-do-encrypt
+@kindex :e @r{(Dired)}
+@cindex encrypting files (in Dired)
+@item :e
+Encrypt the specified files (@code{epa-dired-do-encrypt}).
+@xref{Dired integration,,, epa, EasyPG Assistant User's Manual}.
+
@findex dired-do-load
@kindex L @r{(Dired)}
@cindex loading several files (in Dired)
diff --git a/doc/emacs/display.texi b/doc/emacs/display.texi
index aad061b33d9..0af2b022104 100644
--- a/doc/emacs/display.texi
+++ b/doc/emacs/display.texi
@@ -804,7 +804,10 @@ line, when one line of text is split into multiple lines on the
screen. The left fringe shows a curving arrow for each screen line
except the first, indicating that ``this is not the real beginning.''
The right fringe shows a curving arrow for each screen line except the
-last, indicating that ``this is not the real end.''
+last, indicating that ``this is not the real end.'' If the line's
+direction is right-to-left (@pxref{Bidirectional Editing}), the
+meaning of the curving arrows in the left and right fringes are
+swapped.
The fringes indicate line truncation with short horizontal arrows
meaning ``there's more text on this line which is scrolled
@@ -1134,6 +1137,48 @@ prefix these characters with an escape character.
by means of a display table. @xref{Display Tables,, Display Tables,
elisp, The Emacs Lisp Reference Manual}.
+@cindex glyphless characters
+@cindex characters with no font glyphs
+ On graphics displays, some characters could have no glyphs in any of
+the fonts available to Emacs. On text terminals, some characters
+could be impossible to encode with the terminal coding system
+(@pxref{Terminal Coding}). Emacs can display such @dfn{glyphless}
+characters using one of the following methods:
+
+@table @code
+@item zero-width
+Don't display the character.
+
+@item thin-space
+Display a thin space, 1-pixel wide on graphics displays or 1-character
+wide on text terminals.
+
+@item empty-box
+Display an empty box.
+
+@item acronym
+Display the acronym of the character's name (such as @sc{zwnj} or
+@sc{rlm}) in a box.
+
+@item hex-code
+Display the Unicode codepoint of the character in hexadecimal
+notation, in a box.
+@end table
+
+@noindent
+@cindex @code{glyphless-char} face
+With the exception of @code{zero-width}, all other methods draw these
+characters in a special face @code{glyphless-char}, which you can
+customize.
+
+@vindex glyphless-char-display-control
+@vindex char-acronym-table
+To control what glyphless characters are displayed using which method,
+customize the variable @code{glyphless-char-display-control}; see its
+doc string for the details. For even finer control, set the elements
+of 2 char-tables: @code{glyphless-char-display} and
+@code{char-acronym-table}.
+
@node Cursor Display
@section Displaying the Cursor
@@ -1192,8 +1237,8 @@ can display long lines by @dfn{truncation}. This means that all the
characters that do not fit in the width of the screen or window do not
appear at all. On graphical displays, a small straight arrow in the
fringe indicates truncation at either end of the line. On text-only
-terminals, @samp{$} appears in the first column when there is text
-truncated to the left, and in the last column when there is text
+terminals, @samp{$} appears in the leftmost column when there is text
+truncated to the left, and in the rightmost column when there is text
truncated to the right.
@vindex truncate-lines
diff --git a/doc/emacs/emacs.texi b/doc/emacs/emacs.texi
index 069c777a51b..dc3880e1937 100644
--- a/doc/emacs/emacs.texi
+++ b/doc/emacs/emacs.texi
@@ -5,7 +5,7 @@
@c The edition number appears in several places in this file
@set EDITION Sixteenth
-@set EMACSVER 23.2.91
+@include emacsver.texi
@copying
This is the @value{EDITION} edition of the @cite{GNU Emacs Manual},@*
@@ -51,7 +51,6 @@ developing GNU and promoting software freedom.''
@tex
@ifset smallbook
@fonttextsize 10
-@set EMACSVER 22
\global\let\urlcolor=\Black % don't print links in grayscale
\global\let\linkcolor=\Black
@end ifset
@@ -747,14 +746,16 @@ Running Debuggers Under Emacs
GDB Graphical Interface
-* GDB-UI Layout:: Control the number of displayed buffers.
-* Source Buffers:: Use the mouse in the fringe/margin to
- control your program.
-* Breakpoints Buffer:: A breakpoint control panel.
-* Stack Buffer:: Select a frame from the call stack.
-* Other GDB-UI Buffers::Input/output, locals, registers,
- assembler, threads and memory buffers.
-* Watch Expressions:: Monitor variable values in the speedbar.
+* GDB User Interface Layout:: Control the number of displayed buffers.
+* Source Buffers:: Use the mouse in the fringe/margin to
+ control your program.
+* Breakpoints Buffer:: A breakpoint control panel.
+* Threads Buffer:: Displays your threads.
+* Stack Buffer:: Select a frame from the call stack.
+* Other GDB Buffers:: Input/output, locals, registers,
+ assembler, threads and memory buffers.
+* Watch Expressions:: Monitor variable values in the speedbar.
+* Multithreaded Debugging:: Debugging programs with several threads.
Maintaining Large Programs
@@ -1351,45 +1352,46 @@ Abrahamsson, Jay K.@: Adams, Michael Albinus, Nagy Andras, Ralf Angeli,
Joe Arceneaux, Miles Bader, David Bakhash, Juanma Barranquero, Eli
Barzilay, Thomas Baumann, Steven L.@: Baur, Jay Belanger, Alexander L.@:
Belikoff, Boaz Ben-Zvi, Karl Berry, Anna M.@: Bigatti, Ray Blaak, Jim
-Blandy, Johan Bockg@aa{}rd, Lennart Borgman, Per Bothner, Terrence
-Brannon, Frank Bresz, Peter Breton, Emmanuel Briot, Kevin Broadey,
-Vincent Broman, David M.@: Brown, Georges Brun-Cottan, Joe Buehler,
-W@l{}odek Bzyl, Bill Carpenter, Per Cederqvist, Hans Chalupsky, Chong
-Yidong, Chris Chase, Bob Chassell, Andrew Choi, Sacha Chua, James Clark,
-Mike Clarkson, Glynn Clements, Daniel Colascione, Andrew Csillag, Baoqiu
-Cui, Doug Cutting, Mathias Dahl, Satyaki Das, Vivek Dasmohapatra,
-Michael DeCorte, Gary Delp, Matthieu Devin, Eri Ding, Jan Dj@"{a}rv,
-Carsten Dominik, Scott Draves, Benjamin Drieu, Viktor Dukhovni, Dmitry
-Dzhus, John Eaton, Rolf Ebert, Paul Eggert, Stephen Eglen, Torbj@"orn
-Einarsson, Tsugutomo Enami, Hans Henrik Eriksen, Michael Ernst, Ata
-Etemadi, Frederick Farnbach, Oscar Figueiredo, Fred Fish, Karl Fogel,
-Gary Foster, Romain Francoise, Noah Friedman, Andreas Fuchs, Hallvard
-Furuseth, Keith Gabryelski, Peter S.@: Galbraith, Kevin Gallagher, Kevin
-Gallo, Juan Le@'{o}n Lahoz Garc@'{@dotless{i}}a, Howard Gayle, Daniel
-German, Stephen Gildea, Julien Gilles, David Gillespie, Bob Glickstein,
-Deepak Goel, Boris Goldowsky, Michelangelo Grigni, Odd Gripenstam, Kai
-Gro@ss{}johann, Michael Gschwind, Bastien Guerry, Henry Guillaume, Doug
-Gwyn, Ken'ichi Handa, Lars Hansen, Chris Hanson, K. Shane Hartman, John
-Heidemann, Jon K.@: Hellan, Jesper Harder, Magnus Henoch, Markus
-Heritsch, Karl Heuer, Manabu Higashida, Anders Holst, Jeffrey C.@:
-Honig, Tassilo Horn, Kurt Hornik, Tom Houlder, Joakim Hove, Denis Howe,
-Lars Ingebrigtsen, Andrew Innes, Seiichiro Inoue, Philip Jackson, Pavel
-Janik, Paul Jarc, Ulf Jasper, Michael K. Johnson, Kyle Jones, Terry
-Jones, Simon Josefsson, Arne J@o{}rgensen, Tomoji Kagatani, Brewster
-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, 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,
-Dave Love, Sascha L@"{u}decke, Eric Ludlam, Alan Mackenzie, Christopher
-J.@: Madsen, Neil M.@: Mager, Ken Manheimer, Bill Mann, Brian Marick,
-Simon Marshall, Bengt Martensson, Charlie Martin, Thomas May, Roland
-McGrath, Will Mengarini, David Megginson, Ben A. Mesander, Wayne Mesard,
-Brad Miller, Lawrence Mitchell, Richard Mlynarik, Gerd Moellmann, Stefan
+Blandy, Johan Bockg@aa{}rd, Jan Bcker, Lennart Borgman, Per Bothner,
+Terrence Brannon, Frank Bresz, Peter Breton, Emmanuel Briot, Kevin
+Broadey, Vincent Broman, David M.@: Brown, Georges Brun-Cottan, Joe
+Buehler, W@l{}odek Bzyl, Bill Carpenter, Per Cederqvist, Hans Chalupsky,
+Chong Yidong, Chris Chase, Bob Chassell, Andrew Choi, Sacha Chua, James
+Clark, Mike Clarkson, Glynn Clements, Daniel Colascione, Andrew Csillag,
+Baoqiu Cui, Doug Cutting, Mathias Dahl, Julien Danjou, Satyaki Das,
+Vivek Dasmohapatra, Michael DeCorte, Gary Delp, Matthieu Devin, Eri
+Ding, Jan Dj@"{a}rv, Carsten Dominik, Scott Draves, Benjamin Drieu,
+Viktor Dukhovni, Dmitry Dzhus, John Eaton, Rolf Ebert, Paul Eggert,
+Stephen Eglen, Torbj@"orn Einarsson, Tsugutomo Enami, Hans Henrik
+Eriksen, Michael Ernst, Ata Etemadi, Frederick Farnbach, Oscar
+Figueiredo, Fred Fish, Karl Fogel, Gary Foster, Romain Francoise, Noah
+Friedman, Andreas Fuchs, Hallvard Furuseth, Keith Gabryelski, Peter S.@:
+Galbraith, Kevin Gallagher, Kevin Gallo, Juan Le@'{o}n Lahoz
+Garc@'{@dotless{i}}a, Howard Gayle, Daniel German, Stephen Gildea,
+Julien Gilles, David Gillespie, Bob Glickstein, Deepak Goel, Boris
+Goldowsky, Michelangelo Grigni, Odd Gripenstam, Kai Gro@ss{}johann,
+Michael Gschwind, Bastien Guerry, Henry Guillaume, Doug Gwyn, Ken'ichi
+Handa, Lars Hansen, Chris Hanson, K. Shane Hartman, John Heidemann, Jon
+K.@: Hellan, Jesper Harder, Magnus Henoch, Markus Heritsch, Karl Heuer,
+Manabu Higashida, Anders Holst, Jeffrey C.@: Honig, Tassilo Horn, Kurt
+Hornik, Tom Houlder, Joakim Hove, Denis Howe, Lars Ingebrigtsen, Andrew
+Innes, Seiichiro Inoue, Philip Jackson, Pavel Janik, Paul Jarc, Ulf
+Jasper, Michael K. Johnson, Kyle Jones, Terry Jones, Simon Josefsson,
+Arne J@o{}rgensen, Tomoji Kagatani, Brewster Kahle, Tokuya Kameshima,
+Lute Kamstra, David Kastrup, David Kaufman, Henry Kautz, Taichi
+Kawabata, Howard Kaye, Michael Kifer, Richard King, Peter Kleiweg, Karel
+Kl@'{@dotless{i}}@v{c}, Shuhei Kobayashi, Pavel Kobiakov, Larry K.@:
+Kolodney, David M.@: Koppelman, Koseki Yoshinori, Robert Krawitz,
+Sebastian 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, Dave Love,
+Sascha L@"{u}decke, Eric Ludlam, Alan Mackenzie, Christopher J.@:
+Madsen, Neil M.@: Mager, Ken Manheimer, Bill Mann, Brian Marick, Simon
+Marshall, Bengt Martensson, Charlie Martin, Thomas May, Roland McGrath,
+Will Mengarini, David Megginson, Ben A. Mesander, Wayne Mesard, Brad
+Miller, Lawrence Mitchell, Richard Mlynarik, Gerd Moellmann, Stefan
Monnier, Morioka Tomohiko, Keith Moore, Jan Moringen, Glenn Morris,
Diane Murray, Sen Nagata, Erik Naggum, Thomas Neumann, Thien-Thi Nguyen,
Mike Newton, Jurgen Nickelsen, Dan Nicolaescu, Hrvoje Niksic, Jeff
@@ -1408,22 +1410,22 @@ Sato, Jorgen Schaefer, Holger Schauer, William Schelter, Ralph
Schleicher, Gregor Schmid, Michael Schmidt, Ronald S. Schnell, Philippe
Schnoebelen, Jan Schormann, Alex Schroeder, Stephen Schoef, Raymond
Scholz, Eric Schulte, Andreas Schwab, Randal Schwartz, Oliver Seidel,
-Manuel Serrano, Hovav Shacham, Stanislav Shalunov, Marc Shapiro, Richard
-Sharman, Olin Shivers, Espen Skoglund, Rick Sladkey, Lynn Slater, Chris
-Smith, David Smith, Paul D.@: Smith, William Sommerfeld, Andre Spiegel,
-Michael Staats, Reiner Steib, Sam Steingold, Ake Stenhoff,
-Peter Stephenson, Ken Stevens, Andy Stewart, Jonathan
-Stigelman, Martin Stjernholm, Kim F.@: Storm, Steve Strassman, Olaf
-Sylvester, Naoto Takahashi, Steven Tamm, Jean-Philippe Theberge, Jens
-T.@: Berger Thielemann, Spencer Thomas, Jim Thompson, Luc Teirlinck,
-David O'Toole, Tom Tromey, Enami Tsugutomo, Eli Tziperman, Daiki Ueno,
-Masanobu Umeda, Rajesh Vaidheeswarran, Neil W.@: Van Dyke, Didier Verna,
-Joakim Verona, Ulrik Vieth, Geoffrey Voelker, Johan Vromans, Inge
-Wallin, John Paul Wallington, Colin Walters, Barry Warsaw, Morten
-Welinder, Joseph Brian Wells, Rodney Whitby, John Wiegley, Ed Wilkinson,
-Mike Williams, Bill Wohler, Steven A. Wood, Dale R.@: Worley, Francis
-J.@: Wright, Felix S. T. Wu, Tom Wurgler, Katsumi Yamaoka, Yamamoto
-Mitsuharu, Masatake Yamato, Jonathan Yavner, Ryan Yeske, Ilya
+Manuel Serrano, Paul Sexton, Hovav Shacham, Stanislav Shalunov, Marc
+Shapiro, Richard Sharman, Olin Shivers, Espen Skoglund, Rick Sladkey,
+Lynn Slater, Chris Smith, David Smith, Paul D.@: Smith, William
+Sommerfeld, Andre Spiegel, Michael Staats, Ulf Stegemann, Reiner Steib,
+Sam Steingold, Ake Stenhoff, Peter Stephenson, Ken Stevens, Andy Stewart,
+Jonathan Stigelman, Martin Stjernholm, Kim F.@: Storm, Steve Strassman,
+Olaf Sylvester, Naoto Takahashi, Steven Tamm, Jean-Philippe Theberge,
+Jens T.@: Berger Thielemann, Spencer Thomas, Jim Thompson, Luc
+Teirlinck, David O'Toole, Tom Tromey, Enami Tsugutomo, Eli Tziperman,
+Daiki Ueno, Masanobu Umeda, Rajesh Vaidheeswarran, Neil W.@: Van Dyke,
+Didier Verna, Joakim Verona, Ulrik Vieth, Geoffrey Voelker, Johan
+Vromans, Inge Wallin, John Paul Wallington, Colin Walters, Barry Warsaw,
+Morten Welinder, Joseph Brian Wells, Rodney Whitby, John Wiegley, Ed
+Wilkinson, Mike Williams, Bill Wohler, Steven A. Wood, Dale R.@: Worley,
+Francis J.@: Wright, Felix S. T. Wu, Tom Wurgler, Katsumi Yamaoka,
+Yamamoto Mitsuharu, Masatake Yamato, Jonathan Yavner, Ryan Yeske, Ilya
Zakharevich, Milan Zamazal, Victor Zandy, Eli Zaretskii, Jamie Zawinski,
Shenghuo Zhu, Piotr Zielinski, Ian T.@: Zimmermann, Reto Zimmermann,
Neal Ziring, Teodor Zlatanov, and Detlev Zundel.
@@ -1576,7 +1578,3 @@ Lisp programming.
@printindex cp
@bye
-
-@ignore
- arch-tag: ed48740a-410b-46ea-9387-c9a9252a3392
-@end ignore
diff --git a/doc/emacs/emacsver.texi b/doc/emacs/emacsver.texi
new file mode 100644
index 00000000000..ffa860585ba
--- /dev/null
+++ b/doc/emacs/emacsver.texi
@@ -0,0 +1,4 @@
+@c It would be nicer to generate this using configure and @version@.
+@c However, that would mean emacsver.texi would always be newer
+@c then the info files in release tarfiles.
+@set EMACSVER 24.0.50
diff --git a/doc/emacs/files.texi b/doc/emacs/files.texi
index 4df81caa8f2..0df3769cd8b 100644
--- a/doc/emacs/files.texi
+++ b/doc/emacs/files.texi
@@ -202,6 +202,8 @@ since you visited or saved it last. If the file has changed, Emacs offers
to reread it.
@vindex large-file-warning-threshold
+@cindex file, warning when size is large
+@cindex size of file, warning when visiting
@cindex maximum buffer size exceeded, error message
If you try to visit a file larger than
@code{large-file-warning-threshold} (the default is 10000000, which is
diff --git a/doc/emacs/frames.texi b/doc/emacs/frames.texi
index 891e6efc8fd..dadba9fb95f 100644
--- a/doc/emacs/frames.texi
+++ b/doc/emacs/frames.texi
@@ -281,15 +281,6 @@ the kill ring. This prevents you from losing the existing selection,
at the risk of large memory consumption if other applications generate
large selections.
-@cindex cut buffer
-@vindex x-cut-buffer-max
- Whenever Emacs saves some text to the primary selection, it may also
-save it to the @dfn{cut buffer}. The cut buffer is an obsolete
-predecessor to the primary selection; most modern applications do not
-use it. Saving text to the cut buffer is slow and inefficient, so
-Emacs only does it if the text is shorter than the value of
-@code{x-cut-buffer-max} (20000 characters by default).
-
You can yank the primary selection into Emacs using the usual yank
commands, such as @kbd{C-y} (@code{yank}) and @kbd{Mouse-2}
(@code{mouse-yank-at-click}). These commands actually check the
@@ -1271,6 +1262,19 @@ bar uses monochrome icons (PBM or XBM format).
You can turn display of tool bars on or off with @kbd{M-x
tool-bar-mode} or by customizing the option @code{tool-bar-mode}.
+@vindex tool-bar-style
+@cindex Tool Bar style
+ When Emacs is compiled with GTK+ support, tool bars can have text and images.
+Customize @code{tool-bar-style} to select style. The default style is
+the same as for the desktop in the Gnome case. If no default is found,
+the tool bar uses just images.
+
+@cindex Tool Bar position
+ You can also control the placement of the tool bar for the GTK+ tool bar
+with the frame parameter @code{tool-bar-position}.
+For a detailed description of frame parameters and customization,
+see @ref{Frame Parameters,,, elisp, The Emacs Lisp Reference Manual}.
+
@node Dialog Boxes
@section Using Dialog Boxes
@cindex dialog boxes
diff --git a/doc/emacs/killing.texi b/doc/emacs/killing.texi
index 2ad3bc9e739..119b08065e5 100644
--- a/doc/emacs/killing.texi
+++ b/doc/emacs/killing.texi
@@ -4,13 +4,9 @@
@c Free Software Foundation, Inc.
@c See file emacs.texi for copying conditions.
-@node Killing, Yanking, Mark, Top
+@node Killing, Registers, Mark, Top
@chapter Killing and Moving Text
-@ifnottex
-@raisesections
-@end ifnottex
-
@dfn{Killing} means erasing text and copying it into the @dfn{kill
ring}, from which you can bring it back into the buffer by
@dfn{yanking} it. (Some applications use the terms ``cutting'' and
@@ -19,9 +15,16 @@ moving or copying text within Emacs. It is very versatile, because
there are commands for killing many different types of syntactic
units.
-@iftex
+@menu
+* Deletion and Killing:: Commands that remove text.
+* Yanking:: Commands that insert text.
+* Accumulating Text:: Other methods to add text to the buffer.
+* Rectangles:: Operating on text in rectangular areas.
+* CUA Bindings:: Using C-x/C-c/C-v to kill and yank.
+@end menu
+
+@node Deletion and Killing
@section Deletion and Killing
-@end iftex
@cindex killing text
@cindex cutting text
@@ -233,7 +236,7 @@ explain why the text has not been erased.
non-@code{nil} value, identical subsequent kills yield a single
kill-ring entry, without duplication.
-@node Yanking, Accumulating Text, Killing, Top
+@node Yanking
@section Yanking
@cindex moving text
@cindex copying text
@@ -416,7 +419,7 @@ saved.
@code{kill-ring}; you can view the entire contents of the kill ring with
the command @kbd{C-h v kill-ring}.
-@node Accumulating Text, Rectangles, Yanking, Top
+@node Accumulating Text
@section Accumulating Text
@findex append-to-buffer
@findex prepend-to-buffer
@@ -487,7 +490,7 @@ can lead to losing some of your editing.
Another way to move text around is to store it in a register.
@xref{Registers}.
-@node Rectangles, CUA Bindings, Accumulating Text, Top
+@node Rectangles
@section Rectangles
@cindex rectangle
@cindex columns (and rectangles)
@@ -613,7 +616,7 @@ rectangle shifts right.
@code{string-rectangle}, but inserts the string on each line,
shifting the original text to the right.
-@node CUA Bindings, Registers, Rectangles, Top
+@node CUA Bindings
@section CUA Bindings
@findex cua-mode
@vindex cua-mode
@@ -665,10 +668,6 @@ navigate to each of the words you want in the list, mark it (e.g. with
insert a newline after the word in the target list by pressing
@key{RET}.
-@ifnottex
-@lowersections
-@end ifnottex
-
@ignore
arch-tag: d8da8f96-0928-449a-816e-ff2d3497866c
@end ignore
diff --git a/doc/emacs/maintaining.texi b/doc/emacs/maintaining.texi
index ccbea017c91..aa4d6f255af 100644
--- a/doc/emacs/maintaining.texi
+++ b/doc/emacs/maintaining.texi
@@ -360,6 +360,7 @@ change, and later use the @kbd{C-x v a} command to copy it to
@node VC Mode Line
@subsection Version Control and the Mode Line
+@cindex VC, mode line indicator
When you visit a file that is under version control, Emacs indicates
this on the mode line. For example, @samp{Bzr-1223} says that Bazaar
@@ -368,10 +369,17 @@ is used for that file, and the current revision ID is 1223.
The character between the back-end name and the revision ID
indicates the status of the work file. In a merge-based version
control system, a @samp{-} character indicates that the work file is
-unmodified, and @samp{:} indicates that it has been modified. In a
-lock-based system, @samp{-} indicates an unlocked file, and @samp{:} a
-locked file; if the file is locked by another user (for instance,
-@samp{jim}), that is displayed as @samp{RCS:jim:1.3}.
+unmodified, and @samp{:} indicates that it has been modified.
+@samp{!} indicates that the file contains conflicts as result of a
+recent merge operation (@pxref{Merging}), or that the file was removed
+from the version control. Finally, @samp{?} means that the file is
+under version control, but is missing from the working tree.
+
+ In a lock-based system, @samp{-} indicates an unlocked file, and
+@samp{:} a locked file; if the file is locked by another user (for
+instance, @samp{jim}), that is displayed as @samp{RCS:jim:1.3}.
+@samp{@@} means that the file was locally added, but not yet committed
+to the master repository.
On a graphical display, you can move the mouse over this mode line
indicator to pop up a ``tool-tip'', which displays a more verbose
@@ -2346,4 +2354,3 @@ the target should be built.
@ifnottex
@include emerge-xtra.texi
@end ifnottex
-
diff --git a/doc/emacs/makefile.w32-in b/doc/emacs/makefile.w32-in
index 4013c2fca4b..80e873ad899 100644
--- a/doc/emacs/makefile.w32-in
+++ b/doc/emacs/makefile.w32-in
@@ -56,6 +56,7 @@ EMACS_XTRA=\
EMACSSOURCES= \
$(srcdir)/emacs.texi \
+ $(srcdir)/emacsver.texi \
$(srcdir)/doclicense.texi \
$(srcdir)/screen.texi \
$(srcdir)/commands.texi \
diff --git a/doc/emacs/misc.texi b/doc/emacs/misc.texi
index 02a6a947391..c989ded26d7 100644
--- a/doc/emacs/misc.texi
+++ b/doc/emacs/misc.texi
@@ -27,28 +27,39 @@ other editors, and various diversions and amusements.
@cindex PDF file
@cindex PS file
@cindex Postscript file
+@cindex OpenDocument file
+@cindex Microsoft Office file
@cindex DocView mode
@cindex mode, DocView
@cindex document viewer (DocView)
@findex doc-view-mode
DocView mode (@code{doc-view-mode}) is a viewer for DVI, Postscript
-(PS), and PDF documents. It provides features such as slicing,
-zooming, and searching inside documents. It works by converting the
-document to a set of images using the @command{gs} (GhostScript)
-command, and displaying those images.
+(PS), PDF, OpenDocument, and Microsoft Office documents. It provides
+features such as slicing, zooming, and searching inside documents. It
+works by converting the document to a set of images using the
+@command{gs} (GhostScript) command and other external tools
+@footnote{@code{gs} is a hard requirement. For DVI files,
+@code{dvipdf} or @code{dvipdfm} is needed. For OpenDocument and
+Microsoft Office documents, the @code{unoconv} tool is needed.}, and
+displaying those images.
@findex doc-view-toggle-display
@findex doc-view-toggle-display
@cindex doc-view-minor-mode
- When you visit a PDF or DVI file, Emacs automatically switches to
-DocView mode. When you visit a Postscript file, Emacs switches to PS
-mode, a major mode for editing Postscript files as text; however, it
-also enables DocView minor mode, so you can type @kbd{C-c C-c} to view
-the document with DocView. (PDF and DVI files, unlike Postscript
-files, are not usually human-editable.) In either case, repeating
-@kbd{C-c C-c} (@code{doc-view-toggle-display}) toggles between DocView
-and the file text.
+ When you visit a document file with the exception of Postscript
+files, Emacs automatically switches to DocView mode if possible
+@footnote{The needed external tools for this document type have to be
+available, emacs needs to run in a graphical frame, and PNG image
+support has to be compiled into emacs. If any of these requirements
+is not fulfilled, DocView falls back to an appropriate mode.}. When
+you visit a Postscript file, Emacs switches to PS mode, a major mode
+for editing Postscript files as text; however, it also enables DocView
+minor mode, so you can type @kbd{C-c C-c} to view the document with
+DocView. (PDF and DVI files, unlike Postscript files, are not usually
+human-editable.) In either case, repeating @kbd{C-c C-c}
+(@code{doc-view-toggle-display}) toggles between DocView and the file
+text.
You can explicitly toggle DocView mode with the command @code{M-x
doc-view-mode}, and DocView minor mode with the command @code{M-x
@@ -786,8 +797,7 @@ pending in the shell buffer and not yet sent.
@findex comint-delete-output
Delete the last batch of output from a shell command
(@code{comint-delete-output}). This is useful if a shell command spews
-out lots of output that just gets in the way. This command used to be
-called @code{comint-kill-output}.
+out lots of output that just gets in the way.
@item C-c C-s
@kindex C-c C-s @r{(Shell mode)}
diff --git a/doc/emacs/msdog.texi b/doc/emacs/msdog.texi
index 514ef956dc3..0c0dcb3f4af 100644
--- a/doc/emacs/msdog.texi
+++ b/doc/emacs/msdog.texi
@@ -348,11 +348,12 @@ on Windows, since many users of Emacs on those platforms prefer the
@end table
@noindent
-Any other value of @code{ls-lisp-emulation} means the same as
-@code{GNU}. Note that this option needs to be set @emph{before}
-@file{ls-lisp.el} is loaded, which means that on MS-Windows and MS-DOS
-you will have to set the value from your @file{.emacs} file and then
-restart Emacs, since @file{ls-lisp.el} is preloaded.
+Any other value of @code{ls-lisp-emulation} means the same as @code{GNU}.
+Customizing this option calls the function @code{ls-lisp-set-options} to
+update the 3 dependent options as needed. If you change the value of
+this variable without using customize after @file{ls-lisp.el} is loaded
+(note that it is preloaded on MS-Windows and MS-DOS), you can call that
+function manually for the same result.
@vindex ls-lisp-support-shell-wildcards
The variable @code{ls-lisp-support-shell-wildcards} controls how
@@ -984,6 +985,3 @@ click-to-focus policy.
@include msdog-xtra.texi
@end ifnottex
-@ignore
- arch-tag: f39d2590-5dcc-4318-88d9-0eb73ca10fa2
-@end ignore
diff --git a/doc/emacs/mule.texi b/doc/emacs/mule.texi
index bafa5a1d427..1d4d90c5bff 100644
--- a/doc/emacs/mule.texi
+++ b/doc/emacs/mule.texi
@@ -67,6 +67,12 @@ incorrectly, refer to @ref{Undisplayable Characters}, which describes
possible problems and explains how to solve them.
@item
+Characters from scripts whose natural ordering of text is from right
+to left are reordered for display (@pxref{Bidirectional Editing}).
+These scripts include Arabic, Hebrew, Syriac, Thaana, and a few
+others.
+
+@item
You can insert non-@acronym{ASCII} characters or search for them. To do that,
you can specify an input method (@pxref{Select Input Method}) suitable
for your language, or use the default input method set up when you set
@@ -107,6 +113,7 @@ to make sure Emacs interprets keyboard input correctly; see
* Unibyte Mode:: You can pick one European character set
to use without multibyte characters.
* Charsets:: How Emacs groups its internal character codes.
+* Bidirectional Editing:: Support for right-to-left scripts.
@end menu
@node International Chars
@@ -344,10 +351,11 @@ which prefers Cyrillic characters and files encoded in Windows-1255).
@cindex Intlfonts package, installation
To display the script(s) used by your language environment on a
graphical display, you need to have a suitable font. If some of the
-characters appear as empty boxes, you should install the GNU Intlfonts
-package, which includes fonts for most supported scripts.@footnote{If
-you run Emacs on X, you need to inform the X server about the location
-of the newly installed fonts with the following commands:
+characters appear as empty boxes or hex codes, you should install the
+GNU Intlfonts package, which includes fonts for most supported
+scripts.@footnote{If you run Emacs on X, you need to inform the X
+server about the location of the newly installed fonts with the
+following commands:
@example
xset fp+ /usr/local/share/emacs/fonts
@@ -1307,10 +1315,11 @@ characters the font does not cover. The standard fontset is only used if
explicitly requested, despite its name.
A fontset does not necessarily specify a font for every character
-code. If a fontset specifies no font for a certain character, or if it
-specifies a font that does not exist on your system, then it cannot
-display that character properly. It will display that character as an
-empty box instead.
+code. If a fontset specifies no font for a certain character, or if
+it specifies a font that does not exist on your system, then it cannot
+display that character properly. It will display that character as a
+hex code or thin space or an empty box instead. (@xref{Text Display, ,
+glyphless characters}, for details.)
@node Defining Fontsets
@section Defining fontsets
@@ -1659,6 +1668,84 @@ older Emacs versions.
point before it and type @kbd{C-u C-x =} (@pxref{International
Chars}).
+@node Bidirectional Editing
+@section Bidirectional Editing
+@cindex bidirectional editing
+@cindex right-to-left text
+
+ Emacs supports editing text written in scripts, such as Arabic and
+Hebrew, whose natural ordering of horizontal text for display is from
+right to left. However, digits and Latin text embedded in these
+scripts are still displayed left to right. It is also not uncommon to
+have small portions of text in Arabic or Hebrew embedded in otherwise
+Latin document, e.g., as comments and strings in a program source
+file. For these reasons, text that uses these scripts is actually
+@dfn{bidirectional}: a mixture of runs of left-to-right and
+right-to-left characters.
+
+ This section describes the facilities and options provided by Emacs
+for editing bidirectional text.
+
+@cindex logical order
+@cindex visual order
+ Emacs stores right-to-left and bidirectional text in the so-called
+@dfn{logical} (or @dfn{reading}) order: the buffer or string position
+of the first character you read precedes that of the next character.
+Reordering of bidirectional text into the @dfn{visual} order happens
+at display time. As result, character positions no longer increase
+monotonically with their positions on display. Emacs implements the
+Unicode Bidirectional Algorithm described in the Unicode Standard
+Annex #9, for reordering of bidirectional text for display.
+
+@vindex bidi-display-reordering
+ The buffer-local variable @code{bidi-display-reordering} controls
+whether text in the buffer is reordered for display. If its value is
+non-@code{nil}, Emacs reorders characters that have right-to-left
+directionality when they are displayed. The default value is
+@code{nil}.
+
+ Each paragraph of bidirectional text can have its own @dfn{base
+direction}, either right-to-left or left-to-right. (Paragraph
+boundaries are defined by the regular expressions
+@code{paragraph-start} and @code{paragraph-separate}, see
+@ref{Paragraphs}.) Text in left-to-right paragraphs begins at the
+left margin of the window and is truncated or continued when it
+reaches the right margin. By contrast, text in right-to-left
+paragraphs begins at the right margin and is continued or truncated at
+the left margin.
+
+@vindex bidi-paragraph-direction
+ Emacs determines the base direction of each paragraph dynamically,
+based on the text at the beginning of the paragraph. However,
+sometimes a buffer may need to force a certain base direction for its
+paragraphs. The variable @code{bidi-paragraph-direction}, if
+non-@code{nil}, disables the dynamic determination of the base
+direction, and instead forces all paragraphs in the buffer to have the
+direction specified by its buffer-local value. The value can be either
+@code{right-to-left} or @code{left-to-right}. Any other value is
+interpreted as @code{nil}.
+
+@cindex LRM
+@cindex RLM
+ Alternatively, you can control the base direction of a paragraph by
+inserting special formatting characters in front of the paragraph.
+The special character @code{RIGHT-TO-LEFT MARK}, or @sc{rlm}, forces
+the right-to-left direction on the following paragraph, while
+@code{LEFT-TO-RIGHT MARK}, or @sc{lrm} forces the left-to-right
+direction. (You can use @kbd{C-x 8 RET} to insert these characters.)
+In a GUI session, the @sc{lrm} and @sc{rlm} characters display as
+blanks.
+
+ Because characters are reordered for display, Emacs commands that
+operate in the logical order or on stretches of buffer positions may
+produce unusual effects. For example, @kbd{C-f} and @kbd{C-b}
+commands move point in the logical order, so the cursor will sometimes
+jump when point traverses reordered bidirectional text. Similarly, a
+highlighted region covering a contiguous range of character positions
+may look discontinuous if the region spans reordered text. This is
+normal and similar to behavior of other programs that support
+bidirectional text.
+
@ignore
arch-tag: 310ba60d-31ef-4ce7-91f1-f282dd57b6b3
@end ignore
diff --git a/doc/emacs/regs.texi b/doc/emacs/regs.texi
index 5eada94a0ab..731e03cde0b 100644
--- a/doc/emacs/regs.texi
+++ b/doc/emacs/regs.texi
@@ -2,7 +2,7 @@
@c Copyright (C) 1985, 1986, 1987, 1993, 1994, 1995, 1997, 2001, 2002,
@c 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software Foundation, Inc.
@c See file emacs.texi for copying conditions.
-@node Registers, Display, CUA Bindings, Top
+@node Registers, Display, Killing, Top
@chapter Registers
@cindex registers
diff --git a/doc/emacs/rmail.texi b/doc/emacs/rmail.texi
index 633ffa89de0..581845fc42a 100644
--- a/doc/emacs/rmail.texi
+++ b/doc/emacs/rmail.texi
@@ -1218,7 +1218,8 @@ specification, or because the specification was inaccurate. For
example, a misconfigured mailer could send a message with a
@samp{charset=iso-8859-1} header when the message is actually encoded
in @code{koi8-r}. When you see the message text garbled, or some of
-its characters displayed as empty boxes, this may have happened.
+its characters displayed as hex codes or empty boxes, this may have
+happened.
@findex rmail-redecode-body
You can correct the problem by decoding the message again using the
diff --git a/doc/emacs/search.texi b/doc/emacs/search.texi
index cd63a562d66..fdf48230fb7 100644
--- a/doc/emacs/search.texi
+++ b/doc/emacs/search.texi
@@ -1314,8 +1314,7 @@ 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.
+displayed before and after each matching line.
@kindex RET @r{(Occur mode)}
@kindex o @r{(Occur mode)}
diff --git a/doc/emacs/xresources.texi b/doc/emacs/xresources.texi
index 7cc02e28afc..89ec08d820d 100644
--- a/doc/emacs/xresources.texi
+++ b/doc/emacs/xresources.texi
@@ -399,8 +399,9 @@ Italic flag for face @var{face}---instead of @code{attributeSlant}.
@end table
@node Lucid Resources
-@appendixsec Lucid Menu X Resources
+@appendixsec Lucid Menu And Dialog X Resources
@cindex Menu X Resources (Lucid widgets)
+@cindex Dialog X Resources (Lucid widgets)
@cindex Lucid Widget X Resources
@ifnottex
@@ -415,7 +416,7 @@ Emacs.pane.menubar.@var{resource}: @var{value}
@end example
@noindent
-For example, to specify the font @samp{8x16} for the menu-bar items,
+For example, to specify the font @samp{Courier-12} for the menu-bar items,
write this:
@end ifnottex
@iftex
@@ -423,32 +424,37 @@ write this:
with the Lucid menu widgets, then the menu bar is a separate widget
and has its own resources. The resource specifications start with
@samp{Emacs.pane.menubar}---for instance, to specify the font
-@samp{8x16} for the menu-bar items, write this:
+@samp{Courier-12} for the menu-bar items, write this:
@end iftex
@example
-Emacs.pane.menubar.font: 8x16
+Emacs.pane.menubar.faceName: Courier-12
@end example
@noindent
-Resources for @emph{non-menubar} toolkit pop-up menus have
-@samp{menu*} instead of @samp{pane.menubar}. For example, to specify
-the font @samp{8x16} for the pop-up menu items, write this:
+To specify a font, use fontconfig font names as values to the @code{faceName}
+resource.
+
+If Emacs is not built with the Xft library, Lucid menus and dialogs
+can only display old style fonts. If Emacs is built with Xft and you
+prefer the old fonts, you have to specify @samp{none} to
+@code{faceName}:
@example
-Emacs.menu*.font: 8x16
+Emacs.pane.menubar.faceName: none
+Emacs.pane.dialog.faceName: none
@end example
@noindent
-For dialog boxes, use @samp{dialog*}:
+To specify a non-Xft font, use @code{font}. For example:
@example
-Emacs.dialog*.font: 8x16
+Emacs.pane.menubar.font: lucidasanstypewriter-10
@end example
@noindent
-The Lucid menus can display multilingual text in your locale. For
-more information about fontsets see the man page for
+The Lucid menus can display multilingual text in your locale with old style
+fonts. For more information about fontsets see the man page for
@code{XCreateFontSet}. To enable multilingual menu text you specify a
@code{fontSet} resource instead of the font resource. If both
@code{font} and @code{fontSet} resources are specified, the
@@ -462,6 +468,22 @@ Emacs*menu*fontSet: -*-helvetica-medium-r-*--*-120-*-*-*-*-*-*,*
@end example
@noindent
+Resources for @emph{non-menubar} toolkit pop-up menus have
+@samp{menu*} instead of @samp{pane.menubar}. For example, to specify
+the font @samp{8x16} for the pop-up menu items, write this:
+
+@example
+Emacs.menu*.font: 8x16
+@end example
+
+@noindent
+For dialog boxes, use @samp{dialog*}:
+
+@example
+Emacs.dialog*.faceName: Sans-12
+@end example
+
+@noindent
The @samp{*menu*} as a wildcard matches @samp{pane.menubar} and
@samp{menu@dots{}}.
@@ -473,6 +495,8 @@ approach should work on both kinds of systems.
Here is a list of the specific resources for menu bars and pop-up menus:
@table @code
+@item faceName
+Xft font for menu item text.
@item font
Font for menu item text.
@item fontSet