[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[nongnu] elpa/nix-mode a820e9adad 210/500: Add electric indentation
From: |
ELPA Syncer |
Subject: |
[nongnu] elpa/nix-mode a820e9adad 210/500: Add electric indentation |
Date: |
Sat, 29 Jan 2022 08:27:07 -0500 (EST) |
branch: elpa/nix-mode
commit a820e9adad6e39e553144504755a14baf8049d3f
Author: Yorick van Pelt <yorick@yorickvanpelt.nl>
Commit: Yorick van Pelt <yorick@yorickvanpelt.nl>
Add electric indentation
---
nix-mode.el | 11 +++++++++--
1 file changed, 9 insertions(+), 2 deletions(-)
diff --git a/nix-mode.el b/nix-mode.el
index bf50a86285..7dee062e7c 100644
--- a/nix-mode.el
+++ b/nix-mode.el
@@ -369,7 +369,9 @@ STRING-TYPE type of string based off of Emacs syntax table
types"
(let ((matching-indentation (save-excursion (when
(nix-indent-find-BOL-expression-start)
(current-indentation)))))
(when matching-indentation
- (if (save-excursion (beginning-of-line) (looking-at
"let\\|with\\|\\[\\|{"))
+ (if (save-excursion (beginning-of-line)
+ (skip-chars-forward "[:space:]")
+ (looking-at "let\\|with\\|\\[\\|{"))
(indent-line-to matching-indentation)
(indent-line-to (+ tab-width matching-indentation)))
t)))
@@ -385,6 +387,7 @@ STRING-TYPE type of string based off of Emacs syntax table
types"
(defun nix-indent-line ()
"Indent current line in a Nix expression."
(interactive)
+ (let ((end-of-indentation (save-excursion
(cond
;; comment
@@ -420,7 +423,10 @@ STRING-TYPE type of string based off of Emacs syntax table
types"
;; else
(t
(indent-line-to (nix-indent-prev-level)))
- ))
+ )
+ (point))))
+ (when (> end-of-indentation (point)) (goto-char end-of-indentation)))
+ )
;; Key maps
@@ -485,6 +491,7 @@ The hook `nix-mode-hook' is run when Nix mode is started.
;; Recommended by nixpkgs manual:
https://nixos.org/nixpkgs/manual/#sec-syntax
(setq-local indent-tabs-mode nil)
(setq-local tab-width 2)
+ (setq-local electric-indent-chars '(?\n ?{ ?} ?[ ?] ?= ?\;))
;; Font lock support.
(setq-local font-lock-defaults '(nix-font-lock-keywords))
- [nongnu] elpa/nix-mode b0db22ebd5 170/500: Remove case-fold-search in nix-mode (again), (continued)
- [nongnu] elpa/nix-mode b0db22ebd5 170/500: Remove case-fold-search in nix-mode (again), ELPA Syncer, 2022/01/29
- [nongnu] elpa/nix-mode 994a8af87b 172/500: Ignore "==" for variable name face., ELPA Syncer, 2022/01/29
- [nongnu] elpa/nix-mode 7ef9563b46 162/500: Create Cask, ELPA Syncer, 2022/01/29
- [nongnu] elpa/nix-mode 1359b4ac3b 161/500: Add CHANGELOG, ELPA Syncer, 2022/01/29
- [nongnu] elpa/nix-mode d5e839692a 160/500: Fix byte-compile, ELPA Syncer, 2022/01/29
- [nongnu] elpa/nix-mode 895f88eff4 174/500: Add abbrev table, ELPA Syncer, 2022/01/29
- [nongnu] elpa/nix-mode 0fde15d938 197/500: Prefix unused lexical argument to avoid byte-compilation warning, ELPA Syncer, 2022/01/29
- [nongnu] elpa/nix-mode 478de28a4e 186/500: Make nix-build use async-shell-command, ELPA Syncer, 2022/01/29
- [nongnu] elpa/nix-mode ecee0e39e9 150/500: Add second options for nix-shell, ELPA Syncer, 2022/01/29
- [nongnu] elpa/nix-mode f24abeb736 205/500: Don’t prompt with nix-build, ELPA Syncer, 2022/01/29
- [nongnu] elpa/nix-mode a820e9adad 210/500: Add electric indentation,
ELPA Syncer <=
- [nongnu] elpa/nix-mode e298244f55 222/500: Add nix-search.el, ELPA Syncer, 2022/01/29
- [nongnu] elpa/nix-mode 149d924f6f 221/500: Add nix-store.el, ELPA Syncer, 2022/01/29
- [nongnu] elpa/nix-mode 429a92a59e 225/500: Group configs in nix-shell, ELPA Syncer, 2022/01/29
- [nongnu] elpa/nix-mode a4e6560902 223/500: Add nix-instantiate.el, ELPA Syncer, 2022/01/29
- [nongnu] elpa/nix-mode 00d099602a 226/500: Fix linter warning, ELPA Syncer, 2022/01/29
- [nongnu] elpa/nix-mode cfdeffd066 228/500: Add new files to Cask, ELPA Syncer, 2022/01/29
- [nongnu] elpa/nix-mode 5aaf80392f 231/500: Avoid recursive loop, ELPA Syncer, 2022/01/29
- [nongnu] elpa/nix-mode 3aeec264e0 236/500: nix-search: add nix-search-read-attr, ELPA Syncer, 2022/01/29
- [nongnu] elpa/nix-mode fea066cec6 241/500: Fix run phase, ELPA Syncer, 2022/01/29
- [nongnu] elpa/nix-mode 6532fcf244 244/500: Don’t expand nix-file in nix-shell., ELPA Syncer, 2022/01/29