Function: hui:delimited-selectable-thing-and-bounds

hui:delimited-selectable-thing-and-bounds is a byte-compiled function defined in hui.el.

Signature

(hui:delimited-selectable-thing-and-bounds)

Documentation

Return a list of any delimited selectable thing at point.

The list returned is (<thing-type> <thing-string> <thing-start> <thing-end>) or nil if none or if hui:selectable-thing-priority-list is nil. Start and end may be nil if the thing was generated rather than extracted from a region.

Source Code

;; Defined in ~/.emacs.d/elpa/hyperbole-20260414.325/hui.el
(defun hui:delimited-selectable-thing-and-bounds ()
  "Return a list of any delimited selectable thing at point.
The list returned is (<thing-type> <thing-string> <thing-start> <thing-end>)
or nil if none or if `hui:selectable-thing-priority-list' is nil.
Start and end may be nil if the thing was generated rather than
extracted from a region."
  (when (and hui:selectable-thing-priority-list
	     (not (looking-at "[ \t\n\r\f]")))
    (let (thing-and-bounds thing start end)
      (cond ((setq thing-and-bounds (klink:at-p))
	     (when thing-and-bounds
	       (setcar thing-and-bounds (klink:absolute thing-and-bounds))
	       (cons 'klink thing-and-bounds)))
	    ((hui-select-at-delimited-thing-p)
	     (when (setq hui-select-previous 'char ;; Reset to first syntactical unit
			 thing-and-bounds (hui-select-get-region-boundaries))
	       (list hui-select-previous
		     (buffer-substring-no-properties
		      (car thing-and-bounds) (cdr thing-and-bounds))
		     (car thing-and-bounds)
		     (cdr thing-and-bounds))))
	    ((and (not (hyperb:stack-frame '(hui:kill-ring-save hbut:at-p ibut:at-p ebut:at-p)))
		  (setq thing (hbut:at-p)
			start (when thing (hattr:get thing 'lbl-start))
			end (when thing (hattr:get thing 'lbl-end))))
	     (and start end
		  (list (hattr:get thing 'categ)
			(buffer-substring-no-properties start end) start end)))))))