[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/phps-mode 55d59ee365 207/212: More work on cache suppor
From: |
Christian Johansson |
Subject: |
[elpa] externals/phps-mode 55d59ee365 207/212: More work on cache support |
Date: |
Wed, 26 Jan 2022 01:51:27 -0500 (EST) |
branch: externals/phps-mode
commit 55d59ee365db248d5938d251dd4da297751959e6
Author: Christian Johansson <christian@cvj.se>
Commit: Christian Johansson <christian@cvj.se>
More work on cache support
---
TODO.md | 2 ++
phps-mode-cache.el | 2 +-
phps-mode-lex-analyzer.el | 30 +++++++++++++++---------------
3 files changed, 18 insertions(+), 16 deletions(-)
diff --git a/TODO.md b/TODO.md
index 58c2a82ef1..31100a4eea 100644
--- a/TODO.md
+++ b/TODO.md
@@ -20,3 +20,5 @@
* Imenu-generation of conditionally defined functions and classes
* Cache elisp data in file-system
+Save to cache after incremental edits as well
+
diff --git a/phps-mode-cache.el b/phps-mode-cache.el
index af05116715..783a027ae5 100644
--- a/phps-mode-cache.el
+++ b/phps-mode-cache.el
@@ -23,7 +23,7 @@
(let ((filename
(expand-file-name
(replace-regexp-in-string
- "\\(/\\|@\\|:\\)" "_"
+ "\\(/\\|@\\|:\\|\\.\\|-\\)" "_"
key)
directory-filename)))
filename)))
diff --git a/phps-mode-lex-analyzer.el b/phps-mode-lex-analyzer.el
index 9d01c1bffc..d6b884cb11 100644
--- a/phps-mode-lex-analyzer.el
+++ b/phps-mode-lex-analyzer.el
@@ -682,7 +682,7 @@
incremental-nest-location-stack
head-tokens
force-synchronous
- buffer-file-name)
+ (if (buffer-modified-p) nil buffer-file-name))
(phps-mode-debug-message
(message "Incremental tokens: %s"
incremental-tokens)))
@@ -1069,12 +1069,15 @@
;; to enable nice presentation
(require 'phps-mode-macros)
- (let ((loaded-from-cache))
- (when (and
- (not end)
- filename)
- (let ((cache-key
- (format "lex-%s" filename)))
+ (let ((loaded-from-cache)
+ (cache-key))
+
+ ;; Load cache if possible
+ (when filename
+ (setq
+ cache-key
+ (format "lex-%s" filename))
+ (unless end
(when
(phps-mode-cache-test-p
cache-key
@@ -1199,14 +1202,11 @@
imenu-index
bookkeeping-index)))
- (when (and
- (not end)
- filename)
- (let ((cache-key
- (format "lex-%s" filename)))
- (phps-mode-cache-save
- data
- cache-key)))
+ ;; Save cache if possible
+ (when cache-key
+ (phps-mode-cache-save
+ data
+ cache-key))
data)))))
- [elpa] externals/phps-mode f537965850 168/212: Improved indentation on lines after lines that ends with semicolon, (continued)
- [elpa] externals/phps-mode f537965850 168/212: Improved indentation on lines after lines that ends with semicolon, Christian Johansson, 2022/01/26
- [elpa] externals/phps-mode 6d8544d7fa 171/212: Added two more failing tests for indentation, Christian Johansson, 2022/01/26
- [elpa] externals/phps-mode 616e3dc7ea 172/212: Added a TODO file, Christian Johansson, 2022/01/26
- [elpa] externals/phps-mode d74686e07c 180/212: Started on optimizing lexer, Christian Johansson, 2022/01/26
- [elpa] externals/phps-mode 06b35e4bf1 183/212: Fixed TODO item in this branch, Christian Johansson, 2022/01/26
- [elpa] externals/phps-mode 40ecf58372 189/212: Adjustments for indent helper function determining last index line, Christian Johansson, 2022/01/26
- [elpa] externals/phps-mode edba476df8 191/212: Byte compilation fixes for indentation, Christian Johansson, 2022/01/26
- [elpa] externals/phps-mode 580298c395 201/212: Improved indentation of multi-line concatenated strings containing brackets, Christian Johansson, 2022/01/26
- [elpa] externals/phps-mode 3e79319cf5 195/212: Added failing indent test, Christian Johansson, 2022/01/26
- [elpa] externals/phps-mode 72c692b511 210/212: Re-scan buffer interactively now clears cache and kills running threads, Christian Johansson, 2022/01/26
- [elpa] externals/phps-mode 55d59ee365 207/212: More work on cache support,
Christian Johansson <=
- [elpa] externals/phps-mode 733f36a123 203/212: Added more failing indentation tests, Christian Johansson, 2022/01/26
- [elpa] externals/phps-mode d4f0db2c0c 211/212: Added failing bookkeeping test, Christian Johansson, 2022/01/26
- [elpa] externals/phps-mode cb4d95cd7a 204/212: Passed new indentation tests, Christian Johansson, 2022/01/26
- [elpa] externals/phps-mode a907f103f0 026/212: More work on AST for bookkeeping, Christian Johansson, 2022/01/26
- [elpa] externals/phps-mode 95078e0db2 029/212: Added SDT for increment variable production, Christian Johansson, 2022/01/26
- [elpa] externals/phps-mode d90b470109 035/212: Fixed bookkeeping of class property, Christian Johansson, 2022/01/26
- [elpa] externals/phps-mode bcf0c68945 038/212: AST-imenu and AST-bookkeeping now in standalone files, Christian Johansson, 2022/01/26
- [elpa] externals/phps-mode 4e021b8413 046/212: Bookkeeping via AST now passing method calls, Christian Johansson, 2022/01/26
- [elpa] externals/phps-mode 712f5e9f2b 049/212: Removed invalid syntax code from old bookkeeping test, Christian Johansson, 2022/01/26
- [elpa] externals/phps-mode 1dc3b453c9 043/212: Passed bookkeeping via AST for try catch blocks, Christian Johansson, 2022/01/26