[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[nongnu] elpa/webpaste afbcf6f 273/298: Merge branch 'comfort-paste'
From: |
ELPA Syncer |
Subject: |
[nongnu] elpa/webpaste afbcf6f 273/298: Merge branch 'comfort-paste' |
Date: |
Thu, 9 Dec 2021 19:00:28 -0500 (EST) |
branch: elpa/webpaste
commit afbcf6fb90c6380a35d5c7898c613a593a87529f
Merge: ef33b0f 4e410b0
Author: Elis Hirwing <elis@hirwing.se>
Commit: Elis Hirwing <elis@hirwing.se>
Merge branch 'comfort-paste'
---
README.org | 6 +++--
.../unit/test-webpaste-paste-region-and-buffer.el | 31 ++++++++++++++++++++++
webpaste.el | 13 +++++++++
3 files changed, 48 insertions(+), 2 deletions(-)
diff --git a/README.org b/README.org
index 944092e..7623095 100644
--- a/README.org
+++ b/README.org
@@ -35,7 +35,8 @@ easiest way to install and configure packages.
(use-package webpaste
:ensure t
:bind (("C-c C-p C-b" . webpaste-paste-buffer)
- ("C-c C-p C-r" . webpaste-paste-region)))
+ ("C-c C-p C-r" . webpaste-paste-region)
+ ("C-c C-p C-p" . webpaste-paste-buffer-or-region)))
#+END_SRC
* Configuration
@@ -64,7 +65,8 @@ This can be added to the =:config= section of use-package:
(use-package webpaste
:ensure t
:bind (("C-c C-p C-b" . webpaste-paste-buffer)
- ("C-c C-p C-r" . webpaste-paste-region))
+ ("C-c C-p C-r" . webpaste-paste-region)
+ ("C-c C-p C-p" . webpaste-paste-buffer-or-region))
:config
(progn
(setq webpaste-provider-priority '("ix.io" "dpaste.org"))))
diff --git a/tests/unit/test-webpaste-paste-region-and-buffer.el
b/tests/unit/test-webpaste-paste-region-and-buffer.el
index 715dbe1..d6928cc 100644
--- a/tests/unit/test-webpaste-paste-region-and-buffer.el
+++ b/tests/unit/test-webpaste-paste-region-and-buffer.el
@@ -81,4 +81,35 @@
(buffer-substring 10 100)))))
+(describe
+ "Paste buffer or region, but only choose one at a time depending on
context"
+
+ (before-each
+ (spy-on 'webpaste-paste-buffer)
+ (spy-on 'webpaste-paste-region))
+
+ (after-each
+ (deactivate-mark))
+
+ (with-temp-buffer
+ (insert-file-contents "README.org")
+
+ (it "can paste entire buffers"
+ ;; Paste buffer
+ (webpaste-paste-buffer-or-region)
+ (expect 'webpaste-paste-buffer :to-have-been-called-times 1)
+ (expect 'webpaste-paste-region :to-have-been-called-times 0))
+
+ (it "can paste selected region"
+ ;; Mock selection of region
+ (set-mark 10)
+ (goto-char 100)
+ (activate-mark)
+
+ ;; Paste region
+ (webpaste-paste-buffer-or-region)
+ (expect 'webpaste-paste-buffer :to-have-been-called-times 0)
+ (expect 'webpaste-paste-region :to-have-been-called-times 1))))
+
+
;;; test-webpaste-paste-region-and-buffer.el ends here
diff --git a/webpaste.el b/webpaste.el
index 7895bbc..ae19831 100644
--- a/webpaste.el
+++ b/webpaste.el
@@ -548,6 +548,19 @@ Argument MARK Current mark."
;; Extract the buffer contents with buffer-substring and paste it
(webpaste--paste-text (buffer-substring (point-min) (point-max)))))
+
+;;;###autoload
+(cl-defun webpaste-paste-buffer-or-region (&optional point mark)
+ "Paste current buffer or selected region to some paste service"
+ (interactive "r")
+
+ ;; if region is selected
+ (if (region-active-p)
+ ;; Paste selected region
+ (webpaste-paste-region point mark)
+ ;; Else, Paste buffer
+ (webpaste-paste-buffer)))
+
(provide 'webpaste)
- [nongnu] elpa/webpaste f047313 219/298: Update the custom hook example to actually need to be a lambda, (continued)
- [nongnu] elpa/webpaste f047313 219/298: Update the custom hook example to actually need to be a lambda, ELPA Syncer, 2021/12/09
- [nongnu] elpa/webpaste ac24701 214/298: Merge branch 'DamienCassou-simplify-travis', ELPA Syncer, 2021/12/09
- [nongnu] elpa/webpaste 6a02ff9 185/298: Added tests for error lambdas and failovers, ELPA Syncer, 2021/12/09
- [nongnu] elpa/webpaste bf08207 211/298: Update my name due to legal namechange, ELPA Syncer, 2021/12/09
- [nongnu] elpa/webpaste 14fd97b 225/298: Add deprecation message of simpleclip option to clean up the code, ELPA Syncer, 2021/12/09
- [nongnu] elpa/webpaste b6f8005 216/298: Do not fallback to true if test fails, ELPA Syncer, 2021/12/09
- [nongnu] elpa/webpaste cd66756 241/298: Detect lang from shebang, ELPA Syncer, 2021/12/09
- [nongnu] elpa/webpaste 1787ea7 249/298: bugfix in "gist.github.com" entry of webpaste-providers-alist, ELPA Syncer, 2021/12/09
- [nongnu] elpa/webpaste 9da4eca 258/298: travis: Switch to nix-emacs-ci, ELPA Syncer, 2021/12/09
- [nongnu] elpa/webpaste 7d08f87 254/298: integration-tests: Change filtering of local/ci provider tests, ELPA Syncer, 2021/12/09
- [nongnu] elpa/webpaste afbcf6f 273/298: Merge branch 'comfort-paste',
ELPA Syncer <=
- [nongnu] elpa/webpaste 4e410b0 272/298: Add example config to README with 'pasting buffer OR region' function, ELPA Syncer, 2021/12/09
- [nongnu] elpa/webpaste 0760361 278/298: docs: Fix all warnings regarding docstrings, ELPA Syncer, 2021/12/09
- [nongnu] elpa/webpaste 5e963e8 275/298: Fix bug in webpaste-paste-buffer-or-region when you don't have a region, ELPA Syncer, 2021/12/09
- [nongnu] elpa/webpaste 9662b1c 280/298: Bump version number and copyright year, ELPA Syncer, 2021/12/09
- [nongnu] elpa/webpaste 3c9d2e8 284/298: Merge branch 'github-actions', ELPA Syncer, 2021/12/09
- [nongnu] elpa/webpaste 4ec1645 297/298: Readme: Update branch name, ELPA Syncer, 2021/12/09
- [nongnu] elpa/webpaste 92a5867 088/298: Spaces, ELPA Syncer, 2021/12/09
- [nongnu] elpa/webpaste ca539eb 101/298: Rename and update tests for provider priority, ELPA Syncer, 2021/12/09
- [nongnu] elpa/webpaste ee5b4ed 141/298: Move function declaration of the get-lang-alist-with-overrides function up, ELPA Syncer, 2021/12/09
- [nongnu] elpa/webpaste 0df8ea0 144/298: Hide some options from customize, ELPA Syncer, 2021/12/09