Function: jinja2-calculate-indent-backward
jinja2-calculate-indent-backward is a natively compiled function
defined in jinja2-mode.el.
Signature
(jinja2-calculate-indent-backward DEFAULT)
Documentation
Return indent column based on previous lines
Source Code
;; Defined in /nix/store/w823rz5zs434n18ps4jcyc02giqk4dgd-emacs-packages-deps/share/emacs/site-lisp/elpa/jinja2-mode-20220117.807/jinja2-mode.el
(defun jinja2-calculate-indent-backward (default)
"Return indent column based on previous lines"
(let ((indent-width sgml-basic-offset) (default (sgml-indent-line-num)))
(forward-line -1)
(if (looking-at "^[ \t]*{%-? *end") ; Don't indent after end
(current-indentation)
(if (looking-at (concat "^[ \t]*{%-? *.*?{%-? *end" (regexp-opt (jinja2-indenting-keywords))))
(current-indentation)
(if (looking-at (concat "^[ \t]*{%-? *" (regexp-opt (jinja2-indenting-keywords)))) ; Check start tag
(+ (current-indentation) indent-width)
(if (looking-at "^[ \t]*<") ; Assume sgml block trust sgml
default
(if (bobp)
0
(jinja2-calculate-indent-backward default))))))))