Function: avy-goto-subword-0
avy-goto-subword-0 is an autoloaded, interactive and byte-compiled
function defined in avy.el.
Signature
(avy-goto-subword-0 &optional ARG PREDICATE BEG END)
Documentation
Jump to a word or subword start.
The window scope is determined by avy-all-windows (ARG negates it).
When PREDICATE is non-nil it's a function of zero parameters that should return true.
BEG and END narrow the scope where candidates are searched.
Key Bindings
Source Code
;; Defined in ~/.emacs.d/elpa/avy-20241101.1357/avy.el
;;;###autoload
(defun avy-goto-subword-0 (&optional arg predicate beg end)
"Jump to a word or subword start.
The window scope is determined by `avy-all-windows' (ARG negates it).
When PREDICATE is non-nil it's a function of zero parameters that
should return true.
BEG and END narrow the scope where candidates are searched."
(interactive "P")
(require 'subword)
(avy-with avy-goto-subword-0
(let ((case-fold-search nil)
(subword-backward-regexp
"\\(\\(\\W\\|[[:lower:][:digit:]]\\)\\([!-/:@`~[:upper:]]+\\W*\\)\\|\\W\\w+\\)")
candidates)
(avy-dowindows arg
(let ((syn-tbl (copy-syntax-table)))
(dolist (char avy-subword-extra-word-chars)
(modify-syntax-entry char "w" syn-tbl))
(with-syntax-table syn-tbl
(let ((ws (or beg (window-start)))
window-cands)
(save-excursion
(goto-char (or end (window-end (selected-window) t)))
(subword-backward)
(while (> (point) ws)
(when (or (null predicate)
(and predicate (funcall predicate)))
(unless (not (avy--visible-p (point)))
(push (cons (cons (point) (1+ (point)))
(selected-window)) window-cands)))
(subword-backward))
(and (= (point) ws)
(or (null predicate)
(and predicate (funcall predicate)))
(not (get-char-property (point) 'invisible))
(push (cons (cons (point) (1+ (point)))
(selected-window)) window-cands)))
(setq candidates (nconc candidates window-cands))))))
(avy-process candidates))))