Variable: nix-ts-mode-indent-rules
nix-ts-mode-indent-rules is a variable defined in nix-ts-mode.el.
Value
Large value
((nix ((parent-is "^source_code$") column-0 0)
((n-p-gp nil "^string_fragment$" "^string_expression$")
no-indent 0)
((match "^\"$" "^string_expression$" nil nil nil) no-indent 0)
((n-p-gp nil "^string_fragment$" "^indented_string_expression$")
nix-ts-indent-multiline-string 0)
((match "^interpolation$" "^indented_string_expression$" nil nil
nil)
nix-ts-indent-multiline-string 0)
((match "^;$" "^inherit\\(_from\\)?$" nil nil nil) parent-bol
nix-ts-mode-indent-offset)
((node-is "^)$") parent-bol 0) ((node-is "^,$") parent-bol 0)
((node-is "^]$") parent-bol 0) ((node-is "^;$") parent-bol 0)
((node-is "^else$") parent-bol 0)
((node-is "^in$") parent-bol 0)
((node-is "^then$") parent-bol 0) ((node-is "^}$") parent-bol 0)
((match nil "^let_expression" "^body$" nil nil) parent-bol 0)
((parent-is "^apply_expression$") parent-bol
nix-ts-mode-indent-offset)
((parent-is "^\\(?:rec_\\)?attrset_expression$") parent-bol
nix-ts-mode-indent-offset)
((parent-is "^binding$") parent-bol nix-ts-mode-indent-offset)
((parent-is "^formals$") parent-bol nix-ts-mode-indent-offset)
((parent-is "^if_expression$") parent-bol
nix-ts-mode-indent-offset)
((parent-is "^inherit\\(_from\\)?$") parent-bol
nix-ts-mode-indent-offset)
((parent-is "^interpolation$") parent-bol
nix-ts-mode-indent-offset)
((parent-is "^let_expression$") parent-bol
nix-ts-mode-indent-offset)
((parent-is "^list_expression$") parent-bol
nix-ts-mode-indent-offset)
((parent-is "^parenthesized_expression$") parent-bol
nix-ts-mode-indent-offset)
((and (parent-is "^binding_set$") prev-sibling)
nix-ts-mode--prev-sibling-not-comment 0)
(catch-all parent-bol 0)))
Documentation
Tree-sitter indent rules for nix-ts-mode.
Source Code
;; Defined in /nix/store/gfg1ybfpvhh7fr396dh1axr72lcm71n0-emacs-packages-deps/share/emacs/site-lisp/elpa/nix-ts-mode-20260705.1600/nix-ts-mode.el
(defvar nix-ts-mode-indent-rules
`((nix
((parent-is "^source_code$") column-0 0)
;; Non-indented strings are untouched.
((n-p-gp nil "^string_fragment$" "^string_expression$") no-indent 0)
((match "^\"$" "^string_expression$" nil nil nil) no-indent 0)
((n-p-gp nil "^string_fragment$" "^indented_string_expression$") nix-ts-indent-multiline-string 0)
((match "^interpolation$" "^indented_string_expression$" nil nil nil) nix-ts-indent-multiline-string 0)
;; Unlike in every other place, a semicolon in an inherit node should be indented.
((match "^;$" "^inherit\\(_from\\)?$" nil nil nil) parent-bol nix-ts-mode-indent-offset)
((node-is "^)$") parent-bol 0)
((node-is "^,$") parent-bol 0)
((node-is "^]$") parent-bol 0)
((node-is "^;$") parent-bol 0)
((node-is "^else$") parent-bol 0)
((node-is "^in$") parent-bol 0)
((node-is "^then$") parent-bol 0)
((node-is "^}$") parent-bol 0)
((match nil "^let_expression" "^body$" nil nil) parent-bol 0)
((parent-is "^apply_expression$") parent-bol nix-ts-mode-indent-offset)
((parent-is "^\\(?:rec_\\)?attrset_expression$") parent-bol nix-ts-mode-indent-offset)
((parent-is "^binding$") parent-bol nix-ts-mode-indent-offset)
((parent-is "^formals$") parent-bol nix-ts-mode-indent-offset)
((parent-is "^if_expression$") parent-bol nix-ts-mode-indent-offset)
((parent-is "^inherit\\(_from\\)?$") parent-bol nix-ts-mode-indent-offset)
((parent-is "^interpolation$") parent-bol nix-ts-mode-indent-offset)
((parent-is "^let_expression$") parent-bol nix-ts-mode-indent-offset)
((parent-is "^list_expression$") parent-bol nix-ts-mode-indent-offset)
((parent-is "^parenthesized_expression$") parent-bol nix-ts-mode-indent-offset)
((and (parent-is "^binding_set$") prev-sibling) nix-ts-mode--prev-sibling-not-comment 0)
(catch-all parent-bol 0)))
"Tree-sitter indent rules for `nix-ts-mode'.")