branch: externals/phps-mode
commit 08f57c1d36ad0e522680256a9daec3d7f700ce2d
Author: Christian Johansson <[email protected]>
Commit: Christian Johansson <[email protected]>
Added TODO item for indent
---
phps-mode-indent.el | 43 +++++++++++++++++++++++++++----------------
1 file changed, 27 insertions(+), 16 deletions(-)
diff --git a/phps-mode-indent.el b/phps-mode-indent.el
index 56cc892463..974d871445 100644
--- a/phps-mode-indent.el
+++ b/phps-mode-indent.el
@@ -27,9 +27,12 @@
(setq limit (1- point)))
(let* ((start (- point limit))
(backward-string
- (buffer-substring-no-properties
- start
- (1+ point))))
+ (replace-regexp-in-string
+ "[\n\t ]+"
+ " "
+ (buffer-substring-no-properties
+ start
+ (1+ point)))))
(if (string-match regexp backward-string)
backward-string
nil))))
@@ -253,8 +256,10 @@
(string-match "^[\t ]*\\(extends\\|implements\\)"
current-line-string)
(when-let ((backwards-string
(phps-mode-indent--backwards-looking-at
- "\\([\t ]*\\)class[\t ]+[a-zA-Z0-9_]+[\n\t
]+\\(extends[\t ]+[a-zA-Z0-9_]+\\)?[\n\t ]*\\(implements[\t
]+[a-zA-Z0-9_]+\\)?")))
+ "\\([\t ]*\\)class[\t ]+[a-zA-Z0-9_]+[\t
]+\\(extends[\t ]+[a-zA-Z0-9_]+\\)?[\n\t ]*\\(implements[\t
]+[a-zA-Z0-9_]+\\)?$")))
(let ((old-indentation (length (match-string 1
backwards-string))))
+ ;; TODO Need to find away to prevent this matching <?php
class
+ (message "backwards-string: %S = %S" backwards-string
old-indentation)
(setq new-indentation (+ old-indentation tab-width)))))
;; class MyClass implements
@@ -265,7 +270,7 @@
current-line-starts-with-opening-bracket
(string= current-line-starts-with-opening-bracket "{")
(phps-mode-indent--backwards-looking-at
- "[\t ]*implements[\n\t ]+\\([\n\t
]*[a-zA-Z_0-9]+,?\\)+[\n\t ]*{$"))
+ "[\t ]*implements[\t ]+\\([\t ]*[a-zA-Z_0-9]+,?\\)+[\t
]*{$"))
(setq new-indentation (- new-indentation tab-width)))
;; if (true)
@@ -364,7 +369,9 @@
current-line-string)
(setq
new-indentation
- (- new-indentation tab-width)))
+ (-
+ new-indentation
+ tab-width)))
;; if (true)
;; echo 'Something';
@@ -388,7 +395,9 @@
previous2-line-string)
(setq
new-indentation
- (- new-indentation tab-width)))
+ (-
+ new-indentation
+ tab-width)))
)
@@ -436,7 +445,9 @@
(line-beginning-position)
(line-end-position)))))
;; Use its indentation for this line as well
- (setq new-indentation bracket-start-indentation)))
+ (setq
+ new-indentation
+ bracket-start-indentation)))
;; Reset point
(goto-char old-point))
@@ -574,13 +585,13 @@
new-indentation
(- new-indentation tab-width)))
- ;; (message "\ncurrent-line-string: %S" current-line-string)
- ;; ;; (message "current-line-starts-with-closing-bracket: %S"
current-line-starts-with-closing-bracket)
- ;; (message "previous-line-string: %S" previous-line-string)
- ;; ;; (message "previous-line-starts-with-opening-doc-comment:
%S" previous-line-starts-with-opening-doc-comment)
- ;; (message "previous-bracket-level: %S" previous-bracket-level)
- ;; (message "previous-indentation: %S" previous-indentation)
- ;; (message "new-indentation: %S" new-indentation)
+ (message "\ncurrent-line-string: %S" current-line-string)
+ ;; (message "current-line-starts-with-closing-bracket: %S"
current-line-starts-with-closing-bracket)
+ (message "previous-line-string: %S" previous-line-string)
+ ;; (message "previous-line-starts-with-opening-doc-comment: %S"
previous-line-starts-with-opening-doc-comment)
+ (message "previous-bracket-level: %S" previous-bracket-level)
+ (message "previous-indentation: %S" previous-indentation)
+ (message "new-indentation: %S" new-indentation)
;; switch ($condition) {
;; case true:
@@ -619,7 +630,7 @@
current-line-string)
(not
(string-match-p
- "[\t ]*switch"
+ "^[\t ]*switch"
previous-line-string)))
(setq
new-indentation