branch: elpa/nix-mode
commit 199e20413e01982813758ae965df1006594d69bd
Author: Matthew Bauer <[email protected]>
Commit: Matthew Bauer <[email protected]>
Ignore comments for hanging let's.
Fixes #10.
---
nix-mode.el | 40 ++++++++++++++++++++--------------------
1 file changed, 20 insertions(+), 20 deletions(-)
diff --git a/nix-mode.el b/nix-mode.el
index ee4bf4e480..2aeac02135 100644
--- a/nix-mode.el
+++ b/nix-mode.el
@@ -402,27 +402,27 @@
(beginning-of-line)
(let ((lets 0)
- (ins 0))
+ (ins 0))
(while (not (eq (point) (point-min)))
- (forward-line -1)
- (cond
- ((and
- (or
- (looking-at "[[:space:]]*let$")
- (looking-at "[[:space:]]*let[[:space:]]")
- (looking-at ".*[[:space:]]let$"))
- (not
- (or
- (looking-at ".*[[:space:]]in$")
- (looking-at ".*[[:space:]]in[[:space:]]"))))
- (setq lets (1+ lets)))
- ((or
- (looking-at "^in$")
- (looking-at "^in[[:space:]]")
- (looking-at "[[:space:]]+in$")
- (looking-at "[[:space:]]+in[[:space:]]"))
- (setq ins (1+ ins)))))
-
+ (forward-line -1)
+ (cond
+ ((save-excursion (end-of-line) (nth 4 (syntax-ppss))) nil)
+ ((and
+ (or
+ (looking-at "[[:space:]]*let$")
+ (looking-at "[[:space:]]*let[[:space:]]")
+ (looking-at ".*[[:space:]]let$"))
+ (not
+ (or
+ (looking-at ".*[[:space:]]in$")
+ (looking-at ".*[[:space:]]in[[:space:]]"))))
+ (setq lets (1+ lets)))
+ ((or
+ (looking-at "^in$")
+ (looking-at "^in[[:space:]]")
+ (looking-at "[[:space:]]+in$")
+ (looking-at "[[:space:]]+in[[:space:]]"))
+ (setq ins (1+ ins)))))
(- lets ins))))
(defun nix-indent-level-is-closing ()