Function: expreg--word
expreg--word is a natively compiled function defined in expreg.el.
Signature
(expreg--word)
Documentation
Return a list of regions within the word at point.
Source Code
;; Defined in /nix/store/29cdhkmkqv2bgp3p30khhf35kkbgx1ya-emacs-packages-deps/share/emacs/site-lisp/elpa/expreg-1.4.1/expreg.el
(defun expreg--word ()
"Return a list of regions within the word at point."
;; - subwords in camel-case (when ‘subword-mode’ is on).
;; - subwords by “-” or “_”.
;; - symbol-at-point
;; - within whitespace & paren/quote (but can contain punctuation)
;; (“10–20”, “1.2”, “1,2”, etc). (This is technically not always
;; within a word anymore...)
(let ((orig (point))
result
beg end)
;; (2) subwords by “-” or “_”.
(goto-char orig)
(skip-syntax-forward "w")
(setq end (point))
(skip-syntax-backward "w")
(setq beg (point))
;; Allow single char regions, see (ref:single-char-region).
(push `(word--plain . ,(cons beg end)) result)
;; (3) symbol-at-point
(goto-char orig)
(skip-syntax-forward "w_")
(setq end (point))
(skip-syntax-backward "w_")
(setq beg (point))
;; Avoid things like a single period.
(when (> (- end beg) 1)
(push `(word--symbol . ,(cons beg end)) result))
;; (4) within whitespace & paren. (Allow word constituents, symbol
;; constituents, punctuation, prefix (#' and ' in Elisp).)
(goto-char orig)
(skip-syntax-forward "w_.'")
(setq end (point))
(skip-syntax-backward "w_.'")
(setq beg (point))
;; Avoid things like a single period.
(when (> (- end beg) 1)
(push `(word--within-space . ,(cons beg end)) result))
;; Return!
result))