[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/clipboard-collector dc4b60f 20/31: Cancel on error
From: |
Stefan Monnier |
Subject: |
[elpa] externals/clipboard-collector dc4b60f 20/31: Cancel on error |
Date: |
Sun, 6 Jan 2019 17:16:21 -0500 (EST) |
branch: externals/clipboard-collector
commit dc4b60f2cd743ef6f27f94cdb465942d597775f6
Author: Clemens Radermacher <address@hidden>
Commit: Clemens Radermacher <address@hidden>
Cancel on error
---
README.org | 2 +-
clipboard-collector.el | 20 ++++++++++++--------
2 files changed, 13 insertions(+), 9 deletions(-)
diff --git a/README.org b/README.org
index 6c992a1..7a13e1f 100644
--- a/README.org
+++ b/README.org
@@ -54,5 +54,5 @@ regex in that function, too:
#+BEGIN_SRC elisp
(clipboard-collector-create cc-url
- (("https?://\\(.*\\)" "Url: %s" (lambda (item) (match-string 1 item)))))
+ (("https?://\\([^/]*\\)" "Url: %s" (lambda (item) (match-string 1 item)))))
#+END_SRC
diff --git a/clipboard-collector.el b/clipboard-collector.el
index a980b83..94efc08 100644
--- a/clipboard-collector.el
+++ b/clipboard-collector.el
@@ -51,6 +51,7 @@ Rules used are defined in `clipboard-collector--rules'."
(setq clipboard-collector--finish-function
#'clipboard-collector-finish-default)
(setq clipboard-collector--rules '((".*" "%s")))
+ ;; reset clip data
(setq clipboard-collector--last-clip "")
(funcall interprogram-cut-function "")
(setq clipboard-collector--items nil)
@@ -87,14 +88,17 @@ contents transformed according to matched rule."
(defun clipboard-collector--try-collect ()
"If Clibboard changed and matches rule collect it."
- (let ((clip (gui-get-selection 'CLIPBOARD))
- (item nil))
- (when (and (not (string-empty-p clip))
- (not (string= clip
- clipboard-collector--last-clip))
- (setq item (clipboard-collector--apply-rule clip)))
- (setq clipboard-collector--last-clip clip)
- (clipboard-collector--collect item))))
+ (condition-case nil
+ (let ((clip (gui-get-selection 'CLIPBOARD))
+ (item nil))
+ (when (and (not (string-empty-p clip))
+ (not (string= clip
+ clipboard-collector--last-clip))
+ (setq item (clipboard-collector--apply-rule clip)))
+ (setq clipboard-collector--last-clip clip)
+ (clipboard-collector--collect item)))
+ (error (progn (message "Error during clipboard collection, exited
`clipboard-collector-mode'")
+ (clipboard-collector-mode -1)))))
(defvar clipboard-collector--items nil
- [elpa] externals/clipboard-collector c904691 01/31: Initial commit, (continued)
- [elpa] externals/clipboard-collector c904691 01/31: Initial commit, Stefan Monnier, 2019/01/06
- [elpa] externals/clipboard-collector fe40dfe 11/31: Put collected item in quotes (for message), Stefan Monnier, 2019/01/06
- [elpa] externals/clipboard-collector ea38d50 18/31: Make mode global, Stefan Monnier, 2019/01/06
- [elpa] externals/clipboard-collector eb43fe1 16/31: Update package header, Stefan Monnier, 2019/01/06
- [elpa] externals/clipboard-collector 1b96653 06/31: Use C-c C-c binding, Stefan Monnier, 2019/01/06
- [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 <=
- [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, 2019/01/06