[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/phps-mode 3a594466d5 100/212: Passed indent test for mu
From: |
Christian Johansson |
Subject: |
[elpa] externals/phps-mode 3a594466d5 100/212: Passed indent test for multi-line assignments |
Date: |
Wed, 26 Jan 2022 01:51:01 -0500 (EST) |
branch: externals/phps-mode
commit 3a594466d517a349a1b21a5443cfa8df387b1eb2
Author: Christian Johansson <christian@cvj.se>
Commit: Christian Johansson <christian@cvj.se>
Passed indent test for multi-line assignments
---
phps-mode-indent.el | 30 +++++++++++++++++++++++-------
1 file changed, 23 insertions(+), 7 deletions(-)
diff --git a/phps-mode-indent.el b/phps-mode-indent.el
index e6e228eee2..bea280da8c 100644
--- a/phps-mode-indent.el
+++ b/phps-mode-indent.el
@@ -114,6 +114,8 @@
(point-at-end-of-line (equal point (line-end-position))))
(save-excursion
(let ((move-length 0)
+ (move-length1 0)
+ (move-length2 0)
(current-line-string "")
(previous-line-string "")
(previous-line-is-empty-p)
@@ -150,10 +152,16 @@
(unless line-is-empty-p
(cond
((= searching-previous-lines 2)
+ (setq
+ move-length1
+ (1+ move-length))
(setq
previous-line-string
line-string))
((= searching-previous-lines 1)
+ (setq
+ move-length2
+ (1+ move-length))
(setq
previous2-line-string
line-string)))
@@ -530,15 +538,24 @@
(< previous-bracket-level 0))
(setq new-indentation (+ new-indentation tab-width)))
+ ;; $var .=
+ ;; 'hello';
+ ;; echo 'here';
+ ;; or
+ ;; $var =
+ ;; 25;
+ ;; echo 'here';
(when (and
previous-line-ends-with-terminus
(not (string-match-p "^[\t ]*\\(echo[\t ]+\\|print[\t
]+\\)" previous-line-string)))
+
;; Back-trace buffer from previous line
;; Determine if semi-colon ended an multi-line assignment or
bracket-less command or not
;; If it's on the same line we ignore it
- (forward-line (* -1 move-length))
+ (forward-line (* -1 move-length1))
(end-of-line)
(forward-char -1)
+
(let ((not-found t)
(is-assignment nil)
(parenthesis-level 0)
@@ -562,12 +579,11 @@
;; If it ended an assignment on a previous line, decrease
indentation
(when
- (and
- (or
- (and
- is-assignment
- (> previous-bracket-level -1))
- is-bracket-less-command))
+ (or
+ (and
+ is-assignment
+ (> previous-bracket-level -1))
+ is-bracket-less-command)
;; NOTE stuff like $var = array(\n 4\n);\n
;; will end assignment but also decrease
previous-bracket-level
- [elpa] externals/phps-mode f7c261cee1 032/212: Generate parser command now compatible with latest emacs-parser-generator, (continued)
- [elpa] externals/phps-mode f7c261cee1 032/212: Generate parser command now compatible with latest emacs-parser-generator, Christian Johansson, 2022/01/26
- [elpa] externals/phps-mode f82c9a377d 033/212: Re-generated parser to verify automation functionality, improved automation documentation, Christian Johansson, 2022/01/26
- [elpa] externals/phps-mode f858060096 034/212: More work on bookkeeping generated from parser SDT, Christian Johansson, 2022/01/26
- [elpa] externals/phps-mode c83b1c264e 060/212: Fixed SDT for isset_variables, Christian Johansson, 2022/01/26
- [elpa] externals/phps-mode 8fa61fa1f2 063/212: Passing bookkeeping of interface method arguments, Christian Johansson, 2022/01/26
- [elpa] externals/phps-mode 7a636ccd28 078/212: Removed obsolete file parser-grammar-macro.el, Christian Johansson, 2022/01/26
- [elpa] externals/phps-mode ee211dac6a 084/212: Started on indentation tests, Christian Johansson, 2022/01/26
- [elpa] externals/phps-mode f65ca852cd 092/212: Passed another indent test, Christian Johansson, 2022/01/26
- [elpa] externals/phps-mode 9a2573939a 094/212: More wrestling, Christian Johansson, 2022/01/26
- [elpa] externals/phps-mode 7c0cb57312 098/212: Added more multi-line assignment indent tests, Christian Johansson, 2022/01/26
- [elpa] externals/phps-mode 3a594466d5 100/212: Passed indent test for multi-line assignments,
Christian Johansson <=
- [elpa] externals/phps-mode 7deebc5f79 101/212: Improved indent test descriptions, Christian Johansson, 2022/01/26
- [elpa] externals/phps-mode d5d80017bc 104/212: Passed indent tests for concatenated string, Christian Johansson, 2022/01/26
- [elpa] externals/phps-mode e083e90ac0 108/212: Passing more indentation tests for PSR-2, Christian Johansson, 2022/01/26
- [elpa] externals/phps-mode 84d447e4e6 119/212: Added TODO item, Christian Johansson, 2022/01/26
- [elpa] externals/phps-mode 1ab6ac7324 131/212: Added failing tests for indentation, Christian Johansson, 2022/01/26
- [elpa] externals/phps-mode 7135a30446 173/212: Updated TODO items, Christian Johansson, 2022/01/26
- [elpa] externals/phps-mode 63c5fef240 175/212: Started on tests for more basic functions of indentation, Christian Johansson, 2022/01/26
- [elpa] externals/phps-mode 735f1e0c89 176/212: More notes, Christian Johansson, 2022/01/26
- [elpa] externals/phps-mode 73d460d5a4 181/212: Passing lexer tests with optimized lexer, Christian Johansson, 2022/01/26
- [elpa] externals/phps-mode e5df43eea9 187/212: More tweaking of indentation helpers, Christian Johansson, 2022/01/26