[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/vlf 1948f3e 041/310: Make VLFI edit mode actually worki
From: |
Stefan Monnier |
Subject: |
[elpa] externals/vlf 1948f3e 041/310: Make VLFI edit mode actually working. |
Date: |
Sat, 28 Nov 2020 00:32:43 -0500 (EST) |
branch: externals/vlf
commit 1948f3ea4e9a25cf7fa4efa9ba2b2fbd966bbeba
Author: Andrey Kotlarski <m00naticus@gmail.com>
Commit: Andrey Kotlarski <m00naticus@gmail.com>
Make VLFI edit mode actually working.
---
vlfi.el | 43 +++++++++++++++++--------------------------
1 file changed, 17 insertions(+), 26 deletions(-)
diff --git a/vlfi.el b/vlfi.el
index 46c716d..bbd14ce 100644
--- a/vlfi.el
+++ b/vlfi.el
@@ -81,11 +81,13 @@
(set-buffer-modified-p nil)
(buffer-disable-undo)
(make-local-variable 'vlfi-batch-size)
+ (put 'vlfi-batch-size 'permanent-local t)
(make-local-variable 'vlfi-start-pos)
+ (put 'vlfi-start-pos 'permanent-local t)
(make-local-variable 'vlfi-end-pos)
+ (put 'vlfi-end-pos 'permanent-local t)
(make-local-variable 'vlfi-file-size)
- ;; (vlfi-print-vars)
- )
+ (put 'vlfi-file-size 'permanent-local t))
(defun vlfi-change-batch-size (decrease)
"Change the buffer-local value of `vlfi-batch-size'.
@@ -378,28 +380,15 @@ successful. Return nil if nothing found."
(define-key map "\C-c\C-c" 'vlfi-write)
(define-key map "\C-c\C-q" 'vlfi-discard-edit)
map)
- "Keymap for `vlfi-edit-mode'.")
-
-(define-minor-mode vlfi-edit-mode
- "Major mode for editing large file chunks." nil "[edit]"
- vlfi-edit-mode-map
- (if (or (not arg) (and (numberp arg)
- (< arg 0)))
- (progn (setq buffer-read-only t)
- (set-buffer-modified-p nil)
- (buffer-disable-undo))
- (setq buffer-read-only nil)
- (buffer-enable-undo)
- (message (substitute-command-keys
- "Editing: Type \\[vlfi-write] to write chunk \
-or \\[vlfi-discard-edit] to discard changes."))
- (vlfi-print-vars)))
-
-(defun vlfi-print-vars ()
- (message "vlfi-start-pos: %s; vlfi-end-pos: %s; \
-vlfi-batch-size: %s; vlfi-file-size: %s"
- vlfi-start-pos vlfi-end-pos
- vlfi-batch-size vlfi-file-size))
+ "Keymap for command `vlfi-edit-mode'.")
+
+(define-derived-mode vlfi-edit-mode vlfi-mode "VLFI[edit]"
+ "Major mode for editing large file chunks."
+ (setq buffer-read-only nil)
+ (buffer-enable-undo)
+ (message (substitute-command-keys
+ "Editing: Type \\[vlfi-write] to write chunk \
+or \\[vlfi-discard-edit] to discard changes.")))
(defun vlfi-write ()
"Write current chunk to file. May overwrite existing content."
@@ -408,12 +397,14 @@ vlfi-batch-size: %s; vlfi-file-size: %s"
(y-or-n-p "Changed size of original chunk. \
End of chunk will be garbled. Continue? "))
(write-region nil nil buffer-file-name vlfi-start-pos)
- (vlfi-edit-mode -1)))
+ (vlfi-move-to-chunk vlfi-start-pos vlfi-end-pos)
+ (vlfi-mode)))
(defun vlfi-discard-edit ()
"Discard edit and refresh chunk from file."
(interactive)
- (vlfi-edit-mode -1)
+ (vlfi-move-to-chunk vlfi-start-pos vlfi-end-pos)
+ (vlfi-mode)
(message "Switched to VLFI mode."))
(provide 'vlfi)
- [elpa] externals/vlf 6a1919d 001/310: Initial commit - original state of GNU ELPA vlf.el., (continued)
- [elpa] externals/vlf 6a1919d 001/310: Initial commit - original state of GNU ELPA vlf.el., Stefan Monnier, 2020/11/28
- [elpa] externals/vlf 2d0709b 003/310: Improvements to the existing functionality:, Stefan Monnier, 2020/11/28
- [elpa] externals/vlf 59d5d2c 008/310: Add lexical-bind declaration., Stefan Monnier, 2020/11/28
- [elpa] externals/vlf 782b7e4 009/310: Make filename argument of `vlf-if-file-too-large' optional so it at, Stefan Monnier, 2020/11/28
- [elpa] externals/vlf 375c96f 018/310: Add backward whole file search., Stefan Monnier, 2020/11/28
- [elpa] externals/vlf 30e4959 019/310: Add direct jumps to first and last chunks., Stefan Monnier, 2020/11/28
- [elpa] externals/vlf 42693f6 026/310: Update README., Stefan Monnier, 2020/11/28
- [elpa] externals/vlf ac382e9 032/310: Add temporary highlight of match., Stefan Monnier, 2020/11/28
- [elpa] externals/vlf 9abee04 038/310: Merge branch 'master' into edit, Stefan Monnier, 2020/11/28
- [elpa] externals/vlf 0ff2f3e 040/310: Merge branch 'master' into edit, Stefan Monnier, 2020/11/28
- [elpa] externals/vlf 1948f3e 041/310: Make VLFI edit mode actually working.,
Stefan Monnier <=
- [elpa] externals/vlf 5405a30 045/310: Intercept buffer saving with vlfi-write., Stefan Monnier, 2020/11/28
- [elpa] externals/vlf f3132c0 044/310: Keep current position when moving around chunks., Stefan Monnier, 2020/11/28
- [elpa] externals/vlf 8787186 055/310: Show paging according to batch size instead of percentage., Stefan Monnier, 2020/11/28
- [elpa] externals/vlf 8f6299c 056/310: Simplify detection of buffer size change., Stefan Monnier, 2020/11/28
- [elpa] externals/vlf f23262e 057/310: Add shift back of file contents when edited chunk shrinks in size., Stefan Monnier, 2020/11/28
- [elpa] externals/vlf 2f201c5 061/310: Add jump to chunk command., Stefan Monnier, 2020/11/28
- [elpa] externals/vlf d5f2a36 060/310: Rearrange code in sections., Stefan Monnier, 2020/11/28
- [elpa] externals/vlf 705f9ce 064/310: Add issue section to the README., Stefan Monnier, 2020/11/28
- [elpa] externals/vlf 9fad430 066/310: Fix positioning after save., Stefan Monnier, 2020/11/28
- [elpa] externals/vlf e545769 128/310: Fix adjusting of end chunk bytes., Stefan Monnier, 2020/11/28