diff options
Diffstat (limited to 'doc')
-rw-r--r-- | doc/lispref/buffers.texi | 6 | ||||
-rw-r--r-- | doc/lispref/searching.texi | 67 | ||||
-rw-r--r-- | doc/lispref/strings.texi | 5 | ||||
-rw-r--r-- | doc/misc/efaq.texi | 105 |
4 files changed, 152 insertions, 31 deletions
diff --git a/doc/lispref/buffers.texi b/doc/lispref/buffers.texi index 1f7f263fb2..740d7cfd8a 100644 --- a/doc/lispref/buffers.texi +++ b/doc/lispref/buffers.texi @@ -1211,6 +1211,12 @@ swapped as well: the positions of point and mark, all the markers, the overlays, the text properties, the undo list, the value of the @code{enable-multibyte-characters} flag (@pxref{Text Representations, enable-multibyte-characters}), etc. + +@strong{Warning:} If this function is called from within a +@code{save-excursion} form, the current buffer will be set to +@var{buffer} upon leaving the form, since the marker used by +@code{save-excursion} to save the position and buffer will be swapped +as well. @end defun If you use @code{buffer-swap-text} on a file-visiting buffer, you diff --git a/doc/lispref/searching.texi b/doc/lispref/searching.texi index 644716a95c..a04e6938ce 100644 --- a/doc/lispref/searching.texi +++ b/doc/lispref/searching.texi @@ -44,7 +44,7 @@ Searching and Replacement, emacs, The GNU Emacs Manual}. buffer is multibyte; they convert the search string to unibyte if the buffer is unibyte. @xref{Text Representations}. -@deffn Command search-forward string &optional limit noerror repeat +@deffn Command search-forward string &optional limit noerror count This function searches forward from point for an exact match for @var{string}. If successful, it sets point to the end of the occurrence found, and returns the new value of point. If no match is found, the @@ -95,24 +95,24 @@ The argument @var{noerror} only affects valid searches which fail to find a match. Invalid arguments cause errors regardless of @var{noerror}. -If @var{repeat} is a positive number @var{n}, it serves as a repeat -count: the search is repeated @var{n} times, each time starting at the -end of the previous time's match. If these successive searches -succeed, the function succeeds, moving point and returning its new -value. Otherwise the search fails, with results depending on the -value of @var{noerror}, as described above. If @var{repeat} is a -negative number -@var{n}, it serves as a repeat count of @var{n} for a -search in the opposite (backward) direction. +If @var{count} is a positive number @var{n}, the search is done +@var{n} times; each successive search starts at the end of the +previous match. If all these successive searches succeed, the +function call succeeds, moving point and returning its new value. +Otherwise the function call fails, with results depending on the value +of @var{noerror}, as described above. If @var{count} is a negative +number -@var{n}, the search is done @var{n} times in the opposite +(backward) direction. @end deffn -@deffn Command search-backward string &optional limit noerror repeat +@deffn Command search-backward string &optional limit noerror count This function searches backward from point for @var{string}. It is like @code{search-forward}, except that it searches backwards rather than forwards. Backward searches leave point at the beginning of the match. @end deffn -@deffn Command word-search-forward string &optional limit noerror repeat +@deffn Command word-search-forward string &optional limit noerror count This function searches forward from point for a word match for @var{string}. If it finds a match, it sets point to the end of the match found, and returns the new value of point. @@ -156,8 +156,10 @@ returns @code{nil} instead of signaling an error. If @var{noerror} is neither @code{nil} nor @code{t}, it moves point to @var{limit} (or the end of the accessible portion of the buffer) and returns @code{nil}. -If @var{repeat} is non-@code{nil}, then the search is repeated that many -times. Point is positioned at the end of the last match. +If @var{count} is a positive number, it specifies how many successive +occurrences to search for. Point is positioned at the end of the last +match. If @var{count} is a negative number, the search is backward +and point is positioned at the beginning of the last match. @findex word-search-regexp Internally, @code{word-search-forward} and related functions use the @@ -165,7 +167,7 @@ function @code{word-search-regexp} to convert @var{string} to a regular expression that ignores punctuation. @end deffn -@deffn Command word-search-forward-lax string &optional limit noerror repeat +@deffn Command word-search-forward-lax string &optional limit noerror count This command is identical to @code{word-search-forward}, except that the beginning or the end of @var{string} need not match a word boundary, unless @var{string} begins or ends in whitespace. @@ -173,14 +175,14 @@ For instance, searching for @samp{ball boy} matches @samp{ball boyee}, but does not match @samp{balls boy}. @end deffn -@deffn Command word-search-backward string &optional limit noerror repeat +@deffn Command word-search-backward string &optional limit noerror count This function searches backward from point for a word match to @var{string}. This function is just like @code{word-search-forward} except that it searches backward and normally leaves point at the beginning of the match. @end deffn -@deffn Command word-search-backward-lax string &optional limit noerror repeat +@deffn Command word-search-backward-lax string &optional limit noerror count This command is identical to @code{word-search-backward}, except that the beginning or the end of @var{string} need not match a word boundary, unless @var{string} begins or ends in whitespace. @@ -1005,7 +1007,7 @@ only the search functions useful in programs. The principal one is the buffer is multibyte; they convert the regular expression to unibyte if the buffer is unibyte. @xref{Text Representations}. -@deffn Command re-search-forward regexp &optional limit noerror repeat +@deffn Command re-search-forward regexp &optional limit noerror count This function searches forward in the current buffer for a string of text that is matched by the regular expression @var{regexp}. The function skips over any amount of text that is not matched by @@ -1014,14 +1016,12 @@ It returns the new value of point. If @var{limit} is non-@code{nil}, it must be a position in the current buffer. It specifies the upper bound to the search. No match -extending after that position is accepted. +extending after that position is accepted. If @var{limit} is omitted +or @code{nil}, it defaults to the end of the accessible portion of the +buffer. -If @var{repeat} is supplied, it must be a positive number; the search -is repeated that many times; each repetition starts at the end of the -previous match. If all these successive searches succeed, the search -succeeds, moving point and returning its new value. Otherwise the -search fails. What @code{re-search-forward} does when the search -fails depends on the value of @var{noerror}: +What @code{re-search-forward} does when the search fails depends on +the value of @var{noerror}: @table @asis @item @code{nil} @@ -1033,6 +1033,19 @@ Move point to @var{limit} (or the end of the accessible portion of the buffer) and return @code{nil}. @end table +The argument @var{noerror} only affects valid searches which fail to +find a match. Invalid arguments cause errors regardless of +@var{noerror}. + +If @var{count} is a positive number @var{n}, the search is done +@var{n} times; each successive search starts at the end of the +previous match. If all these successive searches succeed, the +function call succeeds, moving point and returning its new value. +Otherwise the function call fails, with results depending on the value +of @var{noerror}, as described above. If @var{count} is a negative +number -@var{n}, the search is done @var{n} times in the opposite +(backward) direction. + In the following example, point is initially before the @samp{T}. Evaluating the search call moves point to the end of that line (between the @samp{t} of @samp{hat} and the newline). @@ -1057,7 +1070,7 @@ comes back" twice. @end example @end deffn -@deffn Command re-search-backward regexp &optional limit noerror repeat +@deffn Command re-search-backward regexp &optional limit noerror count This function searches backward in the current buffer for a string of text that is matched by the regular expression @var{regexp}, leaving point at the beginning of the first text found. @@ -1228,13 +1241,13 @@ non-greedy repetition operators (@pxref{Regexp Special, non-greedy}). This is because POSIX backtracking conflicts with the semantics of non-greedy repetition. -@deffn Command posix-search-forward regexp &optional limit noerror repeat +@deffn Command posix-search-forward regexp &optional limit noerror count This is like @code{re-search-forward} except that it performs the full backtracking specified by the POSIX standard for regular expression matching. @end deffn -@deffn Command posix-search-backward regexp &optional limit noerror repeat +@deffn Command posix-search-backward regexp &optional limit noerror count This is like @code{re-search-backward} except that it performs the full backtracking specified by the POSIX standard for regular expression matching. diff --git a/doc/lispref/strings.texi b/doc/lispref/strings.texi index 4e4c239291..0b9529460f 100644 --- a/doc/lispref/strings.texi +++ b/doc/lispref/strings.texi @@ -503,8 +503,9 @@ the codeset part of the locale cannot be @code{"UTF-8"} on MS-Windows. If your system does not support a locale environment, this function behaves like @code{string-equal}. -Do @emph{not} use this function to compare file names for equality, only -for sorting them. +Do @emph{not} use this function to compare file names for equality, as +filesystems generally don't honor linguistic equivalence of strings +that collation implements. @end defun @defun string-prefix-p string1 string2 &optional ignore-case diff --git a/doc/misc/efaq.texi b/doc/misc/efaq.texi index 8eee9e1d86..72a90a1ff2 100644 --- a/doc/misc/efaq.texi +++ b/doc/misc/efaq.texi @@ -931,6 +931,7 @@ status of its latest version. @menu * Origin of the term Emacs:: * Latest version of Emacs:: +* New in Emacs 25:: * New in Emacs 24:: * New in Emacs 23:: * New in Emacs 22:: @@ -977,9 +978,9 @@ conventions}). @cindex Bazaar repository, Emacs Emacs @value{EMACSVER} is the current version as of this writing. A version -number with two components (e.g., @samp{22.1}) indicates a released +number with two components (e.g., @samp{24.5}) indicates a released version; three components indicate a development -version (e.g., @samp{23.0.50} is what will eventually become @samp{23.1}). +version (e.g., @samp{26.0.50} is what will eventually become @samp{26.1}). Emacs is under active development, hosted at @uref{http://savannah.gnu.org/projects/emacs/, Savannah}. @@ -998,6 +999,106 @@ Emacs, type @kbd{C-h C-n} (@kbd{M-x view-emacs-news}). As of Emacs 22, you can give this command a prefix argument to read about which features were new in older versions. +@node New in Emacs 25 +@section What is different about Emacs 25? +@cindex Differences between Emacs 24 and Emacs 25 +@cindex Emacs 25, new features in + +@itemize +@cindex xwidgets +@item +Emacs can now embed native widgets inside Emacs buffers, if you have +gtk3 and webkitgtk3 installed. E.g., to access the embedded webkit +browser widget, type @kbd{M-x xwidget-webkit-browse-url}. + +@cindex loadable modules +@item +Emacs can now dynamically load external modules compiled as shared +libraries. + +@cindex Unicode characters, typing easily +@item +@kbd{C-x 8} has new shorthands for several popular characters, type +@kbd{C-x 8 C-h} to list shorthands. + +@cindex automatic display of Lisp APIs +@item +A new minor mode @code{global-eldoc-mode} is enabled by default, and +shows in the echo area or in the mode line the argument list of the +Emacs Lisp form at point. + +@cindex pasting text on text terminals +@cindex bracketed paste mode +@item +On text terminals that support the ``bracketed paste mode'' EMacs now +uses that mode by default. This mode allows Emacs to distinguish +between pasted text and text typed by the user. + +@cindex Unicode 9.0.0 +@item +Emacs 25 comes with data files imported from the latest Unicode +Standard version 9.0.0. + +@cindex bidirectional editing +@item +The support for bidirectional editing was updated to include all the +features mandated by the latest Unicode Standard version 9.0.0. + +@cindex character folding in searches +@item +Search command can now perform character folding in matches. This is +analogous to case folding, but instead of disregarding case variants, +it disregards wider classes of distinctions between similar +characters, such as matching different variants of double quote +characters, ignoring diacritics, etc. + +@cindex eww +@item +The Emacs Web Browser EWW was extended to render text using +variable-pitch fonts, and got other new features. + +@cindex rmail, and HTML mails +@item +Rmail can now render HTML mail messages, if Emacs is built with +libxml2 or if you have the Lynx browser installed. + +@cindex support for push commands in VC +@item +VC now has basic support for @code{push} commands, implemented for +Bzr, Git, and Hg. + +@cindex hide-ifdef, C/C@t{++} expressions in macros +@item +Hide-IfDef mode now support full C/C@t{++} expressions in macros, +macro argument expansion, interactive macro evaluation and automatic +scanning of @code{#define}d symbols. + +@cindex xref +@item +New package Xref replaces Etags's front-end and UI. Xref provides a +generic framework and new commands to find and move to definitions of +functions, macros, data structures etc., as well as go back to the +location where you were before moving to a definition. It supersedes +and obsoletes many Etags commands, while still using the etags.el code +that reads the TAGS tables as one of its back-ends. As result, the +popular key bindings @kbd{M-.} and @kbd{M-,} have been changed to +invoke Xref commands. + +@cindex project +@item +The new package Project provides generic infrastructure for dealing +with projects. + +@cindex horizontal scroll bars +@item +Emacs can now draw horizontal scroll bars on some platforms that +provide toolkit scroll bars, namely Gtk+, Lucid, Motif and Windows. + +@end itemize + +Consult the Emacs @file{NEWS} file (@kbd{C-h n}) for the full list of +changes in Emacs 25. + @node New in Emacs 24 @section What is different about Emacs 24? @cindex Differences between Emacs 23 and Emacs 24 |