Merge changes from emacs-24 branch
This commit is contained in:
commit
a8e7d6d783
98 changed files with 2009 additions and 797 deletions
|
@ -61,7 +61,7 @@ sk Miroslav Vaško
|
|||
|
||||
** Consider bumping customize-changed-options-previous-release.
|
||||
|
||||
** cusver-check from admin.el cam help find new defcustoms missing
|
||||
** cusver-check from admin.el can help find new defcustoms missing
|
||||
:version tags.
|
||||
|
||||
* BUGS
|
||||
|
@ -229,7 +229,7 @@ syntax.texi cyd
|
|||
text.texi cyd
|
||||
tips.texi rgm
|
||||
variables.texi cyd
|
||||
windows.texi
|
||||
windows.texi rgm (skimmed)
|
||||
|
||||
|
||||
Local variables:
|
||||
|
|
|
@ -1,3 +1,24 @@
|
|||
2012-04-27 Glenn Morris <rgm@gnu.org>
|
||||
|
||||
* emacs.texi: Some fixes for detailed menu.
|
||||
|
||||
2012-04-26 Glenn Morris <rgm@gnu.org>
|
||||
|
||||
* emacs.texi: Add "et al." to authors.
|
||||
|
||||
* ack.texi, basic.texi, buffers.texi, building.texi:
|
||||
* calendar.texi, cmdargs.texi, commands.texi, custom.texi:
|
||||
* dired.texi, display.texi, emerge-xtra.texi, files.texi:
|
||||
* fortran-xtra.texi, help.texi, kmacro.texi, mini.texi, misc.texi:
|
||||
* msdog-xtra.texi, picture-xtra.texi, programs.texi, rmail.texi:
|
||||
* search.texi, trouble.texi, windows.texi:
|
||||
Use Texinfo recommended convention for quotes+punctuation.
|
||||
|
||||
2012-04-25 Eli Zaretskii <eliz@gnu.org>
|
||||
|
||||
* mule.texi (Bidirectional Editing): Improve indexing. Minor
|
||||
wording tweaks.
|
||||
|
||||
2012-04-15 Chong Yidong <cyd@gnu.org>
|
||||
|
||||
* misc.texi (emacsclient Options): More clarifications.
|
||||
|
|
|
@ -240,7 +240,7 @@ for compiled Emacs Lisp code.
|
|||
|
||||
@item
|
||||
Mathias Dahl wrote @file{image-dired.el}, a package for viewing image
|
||||
files as ``thumbnails.''
|
||||
files as ``thumbnails''.
|
||||
|
||||
@item
|
||||
Julien Danjou wrote an implementation of ``Desktop Notifications''
|
||||
|
@ -1027,7 +1027,7 @@ Together with Dmitry Dzhus, he wrote @file{gdb-mi.el}, the successor to
|
|||
|
||||
@item
|
||||
Danny Roozendaal implemented @file{handwrite.el}, which converts text
|
||||
into ``handwriting.''
|
||||
into ``handwriting''.
|
||||
|
||||
@item
|
||||
Markus Rost wrote @file{cus-test.el}, a testing framework for customize.
|
||||
|
@ -1224,7 +1224,7 @@ the keyboard.
|
|||
|
||||
@item
|
||||
Jean-Philippe Theberge wrote @file{thumbs.el}, a package for viewing
|
||||
image files as ``thumbnails.''
|
||||
image files as ``thumbnails''.
|
||||
|
||||
@item
|
||||
Spencer Thomas wrote the original @file{dabbrev.el}, providing a command
|
||||
|
|
|
@ -668,7 +668,7 @@ those two positions are the accessible ones. @xref{Narrowing}.
|
|||
@cindex arguments to commands
|
||||
|
||||
In the terminology of mathematics and computing, @dfn{argument}
|
||||
means ``data provided to a function or operation.'' You can give any
|
||||
means ``data provided to a function or operation''. You can give any
|
||||
Emacs command a @dfn{numeric argument} (also called a @dfn{prefix
|
||||
argument}). Some commands interpret the argument as a repetition
|
||||
count. For example, giving @kbd{C-f} an argument of ten causes it to
|
||||
|
@ -762,7 +762,7 @@ described when they come up; they exist to make an individual command
|
|||
more convenient, and they are documented in that command's
|
||||
documentation string.
|
||||
|
||||
We use the term ``prefix argument'' as well as ``numeric argument,''
|
||||
We use the term ``prefix argument'' as well as ``numeric argument'',
|
||||
to emphasize that you type these argument before the command, and to
|
||||
distinguish them from minibuffer arguments that come after the
|
||||
command.
|
||||
|
|
|
@ -180,7 +180,7 @@ buffers that were current most recently come first.
|
|||
|
||||
@samp{.} in the first field of a line indicates that the buffer is
|
||||
current. @samp{%} indicates a read-only buffer. @samp{*} indicates
|
||||
that the buffer is ``modified.'' If several buffers are modified, it
|
||||
that the buffer is ``modified''. If several buffers are modified, it
|
||||
may be time to save some with @kbd{C-x s} (@pxref{Save Commands}).
|
||||
Here is an example of a buffer list:
|
||||
|
||||
|
@ -392,7 +392,7 @@ line:
|
|||
|
||||
@table @kbd
|
||||
@item ~
|
||||
Mark the buffer ``unmodified.'' The command @kbd{~} does this
|
||||
Mark the buffer ``unmodified''. The command @kbd{~} does this
|
||||
immediately when you type it.
|
||||
@item %
|
||||
Toggle the buffer's read-only flag. The command @kbd{%} does
|
||||
|
@ -590,7 +590,7 @@ rule or another is easier for you to remember and apply quickly.
|
|||
Iswitchb global minor mode provides convenient switching between
|
||||
buffers using substrings of their names. It replaces the normal
|
||||
definitions of @kbd{C-x b}, @kbd{C-x 4 b}, @kbd{C-x 5 b}, and @kbd{C-x
|
||||
4 C-o} with alternative commands that are somewhat ``smarter.''
|
||||
4 C-o} with alternative commands that are somewhat ``smarter''.
|
||||
|
||||
When one of these commands prompts you for a buffer name, you can
|
||||
type in just a substring of the name you want to choose. As you enter
|
||||
|
|
|
@ -331,7 +331,7 @@ you can do anything else in Emacs). @xref{MS-DOS}.
|
|||
Just as you can run a compiler from Emacs and then visit the lines
|
||||
with compilation errors, you can also run @command{grep} and then
|
||||
visit the lines on which matches were found. This works by treating
|
||||
the matches reported by @command{grep} as if they were ``errors.''
|
||||
the matches reported by @command{grep} as if they were ``errors''.
|
||||
The output buffer uses Grep mode, which is a variant of Compilation
|
||||
mode (@pxref{Compilation Mode}).
|
||||
|
||||
|
|
|
@ -624,7 +624,7 @@ for all users in a @file{default.el} file. @xref{Init File}.
|
|||
These calendar commands display the dates and times of the phases of
|
||||
the moon (new moon, first quarter, full moon, last quarter). This
|
||||
feature is useful for debugging problems that ``depend on the phase of
|
||||
the moon.''
|
||||
the moon''.
|
||||
|
||||
@table @kbd
|
||||
@item M
|
||||
|
@ -822,7 +822,7 @@ Display Mayan date for selected day (@code{calendar-mayan-print-date}).
|
|||
|
||||
Otherwise, move point to the date you want to convert, then type the
|
||||
appropriate command starting with @kbd{p} from the table above. The
|
||||
prefix @kbd{p} is a mnemonic for ``print,'' since Emacs ``prints'' the
|
||||
prefix @kbd{p} is a mnemonic for ``print'', since Emacs ``prints'' the
|
||||
equivalent date in the echo area. @kbd{p o} displays the
|
||||
date in all forms known to Emacs. You can also use @kbd{Mouse-3} and
|
||||
then choose @kbd{Other calendars} from the menu that appears. This
|
||||
|
@ -901,7 +901,7 @@ Islamic, or French names.
|
|||
@findex calendar-hebrew-list-yahrzeits
|
||||
@cindex yahrzeits
|
||||
One common issue concerning the Hebrew calendar is the computation
|
||||
of the anniversary of a date of death, called a ``yahrzeit.'' The Emacs
|
||||
of the anniversary of a date of death, called a ``yahrzeit''. The Emacs
|
||||
calendar includes a facility for such calculations. If you are in the
|
||||
calendar, the command @kbd{M-x calendar-hebrew-list-yahrzeits} asks you for
|
||||
a range of years and then displays a list of the yahrzeit dates for those
|
||||
|
@ -1426,8 +1426,8 @@ that applies to the fourth Thursday in November:
|
|||
@noindent
|
||||
The 11 specifies November (the eleventh month), the 4 specifies Thursday
|
||||
(the fourth day of the week, where Sunday is numbered zero), and the
|
||||
second 4 specifies the fourth Thursday (1 would mean ``first,'' 2 would
|
||||
mean ``second,'' @minus{}2 would mean ``second-to-last,'' and so on).
|
||||
second 4 specifies the fourth Thursday (1 would mean ``first'', 2 would
|
||||
mean ``second'', @minus{}2 would mean ``second-to-last'', and so on).
|
||||
The month can be a single month or a list of months. Thus you could change
|
||||
the 11 above to @samp{'(1 2 3)} and have the entry apply to the last
|
||||
Thursday of January, February, and March. If the month is @code{t}, the
|
||||
|
@ -1681,7 +1681,7 @@ timeclock-change}.
|
|||
Once you've collected data from a number of time intervals, you can use
|
||||
@kbd{M-x timeclock-workday-remaining} to see how much time is left to
|
||||
work today (assuming a typical average of 8 hours a day), and @kbd{M-x
|
||||
timeclock-when-to-leave} which will calculate when you're ``done.''
|
||||
timeclock-when-to-leave} which will calculate when you're ``done''.
|
||||
|
||||
@vindex timeclock-modeline-display
|
||||
@findex timeclock-modeline-display
|
||||
|
|
|
@ -442,7 +442,7 @@ Directory for the documentation string file, which is used to
|
|||
initialize the Lisp variable @code{doc-directory}.
|
||||
@item EMACSLOADPATH
|
||||
A colon-separated list of directories@footnote{ Here and below,
|
||||
whenever we say ``colon-separated list of directories,'' it pertains
|
||||
whenever we say ``colon-separated list of directories'', it pertains
|
||||
to Unix and GNU/Linux systems. On MS-DOS and MS-Windows, the
|
||||
directories are separated by semi-colons instead, since DOS/Windows
|
||||
file names might include a colon after a drive letter.} to search for
|
||||
|
|
|
@ -166,7 +166,7 @@ commands, even though strictly speaking the key is bound to a command.
|
|||
Usually we state the name of the command which really does the work in
|
||||
parentheses after mentioning the key that runs it. For example, we
|
||||
will say that ``The command @kbd{C-n} (@code{next-line}) moves point
|
||||
vertically down,'' meaning that the command @code{next-line} moves
|
||||
vertically down'', meaning that the command @code{next-line} moves
|
||||
vertically down, and the key @kbd{C-n} is normally bound to it.
|
||||
|
||||
Since we are discussing customization, we should tell you about
|
||||
|
|
|
@ -1922,7 +1922,7 @@ single click definition has run when the first click was received.
|
|||
This constrains what you can do with double clicks, but user interface
|
||||
designers say that this constraint ought to be followed in any case. A
|
||||
double click should do something similar to the single click, only
|
||||
``more so.'' The command for the double-click event should perform the
|
||||
``more so''. The command for the double-click event should perform the
|
||||
extra work for the double click.
|
||||
|
||||
If a double-click event has no binding, it changes to the
|
||||
|
@ -1970,7 +1970,7 @@ or @samp{triple-}, which always precede @samp{drag-} or @samp{down-}.
|
|||
A frame includes areas that don't show text from the buffer, such as
|
||||
the mode line and the scroll bar. You can tell whether a mouse button
|
||||
comes from a special area of the screen by means of dummy ``prefix
|
||||
keys.'' For example, if you click the mouse in the mode line, you get
|
||||
keys''. For example, if you click the mouse in the mode line, you get
|
||||
the prefix key @code{mode-line} before the ordinary mouse-button symbol.
|
||||
Thus, here is how to define the command for clicking the first button in
|
||||
a mode line to run @code{scroll-up-command}:
|
||||
|
|
|
@ -14,7 +14,7 @@ optionally some of its subdirectories as well. You can use the normal
|
|||
Emacs commands to move around in this buffer, and special Dired
|
||||
commands to operate on the listed files.
|
||||
|
||||
The Dired buffer is ``read-only,'' and inserting text in it is not
|
||||
The Dired buffer is ``read-only'', and inserting text in it is not
|
||||
allowed. Ordinary printing characters such as @kbd{d} and @kbd{x} are
|
||||
redefined for special Dired commands. Some Dired commands @dfn{mark}
|
||||
or @dfn{flag} the @dfn{current file} (that is, the file on the current
|
||||
|
@ -1252,7 +1252,7 @@ and erases all flags and marks.
|
|||
@findex wdired-change-to-wdired-mode
|
||||
Wdired is a special mode that allows you to perform file operations
|
||||
by editing the Dired buffer directly (the ``W'' in ``Wdired'' stands
|
||||
for ``writable.'') To enter Wdired mode, type @kbd{C-x C-q}
|
||||
for ``writable''.) To enter Wdired mode, type @kbd{C-x C-q}
|
||||
(@code{dired-toggle-read-only}) while in a Dired buffer.
|
||||
Alternatively, use the @samp{Immediate / Edit File Names} menu item.
|
||||
|
||||
|
@ -1297,7 +1297,7 @@ buffer containing image-dired, corresponding to the marked files.
|
|||
You can also enter Image-Dired directly by typing @kbd{M-x
|
||||
image-dired}. This prompts for a directory; specify one that has
|
||||
image files. This creates thumbnails for all the images in that
|
||||
directory, and displays them all in the ``thumbnail buffer.'' This
|
||||
directory, and displays them all in the ``thumbnail buffer''. This
|
||||
takes a long time if the directory contains many image files, and it
|
||||
asks for confirmation if the number of image files exceeds
|
||||
@code{image-dired-show-all-from-dir-max-files}.
|
||||
|
@ -1408,7 +1408,7 @@ the current buffer.
|
|||
|
||||
The default comparison method (used if you type @key{RET} at the
|
||||
prompt) is to compare just the file names---each file name that does
|
||||
not appear in the other directory is ``different.'' You can specify
|
||||
not appear in the other directory is ``different''. You can specify
|
||||
more stringent comparisons by entering a Lisp expression, which can
|
||||
refer to the variables @code{size1} and @code{size2}, the respective
|
||||
file sizes; @code{mtime1} and @code{mtime2}, the last modification
|
||||
|
@ -1416,7 +1416,7 @@ times in seconds, as floating point numbers; and @code{fa1} and
|
|||
@code{fa2}, the respective file attribute lists (as returned by the
|
||||
function @code{file-attributes}). This expression is evaluated for
|
||||
each pair of like-named files, and if the expression's value is
|
||||
non-@code{nil}, those files are considered ``different.''
|
||||
non-@code{nil}, those files are considered ``different''.
|
||||
|
||||
For instance, the sequence @code{M-x dired-compare-directories
|
||||
@key{RET} (> mtime1 mtime2) @key{RET}} marks files newer in this
|
||||
|
|
|
@ -448,7 +448,7 @@ and visits it with View mode enabled.
|
|||
@cindex synchronizing windows
|
||||
|
||||
@dfn{Follow mode} is a minor mode that makes two windows, both
|
||||
showing the same buffer, scroll as a single tall ``virtual window.''
|
||||
showing the same buffer, scroll as a single tall ``virtual window''.
|
||||
To use Follow mode, go to a frame with just one window, split it into
|
||||
two side-by-side windows using @kbd{C-x 3}, and then type @kbd{M-x
|
||||
follow-mode}. From then on, you can edit the buffer in either of the
|
||||
|
@ -982,15 +982,15 @@ fringes on the selected frame only, use @kbd{M-x set-fringe-style}.
|
|||
line (@pxref{Continuation Lines}). When one line of text is split
|
||||
into multiple screen lines, 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
|
||||
real beginning''. The right fringe shows a curving arrow for each
|
||||
screen line except the last, indicating that ``this is not the real
|
||||
end.'' If the line's direction is right-to-left (@pxref{Bidirectional
|
||||
end''. If the line's direction is right-to-left (@pxref{Bidirectional
|
||||
Editing}), the meanings of the curving arrows in the fringes are
|
||||
swapped.
|
||||
|
||||
The fringes indicate line truncation with short horizontal arrows
|
||||
meaning ``there's more text on this line which is scrolled
|
||||
horizontally out of view.'' Clicking the mouse on one of the arrows
|
||||
horizontally out of view''. Clicking the mouse on one of the arrows
|
||||
scrolls the display horizontally in the direction of the arrow.
|
||||
|
||||
The fringes can also indicate other things, such as buffer
|
||||
|
|
|
@ -72,7 +72,7 @@ developing GNU and promoting software freedom.''
|
|||
@sp 4
|
||||
@center @value{EDITION} Edition, Updated for Emacs Version @value{EMACSVER}.
|
||||
@sp 5
|
||||
@center Richard Stallman
|
||||
@center Richard Stallman et al.
|
||||
@page
|
||||
@vskip 0pt plus 1filll
|
||||
@insertcopying
|
||||
|
@ -288,11 +288,11 @@ The Mark and the Region
|
|||
Killing and Moving Text
|
||||
|
||||
* Deletion and Killing:: Commands that remove text.
|
||||
* Yanking:: Recovering killed text. Moving text. (Pasting.)
|
||||
* Yanking:: Commands that insert text.
|
||||
* Cut and Paste:: Clipboard and selections on graphical displays.
|
||||
* Accumulating Text:: Other ways of copying text.
|
||||
* Accumulating Text:: Other methods to add text to the buffer.
|
||||
* Rectangles:: Operating on text in rectangular areas.
|
||||
* CUA Bindings:: Using @kbd{C-x}, @kbd{C-c}, @kbd{C-v} to kill and yank.
|
||||
* CUA Bindings:: Using @kbd{C-x}/@kbd{C-c}/@kbd{C-v} to kill and yank.
|
||||
|
||||
Deletion and Killing
|
||||
|
||||
|
@ -309,9 +309,9 @@ Yanking
|
|||
* Earlier Kills:: Yanking something killed some time ago.
|
||||
* Appending Kills:: Several kills in a row all yank together.
|
||||
|
||||
Killing and Yanking on Graphical Displays
|
||||
"Cut and Paste" Operations on Graphical Displays
|
||||
|
||||
* Clipboard:: How Emacs interacts with the system clipboard.
|
||||
* Clipboard:: How Emacs uses the system clipboard.
|
||||
* Primary Selection:: The temporarily selected text selection.
|
||||
* Secondary Selection:: Cutting without altering point and mark.
|
||||
|
||||
|
@ -328,7 +328,7 @@ Registers
|
|||
Controlling the Display
|
||||
|
||||
* Scrolling:: Commands to move text up and down in a window.
|
||||
* Recentering:: A scrolling command that centers the current line.
|
||||
* Recentering:: A scroll command that centers the current line.
|
||||
* Auto Scrolling:: Redisplay scrolls text automatically when needed.
|
||||
* Horizontal Scrolling:: Moving text left and right in a window.
|
||||
* Narrowing:: Restricting display and editing to a portion
|
||||
|
@ -486,7 +486,7 @@ Multiple Windows
|
|||
* Displaying Buffers:: How Emacs picks a window for displaying a buffer.
|
||||
* Window Convenience:: Convenience functions for window handling.
|
||||
|
||||
Displaying Buffers
|
||||
Displaying a Buffer in a Window
|
||||
|
||||
* Window Choice:: How @code{display-buffer} works.
|
||||
|
||||
|
@ -509,7 +509,7 @@ Frames and Graphical Displays
|
|||
* Tool Bars:: Enabling and disabling the tool bar.
|
||||
* Dialog Boxes:: Controlling use of dialog boxes.
|
||||
* Tooltips:: Displaying information at the current mouse position.
|
||||
* Mouse Avoidance:: Moving the mouse pointer out of the way.
|
||||
* Mouse Avoidance:: Preventing the mouse pointer from obscuring text.
|
||||
* Non-Window Terminals:: Multiple frames on terminals that show only one.
|
||||
* Text-Only Mouse:: Using the mouse in text terminals.
|
||||
|
||||
|
@ -540,7 +540,7 @@ International Character Set Support
|
|||
* Charsets:: How Emacs groups its internal character codes.
|
||||
* Bidirectional Editing:: Support for right-to-left scripts.
|
||||
|
||||
Modes
|
||||
Major and Minor Modes
|
||||
|
||||
* Major Modes:: Text mode vs. Lisp mode vs. C mode...
|
||||
* Minor Modes:: Each minor mode is a feature you can turn on
|
||||
|
@ -600,7 +600,7 @@ Org Mode
|
|||
* TeX Print:: Commands for printing part of a file with TeX.
|
||||
* TeX Misc:: Customization of TeX mode, and related features.
|
||||
|
||||
Editing Enriched Text
|
||||
Enriched Text
|
||||
|
||||
* Enriched Mode:: Entering and exiting Enriched mode.
|
||||
* Hard and Soft Newlines:: There are two different kinds of newlines.
|
||||
|
@ -783,7 +783,7 @@ Introduction to Version Control
|
|||
* Version Control Systems:: Supported version control back-end systems.
|
||||
* VCS Concepts:: Words and concepts related to version control.
|
||||
* VCS Merging:: How file conflicts are handled.
|
||||
* VCS Changesets:: Changesets in version control.
|
||||
* VCS Changesets:: How changes are grouped.
|
||||
* VCS Repositories:: Where version control repositories are stored.
|
||||
* Types of Log File:: The VCS log in contrast to the ChangeLog.
|
||||
|
||||
|
@ -798,10 +798,10 @@ VC Directory Mode
|
|||
* VC Directory Buffer:: What the buffer looks like and means.
|
||||
* VC Directory Commands:: Commands to use in a VC directory buffer.
|
||||
|
||||
Multiple Branches of a File
|
||||
Version Control Branches
|
||||
|
||||
* Switching Branches:: How to get to another existing branch.
|
||||
* VC Pull:: Updating a branch from another branch.
|
||||
* VC Pull:: Updating the contents of a branch.
|
||||
* Merging:: Transferring changes between branches.
|
||||
* Creating Branches:: How to start a new branch.
|
||||
|
||||
|
@ -828,12 +828,12 @@ Change Logs
|
|||
Tags Tables
|
||||
|
||||
* Tag Syntax:: Tag syntax for various types of code and text files.
|
||||
* Create Tags Table:: Creating a tags table with @code{etags}.
|
||||
* Create Tags Table:: Creating a tags table with @command{etags}.
|
||||
* Etags Regexps:: Create arbitrary tags using regular expressions.
|
||||
* Select Tags Table:: How to visit a tags table.
|
||||
* Find Tag:: Commands to find the definition of a specific tag.
|
||||
* Tags Search:: Using a tags table for searching and replacing.
|
||||
* List Tags:: Listing and finding tags defined in a file.
|
||||
* List Tags:: Using tags for completion, and listing them.
|
||||
|
||||
@ifnottex
|
||||
Merging Files with Emerge
|
||||
|
@ -952,16 +952,9 @@ Customizing the Calendar and Diary
|
|||
* Sexp Diary Entries:: More flexible diary entries.
|
||||
@end ifnottex
|
||||
|
||||
Document Viewing
|
||||
|
||||
* DocView Navigation:: Navigating DocView buffers.
|
||||
* DocView Searching:: Searching inside documents.
|
||||
* DocView Slicing:: Specifying which part of a page is displayed.
|
||||
* DocView Conversion:: Influencing and triggering conversion.
|
||||
|
||||
Sending Mail
|
||||
|
||||
* Mail Format:: Format of the mail being composed.
|
||||
* Mail Format:: Format of a mail message.
|
||||
* Mail Headers:: Details of some standard mail header fields.
|
||||
* Mail Aliases:: Abbreviating and grouping mail addresses.
|
||||
* Mail Commands:: Special commands for editing mail being composed.
|
||||
|
@ -1012,6 +1005,13 @@ Gnus
|
|||
* Gnus Group Buffer:: A short description of Gnus group commands.
|
||||
* Gnus Summary Buffer:: A short description of Gnus summary commands.
|
||||
|
||||
Document Viewing
|
||||
|
||||
* DocView Navigation:: Navigating DocView buffers.
|
||||
* DocView Searching:: Searching inside documents.
|
||||
* DocView Slicing:: Specifying which part of a page is displayed.
|
||||
* DocView Conversion:: Influencing and triggering conversion.
|
||||
|
||||
Running Shell Commands from Emacs
|
||||
|
||||
* Single Shell:: How to run one shell command and return.
|
||||
|
@ -1061,10 +1061,10 @@ Customization
|
|||
* Variables:: Many Emacs commands examine Emacs variables
|
||||
to decide what to do; by setting variables,
|
||||
you can control their functioning.
|
||||
* Key Bindings:: Keymaps say what command each key runs.
|
||||
* Key Bindings:: The keymaps say what command each key runs.
|
||||
By changing them, you can "redefine" keys.
|
||||
* Init File:: How to write common customizations in the
|
||||
@file{.emacs} file.
|
||||
initialization file.
|
||||
|
||||
Easy Customization Interface
|
||||
|
||||
|
@ -1098,7 +1098,7 @@ Customizing Key Bindings
|
|||
* Local Keymaps:: Major and minor modes have their own keymaps.
|
||||
* Minibuffer Maps:: The minibuffer uses its own local keymaps.
|
||||
* Rebinding:: How to redefine one key's meaning conveniently.
|
||||
* Init Rebinding:: Rebinding keys with your init file, @file{.emacs}.
|
||||
* Init Rebinding:: Rebinding keys with your initialization file.
|
||||
* Modifier Keys:: Using modifier keys in key bindings.
|
||||
* Function Keys:: Rebinding terminal function keys.
|
||||
* Named ASCII Chars:: Distinguishing @key{TAB} from @kbd{C-i}, and so on.
|
||||
|
@ -1107,7 +1107,7 @@ Customizing Key Bindings
|
|||
before it can be executed. This is done to protect
|
||||
beginners from surprises.
|
||||
|
||||
The Init File, @file{~/.emacs}
|
||||
The Emacs Initialization File
|
||||
|
||||
* Init Syntax:: Syntax of constants in Emacs Lisp.
|
||||
* Init Examples:: How to do some things with an init file.
|
||||
|
@ -1167,7 +1167,7 @@ GTK resources
|
|||
|
||||
* GTK Resource Basics:: Basic usage of GTK+ resources.
|
||||
* GTK Widget Names:: How GTK+ widgets are named.
|
||||
* GTK Names in Emacs:: GTK+ widgets used by Emacs.
|
||||
* GTK Names in Emacs:: GTK widgets used by Emacs.
|
||||
* GTK styles:: What can be customized in a GTK widget.
|
||||
|
||||
Emacs and Mac OS / GNUstep
|
||||
|
@ -1183,7 +1183,8 @@ Emacs and Microsoft Windows/MS-DOS
|
|||
* Text and Binary:: Text files use CRLF to terminate lines.
|
||||
* Windows Files:: File-name conventions on Windows.
|
||||
* ls in Lisp:: Emulation of @code{ls} for Dired.
|
||||
* Windows HOME:: Where Emacs looks for your @file{.emacs}.
|
||||
* Windows HOME:: Where Emacs looks for your @file{.emacs} and
|
||||
where it starts up.
|
||||
* Windows Keyboard:: Windows-specific keyboard features.
|
||||
* Windows Mouse:: Windows-specific mouse features.
|
||||
* Windows Processes:: Running subprocesses on Windows.
|
||||
|
|
|
@ -151,7 +151,7 @@ input. The mode line indicates Auto Advance mode with @samp{A}.
|
|||
If Skip Prefers mode is in effect, the @kbd{n} and @kbd{p} commands
|
||||
skip over differences in states ``prefer-A'' and ``prefer-B''
|
||||
(@pxref{State of Difference}). Thus you see only differences for
|
||||
which neither version is presumed ``correct.'' The mode line
|
||||
which neither version is presumed ``correct''. The mode line
|
||||
indicates Skip Prefers mode with @samp{S}. This mode is only relevant
|
||||
when there is an ancestor.
|
||||
|
||||
|
|
|
@ -97,7 +97,7 @@ minibuffer, with a directory omitted, specifies the file
|
|||
|
||||
When typing a file name into the minibuffer, you can make use of a
|
||||
couple of shortcuts: a double slash is interpreted as ``ignore
|
||||
everything before the second slash in the pair,'' and @samp{~/} is
|
||||
everything before the second slash in the pair'', and @samp{~/} is
|
||||
interpreted as your home directory. @xref{Minibuffer File}.
|
||||
|
||||
@cindex environment variables in file names
|
||||
|
@ -1340,7 +1340,7 @@ correct the line numbers in the hunk headers, to ensure that the diff
|
|||
remains ``correct''. To disable automatic line number correction,
|
||||
change the variable @code{diff-update-on-the-fly} to @code{nil}.
|
||||
|
||||
Diff mode treats each hunk as an ``error message,'' similar to
|
||||
Diff mode treats each hunk as an ``error message'', similar to
|
||||
Compilation mode. Thus, you can use commands such as @kbd{C-x '} to
|
||||
visit the corresponding source locations. @xref{Compilation Mode}.
|
||||
|
||||
|
|
|
@ -207,7 +207,7 @@ the Fortran standard counts from 1.) The variable
|
|||
@code{fortran-continuation-string} specifies what character to put in
|
||||
column 5. A line that starts with a tab character followed by any digit
|
||||
except @samp{0} is also a continuation line. We call this style of
|
||||
continuation @dfn{tab format}. (Fortran 90 introduced ``free form,''
|
||||
continuation @dfn{tab format}. (Fortran 90 introduced ``free form'',
|
||||
with another style of continuation lines).
|
||||
|
||||
@vindex indent-tabs-mode @r{(Fortran mode)}
|
||||
|
|
|
@ -96,7 +96,7 @@ of the major mode, then global bindings (@code{describe-bindings}).
|
|||
@item C-h c @var{key}
|
||||
Show the name of the command that the key sequence @var{key} is bound
|
||||
to (@code{describe-key-briefly}). Here @kbd{c} stands for
|
||||
``character.'' For more extensive information on @var{key}, use
|
||||
``character''. For more extensive information on @var{key}, use
|
||||
@kbd{C-h k}.
|
||||
@item C-h d @var{topics} @key{RET}
|
||||
Display the commands and variables whose documentation matches
|
||||
|
|
|
@ -225,7 +225,7 @@ desired macro is at the head of the ring. To execute the new macro
|
|||
ring head immediately, just type @kbd{C-k}.
|
||||
|
||||
Note that Emacs treats the head of the macro ring as the ``last
|
||||
defined keyboard macro.'' For instance, @key{F4} will execute that
|
||||
defined keyboard macro''. For instance, @key{F4} will execute that
|
||||
macro, and @kbd{C-x C-k n} will give it a name.
|
||||
|
||||
@vindex kmacro-ring-max
|
||||
|
|
|
@ -88,7 +88,7 @@ Find file: /u2/emacs/src//etc/termcap
|
|||
@cindex slashes repeated in file name
|
||||
@findex file-name-shadow-mode
|
||||
Emacs interprets a double slash as ``ignore everything before the
|
||||
second slash in the pair.'' In the example above,
|
||||
second slash in the pair''. In the example above,
|
||||
@file{/u2/emacs/src/} is ignored, so the argument you supplied is
|
||||
@file{/etc/termcap}. The ignored part of the file name is dimmed if
|
||||
the terminal allows it. (To disable this dimming, turn off File Name
|
||||
|
|
|
@ -1191,7 +1191,7 @@ that buffer.
|
|||
line mode, Term basically acts like Shell mode (@pxref{Shell Mode}).
|
||||
|
||||
In char mode, each character is sent directly to the subshell, as
|
||||
``terminal input.'' Any ``echoing'' of your input is the
|
||||
``terminal input''. Any ``echoing'' of your input is the
|
||||
responsibility of the subshell. The sole exception is the terminal
|
||||
escape character, which by default is @kbd{C-c} (@pxref{Term Mode}).
|
||||
Any ``terminal output'' from the subshell goes into the buffer,
|
||||
|
@ -2076,10 +2076,10 @@ Insert a byte with a code typed in octal.
|
|||
Insert a byte with a code typed in hex.
|
||||
|
||||
@item C-x [
|
||||
Move to the beginning of a 1k-byte ``page.''
|
||||
Move to the beginning of a 1k-byte ``page''.
|
||||
|
||||
@item C-x ]
|
||||
Move to the end of a 1k-byte ``page.''
|
||||
Move to the end of a 1k-byte ``page''.
|
||||
|
||||
@item M-g
|
||||
Move to an address specified in hex.
|
||||
|
@ -2149,7 +2149,7 @@ usually turned on.
|
|||
However, this may be slow if there are a lot of buffers in the
|
||||
desktop. You can specify the maximum number of buffers to restore
|
||||
immediately with the variable @code{desktop-restore-eager}; the
|
||||
remaining buffers are restored ``lazily,'' when Emacs is idle.
|
||||
remaining buffers are restored ``lazily'', when Emacs is idle.
|
||||
|
||||
@findex desktop-clear
|
||||
@vindex desktop-globals-to-clear
|
||||
|
|
|
@ -548,7 +548,7 @@ when invoked with the @samp{-nw} option.
|
|||
@cindex inferior processes under MS-DOS
|
||||
@findex compile @r{(MS-DOS)}
|
||||
@findex grep @r{(MS-DOS)}
|
||||
Because MS-DOS is a single-process ``operating system,''
|
||||
Because MS-DOS is a single-process ``operating system'',
|
||||
asynchronous subprocesses are not available. In particular, Shell
|
||||
mode and its variants do not work. Most Emacs features that use
|
||||
asynchronous subprocesses also don't work on MS-DOS, including
|
||||
|
|
|
@ -1337,6 +1337,7 @@ fontset}, the @dfn{startup fontset} and the @dfn{default fontset}.
|
|||
@c FIXME? The doc of *standard*-fontset-spec says:
|
||||
@c "You have the biggest chance to display international characters
|
||||
@c with correct glyphs by using the *standard* fontset." (my emphasis)
|
||||
@c See http://lists.gnu.org/archive/html/emacs-devel/2012-04/msg00430.html
|
||||
The default fontset is most likely to have fonts for a wide variety of
|
||||
non-@acronym{ASCII} characters, and is the default fallback for the
|
||||
other two fontsets, and if you set a default font rather than fontset.
|
||||
|
@ -1762,15 +1763,17 @@ non-@code{nil}, Emacs reorders characters that have right-to-left
|
|||
directionality when they are displayed. The default value is
|
||||
@code{t}.
|
||||
|
||||
@cindex base direction of paragraphs
|
||||
@cindex paragraph, base direction
|
||||
Each paragraph of bidirectional text can have its own @dfn{base
|
||||
direction}, either right-to-left or left-to-right. (Paragraph
|
||||
@c paragraph-separate etc have no influence on this?
|
||||
boundaries are empty lines, i.e.@: lines consisting entirely of
|
||||
whitespace characters.) 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.
|
||||
whitespace characters.) Text in left-to-right paragraphs begins on
|
||||
the screen 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 is displayed starting 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,
|
||||
|
|
|
@ -199,7 +199,7 @@ C-b} (@code{picture-motion-reverse}) moves in the opposite direction.
|
|||
With no argument, it moves to a point underneath the next
|
||||
``interesting'' character that follows whitespace in the previous
|
||||
nonblank line. ``Next'' here means ``appearing at a horizontal position
|
||||
greater than the one point starts out at.'' With an argument, as in
|
||||
greater than the one point starts out at''. With an argument, as in
|
||||
@kbd{C-u M-@key{TAB}}, this command moves to the next such interesting
|
||||
character in the current line. @kbd{M-@key{TAB}} does not change the
|
||||
text; it only moves point. ``Interesting'' characters are defined by
|
||||
|
|
|
@ -1109,7 +1109,7 @@ You can also use @kbd{M-x info-lookup-file} to look for documentation
|
|||
for a file name.
|
||||
|
||||
If you use @kbd{C-h S} in a major mode that does not support it,
|
||||
it asks you to specify the ``symbol help mode.'' You should enter
|
||||
it asks you to specify the ``symbol help mode''. You should enter
|
||||
a command such as @code{c-mode} that would select a major
|
||||
mode which @kbd{C-h S} does support.
|
||||
|
||||
|
@ -1451,7 +1451,7 @@ with the Foldout package (@pxref{Foldout}).
|
|||
|
||||
This section gives a brief description of the special features
|
||||
available in C, C++, Objective-C, Java, CORBA IDL, Pike and AWK modes.
|
||||
(These are called ``C mode and related modes.'')
|
||||
(These are called ``C mode and related modes''.)
|
||||
@ifinfo
|
||||
@xref{Top,, CC Mode, ccmode, CC Mode}, for more details.
|
||||
@end ifinfo
|
||||
|
|
|
@ -1355,7 +1355,7 @@ your Rmail file (@pxref{Rmail Inbox}). When loaded for the first time,
|
|||
Rmail attempts to locate the @code{movemail} program and determine its
|
||||
version. There are two versions of the @code{movemail} program: the
|
||||
native one, shipped with GNU Emacs (the ``emacs version'') and the one
|
||||
included in GNU mailutils (the ``mailutils version,''
|
||||
included in GNU mailutils (the ``mailutils version'',
|
||||
@pxref{movemail,,,mailutils,GNU mailutils}). They support the same
|
||||
command line syntax and the same basic subset of options. However, the
|
||||
Mailutils version offers additional features.
|
||||
|
|
|
@ -146,7 +146,7 @@ you don't like this feature, you can disable it by setting
|
|||
After exiting a search, you can search for the same string again by
|
||||
typing just @kbd{C-s C-s}. The first @kbd{C-s} is the key that
|
||||
invokes incremental search, and the second @kbd{C-s} means ``search
|
||||
again.'' Similarly, @kbd{C-r C-r} searches backward for the last
|
||||
again''. Similarly, @kbd{C-r C-r} searches backward for the last
|
||||
search string. In determining the last search string, it doesn't
|
||||
matter whether the string was searched for with @kbd{C-s} or
|
||||
@kbd{C-r}.
|
||||
|
@ -552,7 +552,7 @@ therefore @samp{f} is a regular expression that matches the string
|
|||
@samp{ff}.) Likewise, @samp{o} is a regular expression that matches
|
||||
only @samp{o}. (When case distinctions are being ignored, these regexps
|
||||
also match @samp{F} and @samp{O}, but we consider this a generalization
|
||||
of ``the same string,'' rather than an exception.)
|
||||
of ``the same string'', rather than an exception.)
|
||||
|
||||
Any two regular expressions @var{a} and @var{b} can be concatenated.
|
||||
The result is a regular expression which matches a string if @var{a}
|
||||
|
@ -801,7 +801,7 @@ After the end of a @samp{\( @dots{} \)} construct, the matcher remembers
|
|||
the beginning and end of the text matched by that construct. Then,
|
||||
later on in the regular expression, you can use @samp{\} followed by the
|
||||
digit @var{d} to mean ``match the same text matched the @var{d}th time
|
||||
by the @samp{\( @dots{} \)} construct.''
|
||||
by the @samp{\( @dots{} \)} construct''.
|
||||
|
||||
The strings matching the first nine @samp{\( @dots{} \)} constructs
|
||||
appearing in a regular expression are assigned numbers 1 through 9 in
|
||||
|
@ -1030,7 +1030,7 @@ it can refer to all or part of what is matched by the @var{regexp}.
|
|||
@samp{\&} in @var{newstring} stands for the entire match being
|
||||
replaced. @samp{\@var{d}} in @var{newstring}, where @var{d} is a
|
||||
digit, stands for whatever matched the @var{d}th parenthesized
|
||||
grouping in @var{regexp}. (This is called a ``back reference.'')
|
||||
grouping in @var{regexp}. (This is called a ``back reference''.)
|
||||
@samp{\#} refers to the count of replacements already made in this
|
||||
command, as a decimal number. In the first replacement, @samp{\#}
|
||||
stands for @samp{0}; in the second, for @samp{1}; and so on. For
|
||||
|
|
|
@ -534,16 +534,16 @@ large, and Emacs displays @samp{I feel pretty today}. The bug report
|
|||
would need to provide all that information. You should not assume
|
||||
that the problem is due to the size of the file and say, ``I visited a
|
||||
large file, and Emacs displayed @samp{I feel pretty today}.'' This is
|
||||
what we mean by ``guessing explanations.'' The problem might be due
|
||||
what we mean by ``guessing explanations''. The problem might be due
|
||||
to the fact that there is a @samp{z} in the file name. If this is so,
|
||||
then when we got your report, we would try out the problem with some
|
||||
``large file,'' probably with no @samp{z} in its name, and not see any
|
||||
``large file'', probably with no @samp{z} in its name, and not see any
|
||||
problem. There is no way we could guess that we should try visiting a
|
||||
file with a @samp{z} in its name.
|
||||
|
||||
You should not even say ``visit a file'' instead of @kbd{C-x C-f}.
|
||||
Similarly, rather than saying ``if I have three characters on the
|
||||
line,'' say ``after I type @kbd{@key{RET} A B C @key{RET} C-p},'' if
|
||||
line'', say ``after I type @kbd{@key{RET} A B C @key{RET} C-p}'', if
|
||||
that is the way you entered the text.
|
||||
|
||||
If possible, try quickly to reproduce the bug by invoking Emacs with
|
||||
|
@ -731,7 +731,7 @@ you can copy its output from the @file{*Messages*} buffer.
|
|||
|
||||
@item
|
||||
A description of what behavior you observe that you believe is
|
||||
incorrect. For example, ``The Emacs process gets a fatal signal,'' or,
|
||||
incorrect. For example, ``The Emacs process gets a fatal signal'', or,
|
||||
``The resulting text is as follows, which I think is wrong.''
|
||||
|
||||
Of course, if the bug is that Emacs gets a fatal signal, then one can't
|
||||
|
@ -872,7 +872,7 @@ More detailed advice and other useful techniques for debugging Emacs
|
|||
are available in the file @file{etc/DEBUG} in the Emacs distribution.
|
||||
That file also includes instructions for investigating problems
|
||||
whereby Emacs stops responding (many people assume that Emacs is
|
||||
``hung,'' whereas in fact it might be in an infinite loop).
|
||||
``hung'', whereas in fact it might be in an infinite loop).
|
||||
|
||||
To find the file @file{etc/DEBUG} in your Emacs installation, use the
|
||||
directory name stored in the variable @code{data-directory}.
|
||||
|
|
|
@ -151,7 +151,7 @@ selects the window without moving point in it.
|
|||
@kindex C-x o
|
||||
@findex other-window
|
||||
With the keyboard, you can switch windows by typing @kbd{C-x o}
|
||||
(@code{other-window}). That is an @kbd{o}, for ``other,'' not a zero.
|
||||
(@code{other-window}). That is an @kbd{o}, for ``other'', not a zero.
|
||||
When there are more than two windows, this command moves through all the
|
||||
windows in a cyclic order, generally top to bottom and left to right.
|
||||
After the rightmost and bottommost window, it goes back to the one at
|
||||
|
@ -452,7 +452,7 @@ buffer. @xref{Follow Mode}.
|
|||
The Windmove package defines commands for moving directionally
|
||||
between neighboring windows in a frame. @kbd{M-x windmove-right}
|
||||
selects the window immediately to the right of the currently selected
|
||||
one, and similarly for the ``left,'' ``up,'' and ``down''
|
||||
one, and similarly for the ``left'', ``up'', and ``down''
|
||||
counterparts. @kbd{M-x windmove-default-keybindings} binds these
|
||||
commands to @kbd{S-right} etc.; doing so disables shift selection for
|
||||
those keys (@pxref{Shift Selection}).
|
||||
|
|
|
@ -1,3 +1,54 @@
|
|||
2012-04-27 Glenn Morris <rgm@gnu.org>
|
||||
|
||||
* elisp.texi, vol1.texi, vol2.texi: Some fixes for detailed menu.
|
||||
* modes.texi (Major Modes, Auto-Indentation):
|
||||
* buffers.texi (Buffers): Some fixes for menu descriptions.
|
||||
|
||||
2012-04-27 Stefan Monnier <monnier@iro.umontreal.ca>
|
||||
* functions.texi (Simple Lambda, Argument List):
|
||||
* eval.texi (Function Indirection): Avoid deprecated form.
|
||||
|
||||
2012-04-27 Glenn Morris <rgm@gnu.org>
|
||||
|
||||
* book-spine.texi, elisp.texi, vol1.texi, vol2.texi:
|
||||
Add "et al." to authors.
|
||||
|
||||
* buffers.texi, commands.texi, compile.texi, control.texi:
|
||||
* customize.texi, display.texi, eval.texi, files.texi, frames.texi:
|
||||
* hash.texi, help.texi, intro.texi, keymaps.texi, lists.texi:
|
||||
* modes.texi, numbers.texi, objects.texi, streams.texi:
|
||||
* symbols.texi, syntax.texi, text.texi, tips.texi, variables.texi:
|
||||
Use Texinfo recommended convention for quotes+punctuation.
|
||||
|
||||
2012-04-27 Chong Yidong <cyd@gnu.org>
|
||||
|
||||
* keymaps.texi (Scanning Keymaps): Fix description of NO-REMAP arg
|
||||
to where-is-internal (Bug#10872).
|
||||
|
||||
2012-04-27 Glenn Morris <rgm@gnu.org>
|
||||
|
||||
* macros.texi (Indenting Macros): Fix typo.
|
||||
|
||||
* windows.texi (Basic Windows, Windows and Frames, Window Sizes)
|
||||
(Resizing Windows, Deleting Windows, Selecting Windows)
|
||||
(Choosing Window Options, Horizontal Scrolling)
|
||||
(Cyclic Window Ordering, Window History, Dedicated Windows)
|
||||
(Quitting Windows, Window Configurations, Textual Scrolling):
|
||||
(Coordinates and Windows, Window Configurations)
|
||||
(Window Parameters, Window Hooks): Copyedits.
|
||||
(Splitting Windows, Deleting Windows):
|
||||
Fix ignore-window-parameters logic.
|
||||
(Selecting Windows, Choosing Window Options): Markup fixes.
|
||||
(Window Start and End): Remove pointless example.
|
||||
Remove cross-reference to deleted count-lines content.
|
||||
(Textual Scrolling): Mention recenter-redisplay, recenter-top-bottom,
|
||||
and recenter-positions. Remove recenter example.
|
||||
|
||||
* elisp.texi, vol1.texi, vol2.texi: Bump VERSION and DATE.
|
||||
|
||||
* minibuf.texi (Intro to Minibuffers):
|
||||
Tweak discussion of resizing minibuffer window.
|
||||
|
||||
2012-04-26 Glenn Morris <rgm@gnu.org>
|
||||
|
||||
* elisp-covers.texi, front-cover-1.texi: Remove files.
|
||||
|
|
|
@ -20,8 +20,8 @@
|
|||
@center by
|
||||
@center Bil Lewis,
|
||||
@center Dan LaLiberte,
|
||||
@center and the
|
||||
@center GNU Manual Group
|
||||
@center the GNU Manual Group,
|
||||
@center et al.
|
||||
@sp 5
|
||||
@center Free Software Foundation
|
||||
@bye
|
||||
|
|
|
@ -23,7 +23,7 @@ not be displayed in any windows.
|
|||
* Buffer File Name:: The buffer file name indicates which file is visited.
|
||||
* Buffer Modification:: A buffer is @dfn{modified} if it needs to be saved.
|
||||
* Modification Time:: Determining whether the visited file was changed
|
||||
``behind Emacs's back''.
|
||||
"behind Emacs's back".
|
||||
* Read Only Buffers:: Modifying text is not allowed in a read-only buffer.
|
||||
* The Buffer List:: How to look at all the existing buffers.
|
||||
* Creating Buffers:: Functions that create buffers.
|
||||
|
@ -481,7 +481,7 @@ correspond to the new file name, unless the new name is already in
|
|||
use.
|
||||
|
||||
If @var{filename} is @code{nil} or the empty string, that stands for
|
||||
``no visited file.'' In this case, @code{set-visited-file-name} marks
|
||||
``no visited file''. In this case, @code{set-visited-file-name} marks
|
||||
the buffer as having no visited file, without changing the buffer's
|
||||
modified flag.
|
||||
|
||||
|
|
|
@ -718,7 +718,7 @@ We use @code{"p"} because the numeric prefix argument is never
|
|||
message when called from a keyboard macro.
|
||||
|
||||
The above method with the additional argument is usually best,
|
||||
because it allows callers to say ``treat this call as interactive.''
|
||||
because it allows callers to say ``treat this call as interactive''.
|
||||
But you can also do the job by testing @code{called-interactively-p}.
|
||||
|
||||
@defun called-interactively-p kind
|
||||
|
@ -2325,7 +2325,7 @@ same symbol that would normally represent that combination of mouse
|
|||
button and modifier keys. The information about the window part is kept
|
||||
elsewhere in the event---in the coordinates. But
|
||||
@code{read-key-sequence} translates this information into imaginary
|
||||
``prefix keys,'' all of which are symbols: @code{header-line},
|
||||
``prefix keys'', all of which are symbols: @code{header-line},
|
||||
@code{horizontal-scroll-bar}, @code{menu-bar}, @code{mode-line},
|
||||
@code{vertical-line}, and @code{vertical-scroll-bar}. You can define
|
||||
meanings for mouse clicks in special window parts by defining key
|
||||
|
@ -2705,7 +2705,7 @@ individual events, which you can put in @code{unread-command-events}.
|
|||
|
||||
@defvar unread-command-char
|
||||
This variable holds a character to be read as command input.
|
||||
A value of -1 means ``empty.''
|
||||
A value of -1 means ``empty''.
|
||||
|
||||
This variable is mostly obsolete now that you can use
|
||||
@code{unread-command-events} instead; it exists only to support programs
|
||||
|
@ -3195,7 +3195,7 @@ using the minibuffer. Usually it is more convenient for the user if you
|
|||
change the major mode of the current buffer temporarily to a special
|
||||
major mode, which should have a command to go back to the previous mode.
|
||||
(The @kbd{e} command in Rmail uses this technique.) Or, if you wish to
|
||||
give the user different text to edit ``recursively,'' create and select
|
||||
give the user different text to edit ``recursively'', create and select
|
||||
a new buffer in a special mode. In this mode, define a command to
|
||||
complete the processing and go back to the previous buffer. (The
|
||||
@kbd{m} command in Rmail does this.)
|
||||
|
|
|
@ -274,7 +274,7 @@ reloading each file after recompiling it.
|
|||
use a special Lisp reader construct, @samp{#@@@var{count}}. This
|
||||
construct skips the next @var{count} characters. It also uses the
|
||||
@samp{#$} construct, which stands for ``the name of this file, as a
|
||||
string.'' It is usually best not to use these constructs in Lisp source
|
||||
string''. It is usually best not to use these constructs in Lisp source
|
||||
files, since they are not designed to be clear to humans reading the
|
||||
file.
|
||||
|
||||
|
|
|
@ -220,7 +220,7 @@ non-@code{nil}, the clause ``succeeds''; then @code{cond} evaluates its
|
|||
@var{body-forms}, and the value of the last of @var{body-forms} becomes
|
||||
the value of the @code{cond}. The remaining clauses are ignored.
|
||||
|
||||
If the value of @var{condition} is @code{nil}, the clause ``fails,'' so
|
||||
If the value of @var{condition} is @code{nil}, the clause ``fails'', so
|
||||
the @code{cond} moves on to the following clause, trying its
|
||||
@var{condition}.
|
||||
|
||||
|
@ -622,7 +622,7 @@ error is signaled with data @code{(@var{tag} @var{value})}.
|
|||
@subsection Examples of @code{catch} and @code{throw}
|
||||
|
||||
One way to use @code{catch} and @code{throw} is to exit from a doubly
|
||||
nested loop. (In most languages, this would be done with a ``goto.'')
|
||||
nested loop. (In most languages, this would be done with a ``goto''.)
|
||||
Here we compute @code{(foo @var{i} @var{j})} for @var{i} and @var{j}
|
||||
varying from 0 to 9:
|
||||
|
||||
|
|
|
@ -817,7 +817,7 @@ For example,
|
|||
|
||||
@noindent
|
||||
describes a variable for which @code{t} means yes, @code{nil} means no,
|
||||
and @code{foo} means ``ask.''
|
||||
and @code{foo} means ``ask''.
|
||||
|
||||
@item (other @var{value})
|
||||
This alternative can match any Lisp value, but if the user chooses this
|
||||
|
@ -834,7 +834,7 @@ For example,
|
|||
|
||||
@noindent
|
||||
describes a variable for which @code{t} means yes, @code{nil} means no,
|
||||
and anything else means ``ask.'' If the user chooses @samp{Ask} from
|
||||
and anything else means ``ask''. If the user chooses @samp{Ask} from
|
||||
the menu of alternatives, that specifies the value @code{foo}; but any
|
||||
other value (not @code{t}, @code{nil} or @code{foo}) displays as
|
||||
@samp{Ask}, just like @code{foo}.
|
||||
|
|
|
@ -155,7 +155,7 @@ boundary. @xref{Filling}.
|
|||
indicate truncated and continued lines (@pxref{Fringes}). On a text
|
||||
terminal, a @samp{$} in the rightmost column of the window indicates
|
||||
truncation; a @samp{\} on the rightmost column indicates a line that
|
||||
``wraps.'' (The display table can specify alternate characters to use
|
||||
``wraps''. (The display table can specify alternate characters to use
|
||||
for this; @pxref{Display Tables}).
|
||||
|
||||
@defopt truncate-lines
|
||||
|
@ -451,7 +451,7 @@ prints the message of @var{reporter} followed by word ``done'' in the
|
|||
echo area.
|
||||
|
||||
You should always call this function and not hope for
|
||||
@code{progress-reporter-update} to print ``100%.'' Firstly, it may
|
||||
@code{progress-reporter-update} to print ``100%''. Firstly, it may
|
||||
never print it, there are many good reasons for this not to happen.
|
||||
Secondly, ``done'' is more explicit.
|
||||
@end defun
|
||||
|
@ -1308,7 +1308,7 @@ The return value is @var{overlay}.
|
|||
This is the only valid way to change the endpoints of an overlay. Do
|
||||
not try modifying the markers in the overlay by hand, as that fails to
|
||||
update other vital data structures and can cause some overlays to be
|
||||
``lost.''
|
||||
``lost''.
|
||||
@end defun
|
||||
|
||||
@defun remove-overlays &optional start end name value
|
||||
|
@ -1385,7 +1385,7 @@ foo
|
|||
@end example
|
||||
|
||||
Emacs stores the overlays of each buffer in two lists, divided
|
||||
around an arbitrary ``center position.'' One list extends backwards
|
||||
around an arbitrary ``center position''. One list extends backwards
|
||||
through the buffer from that center position, and the other extends
|
||||
forwards from that center position. The center position can be anywhere
|
||||
in the buffer.
|
||||
|
@ -4359,7 +4359,7 @@ $$\pmatrix{ 2 & -1 & 0 \cr
|
|||
@end ifnottex
|
||||
|
||||
@item disabled
|
||||
Specifies transforming the image so that it looks ``disabled.''
|
||||
Specifies transforming the image so that it looks ``disabled''.
|
||||
@end table
|
||||
|
||||
@item :mask @var{mask}
|
||||
|
@ -5531,7 +5531,7 @@ Any @var{args} are passed to @var{map-function}.
|
|||
@subsection Abstract Display Example
|
||||
|
||||
Here is a simple example using functions of the ewoc package to
|
||||
implement a ``color components display,'' an area in a buffer that
|
||||
implement a ``color components display'', an area in a buffer that
|
||||
represents a vector of three integers (itself representing a 24-bit RGB
|
||||
value) in various ways.
|
||||
|
||||
|
@ -5842,7 +5842,7 @@ display the character @var{c} as those glyphs; @pxref{Glyphs}).
|
|||
|
||||
@strong{Warning:} if you use the display table to change the display
|
||||
of newline characters, the whole buffer will be displayed as one long
|
||||
``line.''
|
||||
``line''.
|
||||
|
||||
The display table also has six ``extra slots'' which serve special
|
||||
purposes. Here is a table of their meanings; @code{nil} in any slot
|
||||
|
@ -6153,7 +6153,7 @@ capability (@samp{vb}).
|
|||
|
||||
@defvar ring-bell-function
|
||||
If this is non-@code{nil}, it specifies how Emacs should ``ring the
|
||||
bell.'' Its value should be a function of no arguments. If this is
|
||||
bell''. Its value should be a function of no arguments. If this is
|
||||
non-@code{nil}, it takes precedence over the @code{visible-bell}
|
||||
variable.
|
||||
@end defvar
|
||||
|
@ -6162,7 +6162,7 @@ variable.
|
|||
@section Window Systems
|
||||
|
||||
Emacs works with several window systems, most notably the X Window
|
||||
System. Both Emacs and X use the term ``window,'' but use it
|
||||
System. Both Emacs and X use the term ``window'', but use it
|
||||
differently. An Emacs frame is a single window as far as X is
|
||||
concerned; the individual Emacs windows are not known to X at all.
|
||||
|
||||
|
|
|
@ -5,11 +5,10 @@
|
|||
@c %**end of header
|
||||
|
||||
@c Version of the manual and of Emacs.
|
||||
@c Please remember to update the edition number in README as well.
|
||||
@c And also the copies in vol1.texi and vol2.texi.
|
||||
@set VERSION 3.0
|
||||
@c Please remember to update these in vol1.texi and vol2.texi as well.
|
||||
@set VERSION 3.1
|
||||
@include emacsver.texi
|
||||
@set DATE July 2009
|
||||
@set DATE July 2012
|
||||
|
||||
@c in general, keep the following line commented out, unless doing a
|
||||
@c copy of this manual that will be published. The manual should go
|
||||
|
@ -73,8 +72,8 @@ developing GNU and promoting software freedom.''
|
|||
@subtitle For Emacs Version @value{EMACSVER}
|
||||
@subtitle Revision @value{VERSION}, @value{DATE}
|
||||
|
||||
@author by Bil Lewis, Dan LaLiberte, Richard Stallman
|
||||
@author and the GNU Manual Group
|
||||
@author by Bil Lewis, Dan LaLiberte, Richard Stallman,
|
||||
@author the GNU Manual Group, et al.
|
||||
@page
|
||||
@vskip 0pt plus 1filll
|
||||
@insertcopying
|
||||
|
@ -460,7 +459,7 @@ Functions
|
|||
* Closures:: Functions that enclose a lexical environment.
|
||||
* Obsolete Functions:: Declaring functions obsolete.
|
||||
* Inline Functions:: Defining functions that the compiler
|
||||
will open code.
|
||||
will expand inline.
|
||||
* Declaring Functions:: Telling the compiler that a function is defined.
|
||||
* Function Safety:: Determining whether a function is safe to call.
|
||||
* Related Topics:: Cross-references to specific Lisp primitives
|
||||
|
@ -493,7 +492,7 @@ Common Problems Using Macros
|
|||
* Eval During Expansion:: Don't evaluate them; put them in the expansion.
|
||||
* Repeated Expansion:: Avoid depending on how many times expansion is done.
|
||||
|
||||
Writing Customization Definitions
|
||||
Customization Settings
|
||||
|
||||
* Common Keywords:: Common keyword arguments for all kinds of
|
||||
customization declarations.
|
||||
|
@ -754,6 +753,7 @@ Defining Menus
|
|||
various features.
|
||||
* Menu Separators:: Drawing a horizontal line through a menu.
|
||||
* Alias Menu Items:: Using command aliases in menu items.
|
||||
* Toolkit Differences:: Not all toolkits provide the same features.
|
||||
|
||||
Major and Minor Modes
|
||||
|
||||
|
@ -824,6 +824,21 @@ Multiline Font Lock Constructs
|
|||
* Region to Refontify:: Controlling which region gets refontified
|
||||
after a buffer change.
|
||||
|
||||
Automatic Indentation of code
|
||||
|
||||
* SMIE:: A simple minded indentation engine.
|
||||
|
||||
Simple Minded Indentation Engine
|
||||
|
||||
* SMIE setup:: SMIE setup and features.
|
||||
* Operator Precedence Grammars:: A very simple parsing technique.
|
||||
* SMIE Grammar:: Defining the grammar of a language.
|
||||
* SMIE Lexer:: Defining tokens.
|
||||
* SMIE Tricks:: Working around the parser's limitations.
|
||||
* SMIE Indentation:: Specifying indentation rules.
|
||||
* SMIE Indentation Helpers:: Helper functions for indentation rules.
|
||||
* SMIE Indentation Example:: Sample indentation rules.
|
||||
|
||||
Documentation
|
||||
|
||||
* Documentation Basics:: Where doc strings are defined and stored.
|
||||
|
@ -1220,8 +1235,7 @@ Processes
|
|||
* Datagrams:: UDP network connections.
|
||||
* Low-Level Network:: Lower-level but more general function
|
||||
to create connections and servers.
|
||||
* Misc Network:: Additional relevant functions for
|
||||
network connections.
|
||||
* Misc Network:: Additional relevant functions for net connections.
|
||||
* Serial Ports:: Communicating with serial ports.
|
||||
* Byte Packing:: Using bindat to pack and unpack binary data.
|
||||
|
||||
|
@ -1341,6 +1355,7 @@ Images
|
|||
* GIF Images:: Special features for GIF format.
|
||||
* TIFF Images:: Special features for TIFF format.
|
||||
* PostScript Images:: Special features for PostScript format.
|
||||
* ImageMagick Images:: Special features available through ImageMagick.
|
||||
* Other Image Types:: Various other formats are supported.
|
||||
* Defining Images:: Convenient ways to define an image for later use.
|
||||
* Showing Images:: Convenient ways to display an image once
|
||||
|
@ -1396,13 +1411,6 @@ Operating System Interface
|
|||
* Notifications:: Desktop notifications.
|
||||
* Dynamic Libraries:: On-demand loading of support libraries.
|
||||
|
||||
Preparing Lisp code for distribution
|
||||
|
||||
* Packaging Basics:: The basic concepts of Emacs Lisp packages.
|
||||
* Simple Packages:: How to package a single .el file.
|
||||
* Multi-file Packages:: How to package multiple files.
|
||||
* Package Archives:: Maintaining package archives.
|
||||
|
||||
Starting Up Emacs
|
||||
|
||||
* Startup Summary:: Sequence of actions Emacs performs at startup.
|
||||
|
@ -1421,6 +1429,13 @@ Terminal Input
|
|||
* Input Modes:: Options for how input is processed.
|
||||
* Recording Input:: Saving histories of recent or all input events.
|
||||
|
||||
Preparing Lisp code for distribution
|
||||
|
||||
* Packaging Basics:: The basic concepts of Emacs Lisp packages.
|
||||
* Simple Packages:: How to package a single .el file.
|
||||
* Multi-file Packages:: How to package multiple files.
|
||||
* Package Archives:: Maintaining package archives.
|
||||
|
||||
Tips and Conventions
|
||||
|
||||
* Coding Conventions:: Conventions for clean and robust programs.
|
||||
|
|
|
@ -103,7 +103,7 @@ interpretation. @xref{Command Loop}.
|
|||
@dfn{form} (or an @dfn{expression}). How Emacs evaluates a form
|
||||
depends on its data type. Emacs has three different kinds of form
|
||||
that are evaluated differently: symbols, lists, and ``all other
|
||||
types.'' This section describes all three kinds, one by one, starting
|
||||
types''. This section describes all three kinds, one by one, starting
|
||||
with the ``all other types'' which are self-evaluating forms.
|
||||
|
||||
@menu
|
||||
|
@ -304,6 +304,22 @@ function, not a symbol.
|
|||
Executing the function itself evaluates its body; this does involve
|
||||
symbol function indirection when calling @code{erste}.
|
||||
|
||||
This form is rarely used and is now deprecated. Instead, you should write it
|
||||
as:
|
||||
|
||||
@smallexample
|
||||
@group
|
||||
(funcall (lambda (arg) (erste arg))
|
||||
'(1 2 3))
|
||||
@end group
|
||||
@end smallexample
|
||||
or just
|
||||
@smallexample
|
||||
@group
|
||||
(let ((arg '(1 2 3))) (erste arg))
|
||||
@end group
|
||||
@end smallexample
|
||||
|
||||
The built-in function @code{indirect-function} provides an easy way to
|
||||
perform symbol function indirection explicitly.
|
||||
|
||||
|
|
|
@ -71,8 +71,8 @@ back into the file.
|
|||
|
||||
In spite of the distinction between files and buffers, people often
|
||||
refer to a file when they mean a buffer and vice-versa. Indeed, we say,
|
||||
``I am editing a file,'' rather than, ``I am editing a buffer that I
|
||||
will soon save as a file of the same name.'' Humans do not usually need
|
||||
``I am editing a file'', rather than, ``I am editing a buffer that I
|
||||
will soon save as a file of the same name''. Humans do not usually need
|
||||
to make the distinction explicit. When dealing with a computer program,
|
||||
however, it is good to keep the distinction in mind.
|
||||
|
||||
|
@ -688,7 +688,7 @@ The file lock is really a file, a symbolic link with a special name,
|
|||
stored in the same directory as the file you are editing.
|
||||
|
||||
When you access files using NFS, there may be a small probability that
|
||||
you and another user will both lock the same file ``simultaneously.''
|
||||
you and another user will both lock the same file ``simultaneously''.
|
||||
If this happens, it is possible for the two users to make changes
|
||||
simultaneously, but Emacs will still warn the user who saves second.
|
||||
Also, the detection of modification of a buffer visiting a file changed
|
||||
|
@ -1806,7 +1806,7 @@ return value, but backup version numbers are kept.
|
|||
@end defun
|
||||
|
||||
@defun file-name-extension filename &optional period
|
||||
This function returns @var{filename}'s final ``extension,'' if any,
|
||||
This function returns @var{filename}'s final ``extension'', if any,
|
||||
after applying @code{file-name-sans-versions} to remove any
|
||||
version/backup part. The extension, in a file name, is the part that
|
||||
follows the last @samp{.} in the last name component (minus any
|
||||
|
@ -2798,7 +2798,7 @@ unlocking the buffer if it is locked.
|
|||
possibly others to be added in the future. It need not implement all
|
||||
these operations itself---when it has nothing special to do for a
|
||||
certain operation, it can reinvoke the primitive, to handle the
|
||||
operation ``in the usual way.'' It should always reinvoke the primitive
|
||||
operation ``in the usual way''. It should always reinvoke the primitive
|
||||
for an operation it does not recognize. Here's one way to do this:
|
||||
|
||||
@smallexample
|
||||
|
|
|
@ -882,7 +882,7 @@ This variable specifies how to blink the cursor. Each element has the
|
|||
form @code{(@var{on-state} . @var{off-state})}. Whenever the cursor
|
||||
type equals @var{on-state} (comparing using @code{equal}), the
|
||||
corresponding @var{off-state} specifies what the cursor looks like
|
||||
when it blinks ``off.'' Both @var{on-state} and @var{off-state}
|
||||
when it blinks ``off''. Both @var{on-state} and @var{off-state}
|
||||
should be suitable values for the @code{cursor-type} frame parameter.
|
||||
|
||||
There are various defaults for how to blink each type of cursor, if
|
||||
|
@ -1069,7 +1069,7 @@ characters rather than pixels.
|
|||
These values include the internal borders, and windows' scroll bars
|
||||
and fringes (which belong to individual windows, not to the frame
|
||||
itself). The exact value of the heights depends on the window-system
|
||||
and toolkit in use. With Gtk+, the height does not include any tool
|
||||
and toolkit in use. With GTK+, the height does not include any tool
|
||||
bar or menu bar. With the Motif or Lucid toolkits, it includes the
|
||||
tool bar but not the menu bar. In a graphical version with no
|
||||
toolkit, it includes both the tool bar and menu bar. For a text
|
||||
|
@ -1532,7 +1532,7 @@ track of such changes. @xref{Misc Events}.
|
|||
Most window systems use a desktop metaphor. Part of this metaphor is
|
||||
the idea that windows are stacked in a notional third dimension
|
||||
perpendicular to the screen surface, and thus ordered from ``highest''
|
||||
to ``lowest.'' Where two windows overlap, the one higher up covers
|
||||
to ``lowest''. Where two windows overlap, the one higher up covers
|
||||
the one underneath. Even a window at the bottom of the stack can be
|
||||
seen if no other window overlaps it.
|
||||
|
||||
|
@ -1540,7 +1540,7 @@ seen if no other window overlaps it.
|
|||
@cindex lowering a frame
|
||||
A window's place in this ordering is not fixed; in fact, users tend
|
||||
to change the order frequently. @dfn{Raising} a window means moving
|
||||
it ``up,'' to the top of the stack. @dfn{Lowering} a window means
|
||||
it ``up'', to the top of the stack. @dfn{Lowering} a window means
|
||||
moving it to the bottom of the stack. This motion is in the notional
|
||||
third dimension only, and does not change the position of the window
|
||||
on the screen.
|
||||
|
@ -1814,7 +1814,7 @@ the menu keymap as necessary.
|
|||
A dialog box is a variant of a pop-up menu---it looks a little
|
||||
different, it always appears in the center of a frame, and it has just
|
||||
one level and one or more buttons. The main use of dialog boxes is
|
||||
for asking questions that the user can answer with ``yes,'' ``no,''
|
||||
for asking questions that the user can answer with ``yes'', ``no'',
|
||||
and a few other alternatives. With a single button, they can also
|
||||
force the user to acknowledge important information. The functions
|
||||
@code{y-or-n-p} and @code{yes-or-no-p} use dialog boxes instead of the
|
||||
|
@ -2028,7 +2028,7 @@ colors.)
|
|||
These functions provide a way to determine which color names are
|
||||
valid, and what they look like. In some cases, the value depends on the
|
||||
@dfn{selected frame}, as described below; see @ref{Input Focus}, for the
|
||||
meaning of the term ``selected frame.''
|
||||
meaning of the term ``selected frame''.
|
||||
|
||||
To read user input of color names with completion, use
|
||||
@code{read-color} (@pxref{High-Level Completion, read-color}).
|
||||
|
@ -2425,7 +2425,7 @@ software (as a string). Really this means whoever distributes the X
|
|||
server.
|
||||
|
||||
When the developers of X labeled software distributors as
|
||||
``vendors,'' they showed their false assumption that no system could
|
||||
``vendors'', they showed their false assumption that no system could
|
||||
ever be developed and distributed noncommercially.
|
||||
@end defun
|
||||
|
||||
|
|
|
@ -266,13 +266,12 @@ function is the value returned by the last element of the body.
|
|||
@end example
|
||||
|
||||
@noindent
|
||||
We can call this function by writing it as the @sc{car} of an
|
||||
expression, like this:
|
||||
We can call this function by passing it to @code{funcall}, like this:
|
||||
|
||||
@example
|
||||
@group
|
||||
((lambda (a b c) (+ a b c))
|
||||
1 2 3)
|
||||
(funcall (lambda (a b c) (+ a b c))
|
||||
1 2 3)
|
||||
@end group
|
||||
@end example
|
||||
|
||||
|
@ -287,8 +286,8 @@ this example:
|
|||
|
||||
@example
|
||||
@group
|
||||
((lambda (a b c) (+ a b c))
|
||||
1 (* 2 3) (- 5 4))
|
||||
(funcall (lambda (a b c) (+ a b c))
|
||||
1 (* 2 3) (- 5 4))
|
||||
@end group
|
||||
@end example
|
||||
|
||||
|
@ -399,16 +398,16 @@ after a @code{&rest} argument.
|
|||
Here are some examples of argument lists and proper calls:
|
||||
|
||||
@smallexample
|
||||
((lambda (n) (1+ n)) ; @r{One required:}
|
||||
1) ; @r{requires exactly one argument.}
|
||||
(funcall (lambda (n) (1+ n)) ; @r{One required:}
|
||||
1) ; @r{requires exactly one argument.}
|
||||
@result{} 2
|
||||
((lambda (n &optional n1) ; @r{One required and one optional:}
|
||||
(if n1 (+ n n1) (1+ n))) ; @r{1 or 2 arguments.}
|
||||
1 2)
|
||||
(funcall (lambda (n &optional n1) ; @r{One required and one optional:}
|
||||
(if n1 (+ n n1) (1+ n))) ; @r{1 or 2 arguments.}
|
||||
1 2)
|
||||
@result{} 3
|
||||
((lambda (n &rest ns) ; @r{One required and one rest:}
|
||||
(+ n (apply '+ ns))) ; @r{1 or more arguments.}
|
||||
1 2 3 4 5)
|
||||
(funcall (lambda (n &rest ns) ; @r{One required and one rest:}
|
||||
(+ n (apply '+ ns))) ; @r{1 or more arguments.}
|
||||
1 2 3 4 5)
|
||||
@result{} 15
|
||||
@end smallexample
|
||||
|
||||
|
|
|
@ -74,13 +74,13 @@ alternatives:
|
|||
Keys which are numbers are ``the same'' if they are @code{equal}, that
|
||||
is, if they are equal in value and either both are integers or both
|
||||
are floating point numbers; otherwise, two distinct objects are never
|
||||
``the same.''
|
||||
``the same''.
|
||||
|
||||
@item eq
|
||||
Any two distinct Lisp objects are ``different'' as keys.
|
||||
|
||||
@item equal
|
||||
Two Lisp objects are ``the same,'' as keys, if they are equal
|
||||
Two Lisp objects are ``the same'', as keys, if they are equal
|
||||
according to @code{equal}.
|
||||
@end table
|
||||
|
||||
|
@ -128,7 +128,7 @@ doing that takes some extra time.
|
|||
The default size is 65.
|
||||
|
||||
@item :rehash-size @var{rehash-size}
|
||||
When you add an association to a hash table and the table is ``full,''
|
||||
When you add an association to a hash table and the table is ``full'',
|
||||
it grows automatically. This value specifies how to make the hash table
|
||||
larger, at that time.
|
||||
|
||||
|
@ -262,7 +262,7 @@ will use @var{test-fn} to compare key values, and @var{hash-fn} to compute
|
|||
a ``hash code'' from a key value.
|
||||
|
||||
The function @var{test-fn} should accept two arguments, two keys, and
|
||||
return non-@code{nil} if they are considered ``the same.''
|
||||
return non-@code{nil} if they are considered ``the same''.
|
||||
|
||||
The function @var{hash-fn} should accept one argument, a key, and return
|
||||
an integer that is the ``hash code'' of that key. For good results, the
|
||||
|
|
|
@ -599,7 +599,7 @@ subcommands of the prefix key.
|
|||
|
||||
@defopt help-event-list
|
||||
The value of this variable is a list of event types that serve as
|
||||
alternative ``help characters.'' These events are handled just like the
|
||||
alternative ``help characters''. These events are handled just like the
|
||||
event specified by @code{help-char}.
|
||||
@end defopt
|
||||
|
||||
|
|
|
@ -146,7 +146,7 @@ printer'' refer to those routines in Lisp that convert textual
|
|||
representations of Lisp objects into actual Lisp objects, and vice
|
||||
versa. @xref{Printed Representation}, for more details. You, the
|
||||
person reading this manual, are thought of as ``the programmer'' and are
|
||||
addressed as ``you.'' ``The user'' is the person who uses Lisp
|
||||
addressed as ``you''. ``The user'' is the person who uses Lisp
|
||||
programs, including those you write.
|
||||
|
||||
@cindex typographic conventions
|
||||
|
@ -219,7 +219,7 @@ the examples in this manual, this is indicated with @samp{@result{}}:
|
|||
@end example
|
||||
|
||||
@noindent
|
||||
You can read this as ``@code{(car '(1 2))} evaluates to 1.''
|
||||
You can read this as ``@code{(car '(1 2))} evaluates to 1''.
|
||||
|
||||
When a form is a macro call, it expands into a new form for Lisp to
|
||||
evaluate. We show the result of the expansion with
|
||||
|
|
|
@ -1032,7 +1032,7 @@ binding of @var{othertype} in @var{othermap} and uses that.
|
|||
This feature permits you to define one key as an alias for another key.
|
||||
For example, an entry whose @sc{car} is the keymap called @code{esc-map}
|
||||
and whose @sc{cdr} is 32 (the code for @key{SPC}) means, ``Use the global
|
||||
binding of @kbd{Meta-@key{SPC}}, whatever that may be.''
|
||||
binding of @kbd{Meta-@key{SPC}}, whatever that may be''.
|
||||
@end itemize
|
||||
|
||||
@item @var{symbol}
|
||||
|
@ -1887,9 +1887,9 @@ maps searched are @var{keymap} and the global keymap. If @var{keymap}
|
|||
is a list of keymaps, only those keymaps are searched.
|
||||
|
||||
Usually it's best to use @code{overriding-local-map} as the expression
|
||||
for @var{keymap}. Then @code{where-is-internal} searches precisely the
|
||||
keymaps that are active. To search only the global map, pass
|
||||
@code{(keymap)} (an empty keymap) as @var{keymap}.
|
||||
for @var{keymap}. Then @code{where-is-internal} searches precisely
|
||||
the keymaps that are active. To search only the global map, pass the
|
||||
value @code{(keymap)} (an empty keymap) as @var{keymap}.
|
||||
|
||||
If @var{firstonly} is @code{non-ascii}, then the value is a single
|
||||
vector representing the first key sequence found, rather than a list of
|
||||
|
@ -1903,20 +1903,24 @@ If @var{noindirect} is non-@code{nil}, @code{where-is-internal} doesn't
|
|||
follow indirect keymap bindings. This makes it possible to search for
|
||||
an indirect definition itself.
|
||||
|
||||
When command remapping is in effect (@pxref{Remapping Commands}),
|
||||
@code{where-is-internal} figures out when a command will be run due to
|
||||
remapping and reports keys accordingly. It also returns @code{nil} if
|
||||
@var{command} won't really be run because it has been remapped to some
|
||||
other command. However, if @var{no-remap} is non-@code{nil}.
|
||||
@code{where-is-internal} ignores remappings.
|
||||
The fifth argument, @var{no-remap}, determines how this function
|
||||
treats command remappings (@pxref{Remapping Commands}). There are two
|
||||
cases of interest:
|
||||
|
||||
@smallexample
|
||||
@group
|
||||
(where-is-internal 'describe-function)
|
||||
@result{} ([8 102] [f1 102] [help 102]
|
||||
[menu-bar help-menu describe describe-function])
|
||||
@end group
|
||||
@end smallexample
|
||||
@table @asis
|
||||
@item If a command @var{other-command} is remapped to @var{command}:
|
||||
If @var{no-remap} is @code{nil}, find the bindings for
|
||||
@var{other-command} and treat them as though they are also bindings
|
||||
for @var{command}. If @var{no-remap} is non-@code{nil}, include the
|
||||
vector @code{[remap @var{other-command}]} in the list of possible key
|
||||
sequences, instead of finding those bindings.
|
||||
|
||||
@item If @var{command} is remapped to @var{other-command}:
|
||||
If @var{no-remap} is @code{nil}, return the bindings for
|
||||
@var{other-command} rather than @var{command}. If @var{no-remap} is
|
||||
non-@code{nil}, return the bindings for @var{command}, ignoring the
|
||||
fact that it is remapped.
|
||||
@end table
|
||||
@end defun
|
||||
|
||||
@deffn Command describe-bindings &optional prefix buffer-or-name
|
||||
|
@ -2147,7 +2151,7 @@ This works because @code{toggle-debug-on-error} is defined as a command
|
|||
which toggles the variable @code{debug-on-error}.
|
||||
|
||||
@dfn{Radio buttons} are a group of menu items, in which at any time one
|
||||
and only one is ``selected.'' There should be a variable whose value
|
||||
and only one is ``selected''. There should be a variable whose value
|
||||
says which one is selected at any time. The @var{selected} form for
|
||||
each radio button in the group should check whether the variable has the
|
||||
right value for selecting that button. Clicking on the button should
|
||||
|
@ -2424,7 +2428,7 @@ Next we define the menu items:
|
|||
Note the symbols which the bindings are ``made for''; these appear
|
||||
inside square brackets, in the key sequence being defined. In some
|
||||
cases, this symbol is the same as the command name; sometimes it is
|
||||
different. These symbols are treated as ``function keys,'' but they are
|
||||
different. These symbols are treated as ``function keys'', but they are
|
||||
not real function keys on the keyboard. They do not affect the
|
||||
functioning of the menu itself, but they are ``echoed'' in the echo area
|
||||
when the user selects from the menu, and they appear in the output of
|
||||
|
|
|
@ -34,12 +34,12 @@ object that represents an ordered pair. That is, it has two slots,
|
|||
and each slot @dfn{holds}, or @dfn{refers to}, some Lisp object. One
|
||||
slot is known as the @sc{car}, and the other is known as the @sc{cdr}.
|
||||
(These names are traditional; see @ref{Cons Cell Type}.) @sc{cdr} is
|
||||
pronounced ``could-er.''
|
||||
pronounced ``could-er''.
|
||||
|
||||
We say that ``the @sc{car} of this cons cell is'' whatever object
|
||||
its @sc{car} slot currently holds, and likewise for the @sc{cdr}.
|
||||
|
||||
A list is a series of cons cells ``chained together,'' so that each
|
||||
A list is a series of cons cells ``chained together'', so that each
|
||||
cell refers to the next one. There is one cons cell for each element
|
||||
of the list. By convention, the @sc{car}s of the cons cells hold the
|
||||
elements of the list, and the @sc{cdr}s are used to chain the list
|
||||
|
@ -1632,7 +1632,7 @@ a @sc{cdr} @code{equal} to @var{value}.
|
|||
|
||||
@code{rassoc} is like @code{assoc} except that it compares the @sc{cdr} of
|
||||
each @var{alist} association instead of the @sc{car}. You can think of
|
||||
this as ``reverse @code{assoc},'' finding the key for a given value.
|
||||
this as ``reverse @code{assoc}'', finding the key for a given value.
|
||||
@end defun
|
||||
|
||||
@defun assq key alist
|
||||
|
@ -1673,7 +1673,7 @@ a @sc{cdr} @code{eq} to @var{value}.
|
|||
|
||||
@code{rassq} is like @code{assq} except that it compares the @sc{cdr} of
|
||||
each @var{alist} association instead of the @sc{car}. You can think of
|
||||
this as ``reverse @code{assq},'' finding the key for a given value.
|
||||
this as ``reverse @code{assq}'', finding the key for a given value.
|
||||
|
||||
For example:
|
||||
|
||||
|
|
|
@ -604,7 +604,7 @@ either.
|
|||
@section Indenting Macros
|
||||
|
||||
Within a macro definition, you can use the @code{declare} form
|
||||
(@pxref{Defining Macros}) to specify how to @key{TAB} should indent
|
||||
(@pxref{Defining Macros}) to specify how @key{TAB} should indent
|
||||
calls to the macro. An indentation specification is written like this:
|
||||
|
||||
@example
|
||||
|
|
|
@ -57,16 +57,17 @@ including @code{beginning-of-line}, @code{forward-word},
|
|||
@code{forward-sentence}, and @code{forward-paragraph}, stop at the
|
||||
boundary between the prompt and the actual text.
|
||||
|
||||
@c See http://debbugs.gnu.org/11276
|
||||
The minibuffer's window is normally a single line; it grows
|
||||
automatically if the contents require more space. You can explicitly
|
||||
@c FIXME? Works in 23.4, not 24.0.95. (Bug#11276)
|
||||
resize it temporarily with the window sizing commands; it reverts to
|
||||
its normal size when the minibuffer is exited. You can resize it
|
||||
@c FIXME? Doesn't work in any version of Emacs?
|
||||
automatically if the contents require more space. Whilst it is
|
||||
active, you can explicitly resize it temporarily with the window
|
||||
sizing commands; it reverts to its normal size when the minibuffer is
|
||||
exited. When the minibuffer is not active, you can resize it
|
||||
permanently by using the window sizing commands in the frame's other
|
||||
window, when the minibuffer is not active. If the frame contains just
|
||||
a minibuffer, you can change the minibuffer's size by changing the
|
||||
frame's size.
|
||||
window, or dragging the mode line with the mouse. (Due to details of
|
||||
the current implementation, for this to work @code{resize-mini-windows}
|
||||
must be @code{nil}.) If the frame contains just a minibuffer, you can
|
||||
change the minibuffer's size by changing the frame's size.
|
||||
|
||||
Use of the minibuffer reads input events, and that alters the values
|
||||
of variables such as @code{this-command} and @code{last-command}
|
||||
|
|
|
@ -283,7 +283,7 @@ buffer is put in Fundamental mode (@pxref{Major Mode Conventions}).
|
|||
* Derived Modes:: Defining a new major mode based on another major
|
||||
mode.
|
||||
* Basic Major Modes:: Modes that other modes are often derived from.
|
||||
* Mode Hooks:: Hooks run at the end of major mode commands.
|
||||
* Mode Hooks:: Hooks run at the end of major mode functions.
|
||||
* Tabulated List Mode:: Parent mode for buffers containing tabulated data.
|
||||
* Generic Modes:: Defining a simple major mode that supports
|
||||
comment syntax and Font Lock mode.
|
||||
|
@ -384,7 +384,7 @@ reserved for users.
|
|||
|
||||
A major mode can also rebind the keys @kbd{M-n}, @kbd{M-p} and
|
||||
@kbd{M-s}. The bindings for @kbd{M-n} and @kbd{M-p} should normally
|
||||
be some kind of ``moving forward and backward,'' but this does not
|
||||
be some kind of ``moving forward and backward'', but this does not
|
||||
necessarily mean cursor motion.
|
||||
|
||||
It is legitimate for a major mode to rebind a standard key sequence if
|
||||
|
@ -938,7 +938,7 @@ such a major mode, please correct it to follow these conventions.
|
|||
|
||||
When you defined a major mode using @code{define-derived-mode}, it
|
||||
automatically makes sure these conventions are followed. If you
|
||||
define a major mode ``by hand,'' not using @code{define-derived-mode},
|
||||
define a major mode ``by hand'', not using @code{define-derived-mode},
|
||||
use the following functions to handle these conventions automatically.
|
||||
|
||||
@defun run-mode-hooks &rest hookvars
|
||||
|
@ -1122,8 +1122,8 @@ documentation for the mode command. If you do not supply it,
|
|||
The argument @var{comment-list} is a list in which each element is
|
||||
either a character, a string of one or two characters, or a cons cell.
|
||||
A character or a string is set up in the mode's syntax table as a
|
||||
``comment starter.'' If the entry is a cons cell, the @sc{car} is set
|
||||
up as a ``comment starter'' and the @sc{cdr} as a ``comment ender.''
|
||||
``comment starter''. If the entry is a cons cell, the @sc{car} is set
|
||||
up as a ``comment starter'' and the @sc{cdr} as a ``comment ender''.
|
||||
(Use @code{nil} for the latter if you want comments to end at the end
|
||||
of the line.) Note that the syntax table mechanism has limitations
|
||||
about what comment starters and enders are actually possible.
|
||||
|
@ -1648,7 +1648,7 @@ See the command \\[hungry-electric-delete]."
|
|||
@end smallexample
|
||||
|
||||
@noindent
|
||||
This defines a minor mode named ``Hungry mode,'' a command named
|
||||
This defines a minor mode named ``Hungry mode'', a command named
|
||||
@code{hungry-mode} to toggle it, a variable named @code{hungry-mode}
|
||||
which indicates whether the mode is enabled, and a variable named
|
||||
@code{hungry-mode-map} which holds the keymap that is active when the
|
||||
|
@ -3374,7 +3374,7 @@ Another one is SMIE which takes an approach in the spirit
|
|||
of Lisp sexps and adapts it to non-Lisp languages.
|
||||
|
||||
@menu
|
||||
* SMIE:: A simple minded indentation engine
|
||||
* SMIE:: A simple minded indentation engine.
|
||||
@end menu
|
||||
|
||||
@node SMIE
|
||||
|
@ -3400,14 +3400,14 @@ languages cannot be parsed correctly using SMIE, at least not without
|
|||
resorting to some special tricks (@pxref{SMIE Tricks}).
|
||||
|
||||
@menu
|
||||
* SMIE setup:: SMIE setup and features
|
||||
* Operator Precedence Grammars:: A very simple parsing technique
|
||||
* SMIE Grammar:: Defining the grammar of a language
|
||||
* SMIE Lexer:: Defining tokens
|
||||
* SMIE Tricks:: Working around the parser's limitations
|
||||
* SMIE Indentation:: Specifying indentation rules
|
||||
* SMIE Indentation Helpers:: Helper functions for indentation rules
|
||||
* SMIE Indentation Example:: Sample indentation rules
|
||||
* SMIE setup:: SMIE setup and features.
|
||||
* Operator Precedence Grammars:: A very simple parsing technique.
|
||||
* SMIE Grammar:: Defining the grammar of a language.
|
||||
* SMIE Lexer:: Defining tokens.
|
||||
* SMIE Tricks:: Working around the parser's limitations.
|
||||
* SMIE Indentation:: Specifying indentation rules.
|
||||
* SMIE Indentation Helpers:: Helper functions for indentation rules.
|
||||
* SMIE Indentation Example:: Sample indentation rules.
|
||||
@end menu
|
||||
|
||||
@node SMIE setup
|
||||
|
|
|
@ -777,7 +777,7 @@ and returns that value as a floating point number.
|
|||
sequence of @dfn{bits} (digits which are either zero or one). A bitwise
|
||||
operation acts on the individual bits of such a sequence. For example,
|
||||
@dfn{shifting} moves the whole sequence left or right one or more places,
|
||||
reproducing the same pattern ``moved over.''
|
||||
reproducing the same pattern ``moved over''.
|
||||
|
||||
The bitwise operations in Emacs Lisp apply only to integers.
|
||||
|
||||
|
|
|
@ -675,7 +675,7 @@ not distinguish between a cons cell slot ``holding'' a value versus
|
|||
|
||||
@cindex atoms
|
||||
Because cons cells are so central to Lisp, we also have a word for
|
||||
``an object which is not a cons cell.'' These objects are called
|
||||
``an object which is not a cons cell''. These objects are called
|
||||
@dfn{atoms}.
|
||||
|
||||
@cindex parenthesis
|
||||
|
@ -1289,7 +1289,7 @@ without qualification, we mean a Lisp macro, not a keyboard macro.
|
|||
A @dfn{primitive function} is a function callable from Lisp but
|
||||
written in the C programming language. Primitive functions are also
|
||||
called @dfn{subrs} or @dfn{built-in functions}. (The word ``subr'' is
|
||||
derived from ``subroutine.'') Most primitive functions evaluate all
|
||||
derived from ``subroutine''.) Most primitive functions evaluate all
|
||||
their arguments when they are called. A primitive function that does
|
||||
not evaluate all its arguments is called a @dfn{special form}
|
||||
(@pxref{Special Forms}).@refill
|
||||
|
|
|
@ -114,7 +114,7 @@ When it is called with one argument (always a character), @var{function}
|
|||
should save the argument and arrange to return it on the next call.
|
||||
This is called @dfn{unreading} the character; it happens when the Lisp
|
||||
reader reads one character too many and wants to ``put it back where it
|
||||
came from.'' In this case, it makes no difference what value
|
||||
came from''. In this case, it makes no difference what value
|
||||
@var{function} returns.
|
||||
@end itemize
|
||||
|
||||
|
@ -618,7 +618,7 @@ spacing between calls.
|
|||
@defun terpri &optional stream
|
||||
@cindex newline in print
|
||||
This function outputs a newline to @var{stream}. The name stands
|
||||
for ``terminate print.''
|
||||
for ``terminate print''.
|
||||
@end defun
|
||||
|
||||
@defun write-char character &optional stream
|
||||
|
|
|
@ -140,7 +140,7 @@ act correctly if it is evaluated with lexical scoping enabled
|
|||
@code{defun} defines a symbol as a function, creating a lambda
|
||||
expression and storing it in the function cell of the symbol. This
|
||||
lambda expression thus becomes the function definition of the symbol.
|
||||
(The term ``function definition,'' meaning the contents of the function
|
||||
(The term ``function definition'', meaning the contents of the function
|
||||
cell, is derived from the idea that @code{defun} gives the symbol its
|
||||
definition as a function.) @code{defsubst} and @code{defalias} are two
|
||||
other ways of defining a function. @xref{Functions}.
|
||||
|
|
|
@ -56,7 +56,7 @@ Modes}, for an example of how to set up a syntax table.
|
|||
A syntax table can inherit the data for some characters from the
|
||||
standard syntax table, while specifying other characters itself. The
|
||||
``inherit'' syntax class means ``inherit this character's syntax from
|
||||
the standard syntax table.'' Just changing the standard syntax for a
|
||||
the standard syntax table''. Just changing the standard syntax for a
|
||||
character affects all syntax tables that inherit from it.
|
||||
|
||||
@defun syntax-table-p object
|
||||
|
@ -617,7 +617,7 @@ higher-level functions for moving over balanced expressions.
|
|||
A character's syntax controls how it changes the state of the
|
||||
parser, rather than describing the state itself. For example, a
|
||||
string delimiter character toggles the parser state between
|
||||
``in-string'' and ``in-code,'' but the syntax of characters does not
|
||||
``in-string'' and ``in-code'', but the syntax of characters does not
|
||||
directly say whether they are inside a string. For example (note that
|
||||
15 is the syntax code for generic string delimiters),
|
||||
|
||||
|
|
|
@ -555,7 +555,7 @@ error; if some of the text in it is read-only, it signals a
|
|||
asking for any confirmation. It returns @code{nil}.
|
||||
|
||||
Normally, deleting a large amount of text from a buffer inhibits further
|
||||
auto-saving of that buffer ``because it has shrunk.'' However,
|
||||
auto-saving of that buffer ``because it has shrunk''. However,
|
||||
@code{erase-buffer} does not do this, the idea being that the future
|
||||
text is not really related to the former text, and its size should not
|
||||
be compared with that of the former text.
|
||||
|
@ -806,7 +806,7 @@ that treat it as a ring.
|
|||
|
||||
Some people think this use of the word ``kill'' is unfortunate, since
|
||||
it refers to operations that specifically @emph{do not} destroy the
|
||||
entities ``killed.'' This is in sharp contrast to ordinary life, in
|
||||
entities ``killed''. This is in sharp contrast to ordinary life, in
|
||||
which death is permanent and ``killed'' entities do not come back to
|
||||
life. Therefore, other metaphors have been proposed. For example, the
|
||||
term ``cut ring'' makes sense to people who, in pre-computer days, used
|
||||
|
@ -845,7 +845,7 @@ the entry made by the first one.
|
|||
|
||||
For yanking, one entry in the kill ring is designated the ``front'' of
|
||||
the ring. Some yank commands ``rotate'' the ring by designating a
|
||||
different element as the ``front.'' But this virtual rotation doesn't
|
||||
different element as the ``front''. But this virtual rotation doesn't
|
||||
change the list itself---the most recent entry always comes first in the
|
||||
list.
|
||||
|
||||
|
@ -1093,8 +1093,8 @@ programs, when you are using a window system. Its value should be
|
|||
@code{nil} or a function of no arguments.
|
||||
|
||||
If the value is a function, @code{current-kill} calls it to get the
|
||||
``most recent kill.'' If the function returns a non-@code{nil} value,
|
||||
then that value is used as the ``most recent kill.'' If it returns
|
||||
``most recent kill''. If the function returns a non-@code{nil} value,
|
||||
then that value is used as the ``most recent kill''. If it returns
|
||||
@code{nil}, then the front of the kill ring is used.
|
||||
|
||||
To facilitate support for window systems that support multiple
|
||||
|
@ -3504,7 +3504,7 @@ once for the same part of the buffer, you can use the variable
|
|||
If this variable's value is non-@code{nil}, it is a symbol which is used
|
||||
as a text property name. A non-@code{nil} value for that text property
|
||||
means, ``the other text properties for this character have already been
|
||||
computed.''
|
||||
computed''.
|
||||
|
||||
If all the characters in the range specified for @code{buffer-substring}
|
||||
have a non-@code{nil} value for this property, @code{buffer-substring}
|
||||
|
@ -3808,7 +3808,7 @@ after @var{old-pos}.) If @var{escape-from-edge} is non-@code{nil},
|
|||
@var{new-pos} can be anywhere in the two adjacent fields.
|
||||
Additionally, if two fields are separated by another field with the
|
||||
special value @code{boundary}, then any point within this special
|
||||
field is also considered to be ``on the boundary.''
|
||||
field is also considered to be ``on the boundary''.
|
||||
|
||||
Commands like @kbd{C-a} with no argument, that normally move backward
|
||||
to a specific kind of location and stay there once there, probably
|
||||
|
|
|
@ -640,7 +640,7 @@ have the form (KEY . VALUE). Here, KEY is ...
|
|||
|
||||
@item
|
||||
Never change the case of a Lisp symbol when you mention it in a doc
|
||||
string. If the symbol's name is @code{foo}, write ``foo,'' not
|
||||
string. If the symbol's name is @code{foo}, write ``foo'', not
|
||||
``Foo'' (which is a different symbol).
|
||||
|
||||
This might appear to contradict the policy of writing function
|
||||
|
@ -772,9 +772,9 @@ is indicative and has a proper subject.
|
|||
|
||||
@item
|
||||
The documentation string for a function that is a yes-or-no predicate
|
||||
should start with words such as ``Return t if,'' to indicate
|
||||
explicitly what constitutes ``truth.'' The word ``return'' avoids
|
||||
starting the sentence with lower-case ``t,'' which could be somewhat
|
||||
should start with words such as ``Return t if'', to indicate
|
||||
explicitly what constitutes ``truth''. The word ``return'' avoids
|
||||
starting the sentence with lower-case ``t'', which could be somewhat
|
||||
distracting.
|
||||
|
||||
@item
|
||||
|
@ -797,8 +797,8 @@ returned.''
|
|||
|
||||
@item
|
||||
Avoid using the word ``cause'' (or its equivalents) unnecessarily.
|
||||
Instead of, ``Cause Emacs to display text in boldface,'' write just
|
||||
``Display text in boldface.''
|
||||
Instead of, ``Cause Emacs to display text in boldface'', write just
|
||||
``Display text in boldface''.
|
||||
|
||||
@item
|
||||
Avoid using ``iff'' (a mathematics term meaning ``if and only if''),
|
||||
|
@ -821,7 +821,7 @@ to set, use @code{defcustom}. @xref{Defining Variables}.
|
|||
|
||||
@item
|
||||
The documentation string for a variable that is a yes-or-no flag should
|
||||
start with words such as ``Non-nil means,'' to make it clear that
|
||||
start with words such as ``Non-nil means'', to make it clear that
|
||||
all non-@code{nil} values are equivalent and indicate explicitly what
|
||||
@code{nil} and non-@code{nil} mean.
|
||||
@end itemize
|
||||
|
|
|
@ -670,7 +670,7 @@ symbol is changed.
|
|||
|
||||
@code{setq} does not evaluate @var{symbol}; it sets the symbol that you
|
||||
write. We say that this argument is @dfn{automatically quoted}. The
|
||||
@samp{q} in @code{setq} stands for ``quoted.''
|
||||
@samp{q} in @code{setq} stands for ``quoted''.
|
||||
|
||||
The value of the @code{setq} form is the value of the last @var{form}.
|
||||
|
||||
|
|
|
@ -24,10 +24,9 @@
|
|||
@end tex
|
||||
|
||||
@c Version of the manual and of Emacs.
|
||||
@c Please remember to update the edition number in README as well.
|
||||
@set VERSION 3.0
|
||||
@set VERSION 3.1
|
||||
@include emacsver.texi
|
||||
@set DATE July 2009
|
||||
@set DATE May 2012
|
||||
|
||||
@dircategory Emacs
|
||||
@direntry
|
||||
|
@ -90,8 +89,8 @@ developing GNU and promoting software freedom.''
|
|||
@subtitle For Emacs Version @value{EMACSVER}
|
||||
@subtitle Revision @value{VERSION}, @value{DATE}
|
||||
|
||||
@author by Bil Lewis, Dan LaLiberte, Richard Stallman
|
||||
@author and the GNU Manual Group
|
||||
@author by Bil Lewis, Dan LaLiberte, Richard Stallman,
|
||||
@author the GNU Manual Group, et al.
|
||||
@page
|
||||
@vskip 0pt plus 1filll
|
||||
@insertcopying
|
||||
|
@ -480,7 +479,7 @@ Functions
|
|||
* Closures:: Functions that enclose a lexical environment.
|
||||
* Obsolete Functions:: Declaring functions obsolete.
|
||||
* Inline Functions:: Defining functions that the compiler
|
||||
will open code.
|
||||
will expand inline.
|
||||
* Declaring Functions:: Telling the compiler that a function is defined.
|
||||
* Function Safety:: Determining whether a function is safe to call.
|
||||
* Related Topics:: Cross-references to specific Lisp primitives
|
||||
|
@ -513,7 +512,7 @@ Common Problems Using Macros
|
|||
* Eval During Expansion:: Don't evaluate them; put them in the expansion.
|
||||
* Repeated Expansion:: Avoid depending on how many times expansion is done.
|
||||
|
||||
Writing Customization Definitions
|
||||
Customization Settings
|
||||
|
||||
* Common Keywords:: Common keyword arguments for all kinds of
|
||||
customization declarations.
|
||||
|
@ -776,6 +775,7 @@ Defining Menus
|
|||
various features.
|
||||
* Menu Separators:: Drawing a horizontal line through a menu.
|
||||
* Alias Menu Items:: Using command aliases in menu items.
|
||||
* Toolkit Differences:: Not all toolkits provide the same features.
|
||||
|
||||
Major and Minor Modes
|
||||
|
||||
|
@ -802,7 +802,7 @@ Major Modes
|
|||
* Derived Modes:: Defining a new major mode based on another major
|
||||
mode.
|
||||
* Basic Major Modes:: Modes that other modes are often derived from.
|
||||
* Mode Hooks:: Hooks run at the end of major mode commands.
|
||||
* Mode Hooks:: Hooks run at the end of major mode functions.
|
||||
* Tabulated List Mode:: Parent mode for buffers containing tabulated data.
|
||||
* Generic Modes:: Defining a simple major mode that supports
|
||||
comment syntax and Font Lock mode.
|
||||
|
@ -846,6 +846,21 @@ Multiline Font Lock Constructs
|
|||
* Region to Refontify:: Controlling which region gets refontified
|
||||
after a buffer change.
|
||||
|
||||
Automatic Indentation of code
|
||||
|
||||
* SMIE:: A simple minded indentation engine.
|
||||
|
||||
Simple Minded Indentation Engine
|
||||
|
||||
* SMIE setup:: SMIE setup and features.
|
||||
* Operator Precedence Grammars:: A very simple parsing technique.
|
||||
* SMIE Grammar:: Defining the grammar of a language.
|
||||
* SMIE Lexer:: Defining tokens.
|
||||
* SMIE Tricks:: Working around the parser's limitations.
|
||||
* SMIE Indentation:: Specifying indentation rules.
|
||||
* SMIE Indentation Helpers:: Helper functions for indentation rules.
|
||||
* SMIE Indentation Example:: Sample indentation rules.
|
||||
|
||||
Documentation
|
||||
|
||||
* Documentation Basics:: Where doc strings are defined and stored.
|
||||
|
@ -1242,8 +1257,7 @@ Processes
|
|||
* Datagrams:: UDP network connections.
|
||||
* Low-Level Network:: Lower-level but more general function
|
||||
to create connections and servers.
|
||||
* Misc Network:: Additional relevant functions for
|
||||
network connections.
|
||||
* Misc Network:: Additional relevant functions for net connections.
|
||||
* Serial Ports:: Communicating with serial ports.
|
||||
* Byte Packing:: Using bindat to pack and unpack binary data.
|
||||
|
||||
|
@ -1363,6 +1377,7 @@ Images
|
|||
* GIF Images:: Special features for GIF format.
|
||||
* TIFF Images:: Special features for TIFF format.
|
||||
* PostScript Images:: Special features for PostScript format.
|
||||
* ImageMagick Images:: Special features available through ImageMagick.
|
||||
* Other Image Types:: Various other formats are supported.
|
||||
* Defining Images:: Convenient ways to define an image for later use.
|
||||
* Showing Images:: Convenient ways to display an image once
|
||||
|
@ -1418,12 +1433,6 @@ Operating System Interface
|
|||
* Notifications:: Desktop notifications.
|
||||
* Dynamic Libraries:: On-demand loading of support libraries.
|
||||
|
||||
Preparing Lisp code for distribution
|
||||
|
||||
* Packaging Basics:: The basic concepts of Emacs Lisp packages.
|
||||
* Simple Packages:: How to package a single .el file.
|
||||
* Multi-file Packages:: How to package multiple files.
|
||||
|
||||
Starting Up Emacs
|
||||
|
||||
* Startup Summary:: Sequence of actions Emacs performs at startup.
|
||||
|
@ -1442,6 +1451,13 @@ Terminal Input
|
|||
* Input Modes:: Options for how input is processed.
|
||||
* Recording Input:: Saving histories of recent or all input events.
|
||||
|
||||
Preparing Lisp code for distribution
|
||||
|
||||
* Packaging Basics:: The basic concepts of Emacs Lisp packages.
|
||||
* Simple Packages:: How to package a single .el file.
|
||||
* Multi-file Packages:: How to package multiple files.
|
||||
* Package Archives:: Maintaining package archives.
|
||||
|
||||
Tips and Conventions
|
||||
|
||||
* Coding Conventions:: Conventions for clean and robust programs.
|
||||
|
|
|
@ -24,10 +24,9 @@
|
|||
@end tex
|
||||
|
||||
@c Version of the manual and of Emacs.
|
||||
@c Please remember to update the edition number in README as well.
|
||||
@set VERSION 3.0
|
||||
@set VERSION 3.1
|
||||
@include emacsver.texi
|
||||
@set DATE July 2009
|
||||
@set DATE May 2012
|
||||
|
||||
@dircategory Emacs
|
||||
@direntry
|
||||
|
@ -90,8 +89,8 @@ developing GNU and promoting software freedom.''
|
|||
@subtitle For Emacs Version @value{EMACSVER}
|
||||
@subtitle Revision @value{VERSION}, @value{DATE}
|
||||
|
||||
@author by Bil Lewis, Dan LaLiberte, Richard Stallman
|
||||
@author and the GNU Manual Group
|
||||
@author by Bil Lewis, Dan LaLiberte, Richard Stallman,
|
||||
@author the GNU Manual Group, et al.
|
||||
@page
|
||||
@vskip 0pt plus 1filll
|
||||
@insertcopying
|
||||
|
@ -479,7 +478,7 @@ Functions
|
|||
* Closures:: Functions that enclose a lexical environment.
|
||||
* Obsolete Functions:: Declaring functions obsolete.
|
||||
* Inline Functions:: Defining functions that the compiler
|
||||
will open code.
|
||||
will expand inline.
|
||||
* Declaring Functions:: Telling the compiler that a function is defined.
|
||||
* Function Safety:: Determining whether a function is safe to call.
|
||||
* Related Topics:: Cross-references to specific Lisp primitives
|
||||
|
@ -512,7 +511,7 @@ Common Problems Using Macros
|
|||
* Eval During Expansion:: Don't evaluate them; put them in the expansion.
|
||||
* Repeated Expansion:: Avoid depending on how many times expansion is done.
|
||||
|
||||
Writing Customization Definitions
|
||||
Customization Settings
|
||||
|
||||
* Common Keywords:: Common keyword arguments for all kinds of
|
||||
customization declarations.
|
||||
|
@ -775,6 +774,7 @@ Defining Menus
|
|||
various features.
|
||||
* Menu Separators:: Drawing a horizontal line through a menu.
|
||||
* Alias Menu Items:: Using command aliases in menu items.
|
||||
* Toolkit Differences:: Not all toolkits provide the same features.
|
||||
|
||||
Major and Minor Modes
|
||||
|
||||
|
@ -801,7 +801,7 @@ Major Modes
|
|||
* Derived Modes:: Defining a new major mode based on another major
|
||||
mode.
|
||||
* Basic Major Modes:: Modes that other modes are often derived from.
|
||||
* Mode Hooks:: Hooks run at the end of major mode commands.
|
||||
* Mode Hooks:: Hooks run at the end of major mode functions.
|
||||
* Tabulated List Mode:: Parent mode for buffers containing tabulated data.
|
||||
* Generic Modes:: Defining a simple major mode that supports
|
||||
comment syntax and Font Lock mode.
|
||||
|
@ -845,6 +845,21 @@ Multiline Font Lock Constructs
|
|||
* Region to Refontify:: Controlling which region gets refontified
|
||||
after a buffer change.
|
||||
|
||||
Automatic Indentation of code
|
||||
|
||||
* SMIE:: A simple minded indentation engine.
|
||||
|
||||
Simple Minded Indentation Engine
|
||||
|
||||
* SMIE setup:: SMIE setup and features.
|
||||
* Operator Precedence Grammars:: A very simple parsing technique.
|
||||
* SMIE Grammar:: Defining the grammar of a language.
|
||||
* SMIE Lexer:: Defining tokens.
|
||||
* SMIE Tricks:: Working around the parser's limitations.
|
||||
* SMIE Indentation:: Specifying indentation rules.
|
||||
* SMIE Indentation Helpers:: Helper functions for indentation rules.
|
||||
* SMIE Indentation Example:: Sample indentation rules.
|
||||
|
||||
Documentation
|
||||
|
||||
* Documentation Basics:: Where doc strings are defined and stored.
|
||||
|
@ -1362,6 +1377,7 @@ Images
|
|||
* GIF Images:: Special features for GIF format.
|
||||
* TIFF Images:: Special features for TIFF format.
|
||||
* PostScript Images:: Special features for PostScript format.
|
||||
* ImageMagick Images:: Special features available through ImageMagick.
|
||||
* Other Image Types:: Various other formats are supported.
|
||||
* Defining Images:: Convenient ways to define an image for later use.
|
||||
* Showing Images:: Convenient ways to display an image once
|
||||
|
@ -1417,12 +1433,6 @@ Operating System Interface
|
|||
* Notifications:: Desktop notifications.
|
||||
* Dynamic Libraries:: On-demand loading of support libraries.
|
||||
|
||||
Preparing Lisp code for distribution
|
||||
|
||||
* Packaging Basics:: The basic concepts of Emacs Lisp packages.
|
||||
* Simple Packages:: How to package a single .el file.
|
||||
* Multi-file Packages:: How to package multiple files.
|
||||
|
||||
Starting Up Emacs
|
||||
|
||||
* Startup Summary:: Sequence of actions Emacs performs at startup.
|
||||
|
@ -1441,6 +1451,12 @@ Terminal Input
|
|||
* Input Modes:: Options for how input is processed.
|
||||
* Recording Input:: Saving histories of recent or all input events.
|
||||
|
||||
Preparing Lisp code for distribution
|
||||
|
||||
* Packaging Basics:: The basic concepts of Emacs Lisp packages.
|
||||
* Simple Packages:: How to package a single .el file.
|
||||
* Multi-file Packages:: How to package multiple files.
|
||||
|
||||
Tips and Conventions
|
||||
|
||||
* Coding Conventions:: Conventions for clean and robust programs.
|
||||
|
|
|
@ -49,7 +49,7 @@ is displayed in windows.
|
|||
@section Basic Concepts of Emacs Windows
|
||||
@cindex window
|
||||
|
||||
A @dfn{window} is a area of the screen which is used to display a
|
||||
A @dfn{window} is a area of the screen that is used to display a
|
||||
buffer (@pxref{Buffers}). In Emacs Lisp, windows are represented by a
|
||||
special Lisp object type.
|
||||
|
||||
|
@ -297,8 +297,8 @@ child of its parent.
|
|||
|
||||
The functions @code{window-next-sibling} and
|
||||
@code{window-prev-sibling} should not be confused with the functions
|
||||
@code{next-window} and @code{previous-window} which respectively
|
||||
return the next and previous window in the cyclic ordering of windows
|
||||
@code{next-window} and @code{previous-window}, which return the next
|
||||
and previous window, respectively, in the cyclic ordering of windows
|
||||
(@pxref{Cyclic Window Ordering}).
|
||||
|
||||
You can use the following functions to find the first live window on
|
||||
|
@ -376,7 +376,7 @@ line (@pxref{Mode Line Format}).
|
|||
|
||||
Emacs provides several functions for finding the height and width of
|
||||
a window. Except where noted, Emacs reports window heights and widths
|
||||
as integer numbers of lines and columns respectively. On a graphical
|
||||
as integer numbers of lines and columns, respectively. On a graphical
|
||||
display, each ``line'' and ``column'' actually corresponds to the
|
||||
height and width of a ``default'' character specified by the frame's
|
||||
default font. Thus, if a window is displaying text with a different
|
||||
|
@ -619,7 +619,7 @@ window.
|
|||
|
||||
The optional argument @var{max-height}, if non-@code{nil}, specifies
|
||||
the maximum total height that this function can give @var{window}.
|
||||
The optional argument @var{min-height}, if no-@code{nil}, specifies
|
||||
The optional argument @var{min-height}, if non-@code{nil}, specifies
|
||||
the minimum total height that it can give, which overrides the
|
||||
variable @code{window-min-height}.
|
||||
|
||||
|
@ -723,7 +723,7 @@ properties of the window selected within @var{window}'s frame.
|
|||
|
||||
The behavior of this function may be altered by the window parameters
|
||||
of @var{window}, so long as the variable
|
||||
@code{ignore-window-parameters} is non-@code{nil}. If the value of
|
||||
@code{ignore-window-parameters} is @code{nil}. If the value of
|
||||
the @code{split-window} window parameter is @code{t}, this function
|
||||
ignores all other window parameters. Otherwise, if the value of the
|
||||
@code{split-window} window parameter is a function, that function is
|
||||
|
@ -1062,7 +1062,7 @@ combination. @xref{Splitting Windows}.
|
|||
|
||||
The behavior of this function may be altered by the window parameters
|
||||
of @var{window}, so long as the variable
|
||||
@code{ignore-window-parameters} is non-@code{nil}. If the value of
|
||||
@code{ignore-window-parameters} is @code{nil}. If the value of
|
||||
the @code{delete-window} window parameter is @code{t}, this function
|
||||
ignores all other window parameters. Otherwise, if the value of the
|
||||
@code{delete-window} window parameter is a function, that function is
|
||||
|
@ -1079,7 +1079,7 @@ defaults to the selected window. The return value is @code{nil}.
|
|||
|
||||
The behavior of this function may be altered by the window parameters
|
||||
of @var{window}, so long as the variable
|
||||
@code{ignore-window-parameters} is non-@code{nil}. If the value of
|
||||
@code{ignore-window-parameters} is @code{nil}. If the value of
|
||||
the @code{delete-other-windows} window parameter is @code{t}, this
|
||||
function ignores all other window parameters. Otherwise, if the value
|
||||
of the @code{delete-other-windows} window parameter is a function,
|
||||
|
@ -1119,8 +1119,8 @@ means operate on that frame.
|
|||
|
||||
Note that this argument does not have the same meaning as in other
|
||||
functions which scan all live windows (@pxref{Cyclic Window
|
||||
Ordering}). Specifically, the values @code{t} and @code{nil} have the
|
||||
opposite of their meanings in those other functions.
|
||||
Ordering}). Specifically, the meanings of @code{t} and @code{nil} here
|
||||
are the opposite of what they are in those other functions.
|
||||
@end deffn
|
||||
|
||||
@node Selecting Windows
|
||||
|
@ -1171,11 +1171,11 @@ the buffer list.
|
|||
This macro selects @var{window}, executes @var{forms} in sequence, then
|
||||
restores the previously selected window and current buffer. The ordering
|
||||
of recently selected windows and the buffer list remain unchanged unless
|
||||
you deliberately change them within @var{forms}, for example, by calling
|
||||
you deliberately change them within @var{forms}; for example, by calling
|
||||
@code{select-window} with argument @var{norecord} @code{nil}.
|
||||
|
||||
The order of recently selected windows and the buffer list are not
|
||||
changed by this macro.
|
||||
This macro does not change the order of recently selected windows or
|
||||
the buffer list.
|
||||
@end defmac
|
||||
|
||||
@defun frame-selected-window &optional frame
|
||||
|
@ -1185,7 +1185,7 @@ within that frame. @var{frame} should be a live frame; if omitted or
|
|||
@end defun
|
||||
|
||||
@defun set-frame-selected-window frame window &optional norecord
|
||||
This function makes @code{window} the window selected within the frame
|
||||
This function makes @var{window} the window selected within the frame
|
||||
@var{frame}. @var{frame} should be a live frame; if omitted or
|
||||
@code{nil}, it defaults to the selected frame. @var{window} should be
|
||||
a live window; if omitted or @code{nil}, it defaults to the selected
|
||||
|
@ -1223,7 +1223,7 @@ the cyclic ordering of windows. @var{window} should be a live window;
|
|||
if omitted or @code{nil}, it defaults to the selected window.
|
||||
|
||||
The optional argument @var{minibuf} specifies whether minibuffer windows
|
||||
shall be included in the cyclic ordering. Normally, when @var{minibuf}
|
||||
should be included in the cyclic ordering. Normally, when @var{minibuf}
|
||||
is @code{nil}, a minibuffer window is included only if it is currently
|
||||
``active''; this matches the behavior of @kbd{C-x o}. (Note that a
|
||||
minibuffer window is active as long as its minibuffer is in use; see
|
||||
|
@ -1805,14 +1805,14 @@ desired buffer) or @code{nil} (which means the splitting failed).
|
|||
@end defopt
|
||||
|
||||
@defun split-window-sensibly window
|
||||
This function tries to split @code{window}, and return the newly
|
||||
created window. If @code{window} cannot be split, it returns
|
||||
This function tries to split @var{window}, and return the newly
|
||||
created window. If @var{window} cannot be split, it returns
|
||||
@code{nil}.
|
||||
|
||||
This function obeys the usual rules that determine when a window may
|
||||
be split (@pxref{Splitting Windows}). It first tries to split by
|
||||
placing the new window below, subject to the restriction imposed by
|
||||
@code{split-height-threshold} (see below) in addition to any other
|
||||
@code{split-height-threshold} (see below), in addition to any other
|
||||
restrictions. If that fails, it tries to split by placing the new
|
||||
window to the right, subject to @code{split-width-threshold} (see
|
||||
below). If that fails, and the window is the only window on its
|
||||
|
@ -1944,7 +1944,7 @@ to display @var{buffer}.
|
|||
|
||||
If @var{args} is an alist, it specifies frame parameters for the new
|
||||
frame. If @var{args} is a list whose @sc{car} is a symbol, then
|
||||
@code{(car @var{args})} is called as a function to actually create and
|
||||
@code{(car @var{args})} is a function to actually create and
|
||||
set up the frame; it is called with @var{buffer} as first argument, and
|
||||
@code{(cdr @var{args})} as additional arguments.
|
||||
|
||||
|
@ -1962,7 +1962,7 @@ This variable holds frame parameters for
|
|||
|
||||
@defopt same-window-buffer-names
|
||||
A list of buffer names for buffers that should be displayed in the
|
||||
selected window. If the buffer's name is in this list,
|
||||
selected window. If a buffer's name is in this list,
|
||||
@code{display-buffer} handles the buffer by switching to it in the
|
||||
selected window.
|
||||
@end defopt
|
||||
|
@ -1997,8 +1997,8 @@ above.
|
|||
@section Window History
|
||||
@cindex window history
|
||||
|
||||
Each window remembers the buffers it has displayed earlier and the order
|
||||
in which these buffers have been removed from it. This history is used,
|
||||
Each window remembers the buffers it has previously displayed, and the order
|
||||
in which these buffers were removed from it. This history is used,
|
||||
for example, by @code{replace-buffer-in-windows} (@pxref{Buffers and
|
||||
Windows}). This list is automatically maintained by Emacs, but you can
|
||||
use the following functions to explicitly inspect or alter it:
|
||||
|
@ -2061,41 +2061,41 @@ This command displays the previous buffer in @var{window}. The
|
|||
argument @var{window} should be a live window or @code{nil} (meaning
|
||||
the selected window). If the optional argument @var{bury-or-kill} is
|
||||
non-@code{nil}, this means that the buffer currently shown in
|
||||
@var{window} is about to be buried or killed and consequently shall
|
||||
@var{window} is about to be buried or killed and consequently should
|
||||
not be switched to in future invocations of this command.
|
||||
|
||||
The previous buffer is usually the buffer shown before the buffer
|
||||
currently shown in @var{window}. However, a buffer that has been buried
|
||||
or killed or has been already shown by a recent invocation of
|
||||
@code{switch-to-prev-buffer} does not qualify as previous buffer.
|
||||
or killed, or has been already shown by a recent invocation of
|
||||
@code{switch-to-prev-buffer}, does not qualify as previous buffer.
|
||||
|
||||
If repeated invocations of this command have already shown all buffers
|
||||
previously shown in @var{window}, further invocations will show buffers
|
||||
from the buffer list of the frame @var{window} appears on (@pxref{The
|
||||
Buffer List}) trying to skip buffers that are already shown in another
|
||||
Buffer List}), trying to skip buffers that are already shown in another
|
||||
window on that frame.
|
||||
@end deffn
|
||||
|
||||
@deffn Command switch-to-next-buffer &optional window
|
||||
This command switches to the next buffer in @var{window} thus undoing
|
||||
This command switches to the next buffer in @var{window}, thus undoing
|
||||
the effect of the last @code{switch-to-prev-buffer} command in
|
||||
@var{window}. The argument @var{window} must be a live window and
|
||||
defaults to the selected one.
|
||||
|
||||
If there is no recent invocation of a @code{switch-to-prev-buffer} that
|
||||
If there is no recent invocation of @code{switch-to-prev-buffer} that
|
||||
can be undone, this function tries to show a buffer from the buffer list
|
||||
of the frame @var{window} appears on (@pxref{The Buffer List}).
|
||||
@end deffn
|
||||
|
||||
By default @code{switch-to-prev-buffer} and @code{switch-to-next-buffer}
|
||||
can switch to a buffer that is already shown in another window on the
|
||||
same frame. The following option can be used to override that behavior.
|
||||
same frame. The following option can be used to override this behavior.
|
||||
|
||||
@defopt switch-to-visible-buffer
|
||||
If this variable is non-@code{nil}, @code{switch-to-prev-buffer} and
|
||||
@code{switch-to-next-buffer} may switch to a buffer that is already
|
||||
visible on the same frame, provided the buffer was shown in the argument
|
||||
window before. If it's @code{nil}, @code{switch-to-prev-buffer} and
|
||||
visible on the same frame, provided the buffer was shown in the relevant
|
||||
window before. If it is @code{nil}, @code{switch-to-prev-buffer} and
|
||||
@code{switch-to-next-buffer} always try to avoid switching to a buffer
|
||||
that is already visible in another window on the same frame.
|
||||
@end defopt
|
||||
|
@ -2137,7 +2137,7 @@ another buffer in it and iconifies the frame.
|
|||
This function returns non-@code{nil} if @var{window} is dedicated to its
|
||||
buffer and @code{nil} otherwise. More precisely, the return value is
|
||||
the value assigned by the last call of @code{set-window-dedicated-p} for
|
||||
@var{window} or @code{nil} if that function was never called with
|
||||
@var{window}, or @code{nil} if that function was never called with
|
||||
@var{window} as its argument. The default for @var{window} is the
|
||||
selected window.
|
||||
@end defun
|
||||
|
@ -2158,20 +2158,20 @@ non-@code{nil} value.
|
|||
@node Quitting Windows
|
||||
@section Quitting Windows
|
||||
|
||||
When you want to get rid of a window used for displaying a buffer you
|
||||
When you want to get rid of a window used for displaying a buffer, you
|
||||
can call @code{delete-window} or @code{delete-windows-on}
|
||||
(@pxref{Deleting Windows}) to remove that window from its frame. If the
|
||||
buffer is shown on a separate frame, you might want to call
|
||||
@code{delete-frame} (@pxref{Deleting Frames}) instead. If, on the other
|
||||
hand, a window has been reused for displaying the buffer, you might
|
||||
prefer showing the buffer previously shown in that window by calling the
|
||||
prefer showing the buffer previously shown in that window, by calling the
|
||||
function @code{switch-to-prev-buffer} (@pxref{Window History}).
|
||||
Finally, you might want to either bury (@pxref{The Buffer List}) or kill
|
||||
(@pxref{Killing Buffers}) the window's buffer.
|
||||
|
||||
The following function uses information on how the window for
|
||||
displaying the buffer was obtained in the first place thus attempting to
|
||||
automatize the above decisions for you.
|
||||
displaying the buffer was obtained in the first place, thus attempting to
|
||||
automate the above decisions for you.
|
||||
|
||||
@deffn Command quit-window &optional kill window
|
||||
This command quits @var{window} and buries its buffer. The argument
|
||||
|
@ -2199,39 +2199,39 @@ restore the original height of @var{window}.
|
|||
The three cases described so far require that the buffer shown in
|
||||
@var{window} is still the buffer displayed by the last buffer display
|
||||
function for this window. If another buffer has been shown in the
|
||||
meantime or the buffer previously shown no longer exists, this command
|
||||
meantime, or the buffer previously shown no longer exists, this command
|
||||
calls @code{switch-to-prev-buffer} (@pxref{Window History}) to show some
|
||||
other buffer instead.
|
||||
@end deffn
|
||||
|
||||
The function @code{quit-window} bases its decisions on information
|
||||
stored in @var{window}'s @code{quit-restore} window parameter
|
||||
(@pxref{Window Parameters}) and resets that parameter to @code{nil}
|
||||
(@pxref{Window Parameters}), and resets that parameter to @code{nil}
|
||||
after it's done.
|
||||
|
||||
The following option specifies how to deal with a frame containing just
|
||||
one window that shall be either quit or whose buffer shall be buried.
|
||||
one window that should be either quit, or whose buffer should be buried.
|
||||
|
||||
@defopt frame-auto-hide-function
|
||||
The function specified by this option is called to automatically hide
|
||||
frames. This function is called with one argument - a frame.
|
||||
frames. This function is called with one argument---a frame.
|
||||
|
||||
The function specified here is called by @code{bury-buffer} (@pxref{The
|
||||
Buffer List}) when the selected window is dedicated and shows the buffer
|
||||
that shall be buried. It is also called by @code{quit-window} (see
|
||||
above) when the frame of the window that shall be quit has been
|
||||
that should be buried. It is also called by @code{quit-window} (see
|
||||
above) when the frame of the window that should be quit has been
|
||||
specially created for displaying that window's buffer and the buffer
|
||||
shall be buried.
|
||||
should be buried.
|
||||
|
||||
The default is to call @code{iconify-frame} (@pxref{Visibility of
|
||||
Frames}). Alternatively, you may either specify @code{delete-frame}
|
||||
Frames}). Alternatively, you may specify either @code{delete-frame}
|
||||
(@pxref{Deleting Frames}) to remove the frame from its display,
|
||||
@code{ignore} to leave the frame unchanged, or any other function that
|
||||
can take a frame as its sole argument.
|
||||
|
||||
Note that the function specified by this option is called if and only if
|
||||
there's at least one other frame on the terminal of the frame it's
|
||||
supposed to handle and that frame contains only one live window.
|
||||
there is at least one other frame on the terminal of the frame it's
|
||||
supposed to handle, and that frame contains only one live window.
|
||||
@end defopt
|
||||
|
||||
|
||||
|
@ -2321,14 +2321,7 @@ command to a key.
|
|||
@cindex window top line
|
||||
This function returns the display-start position of window
|
||||
@var{window}. If @var{window} is @code{nil}, the selected window is
|
||||
used. For example,
|
||||
|
||||
@example
|
||||
@group
|
||||
(window-start)
|
||||
@result{} 7058
|
||||
@end group
|
||||
@end example
|
||||
used.
|
||||
|
||||
When you create a window, or display a different buffer in it, the
|
||||
display-start position is set to a display-start position recently used
|
||||
|
@ -2340,9 +2333,6 @@ it explicitly since the previous redisplay)---to make sure point appears
|
|||
on the screen. Nothing except redisplay automatically changes the
|
||||
window-start position; if you move point, do not expect the window-start
|
||||
position to change in response until after the next redisplay.
|
||||
|
||||
For a realistic example of using @code{window-start}, see the
|
||||
description of @code{count-lines}. @xref{Definition of count-lines}.
|
||||
@end defun
|
||||
|
||||
@cindex window end position
|
||||
|
@ -2516,12 +2506,16 @@ commands move the paper up and down. Thus, if you are looking at the
|
|||
middle of a buffer and repeatedly call @code{scroll-down}, you will
|
||||
eventually see the beginning of the buffer.
|
||||
|
||||
Some people have urged that the opposite convention be used: they
|
||||
Unfortunately, this sometimes causes confusion, because some people
|
||||
tend to think in terms of the opposite convention: they
|
||||
imagine the window moving over text that remains in place, so that
|
||||
``down'' commands take you to the end of the buffer. This convention
|
||||
is consistent with fact that such a command is bound to a key named
|
||||
@key{PageDown} on modern keyboards. We have not switched to this
|
||||
convention as that is likely to break existing Emacs Lisp code.
|
||||
@key{PageDown} on modern keyboards.
|
||||
@ignore
|
||||
We have not switched to this convention as that is likely to break
|
||||
existing Emacs Lisp code.
|
||||
@end ignore
|
||||
|
||||
Textual scrolling functions (aside from @code{scroll-other-window})
|
||||
have unpredictable results if the current buffer is not the one
|
||||
|
@ -2551,13 +2545,8 @@ signals an error. Otherwise, it returns @code{nil}.
|
|||
This function scrolls backward by @var{count} lines in the selected
|
||||
window.
|
||||
|
||||
If @var{count} is negative, it scrolls forward instead. If
|
||||
@var{count} is omitted or @code{nil}, the distance scrolled is
|
||||
@code{next-screen-context-lines} lines less than the height of the
|
||||
window's text area.
|
||||
|
||||
If the selected window cannot be scrolled any further, this function
|
||||
signals an error. Otherwise, it returns @code{nil}.
|
||||
If @var{count} is negative, it scrolls forward instead. In other
|
||||
respects, it behaves the same way as @code{scroll-up} does.
|
||||
@end deffn
|
||||
|
||||
@deffn Command scroll-up-command &optional count
|
||||
|
@ -2587,8 +2576,8 @@ already displayed, @code{scroll-other-window} displays it in some
|
|||
window.
|
||||
|
||||
When the selected window is the minibuffer, the next window is normally
|
||||
the one at the top left corner. You can specify a different window to
|
||||
scroll, when the minibuffer is selected, by setting the variable
|
||||
the leftmost one immediately above it. You can specify a different
|
||||
window to scroll, when the minibuffer is selected, by setting the variable
|
||||
@code{minibuffer-scroll-window}. This variable has no effect when any
|
||||
other window is selected. When it is non-@code{nil} and the
|
||||
minibuffer is selected, it takes precedence over
|
||||
|
@ -2600,7 +2589,7 @@ window is the one at the bottom right corner. In this case,
|
|||
@code{scroll-other-window} attempts to scroll the minibuffer. If the
|
||||
minibuffer contains just one line, it has nowhere to scroll to, so the
|
||||
line reappears after the echo area momentarily displays the message
|
||||
@samp{Beginning of buffer}.
|
||||
@samp{End of buffer}.
|
||||
@end deffn
|
||||
|
||||
@defvar other-window-scroll-buffer
|
||||
|
@ -2699,12 +2688,12 @@ If @var{count} is a non-negative number, that puts the line containing
|
|||
point @var{count} lines down from the top of the window. If
|
||||
@var{count} is a negative number, then it counts upward from the
|
||||
bottom of the window, so that @minus{}1 stands for the last usable
|
||||
line in the window. If @var{count} is a non-@code{nil} list, then it
|
||||
stands for the line in the middle of the window.
|
||||
line in the window.
|
||||
|
||||
If @var{count} is @code{nil}, @code{recenter} puts the line containing
|
||||
point in the middle of the window, then clears and redisplays the entire
|
||||
selected frame.
|
||||
If @var{count} is @code{nil} (or a non-@code{nil} list),
|
||||
@code{recenter} puts the line containing point in the middle of the
|
||||
window. If @var{count} is @code{nil}, this function may redraw the
|
||||
frame, according to the value of @code{recenter-redisplay}.
|
||||
|
||||
When @code{recenter} is called interactively, @var{count} is the raw
|
||||
prefix argument. Thus, typing @kbd{C-u} as the prefix sets the
|
||||
|
@ -2713,22 +2702,32 @@ prefix argument. Thus, typing @kbd{C-u} as the prefix sets the
|
|||
top.
|
||||
|
||||
With an argument of zero, @code{recenter} positions the current line at
|
||||
the top of the window. This action is so handy that some people make a
|
||||
separate key binding to do this. For example,
|
||||
|
||||
@example
|
||||
@group
|
||||
(defun line-to-top-of-window ()
|
||||
"Scroll current line to top of window.
|
||||
Replaces three keystroke sequence C-u 0 C-l."
|
||||
(interactive)
|
||||
(recenter 0))
|
||||
|
||||
(global-set-key [kp-multiply] 'line-to-top-of-window)
|
||||
@end group
|
||||
@end example
|
||||
the top of the window. The command @code{recenter-top-bottom} offers
|
||||
a more convenient way to achieve this.
|
||||
@end deffn
|
||||
|
||||
@defopt recenter-redisplay
|
||||
If this variable is non-@code{nil}, calling @code{recenter} with a
|
||||
@code{nil} argument redraws the frame. The default value is
|
||||
@code{tty}, which means only redraw the frame if it is a tty frame.
|
||||
@end defopt
|
||||
|
||||
@deffn Command recenter-top-bottom &optional count
|
||||
This command, which is the default binding for @kbd{C-l}, acts like
|
||||
@code{recenter}, except if called with no argument. In that case,
|
||||
successive calls place point according to the cycling order defined
|
||||
by the variable @code{recenter-positions}.
|
||||
@end deffn
|
||||
|
||||
@defopt recenter-positions
|
||||
This variable controls how @code{recenter-top-bottom} behaves when
|
||||
called with no argument. The default value is @code{(middle top
|
||||
bottom)}, which means that successive calls of
|
||||
@code{recenter-top-bottom} with no argument cycle between placing
|
||||
point at the middle, top, and bottom of the window.
|
||||
@end defopt
|
||||
|
||||
|
||||
@node Vertical Scrolling
|
||||
@section Vertical Fractional Scrolling
|
||||
@cindex vertical fractional scrolling
|
||||
|
@ -2817,8 +2816,8 @@ times the normal character width. How many characters actually
|
|||
disappear off to the left depends on their width, and could vary from
|
||||
line to line.
|
||||
|
||||
Because we read from side to side in the ``inner loop,'' and from top
|
||||
to bottom in the ``outer loop,'' the effect of horizontal scrolling is
|
||||
Because we read from side to side in the ``inner loop'', and from top
|
||||
to bottom in the ``outer loop'', the effect of horizontal scrolling is
|
||||
not like that of textual or vertical scrolling. Textual scrolling
|
||||
involves selection of a portion of text to display, and vertical
|
||||
scrolling moves the window contents contiguously; but horizontal
|
||||
|
@ -3014,7 +3013,7 @@ frame.
|
|||
|
||||
@defun coordinates-in-window-p coordinates window
|
||||
This function checks whether a window @var{window} occupies the
|
||||
frame-relative coordinates @var{coordinates}, and if so which part of
|
||||
frame-relative coordinates @var{coordinates}, and if so, which part of
|
||||
the window that is. @var{window} should be a live window.
|
||||
@var{coordinates} should be a cons cell of the form @code{(@var{x}
|
||||
. @var{y})}, where @var{x} and @var{y} are frame-relative coordinates.
|
||||
|
@ -3112,14 +3111,14 @@ for the current buffer.
|
|||
You can bring back an entire frame layout by restoring a previously
|
||||
saved window configuration. If you want to record the layout of all
|
||||
frames instead of just one, use a frame configuration instead of a
|
||||
window configuration; see @ref{Frame Configurations}.
|
||||
window configuration. @xref{Frame Configurations}.
|
||||
|
||||
@defun current-window-configuration &optional frame
|
||||
This function returns a new object representing @var{frame}'s current
|
||||
window configuration. The default for @var{frame} is the selected
|
||||
frame. The variable @code{window-persistent-parameters} specifies
|
||||
whether and which window parameters are saved by this function, see
|
||||
@ref{Window Parameters} for details.
|
||||
which window parameters (if any) are saved by this function.
|
||||
@xref{Window Parameters}.
|
||||
@end defun
|
||||
|
||||
@defun set-window-configuration configuration
|
||||
|
@ -3136,9 +3135,9 @@ change and triggers execution of the @code{window-size-change-functions}
|
|||
know how to tell whether the new configuration actually differs from the
|
||||
old one.
|
||||
|
||||
If the frame which @var{configuration} was saved from is dead, all this
|
||||
If the frame from which @var{configuration} was saved is dead, all this
|
||||
function does is restore the three variables @code{window-min-height},
|
||||
@code{window-min-width} and @code{minibuffer-scroll-window}. In this
|
||||
@code{window-min-width} and @code{minibuffer-scroll-window}. In this
|
||||
case, the function returns @code{nil}. Otherwise, it returns @code{t}.
|
||||
|
||||
Here is a way of using this function to get the same effect
|
||||
|
@ -3221,8 +3220,8 @@ configurations.
|
|||
|
||||
The objects returned by @code{current-window-configuration} die
|
||||
together with the Emacs process. In order to store a window
|
||||
configuration on disk and read it back in another Emacs session, the
|
||||
functions described next can be used. These functions are also useful
|
||||
configuration on disk and read it back in another Emacs session, you
|
||||
can use the functions described next. These functions are also useful
|
||||
to clone the state of a frame into an arbitrary live window
|
||||
(@code{set-window-configuration} effectively clones the windows of a
|
||||
frame into the root window of that very frame only).
|
||||
|
@ -3235,17 +3234,17 @@ of the selected frame.
|
|||
If the optional argument @var{writable} is non-@code{nil}, this means to
|
||||
not use markers for sampling positions like @code{window-point} or
|
||||
@code{window-start}. This argument should be non-@code{nil} when the
|
||||
state shall be written to disk and read back in another session.
|
||||
state will be written to disk and read back in another session.
|
||||
|
||||
Together, the argument @var{writable} and the variable
|
||||
@code{window-persistent-parameters} specify which window parameters are
|
||||
saved by this function, see @ref{Window Parameters} for details.
|
||||
saved by this function. @xref{Window Parameters}.
|
||||
@end defun
|
||||
|
||||
The value returned by @code{window-state-get} can be used in the same
|
||||
session to make a clone of a window in another window. It can be also
|
||||
written to disk and read back in another session. In either case, use
|
||||
the function described next to restore the state of the window.
|
||||
the following function to restore the state of the window.
|
||||
|
||||
@defun window-state-put state &optional window ignore
|
||||
This function puts the window state @var{state} into @var{window}. The
|
||||
|
@ -3254,9 +3253,9 @@ earlier invocation of @code{window-state-get}, see above. The optional
|
|||
argument @var{window} must specify a live window and defaults to the
|
||||
selected one.
|
||||
|
||||
The optional argument @var{ignore} non-@code{nil} means to ignore
|
||||
minimum window sizes and fixed size restrictions. If @var{ignore}
|
||||
equals @code{safe}, this means windows can get as small as one line
|
||||
If the optional argument @var{ignore} is non-@code{nil}, it means to ignore
|
||||
minimum window sizes and fixed-size restrictions. If @var{ignore}
|
||||
is @code{safe}, this means windows can get as small as one line
|
||||
and/or two columns.
|
||||
@end defun
|
||||
|
||||
|
@ -3276,8 +3275,8 @@ setting for @var{parameter}, this function returns @code{nil}.
|
|||
|
||||
@defun window-parameters &optional window
|
||||
This function returns all parameters of @var{window} and their values.
|
||||
The default for @var{window} is the selected window. The return value,
|
||||
if non-@code{nil} is an association list whose elements have the form
|
||||
The default for @var{window} is the selected window. The return value
|
||||
is either @code{nil}, or an association list whose elements have the form
|
||||
@code{(@var{parameter} . @var{value})}.
|
||||
@end defun
|
||||
|
||||
|
@ -3287,34 +3286,34 @@ This function sets @var{window}'s value of @var{parameter} to
|
|||
is the selected window.
|
||||
@end defun
|
||||
|
||||
By default, functions saving and restoring window configurations or the
|
||||
By default, the functions that save and restore window configurations or the
|
||||
states of windows (@pxref{Window Configurations}) do not care about
|
||||
window parameters. This means, that when you change the value of a
|
||||
window parameters. This means that when you change the value of a
|
||||
parameter within the body of a @code{save-window-excursion}, the
|
||||
previous value is not restored upon exit of that macro. It also means
|
||||
previous value is not restored when that macro exits. It also means
|
||||
that when you restore via @code{window-state-put} a window state saved
|
||||
earlier by @code{window-state-get}, all cloned windows have their
|
||||
parameters reset to @code{nil}. The following variable allows to
|
||||
override the standard behavior.
|
||||
parameters reset to @code{nil}. The following variable allows you to
|
||||
override the standard behavior:
|
||||
|
||||
@defvar window-persistent-parameters
|
||||
This variable is an alist specifying which parameters get saved by
|
||||
@code{current-window-configuration} and @code{window-state-get} and
|
||||
@code{current-window-configuration} and @code{window-state-get}, and
|
||||
subsequently restored by @code{set-window-configuration} and
|
||||
@code{window-state-put}, see @ref{Window Configurations}.
|
||||
@code{window-state-put}. @xref{Window Configurations}.
|
||||
|
||||
The @sc{car} of each entry of this alist is the symbol specifying the
|
||||
The @sc{car} of each entry of this alist is a symbol specifying the
|
||||
parameter. The @sc{cdr} should be one of the following:
|
||||
|
||||
@table @asis
|
||||
@item @code{nil}
|
||||
This value means the parameter is neither saved by
|
||||
This value means the parameter is saved neither by
|
||||
@code{window-state-get} nor by @code{current-window-configuration}.
|
||||
|
||||
@item @code{t}
|
||||
This value specifies that the parameter is saved by
|
||||
@code{current-window-configuration} and, provided its @var{writable}
|
||||
argument is @code{nil}, by @code{window-state-get}.
|
||||
@code{current-window-configuration} and (provided its @var{writable}
|
||||
argument is @code{nil}) by @code{window-state-get}.
|
||||
|
||||
@item @code{writable}
|
||||
This means that the parameter is saved unconditionally by both
|
||||
|
@ -3325,8 +3324,8 @@ may fail with an @code{invalid-read-syntax} error.
|
|||
@end table
|
||||
@end defvar
|
||||
|
||||
Some functions, notably @code{delete-window},
|
||||
@code{delete-other-windows} and @code{split-window} may behave specially
|
||||
Some functions (notably @code{delete-window},
|
||||
@code{delete-other-windows} and @code{split-window}), may behave specially
|
||||
when their @var{window} argument has a parameter set. You can override
|
||||
such special behavior by binding the following variable to a
|
||||
non-@code{nil} value:
|
||||
|
@ -3334,7 +3333,7 @@ non-@code{nil} value:
|
|||
@defvar ignore-window-parameters
|
||||
If this variable is non-@code{nil}, some standard functions do not
|
||||
process window parameters. The functions currently affected by this are
|
||||
@code{split-window}, @code{delete-window}, @code{delete-other-windows}
|
||||
@code{split-window}, @code{delete-window}, @code{delete-other-windows},
|
||||
and @code{other-window}.
|
||||
|
||||
An application can bind this variable to a non-@code{nil} value around
|
||||
|
@ -3368,18 +3367,19 @@ This parameter marks the window as not selectable by @code{other-window}
|
|||
(@pxref{Cyclic Window Ordering}).
|
||||
|
||||
@item @code{clone-of}
|
||||
This parameter specifies the window this one has been cloned from and is
|
||||
installed by @code{window-state-get}, see @ref{Window Configurations}.
|
||||
This parameter specifies the window that this one has been cloned
|
||||
from. It is installed by @code{window-state-get} (@pxref{Window
|
||||
Configurations}).
|
||||
|
||||
@item @code{quit-restore}
|
||||
This parameter tells how to proceed with a window when the buffer it
|
||||
shows is no more needed. It is installed by the buffer display
|
||||
functions (@pxref{Choosing Window}) and consulted by the function
|
||||
This parameter specifies what to do with a window when the buffer it
|
||||
shows is not needed any more. It is installed by the buffer display
|
||||
functions (@pxref{Choosing Window}), and consulted by the function
|
||||
@code{quit-window} (@pxref{Quitting Windows}).
|
||||
@end table
|
||||
|
||||
In addition, the parameters @code{window-atom} and @code{window-side}
|
||||
are reserved and should not be used by applications.
|
||||
There are additional parameters @code{window-atom} and @code{window-side};
|
||||
these are reserved and should not be used by applications.
|
||||
|
||||
|
||||
@node Window Hooks
|
||||
|
@ -3401,7 +3401,7 @@ the window also runs these functions.
|
|||
This variable is not a normal hook, because each function is called with
|
||||
two arguments: the window, and its new display-start position.
|
||||
|
||||
These functions must be careful in using @code{window-end}
|
||||
These functions must take care when using @code{window-end}
|
||||
(@pxref{Window Start and End}); if you need an up-to-date value, you
|
||||
must use the @var{update} argument to ensure you get it.
|
||||
|
||||
|
@ -3439,7 +3439,7 @@ of an existing frame. This includes splitting or deleting windows,
|
|||
changing the sizes of windows, or displaying a different buffer in a
|
||||
window.
|
||||
|
||||
The buffer-local part of this hook is run once per each window on the
|
||||
The buffer-local part of this hook is run once for each window on the
|
||||
affected frame, with the relevant window selected and its buffer
|
||||
current. The global part is run once for the modified frame, with that
|
||||
frame selected.
|
||||
|
|
|
@ -1,3 +1,13 @@
|
|||
2012-04-27 Ippei Furuhashi <top.tuna+orgmode@gmail.com> (tiny change)
|
||||
|
||||
* org.texi (Agenda commands): Fix two typos: give corresponding
|
||||
function names, according to `org-agenda-view-mode-dispatch'.
|
||||
|
||||
2012-04-27 Glenn Morris <rgm@gnu.org>
|
||||
|
||||
* faq.texi (Major packages and programs): Remove section.
|
||||
There is no point listing 6 packages (cf etc/MORE.STUFF).
|
||||
(Finding Emacs and related packages): Move "Spell-checkers" here.
|
||||
2012-04-22 Michael Albinus <michael.albinus@gmx.de>
|
||||
|
||||
* dbus.texi (Version): New node.
|
||||
|
|
|
@ -91,7 +91,6 @@ Emacs, the Emacs manual is often the best starting point.
|
|||
* Bugs and problems::
|
||||
* Compiling and installing Emacs::
|
||||
* Finding Emacs and related packages::
|
||||
* Major packages and programs::
|
||||
* Key bindings::
|
||||
* Alternate character sets::
|
||||
* Mail and news::
|
||||
|
@ -1050,7 +1049,7 @@ A new command @kbd{customize-themes} allows you to easily change the
|
|||
appearance of your Emacs.
|
||||
|
||||
@item
|
||||
Emacs can be compiled with the Gtk+ 3 toolkit.
|
||||
Emacs can be compiled with the GTK+ 3 toolkit.
|
||||
|
||||
@item
|
||||
Support for several new external libraries can be included at compile
|
||||
|
@ -3242,6 +3241,7 @@ problem (@pxref{Reporting bugs}).
|
|||
* Finding Emacs on the Internet::
|
||||
* Finding a package with particular functionality::
|
||||
* Packages that do not come with Emacs::
|
||||
* Spell-checkers::
|
||||
* Current GNU distributions::
|
||||
* Difference between Emacs and XEmacs::
|
||||
* Emacs for minimalists::
|
||||
|
@ -3323,6 +3323,29 @@ Several packages are stored in
|
|||
Read the file @file{etc/MORE.STUFF} for more information about
|
||||
external packages.
|
||||
|
||||
@node Spell-checkers
|
||||
@section Spell-checkers
|
||||
@cindex Spell-checker
|
||||
@cindex Checking spelling
|
||||
@cindex Ispell
|
||||
@cindex Aspell
|
||||
@cindex Hunspell
|
||||
|
||||
Various spell-checkers are compatible with Emacs, including:
|
||||
|
||||
@table @b
|
||||
|
||||
@item GNU Aspell
|
||||
@uref{http://aspell.net/}
|
||||
|
||||
@item Ispell
|
||||
@uref{http://fmg-www.cs.ucla.edu/geoff/ispell.html}
|
||||
|
||||
@item Hunspell
|
||||
@uref{http://hunspell.sourceforge.net/}
|
||||
|
||||
@end table
|
||||
|
||||
@node Current GNU distributions
|
||||
@section Where can I get other up-to-date GNU stuff?
|
||||
@cindex Current GNU distributions
|
||||
|
@ -3442,124 +3465,6 @@ See the file @file{nextstep/INSTALL} in the distribution.
|
|||
Beginning with version 22.1, Emacs supports Mac OS X natively.
|
||||
See the file @file{nextstep/INSTALL} in the distribution.
|
||||
|
||||
@c ------------------------------------------------------------
|
||||
@node Major packages and programs
|
||||
@chapter Major packages and programs
|
||||
@cindex Major packages and programs
|
||||
|
||||
@menu
|
||||
* VM::
|
||||
* AUCTeX::
|
||||
* BBDB::
|
||||
* Spell-checkers::
|
||||
* Emacs/W3::
|
||||
* EDB::
|
||||
* JDEE::
|
||||
@end menu
|
||||
|
||||
@node VM
|
||||
@section VM (View Mail) --- another mail reader within Emacs, with MIME support
|
||||
@cindex VM
|
||||
@cindex Alternative mail software
|
||||
@cindex View Mail
|
||||
@cindex E-mail reader, VM
|
||||
|
||||
@table @b
|
||||
|
||||
@item Web site
|
||||
@uref{http://launchpad.net/vm}
|
||||
(was @uref{http://www.nongnu.org/viewmail/})
|
||||
|
||||
@item Informational newsgroup
|
||||
@uref{news:gnu.emacs.vm.info}@*
|
||||
|
||||
@item Bug reports newsgroup
|
||||
@uref{news:gnu.emacs.vm.bug}@*
|
||||
@end table
|
||||
|
||||
VM was originally written by @uref{http://www.wonderworks.com/vm/,Kyle Jones}.
|
||||
@uref{ftp://ftp.wonderworks.com/pub/vm/,Older versions} of VM remain
|
||||
available.
|
||||
|
||||
|
||||
@node AUCTeX
|
||||
@section AUC@TeX{} --- enhanced @TeX{} modes with debugging facilities
|
||||
@cindex Mode for @TeX{}
|
||||
@cindex @TeX{} mode
|
||||
@cindex AUC@TeX{} mode for editing @TeX{}
|
||||
@cindex Writing and debugging @TeX{}
|
||||
|
||||
AUC@TeX{} is a set of sophisticated major modes for @TeX{}, LaTeX,
|
||||
ConTeXt, and Texinfo offering context-sensitive syntax highlighting,
|
||||
indentation, formatting and folding, macro completion, @TeX{} shell
|
||||
functionality, and debugging. Be also sure to check out
|
||||
@ref{Introduction, RefTeX, Introduction, reftex, Ref@TeX{} User Manual}.
|
||||
Current versions of AUC@TeX{} include the
|
||||
@uref{http://www.gnu.org/software/auctex/preview-latex.html,preview-latex}
|
||||
package for WYSIWYG previews of various LaTeX constructs in the Emacs
|
||||
source buffer.
|
||||
|
||||
@uref{http://www.gnu.org/software/auctex/, AUCTeX}
|
||||
|
||||
@node BBDB
|
||||
@section BBDB --- personal Info Rolodex integrated with mail/news readers
|
||||
@cindex BBDB
|
||||
@cindex Rolodex-like functionality
|
||||
@cindex Integrated contact database
|
||||
@cindex Contact database
|
||||
@cindex Big Brother Database
|
||||
@cindex Address book
|
||||
|
||||
@uref{http://bbdb.sourceforge.net/, The Insidious Big Brother Database}
|
||||
|
||||
@node Spell-checkers
|
||||
@section Spell-checkers
|
||||
@cindex Spell-checker
|
||||
@cindex Checking spelling
|
||||
@cindex Ispell
|
||||
@cindex Aspell
|
||||
@cindex Hunspell
|
||||
|
||||
Various spell-checkers are compatible with Emacs, including:
|
||||
|
||||
@table @b
|
||||
|
||||
@item GNU Aspell
|
||||
@uref{http://aspell.net/}
|
||||
|
||||
@item Ispell
|
||||
@uref{http://fmg-www.cs.ucla.edu/geoff/ispell.html}
|
||||
|
||||
@item Hunspell
|
||||
@uref{http://hunspell.sourceforge.net/}
|
||||
|
||||
@end table
|
||||
|
||||
@node Emacs/W3
|
||||
@section Emacs/W3 --- A World Wide Web browser inside of Emacs
|
||||
@cindex WWW browser
|
||||
@cindex Web browser
|
||||
@cindex HTML browser in Emacs
|
||||
@cindex @code{w3-mode}
|
||||
|
||||
@uref{http://www.gnu.org/software/w3/, Emacs/W3}
|
||||
|
||||
@node EDB
|
||||
@section EDB --- Database program for Emacs; replaces forms editing modes
|
||||
@cindex EDB
|
||||
@cindex Database
|
||||
@cindex Forms mode
|
||||
|
||||
@uref{http://gnuvola.org/software/edb/, The Emacs Database}
|
||||
|
||||
@node JDEE
|
||||
@section JDEE --- Integrated development environment for Java
|
||||
@cindex Java development environment
|
||||
@cindex Integrated Java development environment
|
||||
@cindex JDEE
|
||||
|
||||
@uref{http://jdee.sourceforge.net/, A Java Development Environment for Emacs}
|
||||
|
||||
@c ------------------------------------------------------------
|
||||
@node Key bindings
|
||||
@chapter Key bindings
|
||||
|
|
|
@ -1,3 +1,9 @@
|
|||
2012-04-26 Jambunathan K <kjambunathan@gmail.com>
|
||||
|
||||
* org/OrgOdtStyles.xml (OrgDescriptionList): Modify style. With
|
||||
this change, in a description list, if the description paragraph
|
||||
spawns multiple lines then it will correctly indented.
|
||||
|
||||
2012-04-20 Glenn Morris <rgm@gnu.org>
|
||||
|
||||
* CONTRIBUTE: Expand a bit on copyright assignments.
|
||||
|
|
7
etc/NEWS
7
etc/NEWS
|
@ -833,7 +833,7 @@ by default.
|
|||
(Its name is misleading, since it has nothing to do with MIME
|
||||
attachments.) The old name is now an obsolete alias to the new name.
|
||||
|
||||
** MH-E has been upgraded to MH-E version 8.3.1.
|
||||
** MH-E has been updated to MH-E version 8.3.1.
|
||||
See MH-E-NEWS for details.
|
||||
|
||||
** Modula-2 mode provides auto-indentation.
|
||||
|
@ -845,6 +845,9 @@ Completion is now performed via `completion-at-point', bound to C-M-i
|
|||
or M-TAB. If `nxml-bind-meta-tab-to-complete-flag' is non-nil (the
|
||||
default), this performs tag completion.
|
||||
|
||||
** Org mode has been updated to version 7.8.09.
|
||||
See ORG-NEWS for details.
|
||||
|
||||
** Prolog mode has been completely revamped, with lots of additional
|
||||
functionality such as more intelligent indentation, electricity,
|
||||
support for more variants, including Mercury, and a lot more.
|
||||
|
@ -1228,6 +1231,8 @@ So do `defcustom' and other forms that call `defvar' as a subroutine.
|
|||
*** New function `special-variable-p' to check whether a variable is
|
||||
declared as dynamically bound.
|
||||
|
||||
*** The form ((lambda ...) ...) is deprecated.
|
||||
|
||||
** An Emacs Lisp testing tool is now included.
|
||||
Emacs Lisp developers can use this tool to write automated tests for
|
||||
their code. See the ERT info manual for details.
|
||||
|
|
948
etc/ORG-NEWS
Normal file
948
etc/ORG-NEWS
Normal file
|
@ -0,0 +1,948 @@
|
|||
ORG NEWS -- history of user-visible changes. -*- org -*-
|
||||
|
||||
Copyright (C) 2012 Free Software Foundation, Inc.
|
||||
See the end of the file for license conditions.
|
||||
|
||||
Please send Org bug reports to emacs-orgmode@gnu.org.
|
||||
|
||||
* Incompatible changes
|
||||
|
||||
** New keys for TODO sparse trees
|
||||
:PROPERTIES:
|
||||
:OrgVersion: 7.01
|
||||
:END:
|
||||
|
||||
The key =C-c C-v= is now reserved for Org Babel action. TODO sparse
|
||||
trees can still be made with =C-c / t= (all not-done states) and =C-c /
|
||||
T= (specific states).
|
||||
|
||||
** The Agenda =org-agenda-ndays= is now obsolete
|
||||
:PROPERTIES:
|
||||
:OrgVersion: 7.4
|
||||
:END:
|
||||
|
||||
The variable =org-agenda-ndays= is obsolete - please use
|
||||
=org-agenda-span= instead.
|
||||
|
||||
Thanks to Julien Danjou for this.
|
||||
|
||||
** Changes to the intended use of =org-export-latex-classes=
|
||||
:PROPERTIES:
|
||||
:OrgVersion: 6.35
|
||||
:END:
|
||||
|
||||
So far this variable has been used to specify the complete header of the
|
||||
LaTeX document, including all the =\usepackage= calls necessary for the
|
||||
document. This setup makes it difficult to maintain the list of
|
||||
packages that Org itself would like to call, for example for the special
|
||||
symbol support it needs.
|
||||
|
||||
First of all, you can *opt out of this change* in the following way: You
|
||||
can say: /I want to have full control over headers, and I will take
|
||||
responsibility to include the packages Org needs/. If that is what you
|
||||
want, add this to your configuration and skip the rest of this section
|
||||
(except maybe for the description of the =[EXTRA]= place holder):
|
||||
|
||||
#+begin_src emacs-lisp
|
||||
(setq org-export-latex-default-packages-alist nil
|
||||
org-export-latex-packages-alist nil)
|
||||
#+end_src
|
||||
|
||||
/Continue to read here if you want to go along with the modified setup./
|
||||
|
||||
There are now two variables that should be used to list the LaTeX
|
||||
packages that need to be included in all classes. The header definition
|
||||
in =org-export-latex-classes= should then not contain the corresponding
|
||||
=\usepackage= calls (see below).
|
||||
|
||||
The two new variables are:
|
||||
|
||||
1. =org-export-latex-default-packages-alist= :: This is the variable
|
||||
where Org-mode itself puts the packages it needs. Normally you
|
||||
should not change this variable. The only reason to change it
|
||||
anyway is when one of these packages causes a conflict with another
|
||||
package you want to use. Then you can remove that packages and
|
||||
hope that you are not using Org-mode functionality that needs it.
|
||||
|
||||
2. =org-export-latex-packages-alist= :: This is the variable where you
|
||||
can put the packages that you'd like to use across all classes.
|
||||
|
||||
The sequence how these customizations will show up in the LaTeX
|
||||
document are:
|
||||
|
||||
1. Header from =org-export-latex-classes=
|
||||
2. =org-export-latex-default-packages-alist=
|
||||
3. =org-export-latex-packages-alist=
|
||||
4. Buffer-specific things set with =#+LaTeX_HEADER:=
|
||||
|
||||
If you want more control about which segment is placed where, or if you
|
||||
want, for a specific class, have full control over the header and
|
||||
exclude some of the automatic building blocks, you can put the following
|
||||
macro-like place holders into the header:
|
||||
|
||||
#+begin_example
|
||||
[DEFAULT-PACKAGES] \usepackage statements for default packages
|
||||
[NO-DEFAULT-PACKAGES] do not include any of the default packages
|
||||
[PACKAGES] \usepackage statements for packages
|
||||
[NO-PACKAGES] do not include the packages
|
||||
[EXTRA] the stuff from #+LaTeX_HEADER
|
||||
[NO-EXTRA] do not include #+LaTeX_HEADER stuff
|
||||
#+end_example
|
||||
|
||||
If you have currently customized =org-export-latex-classes=, you should
|
||||
revise that customization and remove any package calls that are covered
|
||||
by =org-export-latex-default-packages-alist=. This applies to the
|
||||
following packages:
|
||||
|
||||
- inputenc
|
||||
- fontenc
|
||||
- fixltx2e
|
||||
- graphicx
|
||||
- longtable
|
||||
- float
|
||||
- wrapfig
|
||||
- soul
|
||||
- t1enc
|
||||
- textcomp
|
||||
- marvosym
|
||||
- wasysym
|
||||
- latexsym
|
||||
- amssymb
|
||||
- hyperref
|
||||
|
||||
If one of these packages creates a conflict with another package you are
|
||||
using, you can remove it from =org-export-latex-default-packages-alist=.
|
||||
But then you risk that some of the advertised export features of Org
|
||||
will not work properly.
|
||||
|
||||
You can also consider moving packages that you use in all classes to
|
||||
=org-export-latex-packages-alist=. If necessary, put the place holders
|
||||
so that the packages get loaded in the right sequence. As said above,
|
||||
for backward compatibility, if you omit the place holders, all the
|
||||
variables will dump their content at the end of the header.
|
||||
|
||||
** The constant =org-html-entities= is obsolete
|
||||
:PROPERTIES:
|
||||
:OrgVersion: 6.35
|
||||
:END:
|
||||
|
||||
Its content is now part of the new constant =org-entities=, which is
|
||||
defined in the file org-entities.el. =org-html-entities= was an internal
|
||||
variable, but it is possible that some users did write code using it.
|
||||
|
||||
** `org-bbdb-anniversary-format-alist' has changed
|
||||
:PROPERTIES:
|
||||
:OrgVersion: 7.5
|
||||
:END:
|
||||
|
||||
Please check the docstring and update your settings accordingly.
|
||||
|
||||
** Deleted =org-mode-p=
|
||||
:PROPERTIES:
|
||||
:OrgVersion: 7.8
|
||||
:END:
|
||||
|
||||
This function has been deleted: please update your code.
|
||||
|
||||
* Important new features
|
||||
|
||||
** New Org to ODT exporter
|
||||
:PROPERTIES:
|
||||
:OrgVersion: 7.8
|
||||
:END:
|
||||
|
||||
Jambunathan's Org to ODT exporter is now part of Org.
|
||||
|
||||
To use it, it `C-c C-e o' in an Org file. See the documentation for more
|
||||
information on how to customize it.
|
||||
|
||||
** org-capture.el is now the default capture system
|
||||
:PROPERTIES:
|
||||
:OrgVersion: 7.01
|
||||
:END:
|
||||
|
||||
This replaces the earlier system org-remember. The manual only describes
|
||||
org-capture, but for people who prefer to continue to use org-remember,
|
||||
we keep a static copy of the former manual section [[http://orgmode.org/org-remember.pdf][chapter about
|
||||
remember]].
|
||||
|
||||
The new system has a technically cleaner implementation and more
|
||||
possibilities for capturing different types of data. See [[http://thread.gmane.org/gmane.emacs.orgmode/26441/focus%3D26441][Carsten's
|
||||
announcement]] for more details.
|
||||
|
||||
To switch over to the new system:
|
||||
|
||||
1. Run
|
||||
|
||||
: M-x org-capture-import-remember-templates RET
|
||||
|
||||
to get a translated version of your remember templates into the
|
||||
new variable =org-capture-templates=. This will "mostly" work,
|
||||
but maybe not for all cases. At least it will give you a good
|
||||
place to modify your templates. After running this command,
|
||||
enter the customize buffer for this variable with
|
||||
|
||||
: M-x customize-variable RET org-capture-templates RET
|
||||
|
||||
and convince yourself that everything is OK. Then save the
|
||||
customization.
|
||||
|
||||
2. Bind the command =org-capture= to a key, similar to what you did
|
||||
with org-remember:
|
||||
|
||||
: (define-key global-map "\C-cc" 'org-capture)
|
||||
|
||||
If your fingers prefer =C-c r=, you can also use this key once
|
||||
you have decided to move over completely to the new
|
||||
implementation. During a test time, there is nothing wrong
|
||||
with using both system in parallel.
|
||||
|
||||
* New libraries
|
||||
|
||||
** New Org libraries
|
||||
*** org-eshell.el (Konrad Hinsen)
|
||||
:PROPERTIES:
|
||||
:OrgVersion: 7.8
|
||||
:END:
|
||||
|
||||
Implement links to eshell buffers.
|
||||
|
||||
*** org-special-blocks (Carsten Dominik)
|
||||
:PROPERTIES:
|
||||
:OrgVersion: 7.8
|
||||
:END:
|
||||
|
||||
This package generalizes the #+begin_foo and #+end_foo tokens.
|
||||
|
||||
To use, put the following in your init file:
|
||||
|
||||
#+BEGIN_EXAMPLE
|
||||
(require 'org-special-blocks)
|
||||
#+END_EXAMPLE
|
||||
|
||||
The tokens #+begin_center, #+begin_verse, etc. existed previously. This
|
||||
package generalizes them (at least for the LaTeX and html exporters). When
|
||||
a #+begin_foo token is encountered by the LaTeX exporter, it is expanded
|
||||
into \begin{foo}. The text inside the environment is not protected, as
|
||||
text inside environments generally is. When #+begin_foo is encountered by
|
||||
the html exporter, a div with class foo is inserted into the HTML file. It
|
||||
is up to the user to add this class to his or her stylesheet if this div is
|
||||
to mean anything.
|
||||
|
||||
*** org-taskjuggler.el (Christian Egli)
|
||||
:PROPERTIES:
|
||||
:OrgVersion: 7.01
|
||||
:END:
|
||||
|
||||
Christian Egli's /org-taskjuggler.el/ module is now part of Org. He
|
||||
also wrote a [[http://orgmode.org/worg/org-tutorials/org-taskjuggler.php][tutorial]] for it.
|
||||
|
||||
*** org-ctags.el (Paul Sexton)
|
||||
:PROPERTIES:
|
||||
:OrgVersion: 6.34
|
||||
:END:
|
||||
|
||||
Targets like =<<my target>>= can now be found by Emacs' etag
|
||||
functionality, and Org-mode links can be used to to link to etags, also
|
||||
in non-Org-mode files. For details, see the file /org-ctags.el/.
|
||||
|
||||
This feature uses a new hook =org-open-link-functions= which will call
|
||||
function to do something special with text links.
|
||||
|
||||
Thanks to Paul Sexton for this contribution.
|
||||
|
||||
*** org-docview.el (Jan Böcker)
|
||||
:PROPERTIES:
|
||||
:OrgVersion: 6.34
|
||||
:END:
|
||||
|
||||
This new module allows links to various file types using docview, where
|
||||
Emacs displays images of document pages. Docview link types can point
|
||||
to a specific page in a document, for example to page 131 of the
|
||||
Org-mode manual:
|
||||
|
||||
: [[docview:~/.elisp/org/doc/org.pdf::131][Org-Mode Manual]]
|
||||
|
||||
Thanks to Jan Böcker for this contribution.
|
||||
|
||||
** New Babel libraries
|
||||
|
||||
- ob-picolisp.el (Thorsten Jolitz)
|
||||
- ob-fortran.el (Sergey Litvinov)
|
||||
- ob-shen.el (Eric Schulte)
|
||||
- ob-maxima.el (Eric S Fraga)
|
||||
- ob-java.el (Eric Schulte)
|
||||
- ob-lilypond.el (Martyn Jago)
|
||||
- ob-awk.el (Eric Schulte)
|
||||
|
||||
* Other new features and various enhancements
|
||||
|
||||
** Hyperlinks
|
||||
|
||||
*** Org-Bibtex -- major improvements
|
||||
:PROPERTIES:
|
||||
:OrgVersion: 7.6
|
||||
:END:
|
||||
|
||||
Provides support for managing bibtex bibliographical references
|
||||
data in headline properties. Each headline corresponds to a
|
||||
single reference and the relevant bibliographic meta-data is
|
||||
stored in headline properties, leaving the body of the headline
|
||||
free to hold notes and comments. Org-bibtex is aware of all
|
||||
standard bibtex reference types and fields.
|
||||
|
||||
The key new functions are
|
||||
|
||||
- org-bibtex-check :: queries the user to flesh out all required
|
||||
(and with prefix argument optional) bibtex fields available
|
||||
for the specific reference =type= of the current headline.
|
||||
|
||||
- org-bibtex-create :: Create a new entry at the given level,
|
||||
using org-bibtex-check to flesh out the relevant fields.
|
||||
|
||||
- org-bibtex-yank :: Yank a bibtex entry on the kill ring as a
|
||||
formatted Org-mode headline into the current buffer
|
||||
|
||||
- org-bibtex-export-to-kill-ring :: Export the current headline
|
||||
to the kill ring as a formatted bibtex entry.
|
||||
|
||||
|
||||
|
||||
*** org-gnus.el now allows link creation from messages
|
||||
:PROPERTIES:
|
||||
:OrgVersion: 7.5
|
||||
:END:
|
||||
|
||||
You can now create links from messages. This is particularily
|
||||
useful when the user wants to stored messages that he sends, for
|
||||
later check. Thanks to Ulf Stegemann for the patch.
|
||||
|
||||
|
||||
|
||||
*** Modified link escaping
|
||||
:PROPERTIES:
|
||||
:OrgVersion: 7.5
|
||||
:END:
|
||||
|
||||
David Maus worked on `org-link-escape'. See [[http://article.gmane.org/gmane.emacs.orgmode/37888][his message]]:
|
||||
|
||||
: Percent escaping is used in Org mode to escape certain characters
|
||||
: in links that would either break the parser (e.g. square brackets
|
||||
: in link target oder description) or are not allowed to appear in
|
||||
: a particular link type (e.g. non-ascii characters in a http:
|
||||
: link).
|
||||
:
|
||||
: With this change in place Org will apply percent escaping and
|
||||
: unescaping more consistently especially for non-ascii characters.
|
||||
: Additionally some of the outstanding bugs or glitches concerning
|
||||
: percent escaped links are solved.
|
||||
|
||||
Thanks a lot to David for this work.
|
||||
|
||||
|
||||
|
||||
*** Make =org-store-link= point to directory in a dired buffer
|
||||
:PROPERTIES:
|
||||
:OrgVersion: 6.35
|
||||
:END:
|
||||
|
||||
When, in a dired buffer, the cursor is not in a line listing a
|
||||
file, `org-store-link' will store a link to the directory.
|
||||
|
||||
Patch by Stephen Eglen.
|
||||
|
||||
|
||||
|
||||
*** Allow regexps in =org-file-apps= to capture link parameters
|
||||
:PROPERTIES:
|
||||
:OrgVersion: 6.35
|
||||
:END:
|
||||
|
||||
The way extension regexps in =org-file-apps= are handled has
|
||||
changed. Instead of matching against the file name, the regexps
|
||||
are now matched against the whole link, and you can use grouping
|
||||
to extract link parameters which you can then use in a command
|
||||
string to be executed.
|
||||
|
||||
For example, to allow linking to PDF files using the syntax
|
||||
=file:/doc.pdf::<page number>=, you can add the following entry to
|
||||
org-file-apps:
|
||||
|
||||
#+begin_example
|
||||
Extension: \.pdf::\([0-9]+\)\'
|
||||
Command: evince "%s" -p %1
|
||||
#+end_example
|
||||
|
||||
Thanks to Jan Böcker for a patch to this effect.
|
||||
|
||||
** Dates and time
|
||||
|
||||
*** Allow relative time when scheduling/adding a deadline
|
||||
:PROPERTIES:
|
||||
:OrgVersion: 7.7
|
||||
:END:
|
||||
|
||||
You can now use relative duration strings like "-2d" or "++3w"
|
||||
when calling =org-schedule= or =org-deadline=: it will schedule
|
||||
(or set the deadline for) the item respectively two days before
|
||||
today and three weeks after the current timestamp, if any.
|
||||
|
||||
You can use this programmatically: =(org-schedule nil "+2d")=
|
||||
will work on the current entry.
|
||||
|
||||
You can also use this while (bulk-)rescheduling and
|
||||
(bulk-)resetting the deadline of (several) items from the agenda.
|
||||
|
||||
Thanks to Memnon Anon for a heads up about this!
|
||||
|
||||
|
||||
|
||||
|
||||
*** American-style dates are now understood by =org-read-date=
|
||||
:PROPERTIES:
|
||||
:OrgVersion: 6.35
|
||||
:END:
|
||||
|
||||
So when you are prompted for a date, you can now answer like this
|
||||
|
||||
#+begin_example
|
||||
2/5/3 --> 2003-02-05
|
||||
2/5 --> <CURRENT-YEAR>-02-05
|
||||
#+end_example
|
||||
|
||||
** Agenda
|
||||
|
||||
*** =org-agenda-custom-commands= has a default value
|
||||
:PROPERTIES:
|
||||
:OrgVersion: 7.8
|
||||
:END:
|
||||
|
||||
This option used to be `nil' by default. This now has a default
|
||||
value, displaying an agenda and all TODOs. See the docstring for
|
||||
details. Thanks to Carsten for this.
|
||||
|
||||
|
||||
*** Improved filtering through =org-agenda-to-appt=
|
||||
:PROPERTIES:
|
||||
:OrgVersion: 7.8
|
||||
:END:
|
||||
|
||||
The new function allows the user to refine the scope of entries
|
||||
to pass to =org-agenda-get-day-entries= and allows to filter out
|
||||
entries using a function.
|
||||
|
||||
Thanks to Peter Münster for raising a related issue and to
|
||||
Tassilo Horn for this idea. Also thanks to Peter Münster for
|
||||
[[git:68ffb7a7][fixing a small bug]] in the final implementation.
|
||||
|
||||
|
||||
|
||||
*** Allow ap/pm times in agenda time grid
|
||||
:PROPERTIES:
|
||||
:OrgVersion: 7.4
|
||||
:END:
|
||||
|
||||
Times in the agenda can now be displayed in am/pm format. See the new
|
||||
variable =org-agenda-timegrid-use-ampm=. Thanks to C. A. Webber for
|
||||
a patch to this effect.
|
||||
|
||||
|
||||
|
||||
*** Agenda: Added a bulk "scattering" command
|
||||
:PROPERTIES:
|
||||
:OrgVersion: 7.4
|
||||
:END:
|
||||
|
||||
=B S= in the agenda buffer will cause tasks to be rescheduled a random
|
||||
number of days into the future, with 7 as the default. This is useful
|
||||
if you've got a ton of tasks scheduled for today, you realize you'll
|
||||
never deal with them all, and you just want them to be distributed
|
||||
across the next N days. When called with a prefix arg, rescheduling
|
||||
will avoid weekend days.
|
||||
|
||||
Thanks to John Wiegley for this.
|
||||
|
||||
** Exporting
|
||||
|
||||
*** Simplification of org-export-html-preamble/postamble
|
||||
:PROPERTIES:
|
||||
:OrgVersion: 7.5
|
||||
:END:
|
||||
|
||||
When set to `t', export the preamble/postamble as usual, honoring the
|
||||
=org-export-email/author/creator-info= variables.
|
||||
|
||||
When set to a formatting string, insert this string. See the docstring
|
||||
of these variable for details about available %-sequences.
|
||||
|
||||
You can set =:html-preamble= in publishing project in the same way: `t'
|
||||
means to honor =:email/creator/author-info=, and a formatting string
|
||||
will insert a string.
|
||||
|
||||
*** New exporters to Latin-1 and UTF-8
|
||||
:PROPERTIES:
|
||||
:OrgVersion: 6.35
|
||||
:END:
|
||||
|
||||
While Ulf Stegemann was going through the entities list to improve the
|
||||
LaTeX export, he had the great idea to provide representations for many
|
||||
of the entities in Latin-1, and for all of them in UTF-8. This means
|
||||
that we can now export files rich in special symbols to Latin-1 and to
|
||||
UTF-8 files. These new exporters can be reached with the commands =C-c
|
||||
C-e n= and =C-c C-e u=, respectively.
|
||||
|
||||
When there is no representation for a given symbol in the targeted
|
||||
coding system, you can choose to keep the TeX-macro-like
|
||||
representation, or to get an "explanatory" representation. For
|
||||
example, =\simeq= could be represented as "[approx. equal to]". Please
|
||||
use the variable =org-entities-ascii-explanatory= to state your
|
||||
preference.
|
||||
|
||||
*** HTML export: Add class to outline containers using property
|
||||
:PROPERTIES:
|
||||
:OrgVersion: 6.35
|
||||
:END:
|
||||
|
||||
The =HTML_CONTAINER_CLASS= property can now be used to add a class name
|
||||
to the outline container of a node in HTML export.
|
||||
|
||||
*** Throw an error when creating an image from a LaTeX snippet fails
|
||||
:PROPERTIES:
|
||||
:OrgVersion: 6.35
|
||||
:END:
|
||||
|
||||
This behavior can be configured with the new option variable
|
||||
=org-format-latex-signal-error=.
|
||||
|
||||
*** Support for creating BEAMER presentations from Org-mode documents
|
||||
:PROPERTIES:
|
||||
:OrgVersion: 6.34
|
||||
:END:
|
||||
|
||||
Org-mode documents or subtrees can now be converted directly in to
|
||||
BEAMER presentation. Turning a tree into a simple presentations is
|
||||
straight forward, and there is also quite some support to make richer
|
||||
presentations as well. See the [[http://orgmode.org/manual/Beamer-class-export.html#Beamer-class-export][BEAMER section]] in the manual for more
|
||||
details.
|
||||
|
||||
Thanks to everyone who has contributed to the discussion about BEAMER
|
||||
support and how it should work. This was a great example for how this
|
||||
community can achieve a much better result than any individual could.
|
||||
|
||||
** Refiling
|
||||
|
||||
*** Refile targets can now be cached
|
||||
:PROPERTIES:
|
||||
:OrgVersion: 7.01
|
||||
:END:
|
||||
|
||||
You can turn on caching of refile targets by setting the variable
|
||||
=org-refile-use-cache=. This should speed up refiling if you have many
|
||||
eligible targets in many files. If you need to update the cache
|
||||
because Org misses a newly created entry or still offers a deleted one,
|
||||
press =C-0 C-c C-w=.
|
||||
|
||||
*** New logging support for refiling
|
||||
:PROPERTIES:
|
||||
:OrgVersion: 6.35
|
||||
:END:
|
||||
|
||||
Whenever you refile an item, a time stamp and even a note can be added
|
||||
to this entry. For details, see the new option =org-log-refile=.
|
||||
|
||||
Thanks to Charles Cave for this idea.
|
||||
|
||||
** Completion
|
||||
|
||||
*** In-buffer completion is now done using John Wiegleys pcomplete.el
|
||||
:PROPERTIES:
|
||||
:OrgVersion: 7.4
|
||||
:END:
|
||||
|
||||
Thanks to John Wiegley for much of this code.
|
||||
|
||||
** Tables
|
||||
|
||||
*** New command =org-table-transpose-table-at-point=
|
||||
:PROPERTIES:
|
||||
:OrgVersion: 7.8
|
||||
:END:
|
||||
|
||||
See the docstring. This hack from Juan Pechiar is now part of Org's
|
||||
core. Thanks to Juan!
|
||||
|
||||
*** Display field's coordinates when editing it with =C-c `=
|
||||
:PROPERTIES:
|
||||
:OrgVersion: 7.7
|
||||
:END:
|
||||
|
||||
When editing a field with =C-c `=, the field's coordinate will the
|
||||
displayed in the buffer.
|
||||
|
||||
Thanks to Michael Brand for a patch to this effect.
|
||||
|
||||
*** Spreadsheet computation of durations and time values
|
||||
:PROPERTIES:
|
||||
:OrgVersion: 7.6
|
||||
:END:
|
||||
|
||||
If you want to compute time values use the =T= flag, either in Calc
|
||||
formulas or Elisp formulas:
|
||||
|
||||
| Task 1 | Task 2 | Total |
|
||||
|--------+--------+---------|
|
||||
| 35:00 | 35:00 | 1:10:00 |
|
||||
#+TBLFM: @2$3=$1+$2;T
|
||||
|
||||
Values must be of the form =[HH:]MM:SS=, where hours are optional.
|
||||
|
||||
Thanks to Martin Halder, Eric Schulte and Carsten for code and feedback
|
||||
on this.
|
||||
|
||||
*** Implement formulas applying to field ranges
|
||||
:PROPERTIES:
|
||||
:OrgVersion: 7.5
|
||||
:END:
|
||||
|
||||
Carsten implemented this field-ranges formulas.
|
||||
|
||||
: A frequently requested feature for tables has been to be able to define
|
||||
: row formulas in a way similar to column formulas. The patch below allows
|
||||
: things like
|
||||
:
|
||||
: @3=
|
||||
: @2$2..@5$7=
|
||||
: @I$2..@II$4=
|
||||
:
|
||||
: as the left hand side for table formulas in order to write a formula that
|
||||
: is valid for an entire column or for a rectangular section in a
|
||||
: table.
|
||||
|
||||
Thanks a lot to Carsten for this.
|
||||
|
||||
*** Sending radio tables from org buffers is now allowed
|
||||
:PROPERTIES:
|
||||
:OrgVersion: 7.4
|
||||
:END:
|
||||
|
||||
Org radio tables can no also be sent inside Org buffers. Also, there
|
||||
is a new hook which get called after a table has been sent.
|
||||
|
||||
Thanks to Seweryn Kokot.
|
||||
|
||||
** Lists
|
||||
|
||||
*** Improved handling of lists
|
||||
:PROPERTIES:
|
||||
:OrgVersion: 7.5
|
||||
:END:
|
||||
|
||||
Nicolas Goaziou extended and improved the way Org handles lists.
|
||||
|
||||
1. Indentation of text determines again end of items in lists. So, some
|
||||
text less indented than the previous item doesn't close the whole
|
||||
list anymore, only all items more indented than it.
|
||||
|
||||
2. Alphabetical bullets are implemented, through the use of the
|
||||
variable `org-alphabetical-lists'. This also adds alphabetical
|
||||
counters like [@c] or [@W].
|
||||
|
||||
3. Lists can now safely contain drawers, inline tasks, or various
|
||||
blocks, themselves containing lists. Two variables are controlling
|
||||
this: `org-list-forbidden-blocks', and `org-list-export-context'.
|
||||
|
||||
4. Improve `newline-and-indent' (C-j): used in an item, it will keep
|
||||
text from moving at column 0. This allows to split text and make
|
||||
paragraphs and still not break the list.
|
||||
|
||||
5. Improve `org-toggle-item' (C-c -): used on a region with standard
|
||||
text, it will change the region into one item. With a prefix
|
||||
argument, it will fallback to the previous behavior and make every
|
||||
line in region an item. It permits to easily integrate paragraphs
|
||||
inside a list.
|
||||
|
||||
6. `fill-paragraph' (M-q) now understands lists. It can freely be used
|
||||
inside items, or on text just after a list, even with no blank line
|
||||
around, without breaking list structure.
|
||||
|
||||
Thanks a lot to Nicolas for all this!
|
||||
|
||||
** Inline display of linked images
|
||||
:PROPERTIES:
|
||||
:OrgVersion: 6.36
|
||||
:END:
|
||||
|
||||
Images can now be displayed inline. The key C-c C-x C-v does toggle the
|
||||
display of such images. Note that only image links that have no
|
||||
description part will be inlined.
|
||||
|
||||
** Implement offsets for ordered lists
|
||||
:PROPERTIES:
|
||||
:OrgVersion: 6.36
|
||||
:END:
|
||||
|
||||
If you want to start an ordered plain list with a number different from
|
||||
1, you can now do it like this:
|
||||
|
||||
: 1. [@start:12] will star a lit a number 12
|
||||
|
||||
** Babel: code block body expansion for table and preview
|
||||
:PROPERTIES:
|
||||
:OrgVersion: 6.36
|
||||
:END:
|
||||
|
||||
In org-babel, code is "expanded" prior to evaluation. I.e. the code that
|
||||
is actually evaluated comprises the code block contents, augmented with
|
||||
the extra code which assigns the referenced data to variables. It is now
|
||||
possible to preview expanded contents, and also to expand code during
|
||||
during tangling. This expansion takes into account all header arguments,
|
||||
and variables.
|
||||
|
||||
A new key-binding `C-c M-b p' bound to `org-babel-expand-src-block' can
|
||||
be used from inside of a source code block to preview its expanded
|
||||
contents (which can be very useful for debugging). tangling
|
||||
|
||||
The expanded body can now be tangled, this includes variable values
|
||||
which may be the results of other source-code blocks, or stored in
|
||||
headline properties or tables. One possible use for this is to allow
|
||||
those using org-babel for their emacs initialization to store values
|
||||
(e.g. usernames, passwords, etc...) in headline properties or in tables.
|
||||
|
||||
Org-babel now supports three new header arguments, and new default
|
||||
behavior for handling horizontal lines in tables (hlines), column names,
|
||||
and rownames across all languages.
|
||||
|
||||
** Editing Convenience and Appearance
|
||||
|
||||
*** New command =org-copy-visible= (=C-c C-x v=)
|
||||
:PROPERTIES:
|
||||
:OrgVersion: 7.7
|
||||
:END:
|
||||
|
||||
This command will copy the visible text in the region into the kill
|
||||
ring. Thanks to Florian Beck for this function and to Carsten for
|
||||
adding it to org.el and documenting it!
|
||||
|
||||
*** Make it possible to protect hidden subtrees from being killed by =C-k=
|
||||
:PROPERTIES:
|
||||
:OrgVersion: 7.01
|
||||
:END:
|
||||
|
||||
See the new variable =org-ctrl-k-protect-subtree=. This was a request
|
||||
by Scott Otterson.
|
||||
|
||||
*** Implement pretty display of entities, sub-, and superscripts.
|
||||
:PROPERTIES:
|
||||
:OrgVersion: 7.01
|
||||
:END:
|
||||
|
||||
The command =C-c C-x \= toggles the display of Org's special entities
|
||||
like =\alpha= as pretty unicode characters. Also, sub and superscripts
|
||||
are displayed in a pretty way (raised/lower display, in a smaller
|
||||
font). If you want to exclude sub- and superscripts, see the variable
|
||||
=org-pretty-entities-include-sub-superscripts=.
|
||||
|
||||
Thanks to Eric Schulte and Ulf Stegeman for making this possible.
|
||||
|
||||
*** New faces for title, date, author and email address lines
|
||||
:PROPERTIES:
|
||||
:OrgVersion: 6.35
|
||||
:END:
|
||||
|
||||
The keywords in these lines are now dimmed out, and the title is
|
||||
displayed in a larger font, and a special font is also used for author,
|
||||
date, and email information. This is implemented by the following new
|
||||
faces:
|
||||
|
||||
=org-document-title=
|
||||
=org-document-info=
|
||||
=org-document-info-keyword=
|
||||
|
||||
In addition, the variable =org-hidden-keywords= can be used to make the
|
||||
corresponding keywords disappear.
|
||||
|
||||
Thanks to Dan Davison for this feature.
|
||||
|
||||
*** Simpler way to specify faces for tags and todo keywords
|
||||
:PROPERTIES:
|
||||
:OrgVersion: 6.35
|
||||
:END:
|
||||
|
||||
The variables =org-todo-keyword-faces=, =org-tag-faces=, and
|
||||
=org-priority-faces= now accept simple color names as specifications.
|
||||
The colors will be used as either foreground or background color for
|
||||
the corresponding keyword. See also the variable
|
||||
=org-faces-easy-properties=, which governs which face property is
|
||||
affected by this setting.
|
||||
|
||||
This is really a great simplification for setting keyword faces. The
|
||||
change is based on an idea and patch by Ryan Thompson.
|
||||
|
||||
*** <N> in tables now means fixed width, not maximum width
|
||||
:PROPERTIES:
|
||||
:OrgVersion: 6.35
|
||||
:END:
|
||||
|
||||
Requested by Michael Brand.
|
||||
|
||||
*** Better level cycling function
|
||||
:PROPERTIES:
|
||||
:OrgVersion: 6.35
|
||||
:END:
|
||||
|
||||
=TAB= in an empty headline cycles the level of that headline through
|
||||
likely states. Ryan Thompson implemented an improved version of this
|
||||
function, which does not depend upon when exactly this command is used.
|
||||
Thanks to Ryan for this improvement.
|
||||
|
||||
*** Adaptive filling
|
||||
:PROPERTIES:
|
||||
:OrgVersion: 6.35
|
||||
:END:
|
||||
|
||||
For paragraph text, =org-adaptive-fill-function= did not handle the
|
||||
base case of regular text which needed to be filled. This is now
|
||||
fixed. Among other things, it allows email-style ">" comments to be
|
||||
filled correctly.
|
||||
|
||||
Thanks to Dan Hackney for this patch.
|
||||
|
||||
*** `org-reveal' (=C-c C-r=) also decrypts encrypted entries (org-crypt.el)
|
||||
:PROPERTIES:
|
||||
:OrgVersion: 6.35
|
||||
:END:
|
||||
|
||||
Thanks to Richard Riley for triggering this change.
|
||||
|
||||
*** Better automatic letter selection for TODO keywords
|
||||
:PROPERTIES:
|
||||
:OrgVersion: 6.35
|
||||
:END:
|
||||
|
||||
When all first letters of keywords have been used, Org now assigns more
|
||||
meaningful characters based on the keywords.
|
||||
|
||||
Thanks to Mikael Fornius for this patch.
|
||||
|
||||
** Clocking
|
||||
|
||||
*** Clock: Allow synchronous update of timestamps in CLOCK log
|
||||
:PROPERTIES:
|
||||
:OrgVersion: 7.7
|
||||
:END:
|
||||
|
||||
Using =S-M-<up/down>= on CLOCK log timestamps will increase/decrease
|
||||
the two timestamps on this line so that duration will keep the same.
|
||||
Note that duration can still be slightly modified in case a timestamp
|
||||
needs some rounding.
|
||||
|
||||
Thanks to Rainer Stengele for this idea.
|
||||
|
||||
*** Localized clock tables
|
||||
:PROPERTIES:
|
||||
:OrgVersion: 7.5
|
||||
:END:
|
||||
|
||||
Clock tables now support a new new =:lang= parameter, allowing the user
|
||||
to customize the localization of the table headers. See the variable
|
||||
=org-clock-clocktable-language-setup= which controls available
|
||||
translated strings.
|
||||
|
||||
*** Show clock overruns in mode line
|
||||
:PROPERTIES:
|
||||
:OrgVersion: 6.35
|
||||
:END:
|
||||
|
||||
When clocking an item with a planned effort, overrunning the planned
|
||||
time is now made visible in the mode line, for example using the new
|
||||
face =org-mode-line-clock-overrun=, or by adding an extra string given
|
||||
by =org-task-overrun-text=.
|
||||
|
||||
Thanks to Richard Riley for a patch to this effect.
|
||||
|
||||
*** Clock reports can now include the running, incomplete clock
|
||||
:PROPERTIES:
|
||||
:OrgVersion: 6.35
|
||||
:END:
|
||||
|
||||
If you have a clock running, and the entry being clocked falls into the
|
||||
scope when creating a clock table, the time so far spent can be added
|
||||
to the total. This behavior depends on the setting of
|
||||
=org-clock-report-include-clocking-task=. The default is =nil=.
|
||||
|
||||
Thanks to Bernt Hansen for this useful addition.
|
||||
|
||||
** Misc
|
||||
|
||||
*** Improvements with inline tasks and indentation
|
||||
:PROPERTIES:
|
||||
:OrgVersion: 7.4
|
||||
:END:
|
||||
|
||||
There is now a configurable way on how to export inline tasks. See the
|
||||
new variable =org-inlinetask-export-templates=.
|
||||
|
||||
Thanks to Nicolas Goaziou for coding these changes.
|
||||
|
||||
*** A property value of "nil" now means to unset a property
|
||||
:PROPERTIES:
|
||||
:OrgVersion: 7.01
|
||||
:END:
|
||||
|
||||
This can be useful in particular with property inheritance, if some
|
||||
upper level has the property, and some grandchild of it would like to
|
||||
have the default settings (i.e. not overruled by a property) back.
|
||||
|
||||
Thanks to Robert Goldman and Bernt Hansen for suggesting this change.
|
||||
|
||||
*** New helper functions in org-table.el
|
||||
:PROPERTIES:
|
||||
:OrgVersion: 6.35
|
||||
:END:
|
||||
|
||||
There are new functions to access and write to a specific table field.
|
||||
This is for hackers, and maybe for the org-babel people.
|
||||
|
||||
#+begin_example
|
||||
org-table-get
|
||||
org-table-put
|
||||
org-table-current-line
|
||||
org-table-goto-line
|
||||
#+end_example
|
||||
|
||||
*** Archiving: Allow to reverse order in target node
|
||||
:PROPERTIES:
|
||||
:OrgVersion: 6.35
|
||||
:END:
|
||||
|
||||
The new option =org-archive-reversed-order= allows to have archived
|
||||
entries inserted in a last-on-top fashion in the target node.
|
||||
|
||||
This was requested by Tom.
|
||||
|
||||
*** Org-reveal: Double prefix arg shows the entire subtree of the parent
|
||||
:PROPERTIES:
|
||||
:OrgVersion: 6.35
|
||||
:END:
|
||||
|
||||
This can help to get out of an inconsistent state produced for example
|
||||
by viewing from the agenda.
|
||||
|
||||
This was a request by Matt Lundin.
|
||||
|
||||
* License
|
||||
|
||||
This file is part of GNU Emacs.
|
||||
|
||||
GNU Emacs is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
GNU Emacs is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
|
|
@ -649,34 +649,34 @@
|
|||
<!-- Description List -->
|
||||
<text:list-style style:name="OrgDescriptionList">
|
||||
<text:list-level-style-number text:level="1" style:num-format="">
|
||||
<style:list-level-properties text:space-before="0.635cm" text:min-label-width="0.635cm"/>
|
||||
<style:list-level-properties text:space-before="0.635cm"/>
|
||||
</text:list-level-style-number>
|
||||
<text:list-level-style-number text:level="2" style:num-format="">
|
||||
<style:list-level-properties text:space-before="1.27cm" text:min-label-width="0.635cm"/>
|
||||
<style:list-level-properties text:space-before="1.27cm"/>
|
||||
</text:list-level-style-number>
|
||||
<text:list-level-style-number text:level="3" style:num-format="">
|
||||
<style:list-level-properties text:space-before="1.905cm" text:min-label-width="0.635cm"/>
|
||||
<style:list-level-properties text:space-before="1.905cm"/>
|
||||
</text:list-level-style-number>
|
||||
<text:list-level-style-number text:level="4" style:num-format="">
|
||||
<style:list-level-properties text:space-before="2.54cm" text:min-label-width="0.635cm"/>
|
||||
<style:list-level-properties text:space-before="2.54cm"/>
|
||||
</text:list-level-style-number>
|
||||
<text:list-level-style-number text:level="5" style:num-format="">
|
||||
<style:list-level-properties text:space-before="3.175cm" text:min-label-width="0.635cm"/>
|
||||
<style:list-level-properties text:space-before="3.175cm"/>
|
||||
</text:list-level-style-number>
|
||||
<text:list-level-style-number text:level="6" style:num-format="">
|
||||
<style:list-level-properties text:space-before="3.81cm" text:min-label-width="0.635cm"/>
|
||||
<style:list-level-properties text:space-before="3.81cm"/>
|
||||
</text:list-level-style-number>
|
||||
<text:list-level-style-number text:level="7" style:num-format="">
|
||||
<style:list-level-properties text:space-before="4.445cm" text:min-label-width="0.635cm"/>
|
||||
<style:list-level-properties text:space-before="4.445cm"/>
|
||||
</text:list-level-style-number>
|
||||
<text:list-level-style-number text:level="8" style:num-format="">
|
||||
<style:list-level-properties text:space-before="5.08cm" text:min-label-width="0.635cm"/>
|
||||
<style:list-level-properties text:space-before="5.08cm"/>
|
||||
</text:list-level-style-number>
|
||||
<text:list-level-style-number text:level="9" style:num-format="">
|
||||
<style:list-level-properties text:space-before="5.715cm" text:min-label-width="0.635cm"/>
|
||||
<style:list-level-properties text:space-before="5.715cm"/>
|
||||
</text:list-level-style-number>
|
||||
<text:list-level-style-number text:level="10" style:num-format="">
|
||||
<style:list-level-properties text:space-before="6.35cm" text:min-label-width="0.635cm"/>
|
||||
<style:list-level-properties text:space-before="6.35cm"/>
|
||||
</text:list-level-style-number>
|
||||
</text:list-style>
|
||||
|
||||
|
|
|
@ -1,7 +1,57 @@
|
|||
2012-04-27 Chong Yidong <cyd@gnu.org>
|
||||
|
||||
* subr.el (read-key): Avoid running filter function when setting
|
||||
up temporary tool bar entries (Bug#9922).
|
||||
|
||||
2012-04-27 Andreas Schwab <schwab@linux-m68k.org>
|
||||
|
||||
* vc/vc-git.el (vc-git-state): Fix regexp matching diff output.
|
||||
(Bug#11344)
|
||||
|
||||
2012-04-27 Chong Yidong <cyd@gnu.org>
|
||||
|
||||
* select.el (xselect--encode-string): New function, split from
|
||||
xselect-convert-to-string.
|
||||
(xselect-convert-to-string): Use it.
|
||||
(xselect-convert-to-filename, xselect-convert-to-os)
|
||||
(xselect-convert-to-host, xselect-convert-to-user): Ensure that
|
||||
returned strings are properly encoded (Bug#11315).
|
||||
|
||||
2012-04-27 Chong Yidong <cyd@gnu.org>
|
||||
|
||||
* simple.el (delete-active-region): Move to killing custom group.
|
||||
|
||||
2012-04-27 Andreas Schwab <schwab@linux-m68k.org>
|
||||
|
||||
* progmodes/which-func.el (which-func-current): Quote %
|
||||
characters for mode-line processing.
|
||||
|
||||
2012-04-21 Chong Yidong <cyd@gnu.org>
|
||||
|
||||
* xml.el (xml-parse-region, xml-parse-tag): Avoid errors due to
|
||||
reaching eob (Bug#11286).
|
||||
|
||||
2012-04-27 Eli Zaretskii <eliz@gnu.org>
|
||||
|
||||
* progmodes/gdb-mi.el (gdb-control-level): New variable.
|
||||
(gdb): Make it buffer-local and init to zero.
|
||||
(gdb-control-commands-regexp): New variable.
|
||||
(gdb-send): Don't wrap in "-interpreter-exec console" if
|
||||
gdb-control-level is positive. Increment gdb-control-level
|
||||
whenever the command matches gdb-control-commands-regexp, and
|
||||
decrement it each time the command is "end". (Bug#11279)
|
||||
|
||||
2012-04-27 Martin Rudalics <rudalics@gmx.at>
|
||||
|
||||
* window.el (adjust-window-trailing-edge, enlarge-window)
|
||||
(shrink-window, window-resize):
|
||||
* mouse.el (mouse-drag-line): Fix resizing of minibuffer
|
||||
windows (Bug#11276).
|
||||
|
||||
2012-04-27 Chong Yidong <cyd@gnu.org>
|
||||
|
||||
* progmodes/pascal.el (pascal--extra-indent): Rename from ind, to
|
||||
fix "missig prefix" warning. All callers changed.
|
||||
fix "missing prefix" warning. All callers changed.
|
||||
|
||||
2012-04-27 Stefan Monnier <monnier@iro.umontreal.ca>
|
||||
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
;;; check-declare.el --- Check declare-function statements
|
||||
|
||||
;; Copyright (C) 2007-2012 Free Software Foundation, Inc.
|
||||
;; Copyright (C) 2007-2012 Free Software Foundation, Inc.
|
||||
|
||||
;; Author: Glenn Morris <rgm@gnu.org>
|
||||
;; Keywords: lisp, tools, maint
|
||||
|
@ -28,7 +28,7 @@
|
|||
;; checks that all such statements in a file or directory are accurate.
|
||||
;; The entry points are `check-declare-file' and `check-declare-directory'.
|
||||
|
||||
;; For more information, see Info node `elisp(Declaring Functions)'.
|
||||
;; For more information, see Info node `(elisp)Declaring Functions'.
|
||||
|
||||
;;; TODO:
|
||||
|
||||
|
|
|
@ -1,3 +1,7 @@
|
|||
2012-04-27 Andreas Schwab <schwab@linux-m68k.org>
|
||||
|
||||
* gnus.el (debbugs-gnu): Don't override existing autoload definition.
|
||||
|
||||
2012-04-26 Daiki Ueno <ueno@unixuser.org>
|
||||
|
||||
* plstore.el (plstore-called-interactively-p): New compat macro copied
|
||||
|
|
|
@ -4397,7 +4397,9 @@ prompt the user for the name of an NNTP server to use."
|
|||
(gnus-1 arg dont-connect slave)
|
||||
(gnus-final-warning)))
|
||||
|
||||
(autoload 'debbugs-gnu "debbugs-gnu")
|
||||
(eval-and-compile
|
||||
(unless (fboundp 'debbugs-gnu)
|
||||
(autoload 'debbugs-gnu "debbugs-gnu" "List all outstanding Emacs bugs." t)))
|
||||
(defun gnus-list-debbugs ()
|
||||
"List all open Gnus bug reports."
|
||||
(interactive)
|
||||
|
|
|
@ -403,13 +403,16 @@ must be one of the symbols header, mode, or vertical."
|
|||
(or mouse-1-click-in-non-selected-windows
|
||||
(eq window (selected-window)))
|
||||
(mouse-on-link-p start)))
|
||||
(enlarge-minibuffer
|
||||
(resize-minibuffer
|
||||
;; Resize the minibuffer window if it's on the same frame as
|
||||
;; and immediately below the position window and it's either
|
||||
;; active or `resize-mini-windows' is nil.
|
||||
(and (eq line 'mode)
|
||||
(not resize-mini-windows)
|
||||
(eq (window-frame minibuffer-window) frame)
|
||||
(not (one-window-p t frame))
|
||||
(= (nth 1 (window-edges minibuffer-window))
|
||||
(nth 3 (window-edges window)))))
|
||||
(nth 3 (window-edges window)))
|
||||
(or (not resize-mini-windows)
|
||||
(eq minibuffer-window (active-minibuffer-window)))))
|
||||
(which-side
|
||||
(and (eq line 'vertical)
|
||||
(or (cdr (assq 'vertical-scroll-bars (frame-parameters frame)))
|
||||
|
@ -424,7 +427,7 @@ must be one of the symbols header, mode, or vertical."
|
|||
((eq line 'mode)
|
||||
;; Check whether mode-line can be dragged at all.
|
||||
(when (and (window-at-side-p window 'bottom)
|
||||
(not enlarge-minibuffer))
|
||||
(not resize-minibuffer))
|
||||
(setq done t)))
|
||||
((eq line 'vertical)
|
||||
;; Get the window to adjust for the vertical case.
|
||||
|
@ -498,13 +501,9 @@ must be one of the symbols header, mode, or vertical."
|
|||
;; Remember that we dragged.
|
||||
(setq dragged t))
|
||||
|
||||
(cond
|
||||
(enlarge-minibuffer
|
||||
(adjust-window-trailing-edge window growth))
|
||||
((eq line 'mode)
|
||||
(adjust-window-trailing-edge window growth))
|
||||
(t
|
||||
(adjust-window-trailing-edge window (- growth)))))))
|
||||
(if (eq line 'mode)
|
||||
(adjust-window-trailing-edge window growth)
|
||||
(adjust-window-trailing-edge window (- growth))))))
|
||||
|
||||
;; Presumably, if this was just a click, the last event should be
|
||||
;; `mouse-1', whereas if this did move the mouse, it should be a
|
||||
|
|
|
@ -1,3 +1,67 @@
|
|||
2012-04-27 Nicolas Goaziou <n.goaziou@gmail.com>
|
||||
|
||||
* org-table.el (org-table-number-fraction): Fix typo.
|
||||
|
||||
2012-04-27 Eric Schulte <eric.schulte@gmx.com>
|
||||
|
||||
* ob-python.el (org-babel-execute:python): Ensure newline precedes
|
||||
automatically-added returns.
|
||||
|
||||
2012-04-27 Nicolas Goaziou <n.goaziou@gmail.com>
|
||||
|
||||
* org-mouse.el (org-mode-hook): Do not move point when clicking on
|
||||
a footnote reference.
|
||||
|
||||
2012-04-27 Bastien Guerry <bzg@gnu.org>
|
||||
|
||||
* org-faces.el (org-date-selected): Fix docstring.
|
||||
|
||||
2012-04-27 Nicolas Goaziou <n.goaziou@gmail.com>
|
||||
|
||||
* org-list.el (org-list-struct-indent): Follow
|
||||
`org-list-demote-modify-bullet' specifications for ordered
|
||||
bullets.
|
||||
(org-list-indent-item-generic, org-indent-item-tree)
|
||||
(org-outdent-item-tree): Fix bug when operating on a region.
|
||||
(org-outdent-item, org-indent-item): Allow to operate on a region.
|
||||
|
||||
* org.el (org-shiftmetaleft, org-shiftmetaright): Allow to operate
|
||||
on a region.
|
||||
|
||||
2012-04-27 Nicolas Goaziou <n.goaziou@gmail.com>
|
||||
|
||||
* org-footnote.el (org-footnote-normalize): Fix positioning in
|
||||
HTML export without a footnote section.
|
||||
|
||||
2012-04-27 Madan Ramakrishnan <madanr79@gmail.com> (tiny change)
|
||||
|
||||
* org-agenda.el (org-agenda-bulk-mark): Truly make arg optional as
|
||||
advertised by the function.
|
||||
|
||||
2012-04-27 Zachary Kanfer <zkanfer@gmail.com> (tiny change)
|
||||
|
||||
* org.el (org-read-date-display): Fix bug when displaying the
|
||||
overlay.
|
||||
|
||||
2012-04-27 Bastien Guerry <bzg@gnu.org>
|
||||
|
||||
* org.el (org-mode): Don't use `buffer-face-mode' by default.
|
||||
|
||||
2012-04-27 Bastien Guerry <bzg@gnu.org>
|
||||
|
||||
* org-faces.el (org-date-selected): New face.
|
||||
|
||||
2012-04-27 Jambunathan K <kjambunathan@gmail.com>
|
||||
|
||||
* org-odt.el (org-odt-format-org-link): Pay no heed to whether the
|
||||
internal links destined for headlines provide a description or
|
||||
not. In fact, the `org-store-link' and `org-insert-link' create
|
||||
internal links which do have a description.
|
||||
|
||||
2012-04-27 Bastien Guerry <bzg@gnu.org>
|
||||
|
||||
* org-clock.el (org-program-exists): Fix docstring.
|
||||
|
||||
2012-04-14 Bastien Guerry <bzg@gnu.org>
|
||||
|
||||
* org.el (org-point-at-end-of-empty-headline): Only try to match
|
||||
|
@ -438,11 +502,6 @@
|
|||
* org-attach.el (org-attach-store-link-p): Remove spurious quote
|
||||
in customization form choice.
|
||||
|
||||
2012-04-01 Tassilo Horn <tassilo@member.fsf.org>
|
||||
|
||||
* org-contacts.el (org-contacts-check-mail-address): Add missing
|
||||
word to `y-or-n-p' question.
|
||||
|
||||
2012-04-01 Eric Schulte <eric.schulte@gmx.com>
|
||||
|
||||
* ob-sh.el (org-babel-execute:sh): Pass all params to subroutine.
|
||||
|
@ -934,11 +993,6 @@
|
|||
* org-footnote.el (org-footnote-normalize): Make sure that
|
||||
footnotes are moved to a single place during export.
|
||||
|
||||
2012-04-01 Bastien Guerry <bzg@gnu.org>
|
||||
|
||||
* org.el (org-cycle-internal-global): Prevent the display of
|
||||
messages when cycling from with a Gnus article buffer.
|
||||
|
||||
2012-04-01 Nicolas Goaziou <n.goaziou@gmail.com>
|
||||
|
||||
* org-footnote.el (org-footnote-normalize): Ensure footnote
|
||||
|
@ -1805,11 +1859,6 @@
|
|||
define the way a timestamp in #+DATE will be exported.
|
||||
(org-infile-export-plist): Use the new option.
|
||||
|
||||
2012-01-03 Bastien Guerry <bzg@gnu.org>
|
||||
|
||||
* org-drill.el (org-drill-leech-method, org-drill-scope)
|
||||
(org-drill-spaced-repetition-algorithm): Fix wrong :type spec.
|
||||
|
||||
2012-01-03 Bastien Guerry <bzg@gnu.org>
|
||||
|
||||
* org.el (org-property-re): Also match cumulating properties
|
||||
|
@ -5929,10 +5978,6 @@
|
|||
* ob-exp.el (org-babel-exp-in-export-file): Bind
|
||||
`org-link-search-inhibit-query' to t to inhibit prompts.
|
||||
|
||||
2011-07-28 Julien Danjou <julien@danjou.info>
|
||||
|
||||
* org-contacts.el: Merge org-contacts-wl.el.
|
||||
|
||||
2011-07-28 Carsten Dominik <carsten.dominik@gmail.com>
|
||||
|
||||
* org-exp.el (org-export-add-options-to-plist): Use the right
|
||||
|
@ -5967,10 +6012,6 @@
|
|||
* org-agenda.el (org-agenda-open-link): Pass entire text of agenda
|
||||
line to `org-offer-links-in-entry'.
|
||||
|
||||
2011-07-28 Michael Markert <markert.michael@googlemail.com>
|
||||
|
||||
* org-contacts-wl.el: New file.
|
||||
|
||||
2011-07-28 Matt Lundin <mdl@imapmail.org>
|
||||
|
||||
* org-bibtex.el (org-bibtex-search): New function.
|
||||
|
@ -6736,9 +6777,6 @@
|
|||
(org-agenda-open-link): Stop using prefix-length.
|
||||
(org-agenda-change-all-lines): Stop using prefix-length.
|
||||
|
||||
* org-colview-xemacs.el (org-columns-display-here): Stop using
|
||||
prefix-length. Always return claned items.
|
||||
|
||||
* org-colview.el (org-columns-display-here): Stop using
|
||||
prefix-length. Always return claned items.
|
||||
|
||||
|
@ -13095,16 +13133,6 @@
|
|||
|
||||
* org-capture.el (org-capture-templates): Fix customize type.
|
||||
|
||||
2010-11-11 Carsten Dominik <carsten.dominik@gmail.com>
|
||||
|
||||
* org-colview-xemacs.el (org-columns-compile-map):
|
||||
(org-columns-number-to-string):
|
||||
(org-columns-string-to-number): Handle estimate ranges.
|
||||
(org-estimate-mean-and-var): New function.
|
||||
(org-estimate-combine): New function.
|
||||
(org-estimate-print): New function.
|
||||
(org-string-to-estimate): New function.
|
||||
|
||||
2010-09-25 Juanma Barranquero <lekktu@gmail.com>
|
||||
|
||||
* org.el (org-refile-targets):
|
||||
|
@ -14132,9 +14160,6 @@
|
|||
* org-src.el (org-edit-src-find-region-and-lang): Test for
|
||||
table.el as late as possible.
|
||||
|
||||
* org-colview-xemacs.el: Make sure this file is never loaded into
|
||||
Emacs. Remove all tests for XEmacs.
|
||||
|
||||
* org-colview.el: Make sure this file is never loaded into XEmacs.
|
||||
|
||||
* org-agenda.el (org-highlight, org-unhighlight): Use direct
|
||||
|
@ -15497,9 +15522,6 @@
|
|||
* org-exp.el (org-export): Use "1" as a sign to export only the
|
||||
subtree.
|
||||
|
||||
* org-colview-xemacs.el (org-columns-edit-value):
|
||||
Use org-unrestricted property.
|
||||
|
||||
* org-colview.el (org-columns-edit-value):
|
||||
Use org-unrestricted property.
|
||||
|
||||
|
@ -15898,13 +15920,6 @@
|
|||
(org-agenda-colview-summarize): Handle extended summary types
|
||||
properly.
|
||||
|
||||
* org-colview-xemacs.el (org-columns-display-here): Don't try to
|
||||
calculate values if the underlying property is not set.
|
||||
(org-columns-string-to-number): Convert age strings back into
|
||||
fractional days.
|
||||
(org-agenda-colview-summarize): Handle extended summary types
|
||||
properly.
|
||||
|
||||
2009-11-13 Carsten Dominik <carsten.dominik@gmail.com>
|
||||
|
||||
* org-exp.el (org-export-format-drawer-function): New variable.
|
||||
|
@ -16083,10 +16098,6 @@
|
|||
org-return-follows-link' is set and there is nothing else to do in
|
||||
this line.
|
||||
|
||||
2009-11-13 James TD Smith <ahktenzero@mohorovi.cc>
|
||||
|
||||
* org-colview-xemacs.el: Add in changes from org-colview.el.
|
||||
|
||||
2009-11-13 Dan Davison <davison@stats.ox.ac.uk>
|
||||
|
||||
* org-exp-blocks.el: Modify split separator regexp to avoid empty
|
||||
|
@ -17212,9 +17223,6 @@
|
|||
* org-colview.el (org-columns, org-columns-redo)
|
||||
(org-agenda-columns): Don't use `goto-line'.
|
||||
|
||||
* org-colview-xemacs.el (org-columns, org-agenda-columns):
|
||||
Don't use `goto-line'.
|
||||
|
||||
* org-agenda.el (org-agenda-mode): Force visual line motion off.
|
||||
(org-agenda-add-entry-text-maxlines): Improve docstring.
|
||||
(org-agenda-start-with-entry-text-mode): New option.
|
||||
|
@ -17319,10 +17327,6 @@
|
|||
* org-colview.el (org-columns-edit-value, org-columns-new)
|
||||
(org-insert-columns-dblock): Use org-icompleting-read.
|
||||
|
||||
* org-colview-xemacs.el (org-columns-edit-value)
|
||||
(org-columns-new, org-insert-columns-dblock):
|
||||
Use org-icompleting-read.
|
||||
|
||||
* org-attach.el (org-attach-delete-one, org-attach-open):
|
||||
Use org-icompleting-read.
|
||||
|
||||
|
@ -18017,10 +18021,6 @@
|
|||
in column values.
|
||||
(org-columns-capture-view): Exclude comment and archived trees.
|
||||
|
||||
* org-colview-xemacs.el (org-columns-capture-view):
|
||||
Protect vertical bars in column values.
|
||||
(org-columns-capture-view): Exclude comment and archived trees.
|
||||
|
||||
* org.el (org-quote-vert): New function.
|
||||
|
||||
* org-latex.el (org-export-latex-verbatim-wrap): New option.
|
||||
|
@ -18209,9 +18209,6 @@
|
|||
* org-colview.el (org-dblock-write:columnview): Allow indented
|
||||
#+TBLFM line.
|
||||
|
||||
* org-colview-xemacs.el (org-dblock-write:columnview):
|
||||
Allow indented #+TBLFM line.
|
||||
|
||||
* org-clock.el (org-dblock-write:clocktable): Allow indented
|
||||
#+TBLFM line.
|
||||
|
||||
|
@ -18288,9 +18285,6 @@
|
|||
|
||||
* org.el (org-enable-priority-commands): New option.
|
||||
|
||||
* org-colview-xemacs.el (org-columns-compute)
|
||||
(org-columns-number-to-string): Fix problems with empty fields.
|
||||
|
||||
* org-colview.el (org-columns-compute)
|
||||
(org-columns-number-to-string): Fix problems with empty fields.
|
||||
|
||||
|
@ -18493,9 +18487,6 @@
|
|||
(org-export-region-as-latex): Use the property list.
|
||||
(org-export-as-latex): ????
|
||||
|
||||
* org-colview-xemacs.el (org-columns-remove-overlays)
|
||||
(org-columns): Fix call to `local-variable-p'.
|
||||
|
||||
2009-08-06 Carsten Dominik <carsten.dominik@gmail.com>
|
||||
|
||||
* org-latex.el (org-export-latex-after-blockquotes-hook): New hook.
|
||||
|
@ -18931,12 +18922,6 @@
|
|||
(org-columns-remove-overlays): Restore the value of `truncate-lines'.
|
||||
(org-columns): Remember the value of `truncate-lines'.
|
||||
|
||||
* org-colview-xemacs.el (org-colview-initial-truncate-line-value):
|
||||
New variable.
|
||||
(org-columns-remove-overlays): Restore the value of
|
||||
`truncate-lines'.
|
||||
(org-columns): Remember the value of `truncate-lines'.
|
||||
|
||||
* org.el (org-columns-skip-arrchived-trees): New option.
|
||||
|
||||
* org-agenda.el (org-agenda-export-html-style): Define color for
|
||||
|
@ -19678,10 +19663,6 @@
|
|||
Better error catching when a date/time property does not have allowed
|
||||
values defined.
|
||||
|
||||
* org-colview-xemacs.el (org-colview-construct-allowed-dates):
|
||||
Better error catching when a date/time property does not have
|
||||
allowed values defined.
|
||||
|
||||
2009-01-25 Carsten Dominik <carsten.dominik@gmail.com>
|
||||
|
||||
* org.el (org-map-entries): Restore point and restriction after
|
||||
|
@ -20429,10 +20410,6 @@
|
|||
* org-colview.el (org-columns-edit-value, org-columns-new)
|
||||
(org-insert-columns-dblock): Use `org-ido-completing-read'.
|
||||
|
||||
* org-colview-xemacs.el (org-columns-edit-value)
|
||||
(org-columns-new, org-insert-columns-dblock):
|
||||
Use `org-ido-completing-read'.
|
||||
|
||||
* org-attach.el (org-attach-delete-one, org-attach-open):
|
||||
Use `org-ido-completing-read'.
|
||||
|
||||
|
@ -21011,9 +20988,6 @@
|
|||
* org-colview.el (org-columns-get-format-and-top-level):
|
||||
Remove resetting the marker.
|
||||
|
||||
* org-colview-xemacs.el (org-columns-get-format-and-top-level):
|
||||
Remove resetting the marker.
|
||||
|
||||
* org.el (org-entry-property-inherited-from): Improve docstring.
|
||||
(org-entry-get-with-inheritance): Reset marker before starting the
|
||||
search.
|
||||
|
@ -21188,11 +21162,6 @@
|
|||
(org-columns-next-allowed-value):
|
||||
Use `org-colview-construct-allowed-dates'.
|
||||
|
||||
* org-colview-xemacs.el (org-colview-construct-allowed-dates):
|
||||
New function.
|
||||
(org-columns-next-allowed-value):
|
||||
Use `org-colview-construct-allowed-dates'.
|
||||
|
||||
* org.el (org-protect-slash): New function.
|
||||
(org-get-refile-targets): Use `org-protect-slash'.
|
||||
|
||||
|
@ -21322,9 +21291,6 @@
|
|||
* org-colview.el (org-columns-display-here):
|
||||
Use `org-columns-modify-value-for-display-function'.
|
||||
|
||||
* org-colview-xemacs.el (org-columns-display-here):
|
||||
Use `org-columns-modify-value-for-display-function'.
|
||||
|
||||
* org.el (org-columns-modify-value-for-display-function): New option.
|
||||
|
||||
* org-publish.el (org-publish-file): Make sure the directory match
|
||||
|
@ -21515,8 +21481,6 @@
|
|||
|
||||
* org-colview.el (org-columns-next-allowed-value): Bug fix.
|
||||
|
||||
* org-colview-xemacs.el (org-columns-next-allowed-value): Bug fix.
|
||||
|
||||
* org-agenda.el (org-agenda-get-closed): Get the end time into the
|
||||
agenda prefix as well.
|
||||
|
||||
|
@ -21637,9 +21601,6 @@
|
|||
* org-colview.el (org-columns-next-allowed-value): Handle next
|
||||
argument NTH to directly select a value.
|
||||
|
||||
* org-colview-xemacs.el (org-columns-next-allowed-value): Handle next
|
||||
argument NTH to directly select a value.
|
||||
|
||||
2008-06-17 Carsten Dominik <dominik@science.uva.nl>
|
||||
|
||||
* org-agenda.el (org-agenda-scheduled-leaders): Fix docstring.
|
||||
|
@ -21783,9 +21744,6 @@
|
|||
* org-clock.el (org-clock-display, org-clock-out)
|
||||
(org-update-mode-line): Use `org-time-clocksum-format'.
|
||||
|
||||
* org-colview-xemacs.el (org-columns-number-to-string):
|
||||
Use `org-time-clocksum-format'.
|
||||
|
||||
* org-colview.el (org-columns-number-to-string):
|
||||
Use `org-time-clocksum-format'.
|
||||
|
||||
|
|
|
@ -64,7 +64,7 @@ This function is called by `org-babel-execute-src-block'."
|
|||
(preamble (cdr (assoc :preamble params)))
|
||||
(full-body
|
||||
(org-babel-expand-body:generic
|
||||
(concat body (if return-val (format "return %s" return-val) ""))
|
||||
(concat body (if return-val (format "\nreturn %s" return-val) ""))
|
||||
params (org-babel-variable-assignments:python params)))
|
||||
(result (org-babel-python-evaluate
|
||||
session full-body result-type result-params preamble)))
|
||||
|
|
|
@ -8294,7 +8294,7 @@ This is a command that has to be installed in `calendar-mode-map'."
|
|||
(defun org-agenda-bulk-mark (&optional arg)
|
||||
"Mark the entry at point for future bulk action."
|
||||
(interactive "p")
|
||||
(dotimes (i (max arg 1))
|
||||
(dotimes (i (or arg 1))
|
||||
(unless (org-get-at-bol 'org-agenda-diary-link)
|
||||
(let* ((m (org-get-at-bol 'org-hd-marker))
|
||||
ov)
|
||||
|
|
|
@ -664,7 +664,7 @@ Use alsa's aplay tool if available."
|
|||
(error (beep t) (beep t)))))))))
|
||||
|
||||
(defun org-program-exists (program-name)
|
||||
"Checks whenever we can locate program and launch it."
|
||||
"Checks whenever we can locate PROGRAM-NAME using the `which' executable."
|
||||
(if (member system-type '(gnu/linux darwin))
|
||||
(= 0 (call-process "which" nil nil nil program-name))))
|
||||
|
||||
|
|
|
@ -285,6 +285,16 @@ column view defines special faces for each outline level. See the file
|
|||
"Face for date/time stamps."
|
||||
:group 'org-faces)
|
||||
|
||||
(defface org-date-selected
|
||||
(org-compatible-face nil
|
||||
'((((class color) (min-colors 16) (background light)) (:foreground "Red1" :bold nil))
|
||||
(((class color) (min-colors 16) (background dark)) (:foreground "Pink" :bold nil))
|
||||
(((class color) (min-colors 8) (background light)) (:foreground "red" :bold nil))
|
||||
(((class color) (min-colors 8) (background dark)) (:foreground "red" :bold nil))
|
||||
(t (:inverse-video t))))
|
||||
"Face for highlighting the calendar day when using `org-read-date'."
|
||||
:group 'org-faces)
|
||||
|
||||
(defface org-sexp-date
|
||||
'((((class color) (background light)) (:foreground "Purple"))
|
||||
(((class color) (background dark)) (:foreground "Cyan"))
|
||||
|
|
|
@ -716,8 +716,8 @@ Additional note on `org-footnote-insert-pos-for-preprocessor':
|
|||
((and org-footnote-section (eq major-mode 'org-mode))
|
||||
(goto-char (point-min))
|
||||
(if (re-search-forward
|
||||
(concat "^\\*[ \t]+" (regexp-quote org-footnote-section)
|
||||
"[ \t]*$") nil t)
|
||||
(concat "^\\*[ \t]+" (regexp-quote org-footnote-section)
|
||||
"[ \t]*$") nil t)
|
||||
(delete-region (match-beginning 0) (org-end-of-subtree t t)))
|
||||
;; A new footnote section is inserted by default at the end of
|
||||
;; the buffer.
|
||||
|
@ -727,7 +727,14 @@ Additional note on `org-footnote-insert-pos-for-preprocessor':
|
|||
(unless (bolp) (newline)))
|
||||
;; No footnote section set: Footnotes will be added at the end
|
||||
;; of the section containing their first reference.
|
||||
((eq major-mode 'org-mode))
|
||||
;; Nevertheless, in an export situation, set insertion point to
|
||||
;; `point-max' by default.
|
||||
((eq major-mode 'org-mode)
|
||||
(when export-props
|
||||
(goto-char (point-max))
|
||||
(skip-chars-backward " \r\t\n")
|
||||
(forward-line)
|
||||
(delete-region (point) (point-max))))
|
||||
(t
|
||||
;; Remove any left-over tag in the buffer, if one is set up.
|
||||
(when org-footnote-tag-for-non-org-mode-files
|
||||
|
|
|
@ -1484,8 +1484,19 @@ bullets between START and END."
|
|||
(change-bullet-maybe
|
||||
(function
|
||||
(lambda (item)
|
||||
(let* ((bul (org-trim (org-list-get-bullet item struct)))
|
||||
(new-bul-p (cdr (assoc bul org-list-demote-modify-bullet))))
|
||||
(let ((new-bul-p
|
||||
(cdr (assoc
|
||||
;; Normalize ordered bullets.
|
||||
(let ((bul (org-trim
|
||||
(org-list-get-bullet item struct))))
|
||||
(cond ((string-match "[A-Z]\\." bul) "A.")
|
||||
((string-match "[A-Z])" bul) "A)")
|
||||
((string-match "[a-z]\\." bul) "a.")
|
||||
((string-match "[a-z])" bul) "a)")
|
||||
((string-match "[0-9]\\." bul) "1.")
|
||||
((string-match "[0-9])" bul) "1)")
|
||||
(t bul)))
|
||||
org-list-demote-modify-bullet))))
|
||||
(when new-bul-p (org-list-set-bullet item struct new-bul-p))))))
|
||||
(ind
|
||||
(lambda (cell)
|
||||
|
@ -2500,7 +2511,6 @@ STRUCT is the list structure.
|
|||
|
||||
Return t if successful."
|
||||
(save-excursion
|
||||
(beginning-of-line)
|
||||
(let* ((regionp (org-region-active-p))
|
||||
(rbeg (and regionp (region-beginning)))
|
||||
(rend (and regionp (region-end)))
|
||||
|
@ -2509,7 +2519,8 @@ Return t if successful."
|
|||
(prevs (org-list-prevs-alist struct))
|
||||
;; Are we going to move the whole list?
|
||||
(specialp
|
||||
(and (= top (point))
|
||||
(and (not regionp)
|
||||
(= top (point-at-bol))
|
||||
(cdr (assq 'indent org-list-automatic-rules))
|
||||
(if no-subtree
|
||||
(error
|
||||
|
@ -2523,12 +2534,12 @@ Return t if successful."
|
|||
(progn
|
||||
(set-marker org-last-indent-begin-marker rbeg)
|
||||
(set-marker org-last-indent-end-marker rend))
|
||||
(set-marker org-last-indent-begin-marker (point))
|
||||
(set-marker org-last-indent-begin-marker (point-at-bol))
|
||||
(set-marker org-last-indent-end-marker
|
||||
(cond
|
||||
(specialp (org-list-get-bottom-point struct))
|
||||
(no-subtree (1+ (point)))
|
||||
(t (org-list-get-item-end (point) struct))))))
|
||||
(no-subtree (1+ (point-at-bol)))
|
||||
(t (org-list-get-item-end (point-at-bol) struct))))))
|
||||
(let* ((beg (marker-position org-last-indent-begin-marker))
|
||||
(end (marker-position org-last-indent-end-marker)))
|
||||
(cond
|
||||
|
@ -2583,19 +2594,35 @@ Return t if successful."
|
|||
"Outdent a local list item, but not its children.
|
||||
If a region is active, all items inside will be moved."
|
||||
(interactive)
|
||||
(if (org-at-item-p)
|
||||
(let ((struct (org-list-struct)))
|
||||
(org-list-indent-item-generic -1 t struct))
|
||||
(error "Not at an item")))
|
||||
(let ((regionp (org-region-active-p)))
|
||||
(cond
|
||||
((or (org-at-item-p)
|
||||
(and regionp
|
||||
(save-excursion (goto-char (region-beginning))
|
||||
(org-at-item-p))))
|
||||
(let ((struct (if (not regionp) (org-list-struct)
|
||||
(save-excursion (goto-char (region-beginning))
|
||||
(org-list-struct)))))
|
||||
(org-list-indent-item-generic -1 t struct)))
|
||||
(regionp (error "Region not starting at an item"))
|
||||
(t (error "Not at an item")))))
|
||||
|
||||
(defun org-indent-item ()
|
||||
"Indent a local list item, but not its children.
|
||||
If a region is active, all items inside will be moved."
|
||||
(interactive)
|
||||
(if (org-at-item-p)
|
||||
(let ((struct (org-list-struct)))
|
||||
(org-list-indent-item-generic 1 t struct))
|
||||
(error "Not at an item")))
|
||||
(let ((regionp (org-region-active-p)))
|
||||
(cond
|
||||
((or (org-at-item-p)
|
||||
(and regionp
|
||||
(save-excursion (goto-char (region-beginning))
|
||||
(org-at-item-p))))
|
||||
(let ((struct (if (not regionp) (org-list-struct)
|
||||
(save-excursion (goto-char (region-beginning))
|
||||
(org-list-struct)))))
|
||||
(org-list-indent-item-generic 1 t struct)))
|
||||
(regionp (error "Region not starting at an item"))
|
||||
(t (error "Not at an item")))))
|
||||
|
||||
(defun org-outdent-item-tree ()
|
||||
"Outdent a local list item including its children.
|
||||
|
@ -2604,10 +2631,12 @@ If a region is active, all items inside will be moved."
|
|||
(let ((regionp (org-region-active-p)))
|
||||
(cond
|
||||
((or (org-at-item-p)
|
||||
(and (org-region-active-p)
|
||||
(goto-char (region-beginning))
|
||||
(org-at-item-p)))
|
||||
(let ((struct (org-list-struct)))
|
||||
(and regionp
|
||||
(save-excursion (goto-char (region-beginning))
|
||||
(org-at-item-p))))
|
||||
(let ((struct (if (not regionp) (org-list-struct)
|
||||
(save-excursion (goto-char (region-beginning))
|
||||
(org-list-struct)))))
|
||||
(org-list-indent-item-generic -1 nil struct)))
|
||||
(regionp (error "Region not starting at an item"))
|
||||
(t (error "Not at an item")))))
|
||||
|
@ -2619,10 +2648,12 @@ If a region is active, all items inside will be moved."
|
|||
(let ((regionp (org-region-active-p)))
|
||||
(cond
|
||||
((or (org-at-item-p)
|
||||
(and (org-region-active-p)
|
||||
(goto-char (region-beginning))
|
||||
(org-at-item-p)))
|
||||
(let ((struct (org-list-struct)))
|
||||
(and regionp
|
||||
(save-excursion (goto-char (region-beginning))
|
||||
(org-at-item-p))))
|
||||
(let ((struct (if (not regionp) (org-list-struct)
|
||||
(save-excursion (goto-char (region-beginning))
|
||||
(org-list-struct)))))
|
||||
(org-list-indent-item-generic 1 nil struct)))
|
||||
(regionp (error "Region not starting at an item"))
|
||||
(t (error "Not at an item")))))
|
||||
|
|
|
@ -915,6 +915,7 @@ This means, between the beginning of line and the point."
|
|||
((assq :checkbox context) (org-toggle-checkbox))
|
||||
((assq :item-bullet context)
|
||||
(let ((org-cycle-include-plain-lists t)) (org-cycle)))
|
||||
((org-footnote-at-reference-p) nil)
|
||||
(t ad-do-it))))))
|
||||
|
||||
(defun org-mouse-move-tree-start (event)
|
||||
|
|
|
@ -1689,7 +1689,6 @@ ATTR is a string of other attributes of the a element."
|
|||
(or (not thefile) (string= thefile ""))
|
||||
(plist-get org-lparse-opt-plist :section-numbers)
|
||||
(setq sec-frag fragment)
|
||||
(org-find-text-property-in-string 'org-no-description fragment)
|
||||
(or (string-match "\\`sec\\(\\(-[0-9]+\\)+\\)" sec-frag)
|
||||
(and (setq sec-frag
|
||||
(loop for alias in org-export-target-aliases do
|
||||
|
|
|
@ -135,8 +135,8 @@ Other options offered by the customize interface are more restrictive."
|
|||
|
||||
(defcustom org-table-number-fraction 0.5
|
||||
"Fraction of numbers in a column required to make the column align right.
|
||||
In a column all non-white fields are considered. If at least this
|
||||
fraction of fields is matched by `org-table-number-fraction',
|
||||
In a column all non-white fields are considered. If at least
|
||||
this fraction of fields is matched by `org-table-number-regexp',
|
||||
alignment to the right border applies."
|
||||
:group 'org-table-settings
|
||||
:type 'number)
|
||||
|
|
|
@ -5057,8 +5057,7 @@ The following commands are available:
|
|||
'org-parse-arguments)
|
||||
(set (make-local-variable 'pcomplete-termination-string) "")
|
||||
(when (>= emacs-major-version 23)
|
||||
(set (make-local-variable 'buffer-face-mode-face) 'org-default)
|
||||
(buffer-face-mode))
|
||||
(set (make-local-variable 'buffer-face-mode-face) 'org-default))
|
||||
|
||||
;; If empty file that did not turn on org-mode automatically, make it to.
|
||||
(if (and org-insert-mode-line-in-empty-file
|
||||
|
@ -14915,7 +14914,7 @@ So these are more for recording a certain time/date."
|
|||
(org-time-stamp arg 'inactive))
|
||||
|
||||
(defvar org-date-ovl (make-overlay 1 1))
|
||||
(overlay-put org-date-ovl 'face 'org-warning)
|
||||
(overlay-put org-date-ovl 'face 'org-date-selected)
|
||||
(org-detach-overlay org-date-ovl)
|
||||
|
||||
(defvar org-ans1) ; dynamically scoped parameter
|
||||
|
@ -15131,35 +15130,35 @@ user."
|
|||
(when org-read-date-display-live
|
||||
(when org-read-date-overlay
|
||||
(delete-overlay org-read-date-overlay))
|
||||
(let ((p (point)))
|
||||
(end-of-line 1)
|
||||
(while (not (equal (buffer-substring
|
||||
(max (point-min) (- (point) 4)) (point))
|
||||
" "))
|
||||
(insert " "))
|
||||
(goto-char p))
|
||||
(let* ((ans (concat (buffer-substring (point-at-bol) (point-max))
|
||||
" " (or org-ans1 org-ans2)))
|
||||
(org-end-time-was-given nil)
|
||||
(f (org-read-date-analyze ans org-def org-defdecode))
|
||||
(fmts (if org-dcst
|
||||
org-time-stamp-custom-formats
|
||||
org-time-stamp-formats))
|
||||
(fmt (if (or org-with-time
|
||||
(and (boundp 'org-time-was-given) org-time-was-given))
|
||||
(cdr fmts)
|
||||
(car fmts)))
|
||||
(txt (concat "=> " (format-time-string fmt (apply 'encode-time f)))))
|
||||
(when (and org-end-time-was-given
|
||||
(string-match org-plain-time-of-day-regexp txt))
|
||||
(setq txt (concat (substring txt 0 (match-end 0)) "-"
|
||||
org-end-time-was-given
|
||||
(substring txt (match-end 0)))))
|
||||
(when org-read-date-analyze-futurep
|
||||
(setq txt (concat txt " (=>F)")))
|
||||
(setq org-read-date-overlay
|
||||
(make-overlay (1- (point-at-eol)) (point-at-eol)))
|
||||
(org-overlay-display org-read-date-overlay txt 'secondary-selection))))
|
||||
(when (minibufferp (current-buffer))
|
||||
(save-excursion
|
||||
(end-of-line 1)
|
||||
(while (not (equal (buffer-substring
|
||||
(max (point-min) (- (point) 4)) (point))
|
||||
" "))
|
||||
(insert " ")))
|
||||
(let* ((ans (concat (buffer-substring (point-at-bol) (point-max))
|
||||
" " (or org-ans1 org-ans2)))
|
||||
(org-end-time-was-given nil)
|
||||
(f (org-read-date-analyze ans org-def org-defdecode))
|
||||
(fmts (if org-dcst
|
||||
org-time-stamp-custom-formats
|
||||
org-time-stamp-formats))
|
||||
(fmt (if (or org-with-time
|
||||
(and (boundp 'org-time-was-given) org-time-was-given))
|
||||
(cdr fmts)
|
||||
(car fmts)))
|
||||
(txt (concat "=> " (format-time-string fmt (apply 'encode-time f)))))
|
||||
(when (and org-end-time-was-given
|
||||
(string-match org-plain-time-of-day-regexp txt))
|
||||
(setq txt (concat (substring txt 0 (match-end 0)) "-"
|
||||
org-end-time-was-given
|
||||
(substring txt (match-end 0)))))
|
||||
(when org-read-date-analyze-futurep
|
||||
(setq txt (concat txt " (=>F)")))
|
||||
(setq org-read-date-overlay
|
||||
(make-overlay (1- (point-at-eol)) (point-at-eol)))
|
||||
(org-overlay-display org-read-date-overlay txt 'secondary-selection)))))
|
||||
|
||||
(defun org-read-date-analyze (ans org-def org-defdecode)
|
||||
"Analyze the combined answer of the date prompt."
|
||||
|
@ -17969,28 +17968,34 @@ See the individual commands for more information."
|
|||
|
||||
(defun org-shiftmetaleft ()
|
||||
"Promote subtree or delete table column.
|
||||
Calls `org-promote-subtree', `org-outdent-item',
|
||||
or `org-table-delete-column', depending on context.
|
||||
See the individual commands for more information."
|
||||
Calls `org-promote-subtree', `org-outdent-item-tree', or
|
||||
`org-table-delete-column', depending on context. See the
|
||||
individual commands for more information."
|
||||
(interactive)
|
||||
(cond
|
||||
((run-hook-with-args-until-success 'org-shiftmetaleft-hook))
|
||||
((org-at-table-p) (call-interactively 'org-table-delete-column))
|
||||
((org-at-heading-p) (call-interactively 'org-promote-subtree))
|
||||
((org-at-item-p) (call-interactively 'org-outdent-item-tree))
|
||||
((if (not (org-region-active-p)) (org-at-item-p)
|
||||
(save-excursion (goto-char (region-beginning))
|
||||
(org-at-item-p)))
|
||||
(call-interactively 'org-outdent-item-tree))
|
||||
(t (org-modifier-cursor-error))))
|
||||
|
||||
(defun org-shiftmetaright ()
|
||||
"Demote subtree or insert table column.
|
||||
Calls `org-demote-subtree', `org-indent-item',
|
||||
or `org-table-insert-column', depending on context.
|
||||
See the individual commands for more information."
|
||||
Calls `org-demote-subtree', `org-indent-item-tree', or
|
||||
`org-table-insert-column', depending on context. See the
|
||||
individual commands for more information."
|
||||
(interactive)
|
||||
(cond
|
||||
((run-hook-with-args-until-success 'org-shiftmetaright-hook))
|
||||
((org-at-table-p) (call-interactively 'org-table-insert-column))
|
||||
((org-at-heading-p) (call-interactively 'org-demote-subtree))
|
||||
((org-at-item-p) (call-interactively 'org-indent-item-tree))
|
||||
((if (not (org-region-active-p)) (org-at-item-p)
|
||||
(save-excursion (goto-char (region-beginning))
|
||||
(org-at-item-p)))
|
||||
(call-interactively 'org-indent-item-tree))
|
||||
(t (org-modifier-cursor-error))))
|
||||
|
||||
(defun org-shiftmetaup (&optional arg)
|
||||
|
|
|
@ -603,6 +603,8 @@ NOARG must be t when this macro is used outside `gud-def'"
|
|||
(set (make-local-variable 'gud-marker-filter) #'gud-gdb-marker-filter))
|
||||
(funcall filter proc string))))
|
||||
|
||||
(defvar gdb-control-level 0)
|
||||
|
||||
;;;###autoload
|
||||
(defun gdb (command-line)
|
||||
"Run gdb on program FILE in buffer *gud-FILE*.
|
||||
|
@ -677,6 +679,7 @@ detailed description of this mode.
|
|||
(set-process-filter proc #'gdb--check-interpreter))
|
||||
|
||||
(set (make-local-variable 'gud-minor-mode) 'gdbmi)
|
||||
(set (make-local-variable 'gdb-control-level) 0)
|
||||
(setq comint-input-sender 'gdb-send)
|
||||
(when (ring-empty-p comint-input-ring) ; cf shell-mode
|
||||
(let ((hfile (expand-file-name (or (getenv "GDBHISTFILE")
|
||||
|
@ -1705,6 +1708,16 @@ static char *magick[] = {
|
|||
:group 'gdb)
|
||||
|
||||
|
||||
(defvar gdb-control-commands-regexp
|
||||
(concat
|
||||
"^\\("
|
||||
"commands\\|if\\|while\\|define\\|document\\|python\\|"
|
||||
"while-stepping\\|stepping\\|ws\\|actions"
|
||||
"\\)\\([[:blank:]]+.*\\)?$")
|
||||
"Regexp matching GDB commands that enter a recursive reading loop.
|
||||
As long as GDB is in the recursive reading loop, it does not expect
|
||||
commands to be prefixed by \"-interpreter-exec console\".")
|
||||
|
||||
(defun gdb-send (proc string)
|
||||
"A comint send filter for gdb."
|
||||
(with-current-buffer gud-comint-buffer
|
||||
|
@ -1714,11 +1727,15 @@ static char *magick[] = {
|
|||
(if (not (string= "" string))
|
||||
(setq gdb-last-command string)
|
||||
(if gdb-last-command (setq string gdb-last-command)))
|
||||
(if (string-match "^-" string)
|
||||
;; MI command
|
||||
(if (or (string-match "^-" string)
|
||||
(> gdb-control-level 0))
|
||||
;; Either MI command or we are feeding GDB's recursive reading loop.
|
||||
(progn
|
||||
(setq gdb-first-done-or-error t)
|
||||
(process-send-string proc (concat string "\n")))
|
||||
(process-send-string proc (concat string "\n"))
|
||||
(if (and (string-match "^end$" string)
|
||||
(> gdb-control-level 0))
|
||||
(setq gdb-control-level (1- gdb-control-level))))
|
||||
;; CLI command
|
||||
(if (string-match "\\\\$" string)
|
||||
(setq gdb-continuation (concat gdb-continuation string "\n"))
|
||||
|
@ -1729,7 +1746,12 @@ static char *magick[] = {
|
|||
(if gdb-enable-debug
|
||||
(push (cons 'mi-send to-send) gdb-debug-log))
|
||||
(process-send-string proc to-send))
|
||||
(setq gdb-continuation nil))))
|
||||
(if (and (string-match "^end$" string)
|
||||
(> gdb-control-level 0))
|
||||
(setq gdb-control-level (1- gdb-control-level)))
|
||||
(setq gdb-continuation nil)))
|
||||
(if (string-match gdb-control-commands-regexp string)
|
||||
(setq gdb-control-level (1+ gdb-control-level))))
|
||||
|
||||
(defun gdb-mi-quote (string)
|
||||
"Return STRING quoted properly as an MI argument.
|
||||
|
|
|
@ -179,7 +179,9 @@ and you want to simplify them for the mode line
|
|||
(defvar which-func-table (make-hash-table :test 'eq :weakness 'key))
|
||||
|
||||
(defconst which-func-current
|
||||
'(:eval (gethash (selected-window) which-func-table which-func-unknown)))
|
||||
'(:eval (replace-regexp-in-string
|
||||
"%" "%%"
|
||||
(gethash (selected-window) which-func-table which-func-unknown))))
|
||||
;;;###autoload (put 'which-func-current 'risky-local-variable t)
|
||||
|
||||
(defvar which-func-mode nil
|
||||
|
|
|
@ -213,30 +213,25 @@ two markers or an overlay. Otherwise, it is nil."
|
|||
(defun xselect--int-to-cons (n)
|
||||
(cons (ash n -16) (logand n 65535)))
|
||||
|
||||
(defun xselect-convert-to-string (_selection type value)
|
||||
(let (str coding)
|
||||
;; Get the actual string from VALUE.
|
||||
(cond ((stringp value)
|
||||
(setq str value))
|
||||
((setq value (xselect--selection-bounds value))
|
||||
(with-current-buffer (nth 2 value)
|
||||
(setq str (buffer-substring (nth 0 value)
|
||||
(nth 1 value))))))
|
||||
(when str
|
||||
;; If TYPE is nil, this is a local request, thus return STR as
|
||||
;; is. Otherwise, encode STR.
|
||||
(if (not type)
|
||||
str
|
||||
(setq coding (or next-selection-coding-system selection-coding-system))
|
||||
(defun xselect--encode-string (type str &optional can-modify)
|
||||
(when str
|
||||
;; If TYPE is nil, this is a local request; return STR as-is.
|
||||
(if (null type)
|
||||
str
|
||||
;; Otherwise, encode STR.
|
||||
(let ((coding (or next-selection-coding-system
|
||||
selection-coding-system)))
|
||||
(if coding
|
||||
(setq coding (coding-system-base coding)))
|
||||
(let ((inhibit-read-only t))
|
||||
;; Suppress producing escape sequences for compositions.
|
||||
;; But avoid modifying the string if it's a buffer name etc.
|
||||
(unless can-modify (setq str (substring str 0)))
|
||||
(remove-text-properties 0 (length str) '(composition nil) str)
|
||||
;; TEXT is a polymorphic target. Select the actual type
|
||||
;; from `UTF8_STRING', `COMPOUND_TEXT', `STRING', and
|
||||
;; `C_STRING'.
|
||||
(if (eq type 'TEXT)
|
||||
;; TEXT is a polymorphic target. We must select the
|
||||
;; actual type from `UTF8_STRING', `COMPOUND_TEXT',
|
||||
;; `STRING', and `C_STRING'.
|
||||
(if (not (multibyte-string-p str))
|
||||
(setq type 'C_STRING)
|
||||
(let (non-latin-1 non-unicode eight-bit)
|
||||
|
@ -279,6 +274,14 @@ two markers or an overlay. Otherwise, it is nil."
|
|||
(setq next-selection-coding-system nil)
|
||||
(cons type str))))
|
||||
|
||||
(defun xselect-convert-to-string (_selection type value)
|
||||
(let ((str (cond ((stringp value) value)
|
||||
((setq value (xselect--selection-bounds value))
|
||||
(with-current-buffer (nth 2 value)
|
||||
(buffer-substring (nth 0 value)
|
||||
(nth 1 value)))))))
|
||||
(xselect--encode-string type str t)))
|
||||
|
||||
(defun xselect-convert-to-length (_selection _type value)
|
||||
(let ((len (cond ((stringp value)
|
||||
(length value))
|
||||
|
@ -311,7 +314,7 @@ two markers or an overlay. Otherwise, it is nil."
|
|||
|
||||
(defun xselect-convert-to-filename (_selection _type value)
|
||||
(when (setq value (xselect--selection-bounds value))
|
||||
(buffer-file-name (nth 2 value))))
|
||||
(xselect--encode-string 'TEXT (buffer-file-name (nth 2 value)))))
|
||||
|
||||
(defun xselect-convert-to-charpos (_selection _type value)
|
||||
(when (setq value (xselect--selection-bounds value))
|
||||
|
@ -337,13 +340,13 @@ two markers or an overlay. Otherwise, it is nil."
|
|||
(xselect--int-to-cons (max beg end))))))))
|
||||
|
||||
(defun xselect-convert-to-os (_selection _type _size)
|
||||
(symbol-name system-type))
|
||||
(xselect--encode-string 'TEXT (symbol-name system-type)))
|
||||
|
||||
(defun xselect-convert-to-host (_selection _type _size)
|
||||
(system-name))
|
||||
(xselect--encode-string 'TEXT (system-name)))
|
||||
|
||||
(defun xselect-convert-to-user (_selection _type _size)
|
||||
(user-full-name))
|
||||
(xselect--encode-string 'TEXT (user-full-name)))
|
||||
|
||||
(defun xselect-convert-to-class (_selection _type _size)
|
||||
"Convert selection to class.
|
||||
|
|
|
@ -817,7 +817,7 @@ instead of deleted."
|
|||
:type '(choice (const :tag "Delete active region" t)
|
||||
(const :tag "Kill active region" kill)
|
||||
(const :tag "Do ordinary deletion" nil))
|
||||
:group 'editing
|
||||
:group 'killing
|
||||
:version "24.1")
|
||||
|
||||
(defun delete-backward-char (n &optional killflag)
|
||||
|
|
|
@ -41,7 +41,7 @@
|
|||
(defcustom initial-buffer-choice nil
|
||||
"Buffer to show after starting Emacs.
|
||||
If the value is nil and `inhibit-startup-screen' is nil, show the
|
||||
startup screen. If the value is string, visit the specified file
|
||||
startup screen. If the value is a string, visit the specified file
|
||||
or directory using `find-file'. If t, open the `*scratch*'
|
||||
buffer."
|
||||
:type '(choice
|
||||
|
|
|
@ -2023,7 +2023,10 @@ some sort of escape sequence, the ambiguity is resolved via `read-key-delay'."
|
|||
(let ((map (make-sparse-keymap)))
|
||||
;; Don't hide the menu-bar and tool-bar entries.
|
||||
(define-key map [menu-bar] (lookup-key global-map [menu-bar]))
|
||||
(define-key map [tool-bar] (lookup-key global-map [tool-bar]))
|
||||
(define-key map [tool-bar]
|
||||
;; This hack avoids evaluating the :filter (Bug#9922).
|
||||
(or (cdr (assq 'tool-bar global-map))
|
||||
(lookup-key global-map [tool-bar])))
|
||||
map))
|
||||
(aref (catch 'read-key (read-key-sequence-vector prompt nil t)) 0))
|
||||
(cancel-timer timer)
|
||||
|
|
|
@ -220,7 +220,7 @@ matching the resulting Git log output, and KEYWORDS is a list of
|
|||
(let ((diff (vc-git--run-command-string
|
||||
file "diff-index" "-p" "--raw" "-z" "HEAD" "--")))
|
||||
(if (and diff
|
||||
(string-match ":[0-7]\\{6\\} [0-7]\\{6\\} [0-9a-f]\\{40\\} [0-9a-f]\\{40\\} \\([ADMUT]\\)\0[^\0]+\0\\(.\\)?"
|
||||
(string-match ":[0-7]\\{6\\} [0-7]\\{6\\} [0-9a-f]\\{40\\} [0-9a-f]\\{40\\} \\([ADMUT]\\)\0[^\0]+\0\\(.*\n.\\)?"
|
||||
diff))
|
||||
(let ((diff-letter (match-string 1 diff)))
|
||||
(if (not (match-beginning 2))
|
||||
|
|
106
lisp/window.el
106
lisp/window.el
|
@ -1482,12 +1482,24 @@ edge of WINDOW consider using `adjust-window-trailing-edge'
|
|||
instead."
|
||||
(setq window (window-normalize-window window))
|
||||
(let* ((frame (window-frame window))
|
||||
(minibuffer-window (minibuffer-window frame))
|
||||
sibling)
|
||||
(cond
|
||||
((eq window (frame-root-window frame))
|
||||
(error "Cannot resize the root window of a frame"))
|
||||
((window-minibuffer-p window)
|
||||
(window--resize-mini-window window delta))
|
||||
(if horizontal
|
||||
(error "Cannot resize minibuffer window horizontally")
|
||||
(window--resize-mini-window window delta)))
|
||||
((and (not horizontal)
|
||||
(window-full-height-p window)
|
||||
(eq (window-frame minibuffer-window) frame)
|
||||
(or (not resize-mini-windows)
|
||||
(eq minibuffer-window (active-minibuffer-window))))
|
||||
;; If WINDOW is full height and either `resize-mini-windows' is
|
||||
;; nil or the minibuffer window is active, resize the minibuffer
|
||||
;; window.
|
||||
(window--resize-mini-window minibuffer-window (- delta)))
|
||||
((window--resizable-p window delta horizontal ignore)
|
||||
(window--resize-reset frame horizontal)
|
||||
(window--resize-this-window window delta horizontal ignore t)
|
||||
|
@ -2002,17 +2014,25 @@ right. If DELTA is less than zero, move the edge upwards or to
|
|||
the left. If the edge can't be moved by DELTA lines or columns,
|
||||
move it as far as possible in the desired direction."
|
||||
(setq window (window-normalize-window window))
|
||||
(let ((frame (window-frame window))
|
||||
(right window)
|
||||
left this-delta min-delta max-delta)
|
||||
(let* ((frame (window-frame window))
|
||||
(minibuffer-window (minibuffer-window frame))
|
||||
(right window)
|
||||
left this-delta min-delta max-delta)
|
||||
;; Find the edge we want to move.
|
||||
(while (and (or (not (window-combined-p right horizontal))
|
||||
(not (window-right right)))
|
||||
(setq right (window-parent right))))
|
||||
(cond
|
||||
((and (not right) (not horizontal) (not resize-mini-windows)
|
||||
(eq (window-frame (minibuffer-window frame)) frame))
|
||||
(window--resize-mini-window (minibuffer-window frame) (- delta)))
|
||||
((and (not right) (not horizontal)
|
||||
;; Resize the minibuffer window if it's on the same frame as
|
||||
;; and immediately below WINDOW and it's either active or
|
||||
;; `resize-mini-windows' is nil.
|
||||
(eq (window-frame minibuffer-window) frame)
|
||||
(= (nth 1 (window-edges minibuffer-window))
|
||||
(nth 3 (window-edges window)))
|
||||
(or (not resize-mini-windows)
|
||||
(eq minibuffer-window (active-minibuffer-window))))
|
||||
(window--resize-mini-window minibuffer-window (- delta)))
|
||||
((or (not (setq left right)) (not (setq right (window-right right))))
|
||||
(if horizontal
|
||||
(error "No window on the right of this one")
|
||||
|
@ -2109,18 +2129,30 @@ make selected window wider by DELTA columns. If DELTA is
|
|||
negative, shrink selected window by -DELTA lines or columns.
|
||||
Return nil."
|
||||
(interactive "p")
|
||||
(cond
|
||||
((zerop delta))
|
||||
((window-size-fixed-p nil horizontal)
|
||||
(error "Selected window has fixed size"))
|
||||
((window--resizable-p nil delta horizontal)
|
||||
(window-resize nil delta horizontal))
|
||||
(t
|
||||
(window-resize
|
||||
nil (if (> delta 0)
|
||||
(window-max-delta nil horizontal)
|
||||
(- (window-min-delta nil horizontal)))
|
||||
horizontal))))
|
||||
(let ((minibuffer-window (minibuffer-window)))
|
||||
(cond
|
||||
((zerop delta))
|
||||
((window-size-fixed-p nil horizontal)
|
||||
(error "Selected window has fixed size"))
|
||||
((window-minibuffer-p)
|
||||
(if horizontal
|
||||
(error "Cannot resize minibuffer window horizontally")
|
||||
(window--resize-mini-window (selected-window) delta)))
|
||||
((and (not horizontal)
|
||||
(window-full-height-p)
|
||||
(eq (window-frame minibuffer-window) (selected-frame))
|
||||
(not resize-mini-windows))
|
||||
;; If the selected window is full height and `resize-mini-windows'
|
||||
;; is nil, resize the minibuffer window.
|
||||
(window--resize-mini-window minibuffer-window (- delta)))
|
||||
((window--resizable-p nil delta horizontal)
|
||||
(window-resize nil delta horizontal))
|
||||
(t
|
||||
(window-resize
|
||||
nil (if (> delta 0)
|
||||
(window-max-delta nil horizontal)
|
||||
(- (window-min-delta nil horizontal)))
|
||||
horizontal)))))
|
||||
|
||||
(defun shrink-window (delta &optional horizontal)
|
||||
"Make the selected window DELTA lines smaller.
|
||||
|
@ -2131,18 +2163,30 @@ negative, enlarge selected window by -DELTA lines or columns.
|
|||
Also see the `window-min-height' variable.
|
||||
Return nil."
|
||||
(interactive "p")
|
||||
(cond
|
||||
((zerop delta))
|
||||
((window-size-fixed-p nil horizontal)
|
||||
(error "Selected window has fixed size"))
|
||||
((window--resizable-p nil (- delta) horizontal)
|
||||
(window-resize nil (- delta) horizontal))
|
||||
(t
|
||||
(window-resize
|
||||
nil (if (> delta 0)
|
||||
(- (window-min-delta nil horizontal))
|
||||
(window-max-delta nil horizontal))
|
||||
horizontal))))
|
||||
(let ((minibuffer-window (minibuffer-window)))
|
||||
(cond
|
||||
((zerop delta))
|
||||
((window-size-fixed-p nil horizontal)
|
||||
(error "Selected window has fixed size"))
|
||||
((window-minibuffer-p)
|
||||
(if horizontal
|
||||
(error "Cannot resize minibuffer window horizontally")
|
||||
(window--resize-mini-window (selected-window) (- delta))))
|
||||
((and (not horizontal)
|
||||
(window-full-height-p)
|
||||
(eq (window-frame minibuffer-window) (selected-frame))
|
||||
(not resize-mini-windows))
|
||||
;; If the selected window is full height and `resize-mini-windows'
|
||||
;; is nil, resize the minibuffer window.
|
||||
(window--resize-mini-window minibuffer-window delta))
|
||||
((window--resizable-p nil (- delta) horizontal)
|
||||
(window-resize nil (- delta) horizontal))
|
||||
(t
|
||||
(window-resize
|
||||
nil (if (> delta 0)
|
||||
(- (window-min-delta nil horizontal))
|
||||
(window-max-delta nil horizontal))
|
||||
horizontal)))))
|
||||
|
||||
(defun maximize-window (&optional window)
|
||||
"Maximize WINDOW.
|
||||
|
|
|
@ -323,7 +323,8 @@ If PARSE-NS is non-nil, then QNAMES are expanded."
|
|||
(cond
|
||||
((null result)
|
||||
;; Not looking at an xml start tag.
|
||||
(forward-char 1))
|
||||
(unless (eobp)
|
||||
(forward-char 1)))
|
||||
((and xml (not xml-sub-parser))
|
||||
;; Translation of rule [1] of XML specifications
|
||||
(error "XML: (Not Well-Formed) Only one root tag allowed"))
|
||||
|
@ -422,7 +423,8 @@ Returns one of:
|
|||
((looking-at "<!--")
|
||||
(search-forward "-->")
|
||||
(skip-syntax-forward " ")
|
||||
(xml-parse-tag parse-dtd xml-ns))
|
||||
(unless (eobp)
|
||||
(xml-parse-tag parse-dtd xml-ns)))
|
||||
;; end tag
|
||||
((looking-at "</")
|
||||
'())
|
||||
|
|
|
@ -1,3 +1,30 @@
|
|||
2012-04-27 Chong Yidong <cyd@gnu.org>
|
||||
|
||||
* xselect.c (x_convert_selection): Initialize a pointer (Bug#11315).
|
||||
|
||||
2012-04-27 Eli Zaretskii <eliz@gnu.org>
|
||||
|
||||
* xdisp.c (pos_visible_p): If the window start position is beyond
|
||||
ZV, start the display from buffer beginning. Prevents assertion
|
||||
violation in init_iterator when the minibuffer window is scrolled
|
||||
via the scroll bar.
|
||||
|
||||
* window.c (window_scroll_pixel_based): Likewise.
|
||||
|
||||
2012-04-27 Chong Yidong <cyd@gnu.org>
|
||||
|
||||
* keymap.c (where_is_internal): Doc fix (Bug#10872).
|
||||
|
||||
2012-04-27 Glenn Morris <rgm@gnu.org>
|
||||
|
||||
* fileio.c (Fcopy_file, Fset_file_selinux_context):
|
||||
Ignore ENOTSUP failures from setfilecon functions. (Bug#11245)
|
||||
|
||||
2012-04-27 Eli Zaretskii <eliz@gnu.org>
|
||||
|
||||
* dispnew.c (swap_glyph_pointers, copy_row_except_pointers): Don't
|
||||
overrun array limits of glyph row's used[] array. (Bug#11288)
|
||||
|
||||
2012-04-26 Eli Zaretskii <eliz@gnu.org>
|
||||
|
||||
* xdisp.c (IT_DISPLAYING_WHITESPACE): In addition to the loaded
|
||||
|
|
|
@ -1085,12 +1085,16 @@ swap_glyph_pointers (struct glyph_row *a, struct glyph_row *b)
|
|||
for (i = 0; i < LAST_AREA + 1; ++i)
|
||||
{
|
||||
struct glyph *temp = a->glyphs[i];
|
||||
short used_tem = a->used[i];
|
||||
|
||||
a->glyphs[i] = b->glyphs[i];
|
||||
b->glyphs[i] = temp;
|
||||
a->used[i] = b->used[i];
|
||||
b->used[i] = used_tem;
|
||||
if (i < LAST_AREA)
|
||||
{
|
||||
short used_tem = a->used[i];
|
||||
|
||||
a->used[i] = b->used[i];
|
||||
b->used[i] = used_tem;
|
||||
}
|
||||
}
|
||||
a->hash = b->hash;
|
||||
b->hash = hash_tem;
|
||||
|
@ -1105,7 +1109,7 @@ static inline void
|
|||
copy_row_except_pointers (struct glyph_row *to, struct glyph_row *from)
|
||||
{
|
||||
struct glyph *pointers[1 + LAST_AREA];
|
||||
short used[1 + LAST_AREA];
|
||||
short used[LAST_AREA];
|
||||
unsigned hashval;
|
||||
|
||||
/* Save glyph pointers of TO. */
|
||||
|
|
12
src/fileio.c
12
src/fileio.c
|
@ -1,6 +1,6 @@
|
|||
/* File IO for GNU Emacs.
|
||||
|
||||
Copyright (C) 1985-1988, 1993-2012 Free Software Foundation, Inc.
|
||||
Copyright (C) 1985-1988, 1993-2012 Free Software Foundation, Inc.
|
||||
|
||||
This file is part of GNU Emacs.
|
||||
|
||||
|
@ -2044,9 +2044,10 @@ on the system, we copy the SELinux context of FILE to NEWNAME. */)
|
|||
#if HAVE_LIBSELINUX
|
||||
if (conlength > 0)
|
||||
{
|
||||
/* Set the modified context back to the file. */
|
||||
/* Set the modified context back to the file. */
|
||||
fail = fsetfilecon (ofd, con);
|
||||
if (fail)
|
||||
/* See http://debbugs.gnu.org/11245 for ENOTSUP. */
|
||||
if (fail && errno != ENOTSUP)
|
||||
report_file_error ("Doing fsetfilecon", Fcons (newname, Qnil));
|
||||
|
||||
freecon (con);
|
||||
|
@ -2917,10 +2918,11 @@ compiled with SELinux support. */)
|
|||
error ("Doing context_range_set");
|
||||
}
|
||||
|
||||
/* Set the modified context back to the file. */
|
||||
/* Set the modified context back to the file. */
|
||||
fail = lsetfilecon (SSDATA (encoded_absname),
|
||||
context_str (parsed_con));
|
||||
if (fail)
|
||||
/* See http://debbugs.gnu.org/11245 for ENOTSUP. */
|
||||
if (fail && errno != ENOTSUP)
|
||||
report_file_error ("Doing lsetfilecon", Fcons (absname, Qnil));
|
||||
|
||||
context_free (parsed_con);
|
||||
|
|
17
src/keymap.c
17
src/keymap.c
|
@ -2553,7 +2553,8 @@ where_is_internal (Lisp_Object definition, Lisp_Object keymaps,
|
|||
DEFUN ("where-is-internal", Fwhere_is_internal, Swhere_is_internal, 1, 5, 0,
|
||||
doc: /* Return list of keys that invoke DEFINITION.
|
||||
If KEYMAP is a keymap, search only KEYMAP and the global keymap.
|
||||
If KEYMAP is nil, search all the currently active keymaps.
|
||||
If KEYMAP is nil, search all the currently active keymaps, except
|
||||
for `overriding-local-map' (which is ignored).
|
||||
If KEYMAP is a list of keymaps, search only those keymaps.
|
||||
|
||||
If optional 3rd arg FIRSTONLY is non-nil, return the first key sequence found,
|
||||
|
@ -2568,9 +2569,17 @@ If optional 4th arg NOINDIRECT is non-nil, don't follow indirections
|
|||
to other keymaps or slots. This makes it possible to search for an
|
||||
indirect definition itself.
|
||||
|
||||
If optional 5th arg NO-REMAP is non-nil, don't search for key sequences
|
||||
that invoke a command which is remapped to DEFINITION, but include the
|
||||
remapped command in the returned list. */)
|
||||
The optional 5th arg NO-REMAP alters how command remapping is handled:
|
||||
|
||||
- If another command OTHER-COMMAND is remapped to DEFINITION, normally
|
||||
search for the bindings of OTHER-COMMAND and include them in the
|
||||
returned list. But if NO-REMAP is non-nil, include the vector
|
||||
[remap OTHER-COMMAND] in the returned list instead, without
|
||||
searching for those other bindings.
|
||||
|
||||
- If DEFINITION is remapped to OTHER-COMMAND, normally return the
|
||||
bindings for OTHER-COMMAND. But if NO-REMAP is non-nil, return the
|
||||
bindings for DEFINITION instead, ignoring its remapping. */)
|
||||
(Lisp_Object definition, Lisp_Object keymap, Lisp_Object firstonly, Lisp_Object noindirect, Lisp_Object no_remap)
|
||||
{
|
||||
/* The keymaps in which to search. */
|
||||
|
|
|
@ -4221,6 +4221,11 @@ window_scroll_pixel_based (Lisp_Object window, int n, int whole, int noerror)
|
|||
void *itdata = NULL;
|
||||
|
||||
SET_TEXT_POS_FROM_MARKER (start, w->start);
|
||||
/* Scrolling a minibuffer window via scroll bar when the echo area
|
||||
shows long text sometimes resets the minibuffer contents behind
|
||||
our backs. */
|
||||
if (CHARPOS (start) > ZV)
|
||||
SET_TEXT_POS (start, BEGV, BEGV_BYTE);
|
||||
|
||||
/* If PT is not visible in WINDOW, move back one half of
|
||||
the screen. Allow PT to be partially visible, otherwise
|
||||
|
|
|
@ -1275,6 +1275,11 @@ pos_visible_p (struct window *w, EMACS_INT charpos, int *x, int *y,
|
|||
}
|
||||
|
||||
SET_TEXT_POS_FROM_MARKER (top, w->start);
|
||||
/* Scrolling a minibuffer window via scroll bar when the echo area
|
||||
shows long text sometimes resets the minibuffer contents behind
|
||||
our backs. */
|
||||
if (CHARPOS (top) > ZV)
|
||||
SET_TEXT_POS (top, BEGV, BEGV_BYTE);
|
||||
|
||||
/* Compute exact mode line heights. */
|
||||
if (WINDOW_WANTS_MODELINE_P (w))
|
||||
|
|
|
@ -931,6 +931,7 @@ x_convert_selection (struct input_event *event, Lisp_Object selection_symbol,
|
|||
|
||||
/* Otherwise, record the converted selection to binary. */
|
||||
cs = xmalloc (sizeof (struct selection_data));
|
||||
cs->data = NULL;
|
||||
cs->nofree = 1;
|
||||
cs->property = property;
|
||||
cs->wait_object = NULL;
|
||||
|
|
Loading…
Add table
Reference in a new issue