[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[nongnu] elpa/jade-mode f8b5b062a0 005/128: started work on electric tab
From: |
ELPA Syncer |
Subject: |
[nongnu] elpa/jade-mode f8b5b062a0 005/128: started work on electric tab |
Date: |
Sat, 29 Jan 2022 08:24:41 -0500 (EST) |
branch: elpa/jade-mode
commit f8b5b062a03356508b2dd7f3ef486f554301824b
Author: brianc <brian.m.carlson@gmail.com>
Commit: brianc <brian.m.carlson@gmail.com>
started work on electric tab
---
jade-mode.el | 18 +++++++++++++++++-
1 file changed, 17 insertions(+), 1 deletion(-)
diff --git a/jade-mode.el b/jade-mode.el
index ea54274dff..381a3d3a51 100644
--- a/jade-mode.el
+++ b/jade-mode.el
@@ -11,10 +11,26 @@
(defun jade-indent-line ()
"Indents current line")
+(defun jade-previous-indentation ()
+ "Gets indentation for previous line"
+ (save-excursion
+ (previous-line)
+ (current-indentation)))
+
+(defun jade-should-indent-p ()
+ "Whether or not line should be indented."
+ ;; should only indent if previous line is indented at most one less
+ (> (jade-previous-indentation) (- (current-indentation) 1)))
+
(defun jade-indent-line ()
"Indents the line."
(interactive)
- (jade-debug "TODO: implement this"))
+ (if (jade-should-indent-p)
+ (save-excursion
+ (let ((ci (current-indentation)))
+ (beginning-of-line)
+ (delete-horizontal-space)
+ (indent-to (+ jade-tab-width ci))))))
(setq jade-font-lock-keywords
`((,"!!!\\( \\(default\\|5\\|transitional\\)\\)?" 0
font-lock-constant-face) ;; doctype
- [nongnu] branch elpa/jade-mode created (now 1ad7c51f3c), ELPA Syncer, 2022/01/29
- [nongnu] elpa/jade-mode 7a36edb480 002/128: added readme, ELPA Syncer, 2022/01/29
- [nongnu] elpa/jade-mode 63561e36f7 006/128: functional line indentation logic, ELPA Syncer, 2022/01/29
- [nongnu] elpa/jade-mode f8b5b062a0 005/128: started work on electric tab,
ELPA Syncer <=
- [nongnu] elpa/jade-mode 684a5c0fba 014/128: require whitespace-mode, ELPA Syncer, 2022/01/29
- [nongnu] elpa/jade-mode 63f6e54b85 013/128: define backtab for ubuntu, ELPA Syncer, 2022/01/29
- [nongnu] elpa/jade-mode c6623ac6a6 021/128: added a basic stylus-mode, ELPA Syncer, 2022/01/29
- [nongnu] elpa/jade-mode 039b637cee 016/128: new blank line + single tab = full indent, ELPA Syncer, 2022/01/29
- [nongnu] elpa/jade-mode b8778ae525 015/128: use builtin for moving point to beginning of text, ELPA Syncer, 2022/01/29
- [nongnu] elpa/jade-mode de66308323 004/128: reboot, ELPA Syncer, 2022/01/29
- [nongnu] elpa/jade-mode a22d4acd31 001/128: initial commit, ELPA Syncer, 2022/01/29
- [nongnu] elpa/jade-mode a7c85da4df 048/128: Added single quoted strings support to stylus mode., ELPA Syncer, 2022/01/29
- [nongnu] elpa/jade-mode 3db33f4642 050/128: Fixed sws-indent-line not detecting the use of tab indent, ELPA Syncer, 2022/01/29
- [nongnu] elpa/jade-mode eea90de1df 038/128: Add support for keywords syntax coloring., ELPA Syncer, 2022/01/29