diff --git a/configure.ac b/configure.ac index 110ea2909a9..cc2a597010f 100644 --- a/configure.ac +++ b/configure.ac @@ -4294,6 +4294,10 @@ AC_SUBST(LIBS_TERMCAP) AC_SUBST(TERMCAP_OBJ) # GNU/Linux-specific timer functions. +# Bug#34618. +if test "$opsys" = "cygwin"; then + emacs_cv_have_timerfd=no +fi AC_CACHE_CHECK([for timerfd interface], [emacs_cv_have_timerfd], [AC_COMPILE_IFELSE( [AC_LANG_PROGRAM([[#include diff --git a/doc/lispref/minibuf.texi b/doc/lispref/minibuf.texi index 766079d7bcd..a2b6e145502 100644 --- a/doc/lispref/minibuf.texi +++ b/doc/lispref/minibuf.texi @@ -1108,11 +1108,11 @@ different function to completely override the normal behavior of in the minibuffer to do completion. @defvar minibuffer-completion-table -The value of this variable is the completion table used for completion -in the minibuffer. This is the global variable that contains what -@code{completing-read} passes to @code{try-completion}. It is used by -minibuffer completion commands such as -@code{minibuffer-complete-word}. +The value of this variable is the completion table (@pxref{Basic +Completion}) used for completion in the minibuffer. This is the +global variable that contains what @code{completing-read} passes to +@code{try-completion}. It is used by minibuffer completion commands +such as @code{minibuffer-complete-word}. @end defvar @defvar minibuffer-completion-predicate @@ -1770,7 +1770,8 @@ possible match, and ignore the match if the predicate returns @code{nil}. @item -A flag specifying the type of completion operation to perform. This +A flag specifying the type of completion operation to perform; see +@ref{Basic Completion}, for the details of those operations. This flag may be one of the following values. @table @code @@ -1841,17 +1842,26 @@ the same as for @code{display-sort-function}. @defun completion-table-dynamic function &optional switch-buffer This function is a convenient way to write a function that can act as -a programmed completion function. The argument @var{function} should be -a function that takes one argument, a string, and returns an alist of -possible completions of it. It is allowed to ignore the argument and -return a full list of all possible completions. You can think of -@code{completion-table-dynamic} as a transducer between that interface +a programmed completion function. The argument @var{function} should +be a function that takes one argument, a string, and returns a +completion table (@pxref{Basic Completion}) containing all the +possible completions. The table returned by @var{function} can also +include elements that don't match the string argument; they are +automatically filtered out by @code{completion-table-dynamic}. In +particular, @var{function} can ignore its argument and return a full +list of all possible completions. You can think of +@code{completion-table-dynamic} as a transducer between @var{function} and the interface for programmed completion functions. If the optional argument @var{switch-buffer} is non-@code{nil}, and completion is performed in the minibuffer, @var{function} will be called with current buffer set to the buffer from which the minibuffer was entered. + +The return value of @code{completion-table-dynamic} is a function that +can be used as the 2nd argument to @code{try-completion} and +@code{all-completions}. Note that this function will always return +empty metadata and trivial boundaries (@pxref{Programmed Completion}). @end defun @defun completion-table-with-cache function &optional ignore-case @@ -1876,9 +1886,10 @@ Emacs Manual}. This command uses the abnormal hook variable @defvar completion-at-point-functions The value of this abnormal hook should be a list of functions, which -are used to compute a completion table for completing the text at -point. It can be used by major modes to provide mode-specific -completion tables (@pxref{Major Mode Conventions}). +are used to compute a completion table (@pxref{Basic Completion}) for +completing the text at point. It can be used by major modes to +provide mode-specific completion tables (@pxref{Major Mode +Conventions}). When the command @code{completion-at-point} runs, it calls the functions in the list one by one, without any argument. Each function diff --git a/doc/misc/tramp.texi b/doc/misc/tramp.texi index 3630c317b2f..db3b3f7fee5 100644 --- a/doc/misc/tramp.texi +++ b/doc/misc/tramp.texi @@ -3857,7 +3857,9 @@ Due to the remote shell saving tilde expansions triggered by @value{tramp} can suppress this behavior with the user option @code{tramp-histfile-override}. When set to @code{t}, environment variable @env{HISTFILE} is unset, and environment variables -@env{HISTFILESIZE} and @env{HISTSIZE} are set to 0. +@env{HISTFILESIZE} and @env{HISTSIZE} are set to 0. Don't use this +with @command{bash} 5.0.0. There is a bug in @command{bash} which +lets @command{bash} die. Alternatively, @code{tramp-histfile-override} could be a string. Environment variable @env{HISTFILE} is set to this file name then. Be diff --git a/lisp/emacs-lisp/regexp-opt.el b/lisp/emacs-lisp/regexp-opt.el index 152dca2309d..63786c1508c 100644 --- a/lisp/emacs-lisp/regexp-opt.el +++ b/lisp/emacs-lisp/regexp-opt.el @@ -121,9 +121,9 @@ than that of a simplified version: ((eq paren \\='symbols) \\='(\"\\\\_<\\\\(\" . \"\\\\)\\\\_>\")) ((null paren) \\='(\"\\\\(?:\" . \"\\\\)\")) (t \\='(\"\\\\(\" . \"\\\\)\"))))) - (concat (car paren) + (concat (car parens) (mapconcat \\='regexp-quote strings \"\\\\|\") - (cdr paren))))" + (cdr parens))))" (save-match-data ;; Recurse on the sorted list. (let* ((max-lisp-eval-depth 10000) diff --git a/src/image.c b/src/image.c index 642bf671520..854fbe40f75 100644 --- a/src/image.c +++ b/src/image.c @@ -9079,8 +9079,8 @@ imagemagick_load (struct frame *f, struct image *img) #endif success_p = imagemagick_load_image (f, img, 0, 0, SSDATA (file)); } - /* Else its not a file, its a lisp object. Load the image from a - lisp object rather than a file. */ + /* Else it's not a file, it's a Lisp object. Load the image from a + Lisp object rather than a file. */ else { Lisp_Object data; @@ -9388,8 +9388,8 @@ svg_load (struct frame *f, struct image *img) SSDATA (ENCODE_FILE (file))); xfree (contents); } - /* Else its not a file, its a lisp object. Load the image from a - lisp object rather than a file. */ + /* Else it's not a file, it's a Lisp object. Load the image from a + Lisp object rather than a file. */ else { Lisp_Object data, original_filename;