Fix some over-wide docstrings

* lisp/cedet/semantic/analyze/refs.el
(semantic-analyze-refs-proto)
(semantic-analyze-refs-impl):
* lisp/cedet/semantic/symref.el
(semantic-symref-hit-to-tag-via-buffer):
* lisp/emacs-lisp/chart.el (chart-axis-draw):
* lisp/emacs-lisp/cl-macs.el (cl-defstruct, cl-loop):
* lisp/emacs-lisp/eieio-core.el (eieio--add-new-slot):
* lisp/eshell/em-unix.el (eshell/info):
* lisp/gnus/deuglify.el (gnus-outlook-rearrange-article):
* lisp/gnus/gnus-agent.el (gnus-agent-read-article-number):
* lisp/gnus/gnus-util.el (gnus-put-overlay-excluding-newlines)
(gnus-put-text-property-excluding-newlines):
* lisp/gnus/message.el (message-sort-headers):
* lisp/gnus/nntp.el (nntp-with-open-group)
(nntp-with-open-group-function):
* lisp/gnus/nnvirtual.el (nnvirtual-create-mapping):
* lisp/mail/feedmail.el (feedmail-fiddle-list-of-fiddle-plexes)
(feedmail-queue-reminder, feedmail-mail-send-hook-splitter):
* lisp/net/dictionary.el (dictionary-do-matching):
* lisp/obsolete/longlines.el (longlines-auto-wrap):
* lisp/org/ob-sql.el (org-babel-sql-dbstring-vertica):
* lisp/org/ol-bbdb.el (org-bbdb-date-list):
* lisp/progmodes/cc-cmds.el (c-mark-function):
* lisp/progmodes/cperl-mode.el (cperl-add-tags-recurse)
(cperl-add-tags-recurse-noxs-fullpath)
(cperl-add-tags-recurse-noxs):
* lisp/progmodes/etags.el (tags-search):
* lisp/progmodes/verilog-mode.el (verilog-delete-auto-buffer)
(verilog-auto-re-search-do, verilog-expand-vector-internal):
* lisp/textmodes/reftex-parse.el (reftex-init-section-numbers):
* lisp/textmodes/reftex-toc.el
(reftex-toc-load-all-files-for-promotion):
* lisp/textmodes/sgml-mode.el (html-mode):
* lisp/textmodes/table.el (table--transcoord-cache-to-table)
(table--transcoord-table-to-cache, table--remove-eol-spaces)
(table--region-in-cell-p, table-goto-bottom-right-corner)
(table-split-cell-horizontally):
* lisp/url/url-handlers.el (url-insert):
* lisp/vc/ediff-util.el (ediff-inferior-compare-regions): Fix doc
strings to not exceed 80-column limits.  (Bug#44858)
This commit is contained in:
Stefan Kangas 2020-12-30 12:38:20 +01:00
parent d0a2543986
commit dd662fc972
27 changed files with 81 additions and 63 deletions

View file

@ -102,7 +102,8 @@ Use `semantic-analyze-current-tag' to debug this fcn."
;; into the context.
(cl-defmethod semantic-analyze-refs-impl ((refs semantic-analyze-references) &optional in-buffer)
"Return the implementations derived in the reference analyzer REFS.
Optional argument IN-BUFFER indicates that the returned tag should be in an active buffer."
Optional argument IN-BUFFER indicates that the returned tag
should be in an active buffer."
(let ((allhits (oref refs rawsearchdata))
(tag (oref refs tag))
(impl nil)
@ -127,7 +128,8 @@ Optional argument IN-BUFFER indicates that the returned tag should be in an acti
(cl-defmethod semantic-analyze-refs-proto ((refs semantic-analyze-references) &optional in-buffer)
"Return the prototypes derived in the reference analyzer REFS.
Optional argument IN-BUFFER indicates that the returned tag should be in an active buffer."
Optional argument IN-BUFFER indicates that the returned tag
should be in an active buffer."
(let ((allhits (oref refs rawsearchdata))
(tag (oref refs tag))
(proto nil))

View file

@ -511,9 +511,10 @@ Optional OPEN-BUFFERS, when nil will use a faster version of
`find-file' when a file needs to be opened. If non-nil, then
normal buffer initialization will be used.
This function will leave buffers loaded from a file open, but
will add buffers that must be opened to `semantic-symref-recently-opened-buffers'.
Any caller MUST deal with that variable, either clearing it, or deleting the
buffers that were opened."
will add buffers that must be opened to
`semantic-symref-recently-opened-buffers'.
Any caller MUST deal with that variable, either clearing it, or
deleting the buffers that were opened."
(let* ((line (car hit))
(file (cdr hit))
(buff (find-buffer-visiting file))

View file

@ -333,7 +333,8 @@ Automatically compensates for direction."
(cl-defmethod chart-axis-draw ((a chart-axis-names) &optional dir margin zone _start _end)
"Draw axis information based upon A range to be spread along the edge.
Optional argument DIR is the direction of the chart.
Optional arguments MARGIN, ZONE, START and END specify boundaries of the drawing."
Optional arguments MARGIN, ZONE, START and END specify boundaries
of the drawing."
(cl-call-next-method)
;; We prefer about 5 spaces between each value
(let* ((i 0)

View file

@ -900,7 +900,8 @@ This is compatible with Common Lisp, but note that `defun' and
"The Common Lisp `loop' macro.
Valid clauses include:
For clauses:
for VAR from/upfrom/downfrom EXPR1 to/upto/downto/above/below EXPR2 [by EXPR3]
for VAR from/upfrom/downfrom EXPR1 to/upto/downto/above/below EXPR2
[by EXPR3]
for VAR = EXPR1 then EXPR2
for VAR in/on/in-ref LIST [by FUNC]
for VAR across/across-ref ARRAY
@ -2698,7 +2699,7 @@ Each SLOT may instead take the form (SNAME SDEFAULT SOPTIONS...), where
SDEFAULT is the default value of that slot and SOPTIONS are keyword-value
pairs for that slot.
Supported keywords for slots are:
- `:read-only': If this has a non-nil value, that slot cannot be set via `setf'.
- `:read-only': If this has a non-nil value, that slot cannot be set via `setf'.
- `:documentation': this is a docstring describing the slot.
- `:type': the type of the field; currently only used for documentation.

View file

@ -587,8 +587,8 @@ If SKIPNIL is non-nil, then if default value is nil return t instead."
(defun eieio--add-new-slot (newc slot init alloc
&optional defaultoverride skipnil)
"Add into NEWC attribute SLOT.
If a slot of that name already exists in NEWC, then do nothing. If it doesn't exist,
INIT is the initarg, if any.
If a slot of that name already exists in NEWC, then do nothing.
If it doesn't exist, INIT is the initarg, if any.
Argument ALLOC specifies if the slot is allocated per instance, or per class.
If optional DEFAULTOVERRIDE is non-nil, then if A exists in NEWC,
we must override its value for a default.

View file

@ -169,7 +169,8 @@ Otherwise, Emacs will attempt to use rsh to invoke du on the remote machine."
`info' => goes to top info window
`info arg1' => IF arg1 is a file, then visits arg1
`info arg1' => OTHERWISE goes to top info window and then menu item arg1
`info arg1 arg2' => does action for arg1 (either visit-file or menu-item) and then menu item arg2
`info arg1 arg2' => does action for arg1 (either visit-file or menu-item) and
then menu item arg2
etc."
(eval-and-compile (require 'info))
(let ((file (cond

View file

@ -342,7 +342,7 @@ NODISPLAY is non-nil, don't redisplay the article buffer."
(unless nodisplay (gnus-outlook-display-article-buffer)))
(defun gnus-outlook-rearrange-article (attr-start)
"Put the text from ATTR-START to the end of buffer at the top of the article buffer."
"Put text from ATTR-START to the end of buffer at the top of the article buffer."
;; FIXME: 1. (*) text/plain ( ) text/html
(let ((inhibit-read-only t)
(cite-marks gnus-outlook-deuglify-cite-marks))

View file

@ -1901,7 +1901,8 @@ article numbers will be returned."
articles))
(defsubst gnus-agent-read-article-number ()
"Reads the article number at point. Returns nil when a valid article number can not be read."
"Read the article number at point.
Return nil when a valid article number can not be read."
(when (looking-at "[0-9]+\t")
(read (current-buffer))))

View file

@ -785,7 +785,7 @@ If there's no subdirectory, delete DIRECTORY as well."
string)
(defsubst gnus-put-text-property-excluding-newlines (beg end prop val)
"The same as `put-text-property', but don't put this prop on any newlines in the region."
"Like `put-text-property', but don't put this prop on any newlines in the region."
(save-match-data
(save-excursion
(save-restriction
@ -796,7 +796,7 @@ If there's no subdirectory, delete DIRECTORY as well."
(put-text-property beg (point) prop val)))))
(defsubst gnus-put-overlay-excluding-newlines (beg end prop val)
"The same as `put-text-property', but don't put this prop on any newlines in the region."
"Like `put-text-property', but don't put this prop on any newlines in the region."
(save-match-data
(save-excursion
(save-restriction

View file

@ -2669,7 +2669,7 @@ Point is left at the beginning of the narrowed-to region."
10000))))
(defun message-sort-headers ()
"Sort the headers of the current message according to `message-header-format-alist'."
"Sort headers of the current message according to `message-header-format-alist'."
(interactive)
(save-excursion
(save-restriction

View file

@ -600,7 +600,7 @@ retried once before actually displaying the error report."
nil)))
(defun nntp-with-open-group-function (group server connectionless bodyfun)
"Protect against servers that don't like clients that keep idle connections opens.
"Protect against servers that don't like clients that keep idle connections open.
The problem being that these servers may either close a connection or
simply ignore any further requests on a connection. Closed
connections are not detected until `accept-process-output' has updated
@ -651,7 +651,7 @@ command whose response triggered the error."
nntp-with-open-group-internal))
(defmacro nntp-with-open-group (group server &optional connectionless &rest forms)
"Protect against servers that don't like clients that keep idle connections opens.
"Protect against servers that don't like clients that keep idle connections open.
The problem being that these servers may either close a connection or
simply ignore any further requests on a connection. Closed
connections are not detected until `accept-process-output' has updated

View file

@ -667,7 +667,7 @@ the result."
(defun nnvirtual-create-mapping (dont-check)
"Build the tables necessary to map between component (group, article) to virtual article.
"Build tables to map between component (group, article) to virtual article.
Generate the set of read messages and marks for the virtual group
based on the marks on the component groups."
(let ((cnt 0)

View file

@ -1341,19 +1341,22 @@ variable, but may depend on its value as described here.")
(defun feedmail-mail-send-hook-splitter ()
"Facilitate dividing `mail-send-hook' things into queued and immediate cases.
If you have `mail-send-hook' functions that should only be called for sending/
queueing messages or only be called for the sending of queued messages, this is
for you. Add this function to `mail-send-hook' with something like this:
If you have `mail-send-hook' functions that should only be called
for sending/ queueing messages or only be called for the sending
of queued messages, this is for you. Add this function to
`mail-send-hook' with something like this:
(add-hook \\='mail-send-hook \\='feedmail-mail-send-hook-splitter)
Then add the functions you want called to either `feedmail-mail-send-hook-queued'
or `feedmail-mail-send-hook', as appropriate. The distinction is that
`feedmail-mail-send-hook' will be called when you send mail from a composition
buffer (typically by typing C-c C-c), whether the message is sent immediately
or placed in the queue or drafts directory. `feedmail-mail-send-hook-queued' is
called when messages are being sent from the queue directory, typically via a
call to `feedmail-run-the-queue'."
Then add the functions you want called to either
`feedmail-mail-send-hook-queued' or `feedmail-mail-send-hook', as
appropriate. The distinction is that `feedmail-mail-send-hook'
will be called when you send mail from a composition
buffer (typically by typing C-c C-c), whether the message is sent
immediately or placed in the queue or drafts directory.
`feedmail-mail-send-hook-queued' is called when messages are
being sent from the queue directory, typically via a call to
`feedmail-run-the-queue'."
(feedmail-say-debug ">in-> feedmail-mail-send-hook-splitter %s" feedmail-queue-runner-is-active)
(if feedmail-queue-runner-is-active
(run-hooks 'feedmail-mail-send-hook-queued)
@ -2072,10 +2075,10 @@ internally by feedmail):
after-run (the queue has just been run, possibly sending messages)
WHAT-EVENT is used as a key into the table `feedmail-queue-reminder-alist'. If
the associated value is a function, it is called without arguments and is expected
to perform the reminder activity. You can supply your own reminder functions
by redefining `feedmail-queue-reminder-alist'. If you don't want any reminders,
you can set `feedmail-queue-reminder-alist' to nil."
the associated value is a function, it is called without arguments and is
expected to perform the reminder activity. You can supply your own reminder
functions by redefining `feedmail-queue-reminder-alist'. If you don't want any
reminders, you can set `feedmail-queue-reminder-alist' to nil."
(interactive "p")
(feedmail-say-debug ">in-> feedmail-queue-reminder %s" what-event)
(let ((key (if (and what-event (symbolp what-event)) what-event 'on-demand)) entry reminder)
@ -2970,7 +2973,8 @@ probably not appropriate for you."
(defun feedmail-fiddle-list-of-fiddle-plexes (list-of-fiddle-plexes)
"Fiddling based on a list of fiddle-plexes. Values t, nil, and string are pointless."
"Fiddling based on a list of fiddle-plexes.
Values t, nil, and string are pointless."
(feedmail-say-debug ">in-> feedmail-fiddle-list-of-fiddle-plexes")
;; default is to fall off the end of the list and do nothing
(let ((lofp list-of-fiddle-plexes) fp)

View file

@ -1029,7 +1029,7 @@ If PATTERN is omitted, it defaults to \"[ \\f\\t\\n\\r\\v]+\"."
'dictionary-display-match-result)))
(defun dictionary-do-matching (word dictionary strategy function)
"Find matches for WORD with STRATEGY in DICTIONARY and displays them with FUNCTION."
"Find matches for WORD with STRATEGY in DICTIONARY and display them with FUNCTION."
(message "Lookup matching words for %s in %s using %s"
word dictionary strategy)

View file

@ -407,7 +407,8 @@ Hard newlines are left intact."
(defun longlines-auto-wrap (&optional arg)
"Toggle automatic line wrapping.
With optional argument ARG, turn on line wrapping if and only if ARG is positive.
With optional argument ARG, turn on line wrapping if and only if
ARG is positive.
If automatic line wrapping is turned on, wrap the entire buffer."
(interactive "P")
(setq arg (if arg

View file

@ -164,7 +164,8 @@ SQL Server on Windows and Linux platform."
" "))
(defun org-babel-sql-dbstring-vertica (host port user password database)
"Make Vertica command line args for database connection. Pass nil to omit that arg."
"Make Vertica command line args for database connection.
Pass nil to omit that arg."
(mapconcat #'identity
(delq nil
(list (when host (format "-h %s" host))

View file

@ -431,7 +431,7 @@ variable to be globally bound."
;;; to override the 7-day default.
(defun org-bbdb-date-list (d n)
"Return a list of dates in (m d y) format from the given date D to n-1 days hence."
"Return list of dates in (m d y) format from the given date D to n-1 days hence."
(let ((abs (calendar-absolute-from-gregorian d)))
(mapcar (lambda (i) (calendar-gregorian-from-absolute (+ abs i)))
(number-sequence 0 (1- n)))))

View file

@ -2357,7 +2357,7 @@ With a prefix arg, push the name onto the kill ring too."
(put 'c-display-defun-name 'isearch-scroll t)
(defun c-mark-function ()
"Put mark at end of the current top-level declaration or macro, point at beginning.
"Put mark at end of current top-level declaration or macro, point at beginning.
If point is not inside any then the closest following one is
chosen. Each successive call of this command extends the marked
region by one function.

View file

@ -6533,7 +6533,7 @@ Does not move point."
(defun cperl-add-tags-recurse-noxs ()
"Add to TAGS data for \"pure\" Perl files in the current directory and kids.
Use as
emacs -batch -q -no-site-file -l emacs/cperl-mode.el \
emacs -batch -q -no-site-file -l emacs/cperl-mode.el \\
-f cperl-add-tags-recurse-noxs
"
(cperl-write-tags nil nil t t nil t))
@ -6542,7 +6542,7 @@ Use as
"Add to TAGS data for \"pure\" Perl in the current directory and kids.
Writes down fullpath, so TAGS is relocatable (but if the build directory
is relocated, the file TAGS inside it breaks). Use as
emacs -batch -q -no-site-file -l emacs/cperl-mode.el \
emacs -batch -q -no-site-file -l emacs/cperl-mode.el \\
-f cperl-add-tags-recurse-noxs-fullpath
"
(cperl-write-tags nil nil t t nil t ""))
@ -6550,7 +6550,7 @@ is relocated, the file TAGS inside it breaks). Use as
(defun cperl-add-tags-recurse ()
"Add to TAGS file data for Perl files in the current directory and kids.
Use as
emacs -batch -q -no-site-file -l emacs/cperl-mode.el \
emacs -batch -q -no-site-file -l emacs/cperl-mode.el \\
-f cperl-add-tags-recurse
"
(cperl-write-tags nil nil t t))

View file

@ -1814,8 +1814,8 @@ argument is passed to `next-file', which see)."
Stops when a match is found.
To continue searching for next match, use command \\[tags-loop-continue].
If FILES if non-nil should be a list or an iterator returning the files to search.
The search will be restricted to these files.
If FILES if non-nil should be a list or an iterator returning the
files to search. The search will be restricted to these files.
Also see the documentation of the `tags-file-name' variable."
(interactive "sTags search (regexp): ")

View file

@ -5193,7 +5193,7 @@ Useful for creating tri's and other expanded fields."
(verilog-expand-vector-internal "[" "]"))
(defun verilog-expand-vector-internal (bra ket)
"Given BRA, the start brace and KET, the end brace, expand one line into many lines."
"Given start brace BRA, and end brace KET, expand one line into many lines."
(save-excursion
(forward-line 0)
(let ((signal-string (buffer-substring (point)
@ -10450,7 +10450,7 @@ if non-nil."
;;
(defun verilog-auto-re-search-do (search-for func)
"Search for the given auto text regexp SEARCH-FOR, and perform FUNC where it occurs."
"Search for given auto text regexp SEARCH-FOR, and perform FUNC where it occurs."
(goto-char (point-min))
(while (verilog-re-search-forward-quick search-for nil t)
(funcall func)))
@ -10862,7 +10862,8 @@ removed."
(defun verilog-delete-auto-buffer ()
"Perform `verilog-delete-auto' on the current buffer.
Intended for internal use inside a `verilog-save-font-no-change-functions' block."
Intended for internal use inside a
`verilog-save-font-no-change-functions' block."
;; Allow user to customize
(verilog-run-hooks 'verilog-before-delete-auto-hook)

View file

@ -1046,7 +1046,7 @@ When point is just after a { or [, limit string to matching parenthesis."
;;;###autoload
(defun reftex-init-section-numbers (&optional toc-entry appendix)
"Initialize the section numbers with zeros or with what is found in the TOC-ENTRY."
"Initialize section numbers with zeros or with what is found in the TOC-ENTRY."
(let* ((level (or (nth 5 toc-entry) -1))
(numbers (nreverse (split-string (or (nth 6 toc-entry) "") "\\.")))
(depth (1- (length reftex-section-numbers)))

View file

@ -851,7 +851,8 @@ if these sets are sorted blocks in the alist."
"Make sure all files of the document are being visited by buffers,
and that the scanning info is absolutely up to date.
We do this by rescanning with `reftex-keep-temporary-buffers' bound to t.
The variable `reftex--pro-or-de' is assumed to be dynamically scoped into this function.
The variable `reftex--pro-or-de' is assumed to be dynamically
scoped into this function.
When finished, we exit with an error message."
(let ((reftex-keep-temporary-buffers t))
(reftex-toc-Rescan)

View file

@ -2364,8 +2364,8 @@ have <h1>Very Major Headlines</h1> through <h6>Very Minor Headlines</h6>
<p>Paragraphs only need an opening tag. Line breaks and multiple spaces are
ignored unless the text is <pre>preformatted.</pre> Text can be marked as
<strong>bold</strong>, <em>italic</em> or <u>underlined</u> using the normal M-o or
Edit/Text Properties/Face commands.
<strong>bold</strong>, <em>italic</em> or <u>underlined</u> using the normal M-o
or Edit/Text Properties/Face commands.
Pages can have <a name=\"SOMENAME\">named points</a> and can link other points
to them with <a href=\"#SOMENAME\">see also somename</a>. In the same way <a

View file

@ -2651,7 +2651,8 @@ Creates a cell above and a cell below the current point location."
;;;###autoload
(defun table-split-cell-horizontally ()
"Split current cell horizontally.
Creates a cell on the left and a cell on the right of the current point location."
Creates a cell on the left and a cell on the right of the current
point location."
(interactive "*")
(table-recognize-cell 'force)
(let* ((o-coordinate (table--get-coordinate))
@ -4197,21 +4198,21 @@ cache buffer into the designated cell in the table buffer."
(1- (cdr (table--get-coordinate (car (table--vertical-cell-list t t))))))))
(defun table-goto-top-right-corner ()
"Move point to top right corner of the current table and return the char position."
"Move point to top right corner of the current table and return char position."
(table--goto-coordinate
(cons
(car (table--get-coordinate (cdr (table--horizontal-cell-list nil t))))
(1- (cdr (table--get-coordinate (car (table--vertical-cell-list t t))))))))
(defun table-goto-bottom-left-corner ()
"Move point to bottom left corner of the current table and return the char position."
"Move point to bottom left corner of the current table and return char position."
(table--goto-coordinate
(cons
(1- (car (table--get-coordinate (car (table--horizontal-cell-list t t)))))
(1+ (cdr (table--get-coordinate (cdr (table--vertical-cell-list nil t))))))))
(defun table-goto-bottom-right-corner ()
"Move point to bottom right corner of the current table and return the char position."
"Move point to bottom right corner of the current table and return char position."
(table--goto-coordinate
(cons
(car (table--get-coordinate (cdr (table--horizontal-cell-list nil t))))
@ -4925,7 +4926,7 @@ When optional LOCATION is provided the test is performed at that location."
t))
(defun table--region-in-cell-p (beg end)
"Return t when location BEG and END are in a valid table cell in the current buffer."
"Return t when location BEG and END are in a valid table cell in current buffer."
(and (table--at-cell-p (min beg end))
(save-excursion
(let ((cell-beg (progn (goto-char beg) (table--probe-cell))))
@ -5245,7 +5246,7 @@ works better than the previous versions however not fully compatible.
str))
(defun table--remove-eol-spaces (beg end &optional bol force)
"Remove spaces at the end of each line in the BEG END region of the current buffer.
"Remove spaces at the end of each line in the BEG END region of current buffer.
When optional BOL is non-nil spaces at the beginning of line are
removed. When optional FORCE is non-nil removal operation is enforced
even when point is within the removal area."
@ -5386,7 +5387,8 @@ point"
(defun table--transcoord-table-to-cache (&optional coordinate)
"Transpose COORDINATE from table coordinate system to cache coordinate system.
When COORDINATE is omitted or nil the point in current buffer is assumed in place."
When COORDINATE is omitted or nil the point in current buffer is
assumed in place."
(table--offset-coordinate
(or coordinate (table--get-coordinate))
table-cell-info-lu-coordinate
@ -5394,7 +5396,8 @@ When COORDINATE is omitted or nil the point in current buffer is assumed in plac
(defun table--transcoord-cache-to-table (&optional coordinate)
"Transpose COORDINATE from cache coordinate system to table coordinate system.
When COORDINATE is omitted or nil the point in current buffer is assumed in place."
When COORDINATE is omitted or nil the point in current buffer is
assumed in place."
(table--offset-coordinate
(or coordinate (table--get-coordinate))
table-cell-info-lu-coordinate))

View file

@ -299,8 +299,8 @@ BUFFER should be a complete URL buffer as returned by `url-retrieve'.
If the headers specify a coding-system (and current buffer is multibyte),
it is applied to the body before it is inserted.
Returns a list of the form (SIZE CHARSET), where SIZE is the size in bytes
of the inserted text and CHARSET is the charset that was specified in the header,
or nil if none was found.
of the inserted text and CHARSET is the charset that was specified in the
header, or nil if none was found.
BEG and END can be used to only insert a subpart of the body.
They count bytes from the beginning of the body."
(let* ((handle (with-current-buffer buffer (mm-dissect-buffer t)))

View file

@ -3443,8 +3443,8 @@ Without an argument, it saves customized diff argument, if available
(defun ediff-inferior-compare-regions ()
"Compare regions in an active Ediff session.
Like `ediff-regions-linewise' but is called from under an active Ediff session on
the files that belong to that session.
Like `ediff-regions-linewise' but is called from under an active Ediff session
on the files that belong to that session.
After quitting the session invoked via this function, type C-l to the parent
Ediff Control Panel to restore highlighting."