Merge from emacs-24; up to 2012-04-24T08:35:02Z!lekktu@gmail.com
This commit is contained in:
commit
33017fafd1
49 changed files with 549 additions and 203 deletions
|
@ -1,3 +1,61 @@
|
|||
2012-05-27 Chong Yidong <cyd@gnu.org>
|
||||
|
||||
* functions.texi (Obsolete Functions):
|
||||
Fix doc for set-advertised-calling-convention.
|
||||
|
||||
* modes.texi (Mode Help): Fix describe-mode.
|
||||
|
||||
* display.texi (Face Functions): Fix define-obsolete-face-alias.
|
||||
|
||||
* variables.texi (Variable Aliases): Fix make-obsolete-variable.
|
||||
|
||||
2012-05-27 Martin Rudalics <rudalics@gmx.at>
|
||||
|
||||
* commands.texi (Recursive Editing): recursive-edit is a command.
|
||||
|
||||
* compile.texi (Docs and Compilation):
|
||||
byte-compile-dynamic-docstrings is an option.
|
||||
|
||||
* debugging.texi (Invoking the Debugger): debug is a command.
|
||||
|
||||
* display.texi (Progress): progress-reporter-update and
|
||||
progress-reporter-force-update have VALUE argument optional.
|
||||
(Animated Images): Use non-@code{nil} instead of non-nil.
|
||||
|
||||
* files.texi (Format Conversion Round-Trip):
|
||||
Use non-@code{nil} instead of non-nil.
|
||||
|
||||
* frames.texi (Creating Frames): make-frame is a command.
|
||||
(Input Focus): select-frame is a command.
|
||||
(Pointer Shape): void-text-area-pointer is an option.
|
||||
|
||||
* help.texi (Describing Characters): read-kbd-macro is a command.
|
||||
(Help Functions): describe-prefix-bindings is a command.
|
||||
|
||||
* markers.texi (Creating Markers): Both arguments of copy-marker
|
||||
are optional.
|
||||
|
||||
* minibuf.texi (Reading File Names): Use @kbd instead of @code.
|
||||
|
||||
* modes.texi (Mode Line Variables): mode-line-remote and
|
||||
mode-line-client are not options.
|
||||
(Imenu): imenu-add-to-menubar is a command.
|
||||
(SMIE Indentation Helpers): Use non-@code{nil} instead of non-nil.
|
||||
|
||||
* os.texi (Sound Output): play-sound-file is a command.
|
||||
|
||||
* package.texi (Package Archives): Use @key{RET} instead of @kbd{RET}.
|
||||
|
||||
* processes.texi (Signals to Processes):
|
||||
Use @key{RET} instead of @code{RET}.
|
||||
(Signals to Processes): signal-process is a command.
|
||||
|
||||
* text.texi (Clickable Text): Use @key{RET} instead of @kbd{RET}.
|
||||
(Base 64): base64-encode-string is not a command while
|
||||
base64-decode-region is.
|
||||
|
||||
* windows.texi (Switching Buffers): pop-to-buffer is a command.
|
||||
|
||||
2012-05-12 Glenn Morris <rgm@gnu.org>
|
||||
|
||||
* Makefile.in (MKDIR_P): New, set by configure.
|
||||
|
|
|
@ -3210,7 +3210,7 @@ a recursive edit but also provides the other features of the debugger.
|
|||
Recursive editing levels are also used when you type @kbd{C-r} in
|
||||
@code{query-replace} or use @kbd{C-x q} (@code{kbd-macro-query}).
|
||||
|
||||
@defun recursive-edit
|
||||
@deffn Command recursive-edit
|
||||
@cindex suspend evaluation
|
||||
This function invokes the editor command loop. It is called
|
||||
automatically by the initialization of Emacs, to let the user begin
|
||||
|
@ -3237,7 +3237,7 @@ then type @kbd{C-M-c} to exit and continue executing @code{simple-rec}.
|
|||
(simple-rec)
|
||||
@result{} nil
|
||||
@end example
|
||||
@end defun
|
||||
@end deffn
|
||||
|
||||
@deffn Command exit-recursive-edit
|
||||
This function exits from the innermost recursive edit (including
|
||||
|
|
|
@ -290,10 +290,10 @@ is by adding this string to the file's first line:
|
|||
-*-byte-compile-dynamic-docstrings: nil;-*-
|
||||
@end example
|
||||
|
||||
@defvar byte-compile-dynamic-docstrings
|
||||
@defopt byte-compile-dynamic-docstrings
|
||||
If this is non-@code{nil}, the byte compiler generates compiled files
|
||||
that are set up for dynamic loading of documentation strings.
|
||||
@end defvar
|
||||
@end defopt
|
||||
|
||||
@node Dynamic Loading
|
||||
@section Dynamic Loading of Individual Functions
|
||||
|
|
|
@ -447,7 +447,7 @@ erroneously show up in this list.
|
|||
Here we describe in full detail the function @code{debug} that is used
|
||||
to invoke the debugger.
|
||||
|
||||
@defun debug &rest debugger-args
|
||||
@deffn Command debug &rest debugger-args
|
||||
This function enters the debugger. It switches buffers to a buffer
|
||||
named @file{*Backtrace*} (or @file{*Backtrace*<2>} if it is the second
|
||||
recursive entry to the debugger, etc.), and fills it with information
|
||||
|
@ -534,7 +534,7 @@ are printed on the top line of the buffer. You can use this feature to
|
|||
display messages---for example, to remind yourself of the conditions
|
||||
under which @code{debug} is called.
|
||||
@end table
|
||||
@end defun
|
||||
@end deffn
|
||||
|
||||
@node Internals of Debugger
|
||||
@subsection Internals of the Debugger
|
||||
|
|
|
@ -413,7 +413,7 @@ This function calls @code{progress-reporter-update}, so the first
|
|||
message is printed immediately.
|
||||
@end defun
|
||||
|
||||
@defun progress-reporter-update reporter value
|
||||
@defun progress-reporter-update reporter &optional value
|
||||
This function does the main work of reporting progress of your
|
||||
operation. It displays the message of @var{reporter}, followed by
|
||||
progress percentage determined by @var{value}. If percentage is zero,
|
||||
|
@ -434,7 +434,7 @@ try to reduce the number of calls to it: resulting overhead will most
|
|||
likely negate your effort.
|
||||
@end defun
|
||||
|
||||
@defun progress-reporter-force-update reporter value &optional new-message
|
||||
@defun progress-reporter-force-update reporter &optional value new-message
|
||||
This function is similar to @code{progress-reporter-update} except
|
||||
that it prints a message in the echo area unconditionally.
|
||||
|
||||
|
@ -2662,11 +2662,13 @@ makes @code{modeline} an alias for the @code{mode-line} face.
|
|||
(put 'modeline 'face-alias 'mode-line)
|
||||
@end example
|
||||
|
||||
@defun define-obsolete-face-alias obsolete-face current-face &optional when
|
||||
This function defines a face alias and marks it as obsolete, indicating
|
||||
that it may be removed in future. The optional string @var{when}
|
||||
indicates when the face was made obsolete (for example, a release number).
|
||||
@end defun
|
||||
@defmac define-obsolete-face-alias obsolete-face current-face when
|
||||
This macro defines @code{obsolete-face} as an alias for
|
||||
@var{current-face}, and also marks it as obsolete, indicating that it
|
||||
may be removed in future. @var{when} should be a string indicating
|
||||
when @code{obsolete-face} was made obsolete (usually a version number
|
||||
string).
|
||||
@end defmac
|
||||
|
||||
@node Auto Faces
|
||||
@subsection Automatic Face Assignment
|
||||
|
@ -4904,7 +4906,7 @@ create animation. Currently, Emacs only supports animated GIF files.
|
|||
The following functions related to animated images are available.
|
||||
|
||||
@defun image-animated-p image
|
||||
This function returns non-nil if @var{image} can be animated.
|
||||
This function returns non-@code{nil} if @var{image} can be animated.
|
||||
The actual return value is a cons @code{(@var{nimages} . @var{delay})},
|
||||
where @var{nimages} is the number of frames and @var{delay} is the
|
||||
delay in seconds between them.
|
||||
|
|
|
@ -3133,10 +3133,10 @@ in the order of appearance in the list.
|
|||
This command writes the current buffer contents into the file @var{file}
|
||||
in a format based on @var{format}, which is a list of format names. It
|
||||
constructs the actual format starting from @var{format}, then appending
|
||||
any elements from the value of @code{buffer-file-format} with a non-nil
|
||||
@var{preserve} flag (see above), if they are not already present in
|
||||
@var{format}. It then updates @code{buffer-file-format} with this
|
||||
format, making it the default for future saves. Except for the
|
||||
any elements from the value of @code{buffer-file-format} with a
|
||||
non-@code{nil} @var{preserve} flag (see above), if they are not already
|
||||
present in @var{format}. It then updates @code{buffer-file-format} with
|
||||
this format, making it the default for future saves. Except for the
|
||||
@var{format} argument, this command is similar to @code{write-file}. In
|
||||
particular, @var{confirm} has the same meaning and interactive treatment
|
||||
as the corresponding argument to @code{write-file}. @xref{Definition of
|
||||
|
|
|
@ -108,7 +108,7 @@ for @code{framep} above.
|
|||
|
||||
To create a new frame, call the function @code{make-frame}.
|
||||
|
||||
@defun make-frame &optional alist
|
||||
@deffn Command make-frame &optional alist
|
||||
This function creates and returns a new frame, displaying the current
|
||||
buffer.
|
||||
|
||||
|
@ -134,7 +134,7 @@ This function itself does not make the new frame the selected frame.
|
|||
@xref{Input Focus}. The previously selected frame remains selected.
|
||||
On graphical terminals, however, the windowing system may select the
|
||||
new frame for its own reasons.
|
||||
@end defun
|
||||
@end deffn
|
||||
|
||||
@defvar before-make-frame-hook
|
||||
A normal hook run by @code{make-frame} before it creates the frame.
|
||||
|
@ -1395,7 +1395,7 @@ same meaning as for @code{select-frame} (see below). The return value
|
|||
of this function is not significant.
|
||||
@end defun
|
||||
|
||||
@defun select-frame frame &optional norecord
|
||||
@deffn Command select-frame frame &optional norecord
|
||||
This function selects frame @var{frame}, temporarily disregarding the
|
||||
focus of the X server if any. The selection of @var{frame} lasts until
|
||||
the next time the user does something to select a different frame, or
|
||||
|
@ -1418,7 +1418,7 @@ been deleted.
|
|||
In general, you should never use @code{select-frame} in a way that
|
||||
could switch to a different terminal without switching back when
|
||||
you're done.
|
||||
@end defun
|
||||
@end deffn
|
||||
|
||||
Emacs cooperates with the window system by arranging to select frames as
|
||||
the server and window manager request. It does so by generating a
|
||||
|
|
|
@ -1178,12 +1178,14 @@ equivalent to the following:
|
|||
In addition, you can mark a certain a particular calling convention
|
||||
for a function as obsolete:
|
||||
|
||||
@defun set-advertised-calling-convention function signature
|
||||
@defun set-advertised-calling-convention function signature when
|
||||
This function specifies the argument list @var{signature} as the
|
||||
correct way to call @var{function}. This causes the Emacs byte
|
||||
compiler to issue a warning whenever it comes across an Emacs Lisp
|
||||
program that calls @var{function} any other way (however, it will
|
||||
still allow the code to be byte compiled).
|
||||
still allow the code to be byte compiled). @var{when} should be a
|
||||
string indicating when the variable was first made obsolete (usually a
|
||||
version number string).
|
||||
|
||||
For instance, in old versions of Emacs the @code{sit-for} function
|
||||
accepted three arguments, like this
|
||||
|
@ -1198,7 +1200,7 @@ this:
|
|||
|
||||
@example
|
||||
(set-advertised-calling-convention
|
||||
'sit-for '(seconds &optional nodisp))
|
||||
'sit-for '(seconds &optional nodisp) "22.1")
|
||||
@end example
|
||||
@end defun
|
||||
|
||||
|
|
|
@ -511,7 +511,7 @@ for Meta.
|
|||
@end smallexample
|
||||
@end defun
|
||||
|
||||
@defun read-kbd-macro string &optional need-vector
|
||||
@deffn Command read-kbd-macro string &optional need-vector
|
||||
This function is used mainly for operating on keyboard macros, but it
|
||||
can also be used as a rough inverse for @code{key-description}. You
|
||||
call it with a string containing key descriptions, separated by spaces;
|
||||
|
@ -519,7 +519,7 @@ it returns a string or vector containing the corresponding events.
|
|||
(This may or may not be a single valid key sequence, depending on what
|
||||
events you use; @pxref{Key Sequences}.) If @var{need-vector} is
|
||||
non-@code{nil}, the return value is always a vector.
|
||||
@end defun
|
||||
@end deffn
|
||||
|
||||
@node Help Functions
|
||||
@section Help Functions
|
||||
|
@ -626,12 +626,12 @@ character, and the help character has no binding after that prefix. The
|
|||
variable's default value is @code{describe-prefix-bindings}.
|
||||
@end defvar
|
||||
|
||||
@defun describe-prefix-bindings
|
||||
@deffn Command describe-prefix-bindings
|
||||
This function calls @code{describe-bindings} to display a list of all
|
||||
the subcommands of the prefix key of the most recent key sequence. The
|
||||
prefix described consists of all but the last event of that key
|
||||
sequence. (The last event is, presumably, the help character.)
|
||||
@end defun
|
||||
@end deffn
|
||||
|
||||
The following two functions are meant for modes that want to provide
|
||||
help without relinquishing control, such as the ``electric'' modes.
|
||||
|
|
|
@ -205,7 +205,7 @@ chapter.
|
|||
@end example
|
||||
@end defun
|
||||
|
||||
@defun copy-marker marker-or-integer &optional insertion-type
|
||||
@defun copy-marker &optional marker-or-integer insertion-type
|
||||
If passed a marker as its argument, @code{copy-marker} returns a
|
||||
new marker that points to the same place and the same buffer as does
|
||||
@var{marker-or-integer}. If passed an integer as its argument,
|
||||
|
|
|
@ -1404,7 +1404,7 @@ returns the pre-inserted contents of the minibuffer.
|
|||
If the user types @key{RET} in an empty minibuffer, this function
|
||||
returns an empty string, regardless of the value of
|
||||
@var{require-match}. This is, for instance, how the user can make the
|
||||
current buffer visit no file using @code{M-x set-visited-file-name}.
|
||||
current buffer visit no file using @kbd{M-x set-visited-file-name}.
|
||||
|
||||
If @var{predicate} is non-@code{nil}, it specifies a function of one
|
||||
argument that decides which file names are acceptable completion
|
||||
|
|
|
@ -734,13 +734,15 @@ modes. It is normally bound to @kbd{C-h m}. It uses the value of the
|
|||
variable @code{major-mode} (@pxref{Major Modes}), which is why every
|
||||
major mode command needs to set that variable.
|
||||
|
||||
@deffn Command describe-mode
|
||||
This function displays the documentation of the current major mode.
|
||||
@deffn Command describe-mode &optional buffer
|
||||
This command displays the documentation of the current buffer's major
|
||||
mode and minor modes. It uses the @code{documentation} function to
|
||||
retrieve the documentation strings of the major and minor mode
|
||||
commands (@pxref{Accessing Documentation}).
|
||||
|
||||
The @code{describe-mode} function calls the @code{documentation}
|
||||
function using the value of @code{major-mode} as an argument. Thus, it
|
||||
displays the documentation string of the major mode command.
|
||||
(@xref{Accessing Documentation}.)
|
||||
If called from Lisp with a non-nil @var{buffer} argument, this
|
||||
function displays the documentation for that buffer's major and minor
|
||||
modes, rather than those of the current buffer.
|
||||
@end deffn
|
||||
|
||||
@node Derived Modes
|
||||
|
@ -1990,14 +1992,14 @@ default value also displays the recursive editing level, information
|
|||
on the process status, and whether narrowing is in effect.
|
||||
@end defopt
|
||||
|
||||
@defopt mode-line-remote
|
||||
@defvar mode-line-remote
|
||||
This variable is used to show whether @code{default-directory} for the
|
||||
current buffer is remote.
|
||||
@end defopt
|
||||
@end defvar
|
||||
|
||||
@defopt mode-line-client
|
||||
@defvar mode-line-client
|
||||
This variable is used to identify @code{emacsclient} frames.
|
||||
@end defopt
|
||||
@end defvar
|
||||
|
||||
The following three variables are used in @code{mode-line-modes}:
|
||||
|
||||
|
@ -2315,10 +2317,10 @@ definitions, or other named portions of the buffer; then the user can
|
|||
choose one of them and move point to it. Major modes can add a menu
|
||||
bar item to use Imenu using @code{imenu-add-to-menubar}.
|
||||
|
||||
@defun imenu-add-to-menubar name
|
||||
@deffn Command imenu-add-to-menubar name
|
||||
This function defines a local menu bar item named @var{name}
|
||||
to run Imenu.
|
||||
@end defun
|
||||
@end deffn
|
||||
|
||||
The user-level commands for using Imenu are described in the Emacs
|
||||
Manual (@pxref{Imenu,, Imenu, emacs, the Emacs Manual}). This section
|
||||
|
@ -3860,9 +3862,9 @@ Return non-@code{nil} if the current token's parent is among @var{parents}.
|
|||
@end defun
|
||||
|
||||
@defun smie-rule-sibling-p
|
||||
Return non-nil if the current token's parent is actually a sibling.
|
||||
This is the case for example when the parent of a @code{","} is just the
|
||||
previous @code{","}.
|
||||
Return non-@code{nil} if the current token's parent is actually a
|
||||
sibling. This is the case for example when the parent of a @code{","}
|
||||
is just the previous @code{","}.
|
||||
@end defun
|
||||
|
||||
@defun smie-rule-parent &optional offset
|
||||
|
|
|
@ -2108,10 +2108,10 @@ calls the functions in the list @code{play-sound-functions}.
|
|||
Each function is called with one argument, @var{sound}.
|
||||
@end defun
|
||||
|
||||
@defun play-sound-file file &optional volume device
|
||||
@deffn Command play-sound-file file &optional volume device
|
||||
This function is an alternative interface to playing a sound @var{file}
|
||||
specifying an optional @var{volume} and @var{device}.
|
||||
@end defun
|
||||
@end deffn
|
||||
|
||||
@defvar play-sound-functions
|
||||
A list of functions to be called before playing a sound. Each function
|
||||
|
|
|
@ -294,8 +294,8 @@ How to accomplish this is beyond the scope of this manual.
|
|||
|
||||
A convenient way to set up and update a package archive is via the
|
||||
@code{package-x} library. This is included with Emacs, but not loaded
|
||||
by default; type @kbd{M-x load-library @kbd{RET} package-x @kbd{RET}}
|
||||
to load it, or add @code{(require 'package-x)} to your init file.
|
||||
by default; type @kbd{M-x load-library @key{RET} package-x @key{RET}} to
|
||||
load it, or add @code{(require 'package-x)} to your init file.
|
||||
@xref{Lisp Libraries,, Lisp Libraries, emacs, The GNU Emacs Manual}.
|
||||
Once loaded, you can make use of the following:
|
||||
|
||||
|
|
|
@ -1073,7 +1073,7 @@ job-control shells won't work when a pipe is used. See
|
|||
@defun interrupt-process &optional process current-group
|
||||
This function interrupts the process @var{process} by sending the
|
||||
signal @code{SIGINT}. Outside of Emacs, typing the ``interrupt
|
||||
character'' (normally @kbd{C-c} on some systems, and @code{DEL} on
|
||||
character'' (normally @kbd{C-c} on some systems, and @key{DEL} on
|
||||
others) sends this signal. When the argument @var{current-group} is
|
||||
non-@code{nil}, you can think of this function as ``typing @kbd{C-c}''
|
||||
on the terminal by which Emacs talks to the subprocess.
|
||||
|
@ -1112,7 +1112,7 @@ it the signal @code{SIGCONT}. This presumes that @var{process} was
|
|||
stopped previously.
|
||||
@end defun
|
||||
|
||||
@defun signal-process process signal
|
||||
@deffn Command signal-process process signal
|
||||
This function sends a signal to process @var{process}. The argument
|
||||
@var{signal} specifies which signal to send; it should be an integer,
|
||||
or a symbol whose name is a signal.
|
||||
|
@ -1120,7 +1120,7 @@ or a symbol whose name is a signal.
|
|||
The @var{process} argument can be a system process @acronym{ID} (an
|
||||
integer); that allows you to send signals to processes that are not
|
||||
children of Emacs. @xref{System Processes}.
|
||||
@end defun
|
||||
@end deffn
|
||||
|
||||
@node Output from Processes
|
||||
@section Receiving Output from Processes
|
||||
|
|
|
@ -3530,7 +3530,7 @@ properties. For simplicity, we will refer to the clickable text as a
|
|||
@dfn{link}.
|
||||
|
||||
Implementing a link involves three separate steps: (1) indicating
|
||||
clickability when the mouse moves over the link; (2) making @kbd{RET}
|
||||
clickability when the mouse moves over the link; (2) making @key{RET}
|
||||
or @kbd{Mouse-2} on that link do something; and (3) setting up a
|
||||
@code{follow-link} condition so that the link obeys
|
||||
@code{mouse-1-click-follows-link}.
|
||||
|
@ -4068,7 +4068,7 @@ text, to avoid overlong lines. However, if the optional argument
|
|||
the output is just one long line.
|
||||
@end deffn
|
||||
|
||||
@deffn Command base64-encode-string string &optional no-line-break
|
||||
@defun base64-encode-string string &optional no-line-break
|
||||
This function converts the string @var{string} into base 64 code. It
|
||||
returns a string containing the encoded text. As for
|
||||
@code{base64-encode-region}, an error is signaled if a character in the
|
||||
|
@ -4078,15 +4078,15 @@ Normally, this function inserts newline characters into the encoded
|
|||
text, to avoid overlong lines. However, if the optional argument
|
||||
@var{no-line-break} is non-@code{nil}, these newlines are not added, so
|
||||
the result string is just one long line.
|
||||
@end deffn
|
||||
@end defun
|
||||
|
||||
@defun base64-decode-region beg end
|
||||
@deffn Command base64-decode-region beg end
|
||||
This function converts the region from @var{beg} to @var{end} from base
|
||||
64 code into the corresponding decoded text. It returns the length of
|
||||
the decoded text.
|
||||
|
||||
The decoding functions ignore newline characters in the encoded text.
|
||||
@end defun
|
||||
@end deffn
|
||||
|
||||
@defun base64-decode-string string
|
||||
This function converts the string @var{string} from base 64 code into
|
||||
|
|
|
@ -1852,16 +1852,19 @@ variable with a new name. @code{make-obsolete-variable} declares that
|
|||
the old name is obsolete and therefore that it may be removed at some
|
||||
stage in the future.
|
||||
|
||||
@defun make-obsolete-variable obsolete-name current-name &optional when
|
||||
@defun make-obsolete-variable obsolete-name current-name when &optional access-type
|
||||
This function makes the byte compiler warn that the variable
|
||||
@var{obsolete-name} is obsolete. If @var{current-name} is a symbol, it is
|
||||
the variable's new name; then the warning message says to use
|
||||
@var{current-name} instead of @var{obsolete-name}. If @var{current-name}
|
||||
is a string, this is the message and there is no replacement variable.
|
||||
@var{obsolete-name} is obsolete. If @var{current-name} is a symbol,
|
||||
it is the variable's new name; then the warning message says to use
|
||||
@var{current-name} instead of @var{obsolete-name}. If
|
||||
@var{current-name} is a string, this is the message and there is no
|
||||
replacement variable. @var{when} should be a string indicating when
|
||||
the variable was first made obsolete (usually a version number
|
||||
string).
|
||||
|
||||
If provided, @var{when} should be a string indicating when the
|
||||
variable was first made obsolete---for example, a date or a release
|
||||
number.
|
||||
The optional argument @var{access-type}, if non-@code{nil}, should
|
||||
should specify the kind of access that will trigger obsolescence
|
||||
warnings; it can be either @code{get} or @code{set}.
|
||||
@end defun
|
||||
|
||||
You can make two variables synonyms and declare one obsolete at the
|
||||
|
|
|
@ -1558,7 +1558,7 @@ displaying the buffer. Hence, all the variables affecting
|
|||
@code{display-buffer} will affect it as well. @xref{Choosing Window},
|
||||
for the documentation of @code{display-buffer}.
|
||||
|
||||
@defun pop-to-buffer buffer-or-name &optional action norecord
|
||||
@deffn Command pop-to-buffer buffer-or-name &optional action norecord
|
||||
This function makes @var{buffer-or-name} the current buffer and
|
||||
displays it in some window, preferably not the window previously
|
||||
selected. It then selects the displaying window. If that window is
|
||||
|
@ -1581,7 +1581,7 @@ displayed in the selected window.
|
|||
|
||||
Like @code{switch-to-buffer}, this function updates the buffer list
|
||||
unless @var{norecord} is non-@code{nil}.
|
||||
@end defun
|
||||
@end deffn
|
||||
|
||||
@node Choosing Window
|
||||
@section Choosing a Window for Display
|
||||
|
|
|
@ -1,7 +1,10 @@
|
|||
2012-05-27 Bastien Guerry <bzg@gnu.org>
|
||||
|
||||
* org.texi (Durations and time values): Fix typo.
|
||||
|
||||
2012-05-19 Jay Belanger <jay.p.belanger@gmail.com>
|
||||
|
||||
* doc/misc/calc.texi
|
||||
(Basic Operations on Units, Customizing Calc):
|
||||
* doc/misc/calc.texi (Basic Operations on Units, Customizing Calc):
|
||||
Mention `calc-ensure-consistent-units'.
|
||||
|
||||
2012-05-14 Andreas Schwab <schwab@linux-m68k.org>
|
||||
|
|
|
@ -4,8 +4,8 @@
|
|||
@setfilename ../../info/org
|
||||
@settitle The Org Manual
|
||||
|
||||
@set VERSION 7.8.09
|
||||
@set DATE April 2012
|
||||
@set VERSION 7.8.11
|
||||
@set DATE May 2012
|
||||
|
||||
@c Use proper quote and backtick for code sections in PDF output
|
||||
@c Cf. Texinfo manual 14.2
|
||||
|
@ -2625,7 +2625,7 @@ formulas or Elisp formulas:
|
|||
|
||||
Input duration values must be of the form @code{[HH:MM[:SS]}, where seconds
|
||||
are optional. With the @code{T} flag, computed durations will be displayed
|
||||
as @code{[HH:MM:SS} (see the first formula above). With the @code{t} flag,
|
||||
as @code{HH:MM:SS} (see the first formula above). With the @code{t} flag,
|
||||
computed durations will be displayed according to the value of the variable
|
||||
@code{org-table-duration-custom-format}, which defaults to @code{'hours} and
|
||||
will display the result as a fraction of hours (see the second formula in the
|
||||
|
@ -7900,9 +7900,9 @@ Interactively select another agenda view and append it to the current view.
|
|||
Delete other windows.
|
||||
@c
|
||||
@orgcmdkskc{v d,d,org-agenda-day-view}
|
||||
@xorgcmdkskc{v w,w,org-agenda-day-view}
|
||||
@xorgcmdkskc{v w,w,org-agenda-week-view}
|
||||
@xorgcmd{v m,org-agenda-month-view}
|
||||
@xorgcmd{v y,org-agenda-month-year}
|
||||
@xorgcmd{v y,org-agenda-year-view}
|
||||
@xorgcmd{v SPC,org-agenda-reset-view}
|
||||
@vindex org-agenda-span
|
||||
Switch to day/week/month/year view. When switching to day or week view, this
|
||||
|
|
Binary file not shown.
|
@ -1,5 +1,5 @@
|
|||
% Reference Card for Org Mode
|
||||
\def\orgversionnumber{7.8.09}
|
||||
\def\orgversionnumber{7.8.11}
|
||||
\def\versionyear{2012} % latest update
|
||||
\def\year{2012} % latest copyright year
|
||||
|
||||
|
|
|
@ -1,3 +1,18 @@
|
|||
2012-05-27 Eli Zaretskii <eliz@gnu.org>
|
||||
|
||||
* mail/sendmail.el (mail-yank-region): Recognize
|
||||
rmail-yank-current-message in addition to insert-buffer. Fixes
|
||||
mail-mode's "C-c C-r" that otherwise does nothing when invoked in
|
||||
a *mail* buffer created through rmail-start-mail with sendmail as
|
||||
mail-user-agent.
|
||||
|
||||
2012-05-27 Chong Yidong <cyd@gnu.org>
|
||||
|
||||
* net/gnutls.el (gnutls-min-prime-bits): Improve docstring.
|
||||
Default to 256 (Bug#11267).
|
||||
|
||||
* help.el (describe-mode): Doc fix.
|
||||
|
||||
2012-05-26 Glenn Morris <rgm@gnu.org>
|
||||
|
||||
* w32-fns.el (w32-init-info): Remove.
|
||||
|
|
|
@ -1,3 +1,8 @@
|
|||
2012-05-27 Katsumi Yamaoka <yamaoka@jpl.org>
|
||||
|
||||
* gnus-msg.el (gnus-msg-mail): Ensure that gnus-newsgroup-name is
|
||||
a string so that Gcc works (bug#11514).
|
||||
|
||||
2012-05-26 Stefan Monnier <monnier@iro.umontreal.ca>
|
||||
|
||||
* legacy-gnus-agent.el (gnus-agent-unhook-expire-days):
|
||||
|
|
|
@ -490,6 +490,7 @@ instead."
|
|||
(message-mail to subject other-headers continue
|
||||
nil yank-action send-actions return-action)
|
||||
(let ((buf (current-buffer))
|
||||
(gnus-newsgroup-name (or gnus-newsgroup-name ""))
|
||||
mail-buf)
|
||||
(gnus-setup-message 'message
|
||||
(message-mail to subject other-headers continue
|
||||
|
|
|
@ -783,7 +783,10 @@ descriptions of the minor modes, each on a separate page.
|
|||
|
||||
For this to work correctly for a minor mode, the mode's indicator
|
||||
variable \(listed in `minor-mode-alist') must also be a function
|
||||
whose documentation describes the minor mode."
|
||||
whose documentation describes the minor mode.
|
||||
|
||||
If called from Lisp with a non-nil BUFFER argument, display
|
||||
documentation for the major and minor modes of that buffer."
|
||||
(interactive "@")
|
||||
(unless buffer (setq buffer (current-buffer)))
|
||||
(help-setup-xref (list #'describe-mode buffer)
|
||||
|
|
|
@ -1678,7 +1678,8 @@ Just \\[universal-argument] as argument means don't indent, insert no prefix,
|
|||
and don't delete any header fields."
|
||||
(interactive "P")
|
||||
(and (consp mail-reply-action)
|
||||
(eq (car mail-reply-action) 'insert-buffer)
|
||||
(memq (car mail-reply-action)
|
||||
'(rmail-yank-current-message insert-buffer))
|
||||
(with-current-buffer (nth 1 mail-reply-action)
|
||||
(or (mark t)
|
||||
(error "No mark set: %S" (current-buffer))))
|
||||
|
|
|
@ -66,14 +66,16 @@ The files may not exist, in which case they will be ignored."
|
|||
(repeat (file :tag "Bundle filename"))))
|
||||
|
||||
;;;###autoload
|
||||
(defcustom gnutls-min-prime-bits nil
|
||||
"The minimum number of bits to be used in Diffie-Hellman key exchange.
|
||||
(defcustom gnutls-min-prime-bits 256
|
||||
;; Several mail servers send fewer bits than the GnuTLS default.
|
||||
;; Currently, 256 appears to be a reasonable choice (Bug#11267).
|
||||
"Minimum number of prime bits accepted by GnuTLS for key exchange.
|
||||
During a Diffie-Hellman handshake, if the server sends a prime
|
||||
number with fewer than this number of bits, the handshake is
|
||||
rejected. \(The smaller the prime number, the less secure the
|
||||
key exchange is against man-in-the-middle attacks.)
|
||||
|
||||
This sets the minimum accepted size of the key to be used in a
|
||||
client-server handshake. If the server sends a prime with fewer than
|
||||
the specified number of bits the handshake will fail.
|
||||
|
||||
A value of nil says to use the default gnutls value."
|
||||
A value of nil says to use the default GnuTLS value."
|
||||
:type '(choice (const :tag "Use default value" nil)
|
||||
(integer :tag "Number of bits" 512))
|
||||
:group 'gnutls)
|
||||
|
|
|
@ -1,3 +1,106 @@
|
|||
2012-05-27 Mark Shoulson <mark@kli.org> (tiny change)
|
||||
|
||||
* org.el (org-fontify-entities): Fix bug: The entities \sup[123] and
|
||||
\there4 were not "prettified" when org-pretty-entities was enabled.
|
||||
|
||||
2012-05-27 Nicolas Goaziou <n.goaziou@gmail.com>
|
||||
|
||||
* org.el (org-font-lock-add-priority-faces):
|
||||
Restrict priorities fontification to headlines and inlinetasks.
|
||||
|
||||
2012-05-27 Jambunathan K <kjambunathan@gmail.com>
|
||||
|
||||
* org-odt.el (org-odt-init-outfile)
|
||||
(org-odt-write-manifest-file):
|
||||
Disable `nxml-auto-insert-xml-declaration-flag'.
|
||||
|
||||
* org-lparse.el (org-do-lparse): Don't trigger auto-mode processing.
|
||||
|
||||
2012-05-27 Bastien Guerry <bzg@gnu.org>
|
||||
|
||||
* org.el (org-scan-tags): Fix bug when building the scanner regexp.
|
||||
|
||||
2012-05-27 Eric Schulte <eric.schulte@gmx.com>
|
||||
|
||||
* ob.el (org-babel-capitalize-examplize-region-markers):
|
||||
Controls the capitalization of begin and end example blocks.
|
||||
(org-babel-examplize-region):
|
||||
Optionally capitalize example block delimiters.
|
||||
|
||||
* ob-plantuml.el (org-babel-execute:plantuml):
|
||||
Add a :java header argument to plantuml.
|
||||
|
||||
* org-exp-blocks.el (org-export-blocks-preprocess):
|
||||
Even when the body of a block is not indented the boundary markers
|
||||
should be indented to their original positions so things like list
|
||||
indentation still work.
|
||||
|
||||
* ob.el (org-babel-parse-src-block-match):
|
||||
Save match data during indentation check.
|
||||
|
||||
2012-05-27 Bastien Guerry <bzg@gnu.org>
|
||||
|
||||
* org.el (org-scan-tags): Correctly match TODO keywords.
|
||||
|
||||
2012-05-27 Nicolas Goaziou <n.goaziou@gmail.com>
|
||||
|
||||
* org-list.el (org-list-struct): Fix white spaces.
|
||||
(org-list-swap-items, org-list-send-item): Fix visibility preservation.
|
||||
|
||||
* org-list.el (org-list-swap-items, org-list-send-item):
|
||||
Preserve visibility when moving items.
|
||||
|
||||
2012-05-27 Mark E. Shoulson <mark@kli.org> (tiny change)
|
||||
|
||||
* org.el (org-fontify-entities): Hide {} when prettifying entities.
|
||||
|
||||
2012-05-27 Bastien Guerry <bzg@gnu.org>
|
||||
|
||||
* org.el (org-cycle-internal-global): Prevent the display of
|
||||
messages when cycling from with a Gnus article buffer.
|
||||
|
||||
* org-table.el (org-table-time-seconds-to-string):
|
||||
Fix bug about handling a negative duration value.
|
||||
|
||||
2012-05-27 Nicolas Goaziou <n.goaziou@gmail.com>
|
||||
|
||||
* org.el (org-link-expand-abbrev): Fix docstring.
|
||||
|
||||
* org.el (org-translate-link): Fix bug.
|
||||
|
||||
2012-05-27 Bastien Guerry <bzg@gnu.org>
|
||||
|
||||
* org-agenda.el (org-agenda-bulk-mark-regexp):
|
||||
Fix bug when setting the number of marked entries.
|
||||
|
||||
* org-table.el (org-tbl-calc-modes): Rename from `org-table-modes'.
|
||||
(org-set-calc-mode, org-table-eval-formula): Use it.
|
||||
|
||||
2012-05-27 Eric Schulte <eric.schulte@gmx.com>
|
||||
|
||||
* ob.el (org-babel-find-named-result):
|
||||
Fix bug finding empty named results.
|
||||
|
||||
2012-05-27 Nicolas Goaziou <n.goaziou@gmail.com>
|
||||
|
||||
* org.el (org-set-regexps-and-options):
|
||||
Fix `org-planning-or-clock-line-re' regexp. Indeed "\\>" will never
|
||||
match since time keywords must end with colons, which are not word
|
||||
constituents.
|
||||
|
||||
2012-05-27 Bastien Guerry <bzg@gnu.org>
|
||||
|
||||
* org-ctags.el (org-ctags-new-topic-template):
|
||||
Fix the option default value back again.
|
||||
|
||||
2012-05-27 Eric Schulte <eric.schulte@gmx.com>
|
||||
|
||||
* org-bibtex.el (org-bibtex-export-to-kill-ring):
|
||||
Don't rely on kill-new to return a string.
|
||||
|
||||
* org-bibtex.el (org-bibtex-headline):
|
||||
Remove call to bibtex-reformat which often hangs.
|
||||
|
||||
2012-04-27 Glenn Morris <rgm@gnu.org>
|
||||
|
||||
* org-ctags.el (org-ctags-new-topic-template):
|
||||
|
|
|
@ -55,9 +55,10 @@ This function is called by `org-babel-execute-src-block'."
|
|||
(error "plantuml requires a \":file\" header argument")))
|
||||
(cmdline (cdr (assoc :cmdline params)))
|
||||
(in-file (org-babel-temp-file "plantuml-"))
|
||||
(java (or (cdr (assoc :java params)) ""))
|
||||
(cmd (if (not org-plantuml-jar-path)
|
||||
(error "`org-plantuml-jar-path' is not set")
|
||||
(concat "java -jar "
|
||||
(concat "java " java " -jar "
|
||||
(shell-quote-argument
|
||||
(expand-file-name org-plantuml-jar-path))
|
||||
(if (string= (file-name-extension out-file) "svg")
|
||||
|
|
|
@ -1159,7 +1159,8 @@ may be specified in the properties of the current outline entry."
|
|||
(substring body 0 sub-length)
|
||||
(or body "")))))
|
||||
(preserve-indentation (or org-src-preserve-indentation
|
||||
(string-match "-i\\>" switches))))
|
||||
(save-match-data
|
||||
(string-match "-i\\>" switches)))))
|
||||
(list lang
|
||||
;; get block body less properties, protective commas, and indentation
|
||||
(with-temp-buffer
|
||||
|
@ -1498,7 +1499,7 @@ buffer or nil if no such result exists."
|
|||
(catch 'is-a-code-block
|
||||
(when (re-search-forward
|
||||
(concat org-babel-result-regexp
|
||||
"[ \t]" (regexp-quote name) "[ \t\n\f\v\r]+") nil t)
|
||||
"[ \t]" (regexp-quote name) "[ \t]*[\n\f\v\r]") nil t)
|
||||
(when (and (string= "name" (downcase (match-string 1)))
|
||||
(or (beginning-of-line 1)
|
||||
(looking-at org-babel-src-block-regexp)
|
||||
|
@ -1957,11 +1958,16 @@ file's directory then expand relative links."
|
|||
(stringp (car result)) (stringp (cadr result)))
|
||||
(format "[[file:%s][%s]]" (car result) (cadr result))))))
|
||||
|
||||
(defvar org-babel-capitalize-examplize-region-markers nil
|
||||
"Make true to capitalize begin/end example markers inserted by code blocks.")
|
||||
|
||||
(defun org-babel-examplize-region (beg end &optional results-switches)
|
||||
"Comment out region using the inline '==' or ': ' org example quote."
|
||||
(interactive "*r")
|
||||
(flet ((chars-between (b e)
|
||||
(not (string-match "^[\\s]*$" (buffer-substring b e)))))
|
||||
(not (string-match "^[\\s]*$" (buffer-substring b e))))
|
||||
(maybe-cap (str) (if org-babel-capitalize-examplize-region-markers
|
||||
(upcase str) str)))
|
||||
(if (or (chars-between (save-excursion (goto-char beg) (point-at-bol)) beg)
|
||||
(chars-between end (save-excursion (goto-char end) (point-at-eol))))
|
||||
(save-excursion
|
||||
|
@ -1978,10 +1984,12 @@ file's directory then expand relative links."
|
|||
(t
|
||||
(goto-char beg)
|
||||
(insert (if results-switches
|
||||
(format "#+begin_example%s\n" results-switches)
|
||||
"#+begin_example\n"))
|
||||
(format "%s%s\n"
|
||||
(maybe-cap "#+begin_example")
|
||||
results-switches)
|
||||
(maybe-cap "#+begin_example\n")))
|
||||
(if (markerp end) (goto-char end) (forward-char (- end beg)))
|
||||
(insert "#+end_example\n"))))))))
|
||||
(insert (maybe-cap "#+end_example\n")))))))))
|
||||
|
||||
(defun org-babel-update-block-body (new-body)
|
||||
"Update the body of the current code block to NEW-BODY."
|
||||
|
|
|
@ -8315,13 +8315,13 @@ This is a command that has to be installed in `calendar-mode-map'."
|
|||
(defun org-agenda-bulk-mark-regexp (regexp)
|
||||
"Mark entries match REGEXP."
|
||||
(interactive "sMark entries matching regexp: ")
|
||||
(let (entries-marked)
|
||||
(let ((entries-marked 0))
|
||||
(save-excursion
|
||||
(goto-char (point-min))
|
||||
(goto-char (next-single-property-change (point) 'txt))
|
||||
(while (re-search-forward regexp nil t)
|
||||
(when (string-match regexp (get-text-property (point) 'txt))
|
||||
(setq entries-marked (+ entries-marked 1))
|
||||
(setq entries-marked (1+ entries-marked))
|
||||
(call-interactively 'org-agenda-bulk-mark))))
|
||||
(if (not entries-marked)
|
||||
(message "No entry matching this regexp."))))
|
||||
|
|
|
@ -369,7 +369,7 @@ This variable is relevant only if `org-bibtex-export-tags-as-keywords` is t."
|
|||
(progn (goto-char (match-end 1)) (insert ", "))
|
||||
(bibtex-make-field "keywords" t t))
|
||||
(insert (mapconcat #'identity tags ", ")))
|
||||
(bibtex-reformat) (buffer-string)))))))
|
||||
(buffer-string)))))))
|
||||
|
||||
(defun org-bibtex-ask (field)
|
||||
(unless (assoc field org-bibtex-fields)
|
||||
|
@ -661,7 +661,8 @@ This uses `bibtex-parse-entry'."
|
|||
(defun org-bibtex-export-to-kill-ring ()
|
||||
"Export current headline to kill ring as bibtex entry."
|
||||
(interactive)
|
||||
(kill-new (org-bibtex-headline)))
|
||||
(let ((result (org-bibtex-headline)))
|
||||
(kill-new result) result))
|
||||
|
||||
(defun org-bibtex-search (string)
|
||||
"Search for bibliographical entries in agenda files.
|
||||
|
|
|
@ -211,7 +211,13 @@ which defaults to the value of `org-export-blocks-witheld'."
|
|||
(when replacement
|
||||
(delete-region match-start match-end)
|
||||
(goto-char match-start) (insert replacement)
|
||||
(unless preserve-indent
|
||||
(if preserve-indent
|
||||
;; indent only the code block markers
|
||||
(save-excursion
|
||||
(indent-line-to indentation) ; indent end_block
|
||||
(goto-char match-start)
|
||||
(indent-line-to indentation)) ; indent begin_block
|
||||
;; indent everything
|
||||
(indent-code-rigidly match-start (point) indentation)))))
|
||||
;; cleanup markers
|
||||
(set-marker match-start nil)
|
||||
|
|
|
@ -714,15 +714,15 @@ Assume point is at an item."
|
|||
;; equally indented than BEG-CELL's cdr. Also, store ending
|
||||
;; position of items in END-LST-2.
|
||||
(catch 'exit
|
||||
(while t
|
||||
(let ((ind (+ (or (get-text-property (point) 'original-indentation) 0)
|
||||
(while t
|
||||
(let ((ind (+ (or (get-text-property (point) 'original-indentation) 0)
|
||||
(org-get-indentation))))
|
||||
(cond
|
||||
((>= (point) lim-down)
|
||||
(cond
|
||||
((>= (point) lim-down)
|
||||
;; At downward limit: this is de facto the end of the
|
||||
;; list. Save point as an ending position, and jump to
|
||||
;; part 3.
|
||||
(throw 'exit
|
||||
(throw 'exit
|
||||
(push (cons 0 (funcall end-before-blank)) end-lst-2)))
|
||||
;; At a verbatim block, move to its end. Point is at bol
|
||||
;; and 'org-example property is set by whole lines:
|
||||
|
@ -1071,8 +1071,10 @@ It determines the number of whitespaces to append by looking at
|
|||
|
||||
(defun org-list-swap-items (beg-A beg-B struct)
|
||||
"Swap item starting at BEG-A with item starting at BEG-B in STRUCT.
|
||||
Blank lines at the end of items are left in place. Return the
|
||||
new structure after the changes.
|
||||
|
||||
Blank lines at the end of items are left in place. Item
|
||||
visibility is preserved. Return the new structure after the
|
||||
changes.
|
||||
|
||||
Assume BEG-A is lesser than BEG-B and that BEG-A and BEG-B belong
|
||||
to the same sub-list.
|
||||
|
@ -1089,7 +1091,17 @@ This function modifies STRUCT."
|
|||
(body-B (buffer-substring beg-B end-B-no-blank))
|
||||
(between-A-no-blank-and-B (buffer-substring end-A-no-blank beg-B))
|
||||
(sub-A (cons beg-A (org-list-get-subtree beg-A struct)))
|
||||
(sub-B (cons beg-B (org-list-get-subtree beg-B struct))))
|
||||
(sub-B (cons beg-B (org-list-get-subtree beg-B struct)))
|
||||
;; Store overlays responsible for visibility status. We
|
||||
;; also need to store their boundaries as they will be
|
||||
;; removed from buffer.
|
||||
(overlays (cons
|
||||
(mapcar (lambda (ov)
|
||||
(list ov (overlay-start ov) (overlay-end ov)))
|
||||
(overlays-in beg-A end-A))
|
||||
(mapcar (lambda (ov)
|
||||
(list ov (overlay-start ov) (overlay-end ov)))
|
||||
(overlays-in beg-B end-B)))))
|
||||
;; 1. Move effectively items in buffer.
|
||||
(goto-char beg-A)
|
||||
(delete-region beg-A end-B-no-blank)
|
||||
|
@ -1122,7 +1134,22 @@ This function modifies STRUCT."
|
|||
(setcar e (+ pos (- size-B size-A)))
|
||||
(setcar (nthcdr 6 e) (+ end-e (- size-B size-A))))))))
|
||||
struct)
|
||||
(sort struct (lambda (e1 e2) (< (car e1) (car e2)))))))
|
||||
(setq struct (sort struct (lambda (e1 e2) (< (car e1) (car e2)))))
|
||||
;; Restore visibility status, by moving overlays to their new
|
||||
;; position.
|
||||
(mapc (lambda (ov)
|
||||
(move-overlay
|
||||
(car ov)
|
||||
(+ (nth 1 ov) (- (+ beg-B (- size-B size-A)) beg-A))
|
||||
(+ (nth 2 ov) (- (+ beg-B (- size-B size-A)) beg-A))))
|
||||
(car overlays))
|
||||
(mapc (lambda (ov)
|
||||
(move-overlay (car ov)
|
||||
(+ (nth 1 ov) (- beg-A beg-B))
|
||||
(+ (nth 2 ov) (- beg-A beg-B))))
|
||||
(cdr overlays))
|
||||
;; Return structure.
|
||||
struct)))
|
||||
|
||||
(defun org-list-separating-blank-lines-number (pos struct prevs)
|
||||
"Return number of blank lines that should separate items in list.
|
||||
|
@ -1340,8 +1367,8 @@ If DEST is a buffer position, the function will assume it points
|
|||
to another item in the same list as ITEM, and will move the
|
||||
latter just before the former.
|
||||
|
||||
If DEST is `begin' \(respectively `end'\), ITEM will be moved at
|
||||
the beginning \(respectively end\) of the list it belongs to.
|
||||
If DEST is `begin' (respectively `end'), ITEM will be moved at
|
||||
the beginning (respectively end) of the list it belongs to.
|
||||
|
||||
If DEST is a string like \"N\", where N is an integer, ITEM will
|
||||
be moved at the Nth position in the list.
|
||||
|
@ -1351,6 +1378,8 @@ added to the kill-ring.
|
|||
|
||||
If DEST is `delete', ITEM will be deleted.
|
||||
|
||||
Visibility of item is preserved.
|
||||
|
||||
This function returns, destructively, the new list structure."
|
||||
(let* ((prevs (org-list-prevs-alist struct))
|
||||
(item-end (org-list-get-item-end item struct))
|
||||
|
@ -1393,7 +1422,9 @@ This function returns, destructively, the new list structure."
|
|||
(org-list-get-last-item item struct prevs))
|
||||
(point-at-eol)))))
|
||||
(t dest)))
|
||||
(org-M-RET-may-split-line nil))
|
||||
(org-M-RET-may-split-line nil)
|
||||
;; Store visibility.
|
||||
(visibility (overlays-in item item-end)))
|
||||
(cond
|
||||
((eq dest 'delete) (org-list-delete-item item struct))
|
||||
((eq dest 'kill)
|
||||
|
@ -1429,9 +1460,14 @@ This function returns, destructively, the new list structure."
|
|||
(+ end shift)))))))
|
||||
moved-items))
|
||||
(lambda (e1 e2) (< (car e1) (car e2))))))
|
||||
;; 2. Eventually delete extra copy of the item and clean marker.
|
||||
(prog1
|
||||
(org-list-delete-item (marker-position item) struct)
|
||||
;; 2. Restore visibility.
|
||||
(mapc (lambda (ov)
|
||||
(move-overlay ov
|
||||
(+ (overlay-start ov) (- (point) item))
|
||||
(+ (overlay-end ov) (- (point) item))))
|
||||
visibility)
|
||||
;; 3. Eventually delete extra copy of the item and clean marker.
|
||||
(prog1 (org-list-delete-item (marker-position item) struct)
|
||||
(move-marker item nil)))
|
||||
(t struct))))
|
||||
|
||||
|
|
|
@ -1111,9 +1111,6 @@ version."
|
|||
(unless body-only
|
||||
(org-lparse-end 'DOCUMENT-CONTENT))
|
||||
|
||||
(unless (plist-get opt-plist :buffer-will-be-killed)
|
||||
(set-auto-mode t))
|
||||
|
||||
(org-lparse-end 'EXPORT)
|
||||
|
||||
;; kill collection buffer
|
||||
|
|
|
@ -2211,7 +2211,9 @@ captions on export.")
|
|||
(content-file (expand-file-name "content.xml" outdir)))
|
||||
|
||||
;; init conten.xml
|
||||
(with-current-buffer (find-file-noselect content-file t))
|
||||
(require 'nxml-mode)
|
||||
(let ((nxml-auto-insert-xml-declaration-flag nil))
|
||||
(find-file-noselect content-file t))
|
||||
|
||||
;; reset variables
|
||||
(setq org-odt-manifest-file-entries nil
|
||||
|
@ -2320,7 +2322,8 @@ visually."
|
|||
(make-directory "META-INF")
|
||||
(let ((manifest-file (expand-file-name "META-INF/manifest.xml")))
|
||||
(with-current-buffer
|
||||
(find-file-noselect manifest-file t)
|
||||
(let ((nxml-auto-insert-xml-declaration-flag nil))
|
||||
(find-file-noselect manifest-file t))
|
||||
(insert
|
||||
"<?xml version=\"1.0\" encoding=\"UTF-8\"?>
|
||||
<manifest:manifest xmlns:manifest=\"urn:oasis:names:tc:opendocument:xmlns:manifest:1.0\" manifest:version=\"1.2\">\n")
|
||||
|
|
|
@ -225,7 +225,7 @@ Consider using the interactive functions `org-protocol-create' and
|
|||
:type 'alist)
|
||||
|
||||
(defcustom org-protocol-protocol-alist nil
|
||||
" Register custom handlers for org-protocol.
|
||||
"Register custom handlers for org-protocol.
|
||||
|
||||
Each element of this list must be of the form:
|
||||
|
||||
|
|
|
@ -2368,7 +2368,7 @@ of the new mark."
|
|||
(looking-at org-table-auto-recalculate-regexp))
|
||||
(org-table-recalculate) t))
|
||||
|
||||
(defvar org-table-modes)
|
||||
(defvar org-tbl-calc-modes) ;; Dynamically bound in `org-table-eval-formula'
|
||||
(defsubst org-set-calc-mode (var &optional value)
|
||||
(if (stringp var)
|
||||
(setq var (assoc var '(("D" calc-angle-mode deg)
|
||||
|
@ -2376,10 +2376,10 @@ of the new mark."
|
|||
("F" calc-prefer-frac t)
|
||||
("S" calc-symbolic-mode t)))
|
||||
value (nth 2 var) var (nth 1 var)))
|
||||
(if (memq var org-table-modes)
|
||||
(setcar (cdr (memq var org-table-modes)) value)
|
||||
(cons var (cons value org-table-modes)))
|
||||
org-table-modes)
|
||||
(if (memq var org-tbl-calc-modes)
|
||||
(setcar (cdr (memq var org-tbl-calc-modes)) value)
|
||||
(cons var (cons value org-tbl-calc-modes)))
|
||||
org-tbl-calc-modes)
|
||||
|
||||
(defun org-table-eval-formula (&optional arg equation
|
||||
suppress-align suppress-const
|
||||
|
@ -2437,7 +2437,7 @@ not overwrite the stored one."
|
|||
equation
|
||||
(org-table-get-formula equation (equal arg '(4)))))
|
||||
(n0 (org-table-current-column))
|
||||
(modes (copy-sequence org-calc-default-modes))
|
||||
(org-tbl-calc-modes (copy-sequence org-calc-default-modes))
|
||||
(numbers nil) ; was a variable, now fixed default
|
||||
(keep-empty nil)
|
||||
n form form0 formrpl formrg bw fmt x ev orig c lispp literal
|
||||
|
@ -2453,12 +2453,13 @@ not overwrite the stored one."
|
|||
(setq c (string-to-char (match-string 1 fmt))
|
||||
n (string-to-number (match-string 2 fmt)))
|
||||
(if (= c ?p)
|
||||
(setq modes (org-set-calc-mode 'calc-internal-prec n))
|
||||
(setq modes (org-set-calc-mode
|
||||
'calc-float-format
|
||||
(list (cdr (assoc c '((?n . float) (?f . fix)
|
||||
(?s . sci) (?e . eng))))
|
||||
n))))
|
||||
(setq org-tbl-calc-modes (org-set-calc-mode 'calc-internal-prec n))
|
||||
(setq org-tbl-calc-modes
|
||||
(org-set-calc-mode
|
||||
'calc-float-format
|
||||
(list (cdr (assoc c '((?n . float) (?f . fix)
|
||||
(?s . sci) (?e . eng))))
|
||||
n))))
|
||||
(setq fmt (replace-match "" t t fmt)))
|
||||
(if (string-match "T" fmt)
|
||||
(setq duration t numbers t
|
||||
|
@ -2479,7 +2480,7 @@ not overwrite the stored one."
|
|||
(setq keep-empty t
|
||||
fmt (replace-match "" t t fmt)))
|
||||
(while (string-match "[DRFS]" fmt)
|
||||
(setq modes (org-set-calc-mode (match-string 0 fmt)))
|
||||
(setq org-tbl-calc-modes (org-set-calc-mode (match-string 0 fmt)))
|
||||
(setq fmt (replace-match "" t t fmt)))
|
||||
(unless (string-match "\\S-" fmt)
|
||||
(setq fmt nil))))
|
||||
|
@ -2588,7 +2589,7 @@ not overwrite the stored one."
|
|||
duration-output-format) ev))
|
||||
(or (fboundp 'calc-eval)
|
||||
(error "Calc does not seem to be installed, and is needed to evaluate the formula"))
|
||||
(setq ev (calc-eval (cons form modes) (if numbers 'num))
|
||||
(setq ev (calc-eval (cons form org-tbl-calc-modes) (if numbers 'num))
|
||||
ev (if duration (org-table-time-seconds-to-string
|
||||
(string-to-number ev)
|
||||
duration-output-format) ev)))
|
||||
|
@ -3309,15 +3310,18 @@ If S is a string representing a number, keep this number."
|
|||
"Convert a number of seconds to a time string.
|
||||
If OUTPUT-FORMAT is non-nil, return a number of days, hours,
|
||||
minutes or seconds."
|
||||
(cond ((eq output-format 'days)
|
||||
(format "%.3f" (/ (float secs) 86400)))
|
||||
((eq output-format 'hours)
|
||||
(format "%.2f" (/ (float secs) 3600)))
|
||||
((eq output-format 'minutes)
|
||||
(format "%.1f" (/ (float secs) 60)))
|
||||
((eq output-format 'seconds)
|
||||
(format "%d" secs))
|
||||
(t (org-format-seconds "%.2h:%.2m:%.2s" secs))))
|
||||
(let* ((secs0 (abs secs))
|
||||
(res
|
||||
(cond ((eq output-format 'days)
|
||||
(format "%.3f" (/ (float secs0) 86400)))
|
||||
((eq output-format 'hours)
|
||||
(format "%.2f" (/ (float secs0) 3600)))
|
||||
((eq output-format 'minutes)
|
||||
(format "%.1f" (/ (float secs0) 60)))
|
||||
((eq output-format 'seconds)
|
||||
(format "%d" secs0))
|
||||
(t (org-format-seconds "%.2h:%.2m:%.2s" secs0)))))
|
||||
(if (< secs 0) (concat "-" res) res)))
|
||||
|
||||
(defun org-table-fedit-convert-buffer (function)
|
||||
"Convert all references in this buffer, using FUNCTION."
|
||||
|
|
102
lisp/org/org.el
102
lisp/org/org.el
|
@ -6,7 +6,7 @@
|
|||
;; Maintainer: Bastien Guerry <bzg at gnu dot org>
|
||||
;; Keywords: outlines, hypermedia, calendar, wp
|
||||
;; Homepage: http://orgmode.org
|
||||
;; Version: 7.8.09
|
||||
;; Version: 7.8.11
|
||||
;;
|
||||
;; This file is part of GNU Emacs.
|
||||
;;
|
||||
|
@ -206,7 +206,7 @@ identifier."
|
|||
|
||||
;;; Version
|
||||
|
||||
(defconst org-version "7.8.09"
|
||||
(defconst org-version "7.8.11"
|
||||
"The version number of the file org.el.")
|
||||
|
||||
;;;###autoload
|
||||
|
@ -4789,10 +4789,11 @@ but the stars and the body are.")
|
|||
"\\|" org-clock-string "\\)\\)?"
|
||||
" *\\([[<][0-9]\\{4\\}-[0-9]\\{2\\}-[0-9]\\{2\\} ?[^]\r\n>]*?[]>]\\|<%%([^\r\n>]*>\\)")
|
||||
org-planning-or-clock-line-re
|
||||
(concat "\\(?:^[ \t]*\\(" org-scheduled-string
|
||||
"\\|" org-deadline-string
|
||||
"\\|" org-closed-string "\\|" org-clock-string
|
||||
"\\)\\>\\)")
|
||||
(concat "^[ \t]*\\("
|
||||
org-scheduled-string "\\|"
|
||||
org-deadline-string "\\|"
|
||||
org-closed-string "\\|"
|
||||
org-clock-string "\\)")
|
||||
org-all-time-keywords
|
||||
(mapcar (lambda (w) (substring w 0 -1))
|
||||
(list org-scheduled-string org-deadline-string
|
||||
|
@ -5916,16 +5917,19 @@ needs to be inserted at a specific position in the font-lock sequence.")
|
|||
(when org-pretty-entities
|
||||
(catch 'match
|
||||
(while (re-search-forward
|
||||
"\\\\\\(frac[13][24]\\|[a-zA-Z]+\\)\\($\\|[^[:alpha:]\n]\\)"
|
||||
"\\\\\\(there4\\|sup[123]\\|frac[13][24]\\|[a-zA-Z]+\\)\\($\\|{}\\|[^[:alpha:]\n]\\)"
|
||||
limit t)
|
||||
(if (and (not (org-in-indented-comment-line))
|
||||
(setq ee (org-entity-get (match-string 1)))
|
||||
(= (length (nth 6 ee)) 1))
|
||||
(progn
|
||||
(let*
|
||||
((end (if (equal (match-string 2) "{}")
|
||||
(match-end 2)
|
||||
(match-end 1))))
|
||||
(add-text-properties
|
||||
(match-beginning 0) (match-end 1)
|
||||
(match-beginning 0) end
|
||||
(list 'font-lock-fontified t))
|
||||
(compose-region (match-beginning 0) (match-end 1)
|
||||
(compose-region (match-beginning 0) end
|
||||
(nth 6 ee) nil)
|
||||
(backward-char 1)
|
||||
(throw 'match t))))
|
||||
|
@ -5986,14 +5990,15 @@ When FACE-OR-COLOR is not a string, just return it."
|
|||
(defun org-font-lock-add-priority-faces (limit)
|
||||
"Add the special priority faces."
|
||||
(while (re-search-forward "\\[#\\([A-Z0-9]\\)\\]" limit t)
|
||||
(add-text-properties
|
||||
(match-beginning 0) (match-end 0)
|
||||
(list 'face (or (org-face-from-face-or-color
|
||||
'priority 'org-special-keyword
|
||||
(cdr (assoc (char-after (match-beginning 1))
|
||||
org-priority-faces)))
|
||||
'org-special-keyword)
|
||||
'font-lock-fontified t))))
|
||||
(when (save-match-data (org-at-heading-p))
|
||||
(add-text-properties
|
||||
(match-beginning 0) (match-end 0)
|
||||
(list 'face (or (org-face-from-face-or-color
|
||||
'priority 'org-special-keyword
|
||||
(cdr (assoc (char-after (match-beginning 1))
|
||||
org-priority-faces)))
|
||||
'org-special-keyword)
|
||||
'font-lock-fontified t)))))
|
||||
|
||||
(defun org-get-tag-face (kwd)
|
||||
"Get the right face for a TODO keyword KWD.
|
||||
|
@ -6255,34 +6260,36 @@ in special contexts.
|
|||
|
||||
(defun org-cycle-internal-global ()
|
||||
"Do the global cycling action."
|
||||
(cond
|
||||
((and (eq last-command this-command)
|
||||
(eq org-cycle-global-status 'overview))
|
||||
;; We just created the overview - now do table of contents
|
||||
;; This can be slow in very large buffers, so indicate action
|
||||
(run-hook-with-args 'org-pre-cycle-hook 'contents)
|
||||
(message "CONTENTS...")
|
||||
(org-content)
|
||||
(message "CONTENTS...done")
|
||||
(setq org-cycle-global-status 'contents)
|
||||
(run-hook-with-args 'org-cycle-hook 'contents))
|
||||
;; Hack to avoid display of messages for .org attachments in Gnus
|
||||
(let ((ga (string-match "\\*fontification" (buffer-name))))
|
||||
(cond
|
||||
((and (eq last-command this-command)
|
||||
(eq org-cycle-global-status 'overview))
|
||||
;; We just created the overview - now do table of contents
|
||||
;; This can be slow in very large buffers, so indicate action
|
||||
(run-hook-with-args 'org-pre-cycle-hook 'contents)
|
||||
(unless ga (message "CONTENTS..."))
|
||||
(org-content)
|
||||
(unless ga (message "CONTENTS...done"))
|
||||
(setq org-cycle-global-status 'contents)
|
||||
(run-hook-with-args 'org-cycle-hook 'contents))
|
||||
|
||||
((and (eq last-command this-command)
|
||||
(eq org-cycle-global-status 'contents))
|
||||
;; We just showed the table of contents - now show everything
|
||||
(run-hook-with-args 'org-pre-cycle-hook 'all)
|
||||
(show-all)
|
||||
(message "SHOW ALL")
|
||||
(setq org-cycle-global-status 'all)
|
||||
(run-hook-with-args 'org-cycle-hook 'all))
|
||||
((and (eq last-command this-command)
|
||||
(eq org-cycle-global-status 'contents))
|
||||
;; We just showed the table of contents - now show everything
|
||||
(run-hook-with-args 'org-pre-cycle-hook 'all)
|
||||
(show-all)
|
||||
(unless ga (message "SHOW ALL"))
|
||||
(setq org-cycle-global-status 'all)
|
||||
(run-hook-with-args 'org-cycle-hook 'all))
|
||||
|
||||
(t
|
||||
;; Default action: go to overview
|
||||
(run-hook-with-args 'org-pre-cycle-hook 'overview)
|
||||
(org-overview)
|
||||
(message "OVERVIEW")
|
||||
(setq org-cycle-global-status 'overview)
|
||||
(run-hook-with-args 'org-cycle-hook 'overview))))
|
||||
(t
|
||||
;; Default action: go to overview
|
||||
(run-hook-with-args 'org-pre-cycle-hook 'overview)
|
||||
(org-overview)
|
||||
(unless ga (message "OVERVIEW"))
|
||||
(setq org-cycle-global-status 'overview)
|
||||
(run-hook-with-args 'org-cycle-hook 'overview)))))
|
||||
|
||||
(defun org-cycle-internal-local ()
|
||||
"Do the local cycling action."
|
||||
|
@ -8574,7 +8581,7 @@ call CMD."
|
|||
;;; Link abbreviations
|
||||
|
||||
(defun org-link-expand-abbrev (link)
|
||||
"Apply replacements as defined in `org-link-abbrev-alist."
|
||||
"Apply replacements as defined in `org-link-abbrev-alist'."
|
||||
(if (string-match "^\\([^:]*\\)\\(::?\\(.*\\)\\)?$" link)
|
||||
(let* ((key (match-string 1 link))
|
||||
(as (or (assoc key org-link-abbrev-alist-local)
|
||||
|
@ -9432,7 +9439,7 @@ If the link is in hidden text, expose it."
|
|||
(string-match "\\([a-zA-Z0-9]+\\):\\(.*\\)" s))
|
||||
(progn
|
||||
(setq s (funcall org-link-translation-function
|
||||
(match-string 1) (match-string 2)))
|
||||
(match-string 1 s) (match-string 2 s)))
|
||||
(concat (car s) ":" (cdr s)))
|
||||
s))
|
||||
|
||||
|
@ -12822,8 +12829,7 @@ headlines matching this string."
|
|||
org-outline-regexp)
|
||||
" *\\(\\<\\("
|
||||
(mapconcat 'regexp-quote org-todo-keywords-1 "\\|")
|
||||
(org-re
|
||||
"\\>\\)\\)? *\\(.*?\\)\\(:[[:alnum:]_@#%:]+:\\)?[ \t]*$")))
|
||||
(org-re "\\)\\>\\)? *\\(.*?\\)\\(:[[:alnum:]_@#%:]+:\\)?[ \t]*$")))
|
||||
(props (list 'face 'default
|
||||
'done-face 'org-agenda-done
|
||||
'undone-face 'default
|
||||
|
|
|
@ -1,3 +1,9 @@
|
|||
2012-05-27 Eli Zaretskii <eliz@gnu.org>
|
||||
|
||||
* configure.bat: Ensure a space between %var% expansion and
|
||||
redirection symbol '>', which breaks when %var% ends in a digit,
|
||||
such as 1.
|
||||
|
||||
2012-05-22 Paul Eggert <eggert@cs.ucla.edu>
|
||||
|
||||
Remove src/m/*.
|
||||
|
|
|
@ -757,25 +757,25 @@ rem NB. Be very careful to not have a space before redirection symbols
|
|||
rem except when there is a preceding digit, when a space is required.
|
||||
rem
|
||||
echo # Start of settings from configure.bat >config.settings
|
||||
echo COMPILER=%COMPILER%>>config.settings
|
||||
if not "(%mf%)" == "()" echo MCPU_FLAG=%mf%>>config.settings
|
||||
if not "(%dbginfo%)" == "()" echo DEBUG_INFO=%dbginfo%>>config.settings
|
||||
echo COMPILER=%COMPILER% >>config.settings
|
||||
if not "(%mf%)" == "()" echo MCPU_FLAG=%mf% >>config.settings
|
||||
if not "(%dbginfo%)" == "()" echo DEBUG_INFO=%dbginfo% >>config.settings
|
||||
if (%nodebug%) == (Y) echo NODEBUG=1 >>config.settings
|
||||
if (%noopt%) == (Y) echo NOOPT=1 >>config.settings
|
||||
if (%enablechecking%) == (Y) echo ENABLECHECKS=1 >>config.settings
|
||||
if (%profile%) == (Y) echo PROFILE=1 >>config.settings
|
||||
if (%nocygwin%) == (Y) echo NOCYGWIN=1 >>config.settings
|
||||
if not "(%prefix%)" == "()" echo INSTALL_DIR=%prefix%>>config.settings
|
||||
if not "(%distfiles%)" == "()" echo DIST_FILES=%distfiles%>>config.settings
|
||||
if not "(%prefix%)" == "()" echo INSTALL_DIR=%prefix% >>config.settings
|
||||
if not "(%distfiles%)" == "()" echo DIST_FILES=%distfiles% >>config.settings
|
||||
rem We go thru docflags because usercflags could be "-DFOO=bar" -something
|
||||
rem and the if command cannot cope with this
|
||||
for %%v in (%usercflags%) do if not (%%v)==() set docflags=Y
|
||||
if (%docflags%)==(Y) echo USER_CFLAGS=%usercflags%>>config.settings
|
||||
if (%docflags%)==(Y) echo ESC_USER_CFLAGS=%escusercflags%>>config.settings
|
||||
if (%docflags%)==(Y) echo USER_CFLAGS=%usercflags% >>config.settings
|
||||
if (%docflags%)==(Y) echo ESC_USER_CFLAGS=%escusercflags% >>config.settings
|
||||
for %%v in (%userldflags%) do if not (%%v)==() set doldflags=Y
|
||||
if (%doldflags%)==(Y) echo USER_LDFLAGS=%userldflags%>>config.settings
|
||||
if (%doldflags%)==(Y) echo USER_LDFLAGS=%userldflags% >>config.settings
|
||||
for %%v in (%extrauserlibs%) do if not (%%v)==() set doextralibs=Y
|
||||
if (%doextralibs%)==(Y) echo USER_LIBS=%extrauserlibs%>>config.settings
|
||||
if (%doextralibs%)==(Y) echo USER_LIBS=%extrauserlibs% >>config.settings
|
||||
echo # End of settings from configure.bat>>config.settings
|
||||
echo. >>config.settings
|
||||
|
||||
|
@ -784,8 +784,8 @@ echo. >>config.tmp
|
|||
echo /* Start of settings from configure.bat. */ >>config.tmp
|
||||
rem We write USER_CFLAGS and USER_LDFLAGS starting with a space to simplify
|
||||
rem processing of compiler options in w32.c:get_emacs_configuration_options
|
||||
if (%docflags%) == (Y) echo #define USER_CFLAGS " %escusercflags%">>config.tmp
|
||||
if (%doldflags%) == (Y) echo #define USER_LDFLAGS " %escuserldflags%">>config.tmp
|
||||
if (%docflags%) == (Y) echo #define USER_CFLAGS " %escusercflags%" >>config.tmp
|
||||
if (%doldflags%) == (Y) echo #define USER_LDFLAGS " %escuserldflags%" >>config.tmp
|
||||
if (%profile%) == (Y) echo #define PROFILING 1 >>config.tmp
|
||||
if not "(%HAVE_PNG%)" == "()" echo #define HAVE_PNG 1 >>config.tmp
|
||||
if not "(%HAVE_GNUTLS%)" == "()" echo #define HAVE_GNUTLS 1 >>config.tmp
|
||||
|
|
|
@ -1,3 +1,34 @@
|
|||
2012-05-27 Ken Brown <kbrown@cornell.edu>
|
||||
|
||||
* callproc.c (Fcall_process): Restore a line that was accidentally
|
||||
commented out in the 2011-02-13 change (bug#11547).
|
||||
|
||||
2012-05-27 Eli Zaretskii <eliz@gnu.org>
|
||||
|
||||
* lisp.h [REL_ALLOC]: Add prototypes for external functions
|
||||
defined on ralloc.c.
|
||||
|
||||
* buffer.c [REL_ALLOC]: Remove prototypes of
|
||||
r_alloc_reset_variable, r_alloc, r_re_alloc, and r_alloc_free,
|
||||
they are now on lisp.h.
|
||||
|
||||
* ralloc.c (r_alloc_inhibit_buffer_relocation): New function.
|
||||
|
||||
* search.c (search_buffer): Use it to inhibit relocation of buffer
|
||||
text while re_search_2 is doing its job, because re_search_2 is
|
||||
passed C pointers to buffer text. (Bug#11519)
|
||||
|
||||
* msdos.c (internal_terminal_init) <Vwindow_system_version>:
|
||||
Update value to 24.
|
||||
|
||||
* xdisp.c (move_it_to): Under MOVE_TO_Y, when restoring iterator
|
||||
state after an additional call to move_it_in_display_line_to, keep
|
||||
the values of it->max_ascent and it->max_descent found for the
|
||||
entire line.
|
||||
(pos_visible_p): Revert the comparison against bottom_y to what it
|
||||
was in revid eliz@gnu.org-20120513182235-4p6386j761ld0nwb.
|
||||
(Bug#11464)
|
||||
|
||||
2012-05-26 Paul Eggert <eggert@cs.ucla.edu>
|
||||
|
||||
Fix coding-related core dumps with gcc -ftrapv.
|
||||
|
|
|
@ -652,7 +652,7 @@ usage: (call-process PROGRAM &optional INFILE BUFFER DISPLAY &rest ARGS) */)
|
|||
|
||||
/* GConf causes us to ignore SIGPIPE, make sure it is restored
|
||||
in the child. */
|
||||
//signal (SIGPIPE, SIG_DFL);
|
||||
signal (SIGPIPE, SIG_DFL);
|
||||
#ifdef HAVE_WORKING_VFORK
|
||||
pthread_sigmask (SIG_SETMASK, &procmask, 0);
|
||||
#endif
|
||||
|
|
|
@ -3633,6 +3633,15 @@ void syms_of_dbusbind (void);
|
|||
/* Defined in msdos.c, w32.c */
|
||||
extern char *emacs_root_dir (void);
|
||||
#endif /* DOS_NT */
|
||||
|
||||
#ifdef REL_ALLOC
|
||||
/* Defined in ralloc.c */
|
||||
extern void r_alloc_reset_variable (POINTER_TYPE **, POINTER_TYPE **);
|
||||
extern POINTER_TYPE *r_alloc (POINTER_TYPE **, size_t);
|
||||
extern POINTER_TYPE *r_re_alloc (POINTER_TYPE **, size_t);
|
||||
extern void r_alloc_free (POINTER_TYPE **ptr);
|
||||
extern void r_alloc_inhibit_buffer_relocation (int);
|
||||
#endif /* REL_ALLOC */
|
||||
|
||||
/* Nonzero means Emacs has already been initialized.
|
||||
Used during startup to detect startup of dumped Emacs. */
|
||||
|
|
|
@ -1813,7 +1813,7 @@ internal_terminal_init (void)
|
|||
}
|
||||
|
||||
Vinitial_window_system = Qpc;
|
||||
Vwindow_system_version = make_number (23); /* RE Emacs version */
|
||||
Vwindow_system_version = make_number (24); /* RE Emacs version */
|
||||
tty->terminal->type = output_msdos_raw;
|
||||
|
||||
/* If Emacs was dumped on DOS/V machine, forget the stale VRAM
|
||||
|
|
|
@ -1139,6 +1139,12 @@ r_alloc_reset_variable (POINTER *old, POINTER *new)
|
|||
bloc->variable = new;
|
||||
}
|
||||
|
||||
void
|
||||
r_alloc_inhibit_buffer_relocation (int inhibit)
|
||||
{
|
||||
use_relocatable_buffers = !inhibit;
|
||||
}
|
||||
|
||||
|
||||
/***********************************************************************
|
||||
Initialization
|
||||
|
|
22
src/search.c
22
src/search.c
|
@ -1159,12 +1159,25 @@ search_buffer (Lisp_Object string, ptrdiff_t pos, ptrdiff_t pos_byte,
|
|||
while (n < 0)
|
||||
{
|
||||
ptrdiff_t val;
|
||||
|
||||
#ifdef REL_ALLOC
|
||||
/* re_search_2 below is passed C pointers to buffer text.
|
||||
If some code called by it causes memory (re)allocation,
|
||||
buffer text could be relocated on platforms that use
|
||||
REL_ALLOC, which invalidates those C pointers. So we
|
||||
inhibit relocation of buffer text for as long as
|
||||
re_search_2 runs. */
|
||||
r_alloc_inhibit_buffer_relocation (1);
|
||||
#endif
|
||||
val = re_search_2 (bufp, (char *) p1, s1, (char *) p2, s2,
|
||||
pos_byte - BEGV_BYTE, lim_byte - pos_byte,
|
||||
(NILP (Vinhibit_changing_match_data)
|
||||
? &search_regs : &search_regs_1),
|
||||
/* Don't allow match past current point */
|
||||
pos_byte - BEGV_BYTE);
|
||||
#ifdef REL_ALLOC
|
||||
r_alloc_inhibit_buffer_relocation (0);
|
||||
#endif
|
||||
if (val == -2)
|
||||
{
|
||||
matcher_overflow ();
|
||||
|
@ -1203,11 +1216,20 @@ search_buffer (Lisp_Object string, ptrdiff_t pos, ptrdiff_t pos_byte,
|
|||
while (n > 0)
|
||||
{
|
||||
ptrdiff_t val;
|
||||
|
||||
#ifdef REL_ALLOC
|
||||
/* See commentary above for the reasons for inhibiting
|
||||
buffer text relocation here. */
|
||||
r_alloc_inhibit_buffer_relocation (1);
|
||||
#endif
|
||||
val = re_search_2 (bufp, (char *) p1, s1, (char *) p2, s2,
|
||||
pos_byte - BEGV_BYTE, lim_byte - pos_byte,
|
||||
(NILP (Vinhibit_changing_match_data)
|
||||
? &search_regs : &search_regs_1),
|
||||
lim_byte - BEGV_BYTE);
|
||||
#ifdef REL_ALLOC
|
||||
r_alloc_inhibit_buffer_relocation (0);
|
||||
#endif
|
||||
if (val == -2)
|
||||
{
|
||||
matcher_overflow ();
|
||||
|
|
12
src/xdisp.c
12
src/xdisp.c
|
@ -8705,8 +8705,18 @@ move_it_to (struct it *it, ptrdiff_t to_charpos, int to_x, int to_y, int to_vpos
|
|||
{
|
||||
/* If TO_Y is in this line and TO_X was reached
|
||||
above, we scanned too far. We have to restore
|
||||
IT's settings to the ones before skipping. */
|
||||
IT's settings to the ones before skipping. But
|
||||
keep the more accurate values of max_ascent and
|
||||
max_descent we've found while skipping the rest
|
||||
of the line, for the sake of callers, such as
|
||||
pos_visible_p, that need to know the line
|
||||
height. */
|
||||
int max_ascent = it->max_ascent;
|
||||
int max_descent = it->max_descent;
|
||||
|
||||
RESTORE_IT (it, &it_backup, backup_data);
|
||||
it->max_ascent = max_ascent;
|
||||
it->max_descent = max_descent;
|
||||
reached = 6;
|
||||
}
|
||||
else
|
||||
|
|
Loading…
Add table
Reference in a new issue