[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[nongnu] elpa/jade-mode d28d1810fa 007/128: basic decrement tab working
From: |
ELPA Syncer |
Subject: |
[nongnu] elpa/jade-mode d28d1810fa 007/128: basic decrement tab working |
Date: |
Sat, 29 Jan 2022 08:24:41 -0500 (EST) |
branch: elpa/jade-mode
commit d28d1810fa705de1a531574521e227eafc3bfe02
Author: brianc <brian.m.carlson@gmail.com>
Commit: brianc <brian.m.carlson@gmail.com>
basic decrement tab working
---
jade-mode.el | 26 +++++++++++++++++++++++---
1 file changed, 23 insertions(+), 3 deletions(-)
diff --git a/jade-mode.el b/jade-mode.el
index 3230324ddd..2593f5358a 100644
--- a/jade-mode.el
+++ b/jade-mode.el
@@ -30,6 +30,10 @@
"If line is empty or not."
(= (point-at-eol) (point-at-bol)))
+(defun jade-blank-line-p ()
+ "If line contains only spaces."
+ (string-match-p "^[ ]*$" (jade-line-as-string)))
+
(defun jade-indent-line ()
"Indents the line."
(interactive)
@@ -37,19 +41,35 @@
;; indent straight to end on empty line
(if (jade-empty-line-p)
(indent-to (jade-previous-indentation))
+ ;; otherwise indent if nesting is correct
(if (jade-should-indent-p)
(progn
(save-excursion
(let ((ci (current-indentation)))
(beginning-of-line)
(delete-horizontal-space)
- (indent-to (+ jade-tab-width ci))))
- )))
+ (indent-to (+ jade-tab-width ci)))))))
;; move point to end of line on empty lines to make tabbing
;; more obvious
- (if (string-match-p "^[ ]*$" (jade-line-as-string))
+ (if (jade-blank-line-p)
(move-end-of-line 1)))
+(defun jade-max-indent ()
+ "Max indents previous line."
+ (indent-to (+ jade-tab-width (jade-previous-indentation))))
+
+(defun jade-unindent-line ()
+ "Unindents the current line"
+ (interactive)
+ (let ((ci (current-indentation)))
+ (if (= ci 0)
+ ;; no indentation, set to max
+ (jade-max-indent)
+ (progn
+ (beginning-of-line)
+ (delete-horizontal-space)
+ (indent-to (- ci jade-tab-width))))))
+
(setq jade-font-lock-keywords
`((,"!!!\\( \\(default\\|5\\|transitional\\)\\)?" 0
font-lock-constant-face) ;; doctype
(,"#\\(\\w\\|_\\|-\\)*" . font-lock-type-face) ;; id
- [nongnu] elpa/jade-mode ac71830de7 096/128: [#46] add Makefile and .travis.yml, (continued)
- [nongnu] elpa/jade-mode ac71830de7 096/128: [#46] add Makefile and .travis.yml, ELPA Syncer, 2022/01/29
- [nongnu] elpa/jade-mode a61ad07db6 094/128: Merge pull request #42 from tjefferson08/doctype_fontification, ELPA Syncer, 2022/01/29
- [nongnu] elpa/jade-mode 5752db7c36 012/128: added significant whitespace mode as sub-mode for jade-mode and (soon to be) stylus-mode, ELPA Syncer, 2022/01/29
- [nongnu] elpa/jade-mode 2f0f55cae4 018/128: updated readme, ELPA Syncer, 2022/01/29
- [nongnu] elpa/jade-mode 823c573c29 042/128: Merge pull request #5 from ntotani/master, ELPA Syncer, 2022/01/29
- [nongnu] elpa/jade-mode 97e1db63be 088/128: fix error while fontifying pipe regions, ELPA Syncer, 2022/01/29
- [nongnu] elpa/jade-mode 936b4a974b 115/128: Remove flymake mentions from the README, ELPA Syncer, 2022/01/29
- [nongnu] elpa/jade-mode fd367b9489 076/128: Remove unnecessary code from README, ELPA Syncer, 2022/01/29
- [nongnu] elpa/jade-mode dfeadc97a5 069/128: Merge pull request #31 from tjefferson08/26_comment_highlight, ELPA Syncer, 2022/01/29
- [nongnu] elpa/jade-mode 6b9d9507e2 010/128: can detect simple region sexps, ELPA Syncer, 2022/01/29
- [nongnu] elpa/jade-mode d28d1810fa 007/128: basic decrement tab working,
ELPA Syncer <=
- [nongnu] elpa/jade-mode cb82d16486 017/128: jade-mode depends on sws-mode, ELPA Syncer, 2022/01/29
- [nongnu] elpa/jade-mode e4c668bde5 023/128: Have documentation such that jade-mode is used for .jade files., ELPA Syncer, 2022/01/29
- [nongnu] elpa/jade-mode 2b093c23d2 071/128: [#20] add single quote ex. (currently incorrect), ELPA Syncer, 2022/01/29
- [nongnu] elpa/jade-mode 03486dce69 082/128: Merge pull request #33 from mgalgs/master, ELPA Syncer, 2022/01/29
- [nongnu] elpa/jade-mode cb0f564166 066/128: remove jade-mode dependency on sws-mode, ELPA Syncer, 2022/01/29
- [nongnu] elpa/jade-mode e128ce3b07 067/128: add custom indent functions for line/region, ELPA Syncer, 2022/01/29
- [nongnu] elpa/jade-mode 4e7a20db49 084/128: Merge pull request #38 from tjefferson08/37_highlight_strings_in_parens, ELPA Syncer, 2022/01/29
- [nongnu] elpa/jade-mode 40efeb499a 064/128: Indent using the number of lines in a region instead of the location of point within the original region., ELPA Syncer, 2022/01/29
- [nongnu] elpa/jade-mode 2c830e70e0 075/128: Use \\' instead of $, ELPA Syncer, 2022/01/29
- [nongnu] elpa/jade-mode 519b455d1f 113/128: Add melpa badge and flycheck support note, ELPA Syncer, 2022/01/29