[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/vlf 4cbefde 067/310: Optimize chunk save buffers for mu
From: |
Stefan Monnier |
Subject: |
[elpa] externals/vlf 4cbefde 067/310: Optimize chunk save buffers for multiple insert/erase operations. |
Date: |
Sat, 28 Nov 2020 00:32:48 -0500 (EST) |
branch: externals/vlf
commit 4cbefdeecaba0f88734b9a888199842421941038
Author: Andrey Kotlarski <m00naticus@gmail.com>
Commit: Andrey Kotlarski <m00naticus@gmail.com>
Optimize chunk save buffers for multiple insert/erase operations.
---
vlfi.el | 11 ++++++++++-
1 file changed, 10 insertions(+), 1 deletion(-)
diff --git a/vlfi.el b/vlfi.el
index 581d50e..4848e17 100644
--- a/vlfi.el
+++ b/vlfi.el
@@ -474,11 +474,18 @@ Save anyway? ")))
(vlfi-mode)
t))
+(defun vlfi-prepare-write-buffer ()
+ "Optimize buffer for a lot of insert/erasure."
+ (setq delay-mode-hooks t)
+ (fundamental-mode)
+ (buffer-disable-undo))
+
(defun vlfi-file-shift-back (size-change)
"Shift file contents SIZE-CHANGE bytes back."
(let ((coding-system buffer-file-coding-system))
(write-region nil nil buffer-file-name vlfi-start-pos t)
(setq buffer-file-coding-system nil)
+ (vlfi-prepare-write-buffer)
(let ((read-start-pos vlfi-end-pos)
(reporter (make-progress-reporter "Adjusting file content"
vlfi-end-pos
@@ -516,8 +523,10 @@ Done by saving content up front and then writing previous
batch."
(coding-system buffer-file-coding-system))
(let ((file buffer-file-name))
(set-buffer temp-buffer)
- (setq buffer-file-name file))
+ (setq buffer-file-name file)
+ (vlfi-prepare-write-buffer))
(set-buffer vlfi-buffer)
+ (vlfi-prepare-write-buffer)
(let ((read-buffer temp-buffer)
(write-buffer vlfi-buffer)
(size (+ vlfi-batch-size size-change))
- [elpa] externals/vlf 2525ebf 049/310: Improvements to file saving., (continued)
- [elpa] externals/vlf 2525ebf 049/310: Improvements to file saving., Stefan Monnier, 2020/11/28
- [elpa] externals/vlf cedd0b4 059/310: Fix spaces and indent., Stefan Monnier, 2020/11/28
- [elpa] externals/vlf 6ea7a2a 065/310: Add macro for file size determination., Stefan Monnier, 2020/11/28
- [elpa] externals/vlf 91fecb7 023/310: Simplify key-bindings., Stefan Monnier, 2020/11/28
- [elpa] externals/vlf 8e65e13 029/310: Refactor and simplify search procedures. Always use batch sized, Stefan Monnier, 2020/11/28
- [elpa] externals/vlf db3d2af 043/310: Update version, README and commentary section., Stefan Monnier, 2020/11/28
- [elpa] externals/vlf 467154a 047/310: Add documentation., Stefan Monnier, 2020/11/28
- [elpa] externals/vlf a3c405f 051/310: Make detection of buffer size change on save more correct when dealing, Stefan Monnier, 2020/11/28
- [elpa] externals/vlf 7985f0f 052/310: Fix `vlfi-if-file-too-large' to be more tolerable on GNU Emacs 23., Stefan Monnier, 2020/11/28
- [elpa] externals/vlf 8637ce5 062/310: Update README and version., Stefan Monnier, 2020/11/28
- [elpa] externals/vlf 4cbefde 067/310: Optimize chunk save buffers for multiple insert/erase operations.,
Stefan Monnier <=
- [elpa] externals/vlf 473536e 073/310: Add adjust command for cases where chunk starts with part of multibyte symbol., Stefan Monnier, 2020/11/28
- [elpa] externals/vlf 2564c9a 006/310: Plug option for vlf when opening files on package load., Stefan Monnier, 2020/11/28
- [elpa] externals/vlf c0d143b 011/310: Rename vlf to vlfi and update README., Stefan Monnier, 2020/11/28
- [elpa] externals/vlf 36411c3 022/310: Enhance search to cover in between chunk boundaries., Stefan Monnier, 2020/11/28
- [elpa] externals/vlf 88cf03c 030/310: Interactive change of batch size immediately updates content., Stefan Monnier, 2020/11/28
- [elpa] externals/vlf 995a7a0 042/310: Change some VLFI key-bindings not to override special-mode ones., Stefan Monnier, 2020/11/28
- [elpa] externals/vlf 0610822 046/310: Make saving with change of size correct., Stefan Monnier, 2020/11/28
- [elpa] externals/vlf b52ca6c 063/310: Don't change encoding for edited chunk, leave it to the user in case, Stefan Monnier, 2020/11/28
- [elpa] externals/vlf a31be70 076/310: Update README and bump version., Stefan Monnier, 2020/11/28
- [elpa] externals/vlf ca8ba42 077/310: Fix position handling to correctly deal with multibyte characters., Stefan Monnier, 2020/11/28