diff --git a/ChangeLog.4 b/ChangeLog.4 index 372b03b32b2..1c9b8f43377 100644 --- a/ChangeLog.4 +++ b/ChangeLog.4 @@ -79829,7 +79829,7 @@ Some adjustments to last change * src/gtkutil.c (xg_set_undecorated): Only set ARGB visual on - Cairo builds wtihout PGTK. + Cairo builds without PGTK. * src/xfns.c (select_visual): Likewise. 2022-01-29 HÃ¥kon Flatval diff --git a/admin/make-tarball.txt b/admin/make-tarball.txt index 505d3469d3c..5704e8e8922 100644 --- a/admin/make-tarball.txt +++ b/admin/make-tarball.txt @@ -22,6 +22,11 @@ Steps to take before starting on the first pretest in any release sequence: You can use 'gnupload --delete' (see below for more gnupload details). (We currently don't bother with this.) +4. Check that all new Lisp libraries belong to sensible packages. + Run "make -C lisp finder-data" and check the diff of the generated + file against the previously released Emacs version to see what has + changed. + General steps (for each step, check for possible errors): 1. git pull # fetch from the repository diff --git a/doc/emacs/custom.texi b/doc/emacs/custom.texi index 23dcc44a928..8c30f26bbf7 100644 --- a/doc/emacs/custom.texi +++ b/doc/emacs/custom.texi @@ -2924,6 +2924,7 @@ Type @kbd{C-q}, followed by the key you want to bind, to insert @var{char}. @node Early Init File @subsection The Early Init File @cindex early init file +@cindex @file{early-init.el} file Most customizations for Emacs should be put in the normal init file. @xref{Init File}. However, it is sometimes necessary diff --git a/doc/emacs/display.texi b/doc/emacs/display.texi index fa8ca4cbf17..cc178dbe99f 100644 --- a/doc/emacs/display.texi +++ b/doc/emacs/display.texi @@ -740,7 +740,7 @@ frame: This is the base face used for the mode lines, as well as header lines and for menu bars when toolkit menus are not used. By default, it's drawn with shadows for a raised effect on graphical displays, and -drawn as the inverse of the default face on non-windowed terminals. +drawn as the inverse of the default face on text terminals. The @code{mode-line-active} and @code{mode-line-inactive} faces (which are the ones used on the mode lines) inherit from this face. diff --git a/doc/emacs/emacs.texi b/doc/emacs/emacs.texi index 7a21eb49e24..f9096557c24 100644 --- a/doc/emacs/emacs.texi +++ b/doc/emacs/emacs.texi @@ -20,8 +20,7 @@ This is the @cite{GNU Emacs Manual}, @end ifclear updated for Emacs version @value{EMACSVER}. -Copyright @copyright{} 1985--1987, 1993--2023 Free Software Foundation, -Inc. +Copyright @copyright{} 1985--2023 Free Software Foundation, Inc. @quotation Permission is granted to copy, distribute and/or modify this document @@ -553,7 +552,7 @@ Frames and Graphical Displays * Dialog Boxes:: Controlling use of dialog boxes. * Tooltips:: Displaying information at the current mouse position. * Mouse Avoidance:: Preventing the mouse pointer from obscuring text. -* Non-Window Terminals:: Multiple frames on terminals that show only one. +* Text Terminals:: Multiple frames on terminals that show only one. * Text-Only Mouse:: Using the mouse in text terminals. International Character Set Support diff --git a/doc/emacs/frames.texi b/doc/emacs/frames.texi index 2a9567a7bcd..e2e30408a65 100644 --- a/doc/emacs/frames.texi +++ b/doc/emacs/frames.texi @@ -1,6 +1,5 @@ @c This is part of the Emacs manual. -@c Copyright (C) 1985--1987, 1993--1995, 1997, 1999--2023 Free Software -@c Foundation, Inc. +@c Copyright (C) 1985--2023 Free Software Foundation, Inc. @c See file emacs.texi for copying conditions. @node Frames @chapter Frames and Graphical Displays @@ -30,9 +29,9 @@ displays (@pxref{Exiting}). To close just the selected frame, type frames. On text terminals, many of these features are unavailable. However, it is still possible to create multiple frames on text terminals; such frames are displayed one at a time, filling the entire -terminal screen (@pxref{Non-Window Terminals}). It is also possible -to use the mouse on some text terminals (@pxref{Text-Only Mouse}, for -doing so on GNU and Unix systems; and +terminal screen (@pxref{Text Terminals}). It is also possible to use +the mouse on some text terminals (@pxref{Text-Only Mouse}, for doing +so on GNU and Unix systems; and @iftex @pxref{MS-DOS Mouse,,,emacs-xtra,Specialized Emacs Features}, @end iftex @@ -62,7 +61,7 @@ for doing so on MS-DOS). Menus are supported on all text terminals. * Dialog Boxes:: Controlling use of dialog boxes. * Tooltips:: Displaying information at the current mouse position. * Mouse Avoidance:: Preventing the mouse pointer from obscuring text. -* Non-Window Terminals:: Multiple frames on terminals that show only one. +* Text Terminals:: Multiple frames on terminals that show only one. * Text-Only Mouse:: Using the mouse in text terminals. @end menu @@ -593,7 +592,7 @@ the ordinary, interactive frames are deleted. In this case, @kbd{C-x The @kbd{C-x 5 1} (@code{delete-other-frames}) command deletes all other frames on the current terminal (this terminal refers to either a -graphical display, or a text terminal; @pxref{Non-Window Terminals}). +graphical display, or a text terminal; @pxref{Text Terminals}). If the Emacs session has frames open on other graphical displays or text terminals, those are not deleted. @@ -1765,8 +1764,8 @@ You can also use the command @kbd{M-x mouse-avoidance-mode} to enable the mode. Whenever Mouse Avoidance mode moves the mouse, it also raises the frame. -@node Non-Window Terminals -@section Non-Window Terminals +@node Text Terminals +@section Text Terminals @cindex text terminal On a text terminal, Emacs can display only one Emacs frame at a diff --git a/doc/emacs/macos.texi b/doc/emacs/macos.texi index 18811291a9e..c1927a01eb4 100644 --- a/doc/emacs/macos.texi +++ b/doc/emacs/macos.texi @@ -149,7 +149,10 @@ the corresponding left-hand key. @vindex ns-use-proxy-icon @item ns-use-proxy-icon This variable specifies whether to display the proxy icon in the -titlebar. +titlebar. The proxy icon can be used to drag the file associated with +the current buffer to other applications, a printer, the desktop, +etc., in the same way you can from Finder. You might have to disable +@code{tool-bar-mode} to see the proxy icon. @vindex ns-confirm-quit @item ns-confirm-quit diff --git a/doc/emacs/misc.texi b/doc/emacs/misc.texi index 7a88b7ef5e0..a05b7f6c6ea 100644 --- a/doc/emacs/misc.texi +++ b/doc/emacs/misc.texi @@ -2146,7 +2146,7 @@ overrides the environment variable.) Create a new client frame on the current text terminal, instead of using an existing Emacs frame. This behaves just like the @samp{-c} option, described above, except that it creates a text terminal frame -(@pxref{Non-Window Terminals}). +(@pxref{Text Terminals}). On MS-Windows, @samp{-t} behaves just like @samp{-c} if the Emacs server is using the graphical display, but if the Emacs server is diff --git a/doc/misc/ediff.texi b/doc/misc/ediff.texi index ce6cb8c9bd6..f3c671635eb 100644 --- a/doc/misc/ediff.texi +++ b/doc/misc/ediff.texi @@ -1368,13 +1368,13 @@ the variable @code{ediff-help-message}, which is local to @node Window and Frame Configuration @section Window and Frame Configuration -On a non-windowing display, Ediff sets things up in one frame, splitting +On a non-graphical display, Ediff sets things up in one frame, splitting it between a small control window and the windows for buffers A, B, and C@. The split between these windows can be horizontal or vertical, which can be changed interactively by typing @kbd{|} while the cursor is in the control window. -On a window display, Ediff sets up a dedicated frame for Ediff Control +On a graphical display, Ediff sets up a dedicated frame for Ediff Control Panel and then it chooses windows as follows: If one of the buffers is invisible, it is displayed in the currently selected frame. If a buffer is visible, it is displayed in the frame where it is visible. @@ -1477,7 +1477,7 @@ The multiframe setup is done by the @code{ediff-setup-windows-multiframe} function, which is the default on windowing displays. The plain setup, one where all windows are always in one frame, is done by @code{ediff-setup-windows-plain}, which is the -default on a non-windowing display (or in an xterm window). In fact, +default on a non-graphical display (or in an xterm window). In fact, under Emacs, you can switch freely between these two setups by executing the command @code{ediff-toggle-multiframe} using the Minibuffer of the Menubar. diff --git a/doc/misc/gnus.texi b/doc/misc/gnus.texi index 7ebd82c5bed..8a50f064326 100644 --- a/doc/misc/gnus.texi +++ b/doc/misc/gnus.texi @@ -24841,7 +24841,7 @@ ends such as Bogofilter (@pxref{Bogofilter}) and the Spam Statistics package (@pxref{Spam Statistics Filtering}). The spam and ham processors that apply to each group are determined by -the group's@code{spam-process} group parameter. If this group +the group's @code{spam-process} group parameter. If this group parameter is not defined, they are determined by the variable @code{gnus-spam-process-newsgroups}. diff --git a/doc/misc/viper.texi b/doc/misc/viper.texi index 3e038520287..e0ab563ca33 100644 --- a/doc/misc/viper.texi +++ b/doc/misc/viper.texi @@ -8,8 +8,7 @@ @include docstyle.texi @copying -Copyright @copyright{} 1995--1997, 2001--2023 Free Software Foundation, -Inc. +Copyright @copyright{} 1995--2023 Free Software Foundation, Inc. @quotation Permission is granted to copy, distribute and/or modify this document @@ -1700,7 +1699,7 @@ a text-formatting function, @code{indent-for-tab-command} (which facilitates programming and document writing). Instead, the tab is inserted via the command @code{viper-insert-tab}, which is bound to @kbd{S-tab} (shift + tab). -On some non-windowing terminals, Shift doesn't modify the @key{TAB} key, so +On some text terminals, Shift doesn't modify the @key{TAB} key, so @kbd{S-tab} behaves as if it were @key{TAB}. In such a case, you will have to bind @code{viper-insert-tab} to some other convenient key. @@ -2232,7 +2231,7 @@ For this reason, Viper doesn't change the standard Emacs binding of (except for users at level 1). Instead, in Viper, the key @kbd{S-tab} (shift+ tab) is chosen to emulate Vi's @key{TAB}. -We should note that on some non-windowing terminals, Shift doesn't modify +We should note that on some text terminals, Shift doesn't modify the @key{TAB} key, so @kbd{S-tab} behaves as if it were @key{TAB}. In such a case, you will have to bind @code{viper-insert-tab} to some other convenient key. diff --git a/lisp/calendar/timeclock.el b/lisp/calendar/timeclock.el index 0cd03c15881..7606805a99b 100644 --- a/lisp/calendar/timeclock.el +++ b/lisp/calendar/timeclock.el @@ -100,19 +100,21 @@ into account any discrepancy of time under-worked or over-worked on previous days. This only affects the timeclock mode line display." :type 'boolean) -(defcustom timeclock-get-project-function 'timeclock-ask-for-project +(defcustom timeclock-get-project-function #'timeclock-ask-for-project "The function used to determine the name of the current project. When clocking in, and no project is specified, this function will be called to determine what is the current project to be worked on. If this variable is nil, no questions will be asked." - :type 'function) + :type '(choice (const :tag "Don't ask" nil) + function)) -(defcustom timeclock-get-reason-function 'timeclock-ask-for-reason +(defcustom timeclock-get-reason-function #'timeclock-ask-for-reason "A function used to determine the reason for clocking out. When clocking out, and no reason is specified, this function will be called to determine what is the reason. If this variable is nil, no questions will be asked." - :type 'function) + :type '(choice (const :tag "Don't ask" nil) + function)) (defcustom timeclock-get-workday-function nil "A function used to determine the length of today's workday. diff --git a/lisp/cedet/ede/base.el b/lisp/cedet/ede/base.el index 305bf599151..c32d2edd7b7 100644 --- a/lisp/cedet/ede/base.el +++ b/lisp/cedet/ede/base.el @@ -312,7 +312,8 @@ All specific project types must derive from this project." "File containing the list of projects EDE has viewed. If set to nil, then the cache is not saved." :group 'ede - :type 'file) + :type '(choice (const :tag "Don't save the cache" nil) + file)) (defvar ede-project-cache-files nil "List of project files EDE has seen before.") diff --git a/lisp/cedet/pulse.el b/lisp/cedet/pulse.el index 37b41fbe8c3..38ccf5b975f 100644 --- a/lisp/cedet/pulse.el +++ b/lisp/cedet/pulse.el @@ -71,7 +71,9 @@ Any other value means to do the default pulsing behavior. If `pulse-flag' is non-nil, but `pulse-available-p' is nil, then this flag is ignored." :group 'pulse - :type 'boolean) + :type '(choice (const :tag "Highlight with unchanging color" nil) + (const :tag "No highlight" never) + (other :tag "Pulse" t))) (defface pulse-highlight-start-face '((((class color) (background dark)) diff --git a/lisp/emacs-lisp/let-alist.el b/lisp/emacs-lisp/let-alist.el index d9ad46b2af7..ed07aecf338 100644 --- a/lisp/emacs-lisp/let-alist.el +++ b/lisp/emacs-lisp/let-alist.el @@ -9,8 +9,8 @@ ;; Prefix: let-alist ;; Separator: - -;; This is an Elpa :core package. Don't use functionality that is not -;; compatible with Emacs 24.1. +;; This is a GNU ELPA :core package. Avoid functionality that is not +;; compatible with the version of Emacs recorded above. ;; This file is part of GNU Emacs. @@ -60,7 +60,7 @@ ;; the variables of the outer one. You can, however, access alists ;; inside the original alist by using dots inside the symbol, as ;; displayed in the example above by the `.site.contents'. -;; + ;;; Code: @@ -139,7 +139,14 @@ essentially expands to If you nest `let-alist' invocations, the inner one can't access the variables of the outer one. You can, however, access alists inside the original alist by using dots inside the symbol, as -displayed in the example above." +displayed in the example above. + +Note that there is no way to differentiate the case where a key +is missing from when it is present, but its value is nil. Thus, +the following form evaluates to nil: + + (let-alist \\='((some-key . nil)) + .some-key)" (declare (indent 1) (debug t)) (let ((var (make-symbol "alist"))) `(let ((,var ,alist)) diff --git a/lisp/image-mode.el b/lisp/image-mode.el index ecc7d73dd9e..d5ca6348c92 100644 --- a/lisp/image-mode.el +++ b/lisp/image-mode.el @@ -772,9 +772,8 @@ to switch back to ;;;###autoload (defun image-mode-to-text () - "Set a non-image mode as major mode in combination with image minor mode. -A non-mage major mode found from `auto-mode-alist' or fundamental mode -displays an image file as text." + "Set current buffer's modes be a non-image major mode, plus `image-minor-mode'. +A non-image major mode displays an image file as text." ;; image-mode-as-text = normal-mode + image-minor-mode (let ((previous-image-type image-type)) ; preserve `image-type' (major-mode-restore '(image-mode image-mode-as-text)) @@ -785,15 +784,14 @@ displays an image file as text." (image-toggle-display-text)))) (defun image-mode-as-hex () - "Set `hexl-mode' as major mode in combination with image minor mode. -A non-mage major mode found from `auto-mode-alist' or fundamental mode -displays an image file as hex. `image-minor-mode' provides the key -\\\\[image-toggle-hex-display] to switch back to `image-mode' \ -to display an image file as -the actual image. + "Set current buffer's modes be `hexl-mode' major mode, plus `image-minor-mode'. +This will by default display an image file as hex. `image-minor-mode' +provides the key sequence \\\\[image-toggle-hex-display] to \ +switch back to `image-mode' to display +an image file's buffer as an image. You can use `image-mode-as-hex' in `auto-mode-alist' when you want to -display an image file as hex initially. +display image files as hex by default. See commands `image-mode' and `image-minor-mode' for more information on these modes." diff --git a/lisp/leim/quail/cyrillic.el b/lisp/leim/quail/cyrillic.el index d0874124fc7..5ba1c4801fd 100644 --- a/lisp/leim/quail/cyrillic.el +++ b/lisp/leim/quail/cyrillic.el @@ -38,12 +38,12 @@ ;; This was `cyrillic-jcuken'. Alexander Mikhailian ;; says: "cyrillic-jcuken" is actually -;; russian. It is ok but a bit outdated. This layout has been used +;; Russian. It is ok but a bit outdated. This layout has been used ;; in typewriters for ages but it has been superseded on desktops by ;; a variation of this layout, implemented in M$ Windows software. ;; The Windows layout is greatly preferred because of the comma and ;; period being placed more conveniently and, of course, because of -;; the popularity of Windows software. This layout is a common option +;; the popularity of Windows software. This layout is a common option ;; in X Windows and console layouts for GNU/Linux. [See ;; `russian-computer' below.] (quail-define-package diff --git a/lisp/net/tramp.el b/lisp/net/tramp.el index bff9a010c3b..c0d910a5c15 100644 --- a/lisp/net/tramp.el +++ b/lisp/net/tramp.el @@ -414,7 +414,7 @@ Another host name is useful only in combination with ;; an external method. (cond ;; PuTTY is installed. We don't take it, if it is installed on a - ;; non-windows system, or pscp from the pssh (parallel ssh) package + ;; non-Windows system, or pscp from the pssh (parallel ssh) package ;; is found. ((and (eq system-type 'windows-nt) (executable-find "pscp")) "pscp") ;; There is an ssh installation. diff --git a/lisp/printing.el b/lisp/printing.el index 8aea58e157b..cb43f7e40dc 100644 --- a/lisp/printing.el +++ b/lisp/printing.el @@ -1,6 +1,6 @@ ;;; printing.el --- printing utilities -*- lexical-binding:t -*- -;; Copyright (C) 2000-2001, 2003-2023 Free Software Foundation, Inc. +;; Copyright (C) 2000-2023 Free Software Foundation, Inc. ;; Author: Vinicius Jose Latorre ;; Keywords: wp, print, PostScript @@ -5518,7 +5518,7 @@ COMMAND.exe, COMMAND.bat and COMMAND.com in this order." (setq ext (cdr ext) found nil)) found) - ;; non-windows systems + ;; non-Windows systems (and (file-regular-p cmd) (file-executable-p cmd) cmd))) diff --git a/lisp/progmodes/project.el b/lisp/progmodes/project.el index 2e6ae89a443..68d5edc482c 100644 --- a/lisp/progmodes/project.el +++ b/lisp/progmodes/project.el @@ -4,8 +4,8 @@ ;; Version: 0.10.0 ;; Package-Requires: ((emacs "26.1") (xref "1.4.0")) -;; This is a GNU ELPA :core package. Avoid using functionality that -;; not compatible with the version of Emacs recorded above. +;; This is a GNU ELPA :core package. Avoid functionality that is not +;; compatible with the version of Emacs recorded above. ;; This file is part of GNU Emacs. diff --git a/lisp/term.el b/lisp/term.el index b8466b21332..b2875e4a17f 100644 --- a/lisp/term.el +++ b/lisp/term.el @@ -486,7 +486,7 @@ Customize this option to nil if you want the previous behavior." (defcustom term-scroll-to-bottom-on-output nil "Controls whether interpreter output causes window to scroll. -If nil, then do not scroll. If t or `all', scroll all windows showing buffer. +If nil, then do not scroll. If t, scroll all windows showing buffer. If `this', scroll only the selected window. If `others', scroll only those that are not the selected window. @@ -494,7 +494,12 @@ The default is nil. See variable `term-scroll-show-maximum-output'. This variable is buffer-local." - :type 'boolean + :type '(choice (const :tag "Don't scroll" nil) + (const :tag "Scroll selected window only" this) + (const :tag "Scroll unselected windows" others) + ;; We also recognize `all', but we don't advertise it + ;; anymore. (Bug#66071) + (other :tag "Scroll all windows" t)) :group 'term) (defcustom term-scroll-snap-to-bottom t diff --git a/lisp/type-break.el b/lisp/type-break.el index 494ed80c496..d3371d66863 100644 --- a/lisp/type-break.el +++ b/lisp/type-break.el @@ -77,7 +77,8 @@ rest from typing, then the next typing break is simply rescheduled for later. If a break is interrupted before this much time elapses, the user will be asked whether or not really to interrupt the break." :set-after '(type-break-interval) - :type 'natnum + :type '(choice (const :tag "Don't check idle time" nil) + natnum) :group 'type-break) (defcustom type-break-good-break-interval nil @@ -201,7 +202,8 @@ key is pressed." "Name of file used to save state across sessions. If this is nil, no data will be saved across sessions." :version "24.4" ; added locate-user - :type 'file) + :type '(choice (const :tag "Don't save data" nil) + file)) (defvar type-break-post-command-hook '(type-break-check) "Hook run indirectly by `post-command-hook' for typing break functions. diff --git a/lisp/vc/ediff.el b/lisp/vc/ediff.el index 24836e1b1c1..7e3b20d8939 100644 --- a/lisp/vc/ediff.el +++ b/lisp/vc/ediff.el @@ -909,7 +909,7 @@ MERGE-AUTOSTORE-DIR is the directory in which to store merged files." (defun ediff-windows-wordwise (dumb-mode &optional wind-A wind-B startup-hooks) "Compare WIND-A and WIND-B, which are selected by clicking, wordwise. This compares the portions of text visible in each of the two windows. -With prefix argument, DUMB-MODE, or on a non-windowing display, works as +With prefix argument, DUMB-MODE, or on a non-graphical display, works as follows: If WIND-A is nil, use selected window. If WIND-B is nil, use window next to WIND-A. @@ -923,7 +923,7 @@ arguments after setting up the Ediff buffers." (defun ediff-windows-linewise (dumb-mode &optional wind-A wind-B startup-hooks) "Compare WIND-A and WIND-B, which are selected by clicking, linewise. This compares the portions of text visible in each of the two windows. -With prefix argument, DUMB-MODE, or on a non-windowing display, works as +With prefix argument, DUMB-MODE, or on a non-graphical display, works as follows: If WIND-A is nil, use selected window. If WIND-B is nil, use window next to WIND-A. @@ -935,7 +935,7 @@ arguments after setting up the Ediff buffers." ;; Compare visible portions of text in WIND-A and WIND-B, which are ;; selected by clicking. -;; With prefix argument, DUMB-MODE, or on a non-windowing display, +;; With prefix argument, DUMB-MODE, or on a non-graphical display, ;; works as follows: ;; If WIND-A is nil, use selected window. ;; If WIND-B is nil, use window next to WIND-A. diff --git a/lisp/vc/vc.el b/lisp/vc/vc.el index 7f334397a5e..b99424750e0 100644 --- a/lisp/vc/vc.el +++ b/lisp/vc/vc.el @@ -1264,6 +1264,8 @@ the revision ID or branch ID." (error "Fileset files are missing, so cannot be operated on")) ((eq state 'ignored) (error "Fileset files are ignored by the version-control system")) + ;; Fileset comes from a diff-mode buffer, see + ;; 'diff-vc-deduce-fileset', and the buffer is the patch to apply. ((eq model 'patch) (vc-checkin files backend nil nil nil (buffer-string))) ((or (null state) (eq state 'unregistered)) diff --git a/src/nsfns.m b/src/nsfns.m index 082e06698b2..038a3fa23ad 100644 --- a/src/nsfns.m +++ b/src/nsfns.m @@ -3987,7 +3987,12 @@ be used as the image of the icon representing the frame. */); DEFVAR_BOOL ("ns-use-proxy-icon", ns_use_proxy_icon, doc: /* When non-nil display a proxy icon in the titlebar. -Default is t. */); +The proxy icon can be used to drag the file associated with the +current buffer to other applications, a printer, the desktop, etc., in +the same way you can from Finder. Note that you might have to disable +`tool-bar-mode' to see the proxy icon. + +The default value is t. */); ns_use_proxy_icon = true; DEFVAR_LISP ("x-max-tooltip-size", Vx_max_tooltip_size, diff --git a/src/nsterm.m b/src/nsterm.m index 4e0dfa58c63..efa6ab39a0c 100644 --- a/src/nsterm.m +++ b/src/nsterm.m @@ -6110,6 +6110,11 @@ ns_term_shutdown (int sig) */ +- (BOOL) applicationSupportsSecureRestorableState: (NSApplication *)app +{ + return YES; +} + - (void) terminate: (id)sender { struct input_event ie; diff --git a/src/xdisp.c b/src/xdisp.c index 2c53527c25e..b9009df5df9 100644 --- a/src/xdisp.c +++ b/src/xdisp.c @@ -37045,14 +37045,15 @@ See also `overlay-arrow-string'. */); Voverlay_arrow_position = Qnil; DEFVAR_LISP ("overlay-arrow-string", Voverlay_arrow_string, - doc: /* String to display as an arrow in non-window frames. + doc: /* String to display as an arrow in text-mode frames. See also `overlay-arrow-position'. */); Voverlay_arrow_string = build_pure_c_string ("=>"); DEFVAR_LISP ("overlay-arrow-variable-list", Voverlay_arrow_variable_list, doc: /* List of variables (symbols) which hold markers for overlay arrows. The symbols on this list are examined during redisplay to determine -where to display overlay arrows. */); +where to display overlay arrows. +See also `overlay-arrow-string'. */); Voverlay_arrow_variable_list = list1 (intern_c_string ("overlay-arrow-position"));