[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[nongnu] elpa/rust-mode f962be4 038/486: rust-mode: make indentation cus
From: |
ELPA Syncer |
Subject: |
[nongnu] elpa/rust-mode f962be4 038/486: rust-mode: make indentation customizable |
Date: |
Sat, 7 Aug 2021 09:24:43 -0400 (EDT) |
branch: elpa/rust-mode
commit f962be47bad22b9fc3a37e14201de4ec85796b00
Author: Paul Collins <paul@ondioline.org>
Commit: Paul Collins <paul@ondioline.org>
rust-mode: make indentation customizable
Add new variable rust-indent-offset, defaulting to
the old value, and use it.
---
rust-mode.el | 17 +++++++++++------
1 file changed, 11 insertions(+), 6 deletions(-)
diff --git a/rust-mode.el b/rust-mode.el
index 87c505e..ecb223f 100644
--- a/rust-mode.el
+++ b/rust-mode.el
@@ -29,6 +29,11 @@
table))
+(defcustom rust-indent-offset default-tab-width
+ "*Indent Rust code by this number of spaces.
+
+The initializer is `DEFAULT-TAB-WIDTH'.")
+
(defun rust-paren-level () (nth 0 (syntax-ppss)))
(defun rust-in-str-or-cmnt () (nth 8 (syntax-ppss)))
(defun rust-rewind-past-str-cmnt () (goto-char (nth 8 (syntax-ppss))))
@@ -49,10 +54,10 @@
(let ((level (rust-paren-level)))
(cond
;; A function return type is 1 level indented
- ((looking-at "->") (* default-tab-width (+ level 1)))
+ ((looking-at "->") (* rust-indent-offset (+ level 1)))
;; A closing brace is 1 level unindended
- ((looking-at "}") (* default-tab-width (- level 1)))
+ ((looking-at "}") (* rust-indent-offset (- level 1)))
;; If we're in any other token-tree / sexp, then:
;; - [ or ( means line up with the opening token
@@ -70,18 +75,18 @@
(goto-char pt)
(back-to-indentation)
(if (looking-at "\\<else\\>")
- (* default-tab-width (+ 1 level))
+ (* rust-indent-offset (+ 1 level))
(progn
(goto-char pt)
(beginning-of-line)
(rust-rewind-irrelevant)
(end-of-line)
(if (looking-back "[{};,]")
- (* default-tab-width level)
+ (* rust-indent-offset level)
(back-to-indentation)
(if (looking-at "#")
- (* default-tab-width level)
- (* default-tab-width (+ 1 level))))))))))
+ (* rust-indent-offset level)
+ (* rust-indent-offset (+ 1 level))))))))))
;; Otherwise we're in a column-zero definition
(t 0))))))
- [nongnu] elpa/rust-mode e9b1bfe 006/486: Add 'do' to rust-mode, (continued)
- [nongnu] elpa/rust-mode e9b1bfe 006/486: Add 'do' to rust-mode, ELPA Syncer, 2021/08/07
- [nongnu] elpa/rust-mode a25cc60 005/486: More keyword paring and migration in runtime, docs, code modes., ELPA Syncer, 2021/08/07
- [nongnu] elpa/rust-mode fb23ccc 003/486: emacs: Make 'mut' a keyword, ELPA Syncer, 2021/08/07
- [nongnu] elpa/rust-mode de81353 014/486: Merge pull request #3185 from megakorre/master, ELPA Syncer, 2021/08/07
- [nongnu] elpa/rust-mode 5afc8ab 015/486: initial stab at making rust-mode elpa friendly, ELPA Syncer, 2021/08/07
- [nongnu] elpa/rust-mode 7ce29ed 016/486: proper package footer, ELPA Syncer, 2021/08/07
- [nongnu] elpa/rust-mode 38940ff 027/486: rust-mode: Add 'ref' keyword, ELPA Syncer, 2021/08/07
- [nongnu] elpa/rust-mode 9f9dec0 028/486: rust-mode.el uses the 'cl macros, so it should actually require them, ELPA Syncer, 2021/08/07
- [nongnu] elpa/rust-mode 1076b9c 035/486: Note incompatibility with global-whitespace-mode., ELPA Syncer, 2021/08/07
- [nongnu] elpa/rust-mode e976207 029/486: emacs mode: Highlight 'foo as a lifetime, not a character constant., ELPA Syncer, 2021/08/07
- [nongnu] elpa/rust-mode f962be4 038/486: rust-mode: make indentation customizable,
ELPA Syncer <=
- [nongnu] elpa/rust-mode 5488368 039/486: compilation error regexp specific to rustc., ELPA Syncer, 2021/08/07
- [nongnu] elpa/rust-mode 0a81930 041/486: extend file regexp to match files with embedded spaces., ELPA Syncer, 2021/08/07
- [nongnu] elpa/rust-mode 6a6dc4e 042/486: fix typo in rust-mode.el, ELPA Syncer, 2021/08/07
- [nongnu] elpa/rust-mode 5b34e59 053/486: Add paragraph fill and auto-fill for multi-line comments, ELPA Syncer, 2021/08/07
- [nongnu] elpa/rust-mode 69811ea 052/486: Add custom group for rust-mode, ELPA Syncer, 2021/08/07
- [nongnu] elpa/rust-mode 0bf2920 048/486: Fix glitches with struct field aligned indents, ELPA Syncer, 2021/08/07
- [nongnu] elpa/rust-mode d6b2c32 060/486: Add Imenu support for rust-mode., ELPA Syncer, 2021/08/07
- [nongnu] elpa/rust-mode 131cebb 055/486: Fix regression of multi-line statement indents, ELPA Syncer, 2021/08/07
- [nongnu] elpa/rust-mode b5de342 070/486: Fix typo in emacs ERT test, ELPA Syncer, 2021/08/07
- [nongnu] elpa/rust-mode fa51087 057/486: Minor cleanup and formatting tweaks to the rust-mode README, ELPA Syncer, 2021/08/07