[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[nongnu] elpa/nix-mode 76df9f3e6b 044/500: Add let indent level counter.
From: |
ELPA Syncer |
Subject: |
[nongnu] elpa/nix-mode 76df9f3e6b 044/500: Add let indent level counter. |
Date: |
Sat, 29 Jan 2022 08:26:34 -0500 (EST) |
branch: elpa/nix-mode
commit 76df9f3e6b4e78567282ce365f357532a4791976
Author: Matthew Bauer <mjbauer95@gmail.com>
Commit: Matthew Bauer <mjbauer95@gmail.com>
Add let indent level counter.
---
nix-mode.el | 18 ++++++++++++++++++
1 file changed, 18 insertions(+)
diff --git a/nix-mode.el b/nix-mode.el
index a2e791c2a9..c9eb827a5f 100644
--- a/nix-mode.el
+++ b/nix-mode.el
@@ -163,6 +163,23 @@ P1 current position"
(+ (if (eq l1 l2) 0 1) (nix-indent-level-parens p2))))
0))))
+(defun nix-indent-level-let ()
+ (save-excursion
+ (setq lets 0)
+ (setq ins 0)
+ (beginning-of-line)
+ (while (not (eq (point) (point-min)))
+ (forward-line -1)
+ (cond
+ ((and
+ (looking-at "[:space:]*let")
+ (not (looking-at ".*in")))
+ (setq lets (1+ lets)))
+ ((looking-at "[:space:]*in")
+ (setq ins (1+ ins)))))
+
+ (- lets ins)))
+
(defun nix-indent-level-is-closing ()
"Go forward from beginning of line."
(save-excursion
@@ -209,6 +226,7 @@ P1 current position"
"Get current indent level."
(* tab-width (+
(nix-indent-level-parens (point))
+ (nix-indent-level-let)
(if (nix-indent-level-is-closing) -1
(if (nix-indent-level-is-hanging) 1 0)))))
- [nongnu] elpa/nix-mode 78c3832e48 333/500: Make smie-setup optional, (continued)
- [nongnu] elpa/nix-mode 78c3832e48 333/500: Make smie-setup optional, ELPA Syncer, 2022/01/29
- [nongnu] elpa/nix-mode 56748ac556 457/500: Merge pull request #136 from bcc32/replace-buffer-contents, ELPA Syncer, 2022/01/29
- [nongnu] elpa/nix-mode e61ecb95ef 456/500: Merge pull request #137 from bcc32/nix-format-before-save, ELPA Syncer, 2022/01/29
- [nongnu] elpa/nix-mode 0d65c482b2 477/500: nix-flake: Avoid use of flatten-list to support older Emacs versions, ELPA Syncer, 2022/01/29
- [nongnu] elpa/nix-mode 07b6069c78 491/500: nix-flake: Fix an unexpected error in assert, ELPA Syncer, 2022/01/29
- [nongnu] elpa/nix-mode 14f1bb20b9 487/500: chore: Bump install-nix-action to v14.1, ELPA Syncer, 2022/01/29
- [nongnu] elpa/nix-mode 00b2b8da57 500/500: Merge pull request #145 from NixOS/dependabot/github_actions/cachix/install-nix-action-16, ELPA Syncer, 2022/01/29
- [nongnu] elpa/nix-mode 1e0709acde 028/500: Fixup indentation, ELPA Syncer, 2022/01/29
- [nongnu] elpa/nix-mode aee3dea8ec 031/500: Refactor font lock, ELPA Syncer, 2022/01/29
- [nongnu] elpa/nix-mode 8cb5ba0bc8 048/500: Change nix keymaps, ELPA Syncer, 2022/01/29
- [nongnu] elpa/nix-mode 76df9f3e6b 044/500: Add let indent level counter.,
ELPA Syncer <=
- [nongnu] elpa/nix-mode 7fbc65ae68 101/500: Merge pull request #16 from ljli/fontification-improvs, ELPA Syncer, 2022/01/29
- [nongnu] elpa/nix-mode 070891aae4 105/500: Fix lexical bindings., ELPA Syncer, 2022/01/29
- [nongnu] elpa/nix-mode ae17e75812 120/500: First try at smie from damiencassou/nix-mode, ELPA Syncer, 2022/01/29
- [nongnu] elpa/nix-mode c758b179e9 184/500: Add nix-shebang, ELPA Syncer, 2022/01/29
- [nongnu] elpa/nix-mode 1b8b6f5eac 339/500: Add failing test that checks indentation of let expressions., ELPA Syncer, 2022/01/29
- [nongnu] elpa/nix-mode 2bb0a0c1f4 340/500: Improve indentation of let expressions., ELPA Syncer, 2022/01/29
- [nongnu] elpa/nix-mode 1b2f22f235 343/500: Add issue 84 test, ELPA Syncer, 2022/01/29
- [nongnu] elpa/nix-mode aaef8580c5 351/500: Merge pull request #86 from j-piecuch/smie-tweaks, ELPA Syncer, 2022/01/29
- [nongnu] elpa/nix-mode 4ffab960ef 345/500: Add AUTHORS.md to gitignore, ELPA Syncer, 2022/01/29
- [nongnu] elpa/nix-mode ecf005009e 361/500: Remove org-man.el from .texi makefile rule, ELPA Syncer, 2022/01/29