Function: web-mode-backward-sexp
web-mode-backward-sexp is an interactive and natively compiled
function defined in web-mode.el.
Signature
(web-mode-backward-sexp N)
Key Bindings
This command is not in any keymaps.
Source Code
;; Defined in /nix/store/2qgnz1rp30nzfz6w0apx4kdm14if1bbs-emacs-packages-deps/share/emacs/site-lisp/elpa/web-mode-20260831.219/web-mode.el
;;---- EXCURSION ---------------------------------------------------------------
(defun web-mode-backward-sexp (n)
(interactive "p")
(if (< n 0) (web-mode-forward-sexp (- n))
(let (pos)
(dotimes (_ n)
(skip-chars-backward "[:space:]")
(setq pos (point))
(cond
((bobp) nil)
((get-text-property (1- pos) 'block-end)
(backward-char 1)
(web-mode-block-beginning))
((get-text-property (1- pos) 'block-token)
(backward-char 1)
(web-mode-block-token-beginning))
((get-text-property (1- pos) 'part-token)
(backward-char 1)
(web-mode-part-token-beginning))
((get-text-property (1- pos) 'tag-end)
(backward-char 1)
(web-mode-element-beginning))
((get-text-property (1- pos) 'tag-attr)
(backward-char 1)
(web-mode-attribute-beginning))
((get-text-property (1- pos) 'tag-type)
(backward-char 1)
(web-mode-tag-beginning))
((get-text-property (1- pos) 'jsx-end)
(backward-char 1)
(web-mode-jsx-beginning))
(t
(let ((forward-sexp-function nil))
(backward-sexp))
) ;case t
) ;cond
) ;dotimes
))) ;let if defun