[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/phps-mode 94492c4 048/405: Added changes tracking to fu
From: |
Stefan Monnier |
Subject: |
[elpa] externals/phps-mode 94492c4 048/405: Added changes tracking to functions from lexer |
Date: |
Sat, 13 Jul 2019 09:59:40 -0400 (EDT) |
branch: externals/phps-mode
commit 94492c4780ec9df2b678569b2292bf4518e867f4
Author: Christian Johansson <address@hidden>
Commit: Christian Johansson <address@hidden>
Added changes tracking to functions from lexer
---
phps-functions.el | 16 ++++++++++++++++
phps-lexer.el | 13 -------------
phps-test-functions.el | 6 ++++--
3 files changed, 20 insertions(+), 15 deletions(-)
diff --git a/phps-functions.el b/phps-functions.el
index 54e021c..bcd50ce 100644
--- a/phps-functions.el
+++ b/phps-functions.el
@@ -36,6 +36,9 @@
;;; Code:
+(defvar phps-mode/buffer-changes--start nil
+ "Start of buffer changes, nil if none.")
+
(autoload 'phps-mode/lexer-get-point-data "phps-lexer")
(defun phps-mode/indent-line ()
@@ -93,6 +96,15 @@
"Indent region."
)
+;; TODO This function should track between what min and max region a specific
buffer has been modified and then re-run lexer for that region when editor is
idle, maybe use (buffer-name))
+;; maybe use 'auto-save-hook for this
+(defun phps-mode/after-change-functions (start stop length)
+ "Track buffer change from START to STOP with length LENGTH."
+ (when (string= major-mode "phps-mode")
+ (setq phps-mode/buffer-changes--start start)
+ (message "phps-mode/after-change-functions %s %s %s" start stop length)
+ ))
+
(defun phps-mode/functions-init ()
"PHP specific init-cleanup routines."
@@ -109,6 +121,10 @@
)
+ (set (make-local-variable 'phps-mode/buffer-changes--start) nil)
+
+ (add-hook 'after-change-functions #'phps-mode/after-change-functions)
+
;; (set (make-local-variable 'indent-line-function)
#'phps-mode/indent-region)
)
diff --git a/phps-lexer.el b/phps-lexer.el
index 42ab914..37e1c56 100644
--- a/phps-lexer.el
+++ b/phps-lexer.el
@@ -47,9 +47,6 @@
(defvar phps-mode/lexer-tokens nil
"Last lexer tokens.")
-(defvar phps-mode/buffer-changes--start nil
- "Start of buffer changes, nil if none.")
-
;; SETTINGS
@@ -1335,15 +1332,6 @@ ANY_CHAR'
(setq phps-mode/buffer-changes--start nil)
(phps-mode/BEGIN phps-mode/ST_INITIAL)))
-;; TODO This function should track between what min and max region a specific
buffer has been modified and then re-run lexer for that region when editor is
idle, maybe use (buffer-name))
-;; maybe use 'auto-save-hook for this
-(defun phps-mode/after-change-functions (start stop length)
- "Track buffer change from START to STOP with length LENGTH."
- (when (string= major-mode "phps-mode")
- (setq phps-mode/buffer-changes--start start)
- (message "phps-mode/after-change-functions %s %s %s" start stop length)
- ))
-
(defun phps-mode/lex--RUN ()
"Run lexer."
(interactive)
@@ -1371,7 +1359,6 @@ ANY_CHAR'
(setq semantic-lex-syntax-table phps-mode/syntax-table))
(setq semantic-lex-analyzer #'phps-mode/tags-lexer)
(add-hook 'semantic-lex-reset-functions #'phps-mode/lex--SETUP)
- (add-hook 'after-change-functions #'phps-mode/after-change-functions)
(phps-mode/lex--RUN))
(provide 'phps-mode/lexer)
diff --git a/phps-test-functions.el b/phps-test-functions.el
index 644f916..9635bc0 100644
--- a/phps-test-functions.el
+++ b/phps-test-functions.el
@@ -40,7 +40,7 @@
(autoload 'phps-mode/with-test-buffer "phps-test")
(autoload 'should "ert")
-(defun phps-mode/test-indentation ()
+(defun phps-mode/test-indent-line ()
"Test for indentation."
(phps-mode/with-test-buffer
@@ -99,9 +99,11 @@
)
+;; TODO Add tests for all examples here: https://www.php-fig.org/psr/psr-2/
+
(defun phps-mod/test-functions ()
"Run test for functions."
- (phps-mode/test-indentation))
+ (phps-mode/test-indent-line))
(phps-mod/test-functions)
- [elpa] externals/phps-mode 3837d9c 001/405: My initial commit, (continued)
- [elpa] externals/phps-mode 3837d9c 001/405: My initial commit, Stefan Monnier, 2019/07/13
- [elpa] externals/phps-mode 6776468 037/405: Started worked with adding references to tokens from point meta information, Stefan Monnier, 2019/07/13
- [elpa] externals/phps-mode feb5724 039/405: Various debug work, Stefan Monnier, 2019/07/13
- [elpa] externals/phps-mode e36d477 045/405: token-number from point now is the same format as (nth), Stefan Monnier, 2019/07/13
- [elpa] externals/phps-mode b437374 040/405: Fixed bug in parsing of object parameters inside double quoted string, Stefan Monnier, 2019/07/13
- [elpa] externals/phps-mode 7161184 041/405: Handles stacked states better, Stefan Monnier, 2019/07/13
- [elpa] externals/phps-mode c625217 042/405: Added flag for PSR-2 white-space settings, Stefan Monnier, 2019/07/13
- [elpa] externals/phps-mode b629c4b 050/405: Updated comments and TODOs, Stefan Monnier, 2019/07/13
- [elpa] externals/phps-mode 4b4a375 043/405: Using lexical bindings for all files, Stefan Monnier, 2019/07/13
- [elpa] externals/phps-mode c040358 046/405: Point lexer token information makes more sense, Stefan Monnier, 2019/07/13
- [elpa] externals/phps-mode 94492c4 048/405: Added changes tracking to functions from lexer,
Stefan Monnier <=
- [elpa] externals/phps-mode be46d9c 044/405: Added lexer autoload to functions, Stefan Monnier, 2019/07/13
- [elpa] externals/phps-mode a259292 047/405: Changed indentation function to work solely on tokens, Stefan Monnier, 2019/07/13
- [elpa] externals/phps-mode 4098f46 049/405: Started with incremental lexer, Stefan Monnier, 2019/07/13
- [elpa] externals/phps-mode da1d1de 051/405: Temporary lexer after change until other work is ready, Stefan Monnier, 2019/07/13
- [elpa] externals/phps-mode 990d3dd 054/405: Added test for indentation of multiple-line doc comment, Stefan Monnier, 2019/07/13
- [elpa] externals/phps-mode dd80d27 055/405: Started work on detecting doc comment blocks, Stefan Monnier, 2019/07/13
- [elpa] externals/phps-mode e1b7160 053/405: (newline-and-indent) now working, Stefan Monnier, 2019/07/13
- [elpa] externals/phps-mode 8aa1ab6 059/405: Another test for getting point data inside doc block, Stefan Monnier, 2019/07/13
- [elpa] externals/phps-mode 09daec3 052/405: Foundation for incremental lexer and syntax colorer completed, Stefan Monnier, 2019/07/13
- [elpa] externals/phps-mode 3f4c344 056/405: Fixed detection of doc comment blocks, Stefan Monnier, 2019/07/13