[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/clipboard-collector 130af9e 17/31: Use mode instead of
From: |
Stefan Monnier |
Subject: |
[elpa] externals/clipboard-collector 130af9e 17/31: Use mode instead of entry/exit command |
Date: |
Sun, 6 Jan 2019 17:16:21 -0500 (EST) |
branch: externals/clipboard-collector
commit 130af9e2b6993794c9c00db9d38df915b42e4abd
Author: Clemens Radermacher <address@hidden>
Commit: Clemens Radermacher <address@hidden>
Use mode instead of entry/exit command
---
clipboard-collector.el | 61 ++++++++++++++++++++------------------------------
1 file changed, 24 insertions(+), 37 deletions(-)
diff --git a/clipboard-collector.el b/clipboard-collector.el
index 6a586a4..0e91c0d 100644
--- a/clipboard-collector.el
+++ b/clipboard-collector.el
@@ -38,11 +38,24 @@
"This keymap sets up the exit binding for clipboard collection
commands.")
-(define-minor-mode clipboard-collector--mode
- "This mode is for internal use only.
+(define-minor-mode clipboard-collector-mode
+ "Start collecting clipboard items.
+
+Rules used are defined in `clipboard-collector--rules'."
+ :lighter " cc"
+ (if clipboard-collector-mode
+ (progn
+ (setq clipboard-collector--last-clip "")
+ (funcall interprogram-cut-function "")
+ (setq clipboard-collector--items nil)
+ (setq clipboard-collector--timer
+ (run-at-time 0 0.2 #'clipboard-collector--try-collect))
+ (message "Start collecting, finish with %s."
+ (substitute-command-keys "\\[clipboard-collector-finish]")))
+ (when clipboard-collector--timer
+ (cancel-timer clipboard-collector--timer))
+ (setq clipboard-collector--timer nil)))
-Used by `clipboard-collector--start-watch' to setup the exit
-binding for `clipboard-collector-finish'.")
(defvar clipboard-collector--last-clip nil
"Save last clipboard entry.")
@@ -117,41 +130,15 @@ the matched regex.")
(defvar clipboard-collector--timer nil)
-(defun clipboard-collector--start-watch ()
- "Run a timer to watch for clipboard changes.
-
-If one of regexes of `clipboard-collector--rules' matches call
-`clipboard-collector--collect'."
- (interactive)
- (when clipboard-collector--timer
- (clipboard-collector--stop-watch))
- (setq clipboard-collector--last-clip "")
- (funcall interprogram-cut-function "")
- (setq clipboard-collector--items nil)
- (setq clipboard-collector--timer
- (run-at-time 0 0.2 #'clipboard-collector--try-collect))
- (clipboard-collector--mode 1)
- (message "Start collecting, finish with %s."
- (substitute-command-keys "\\[clipboard-collector-finish]")))
-
-
-(defun clipboard-collector--stop-watch ()
- "Stop timer to watch for clipboard changes."
- (interactive)
- (when clipboard-collector--timer
- (cancel-timer clipboard-collector--timer)
- (setq clipboard-collector--timer nil)))
-
(defun clipboard-collector-finish ()
"Finish collecting clipboard items.
Uses `clipboard-collector--finish-function' ."
(interactive)
- (clipboard-collector--stop-watch)
- (unwind-protect
- (funcall clipboard-collector--finish-function
- (nreverse (mapcar #'cdr clipboard-collector--items)))
- (clipboard-collector--mode -1)))
+ (clipboard-collector-mode -1)
+ (funcall clipboard-collector--finish-function
+ (nreverse (mapcar #'cdr clipboard-collector--items)))))
+
(defvar clipboard-collector-display-function
#'clipboard-collector-display
"Function to display collected item.
@@ -177,7 +164,7 @@ for changes. If the content of a clipboard change match a
rule of
RULES with format of `clipboard-collector--rules', it is
collected according to the rule.
-The command will enable `clipboard-collector--mode' which will
+The command will enable `clipboard-collector-mode' which will
bind `clipboard-collector-finish' to finish collecting items
using FINISHF which defaults to
`clipboard-collector-finish-default'."
@@ -187,7 +174,7 @@ to the following rules (see `clipboard-collector--rules'):
%s
-This command enables `clipboard-collector--mode' which binds
+This command enables `clipboard-collector-mode' which binds
`clipboard-collector-finish' to apply function
`%s'
@@ -198,7 +185,7 @@ on the collected items. "
(setq clipboard-collector--finish-function
(or ',finishf #'clipboard-collector-finish-default))
(setq clipboard-collector--rules ',rules)
- (clipboard-collector--start-watch)))
+ (clipboard-collector-mode 1)))
(provide 'clipboard-collector)
- [elpa] externals/clipboard-collector e587974 14/31: Rephrase description, (continued)
- [elpa] externals/clipboard-collector e587974 14/31: Rephrase description, Stefan Monnier, 2019/01/06
- [elpa] externals/clipboard-collector 4bbc844 15/31: Rephrase desc. again, Stefan Monnier, 2019/01/06
- [elpa] externals/clipboard-collector d3e2659 28/31: Update Readme, Stefan Monnier, 2019/01/06
- [elpa] externals/clipboard-collector ff6c25c 22/31: Depend on emacs 25 and linux, Stefan Monnier, 2019/01/06
- [elpa] externals/clipboard-collector 4610a49 31/31: Update commentary, Stefan Monnier, 2019/01/06
- [elpa] externals/clipboard-collector dc4b60f 20/31: Cancel on error, Stefan Monnier, 2019/01/06
- [elpa] externals/clipboard-collector d7fff65 09/31: Rephrase, Stefan Monnier, 2019/01/06
- [elpa] externals/clipboard-collector f2702a8 12/31: Cleanup, Stefan Monnier, 2019/01/06
- [elpa] externals/clipboard-collector a6a13eb 05/31: Rephrase description, Stefan Monnier, 2019/01/06
- [elpa] externals/clipboard-collector 7c5659e 26/31: Add gpastel support, Stefan Monnier, 2019/01/06
- [elpa] externals/clipboard-collector 130af9e 17/31: Use mode instead of entry/exit command,
Stefan Monnier <=