Function: ibut:rename
ibut:rename is a byte-compiled function defined in hbut.el.
Signature
(ibut:rename OLD-LBL NEW-LBL)
Documentation
Change an implicit button name in the current buffer from OLD-LBL to NEW-LBL.
Return t if the label is changed, else nil.
Signal an error when no such button is found in the current buffer or if either OLD-LBL or NEW-LBL is empty.
Leave point at the start of the button label which may be elsewhere than the current point; callers should use `save-excursion` to retain the existing point.
Source Code
;; Defined in ~/.emacs.d/elpa/hyperbole-20260414.325/hbut.el
(defun ibut:rename (old-lbl new-lbl)
"Change an implicit button name in the current buffer from OLD-LBL to NEW-LBL.
Return t if the label is changed, else nil.
Signal an error when no such button is found in the current buffer or if either
OLD-LBL or NEW-LBL is empty.
Leave point at the start of the button label which may be elsewhere
than the current point; callers should use `save-excursion` to retain
the existing point."
(cond ((or (not (stringp new-lbl)) (< (length new-lbl) 1))
(error "(ibut:rename): Invalid 'new-lbl' argument: \"%s\"" new-lbl))
((or (not (stringp old-lbl)) (< (length old-lbl) 1))
(error "(ibut:rename): Invalid 'old-lbl' argument: \"%s\"" old-lbl))
((ibut:to old-lbl)
(unless (string-equal old-lbl new-lbl)
(delete-region (point) (search-forward ibut:label-end nil t))
(save-excursion (insert new-lbl ibut:label-end))
(hattr:clear 'hbut:current)
t))
(t (error "(ibut:rename): Button '%s' not found in visible portion of buffer" old-lbl))))