[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[elpa] externals/xclip 7b7b6d2 13/18: xclip.el: Add support for termux-c

From: Stefan Monnier
Subject: [elpa] externals/xclip 7b7b6d2 13/18: xclip.el: Add support for termux-clipboard-get/set
Date: Sat, 28 Nov 2020 14:27:56 -0500 (EST)

branch: externals/xclip
commit 7b7b6d2bbaf203c8d5e0f1f85163c7cade39e18c
Author: Sacha Chua <sacha@sachachua.com>
Commit: Stefan Monnier <monnier@iro.umontreal.ca>

    xclip.el: Add support for termux-clipboard-get/set
    * packages/xclip/xclip.el (xclip-method): Add termux-clipboard-get.
    (xclip-set-selection): Use termux-clipboard-set if specified.
    (xclip-get-selection): Use termux-clipboard-get if specified.
 xclip.el | 11 +++++++++++
 1 file changed, 11 insertions(+)

diff --git a/xclip.el b/xclip.el
index 2c7be8c..28c8327 100644
--- a/xclip.el
+++ b/xclip.el
@@ -32,6 +32,7 @@
 ;;   http://www.vergenet.net/~conrad/software/xsel/ respectively).
 ;; - MacOS: `pbpaste/pbcopy'
 ;; - Cygwin: `getclip/putclip'
+;; - Termux: `termux-clipboard-get/termux-clipboard-set'
 ;; - Emacs: It can also use Emacs's built-in GUI support to talk to the GUI.
 ;;   This requires an Emacs built with GUI support.
 ;;   It uses `make-frame-on-display' which has been tested to work under X11,
@@ -75,6 +76,7 @@ If non-nil `xclip-program' is ignored.")
    (and (executable-find "xclip") 'xclip)
    (and (executable-find "xsel") 'xsel)
    (and (executable-find "wl-copy") 'wl-copy) ;github.com/bugaevc/wl-clipboard
+   (and (executable-find "termux-clipboard-get") 'termux-clipboard-get) 
    (and (fboundp 'x-create-frame) (getenv "DISPLAY") 'emacs)
   "Method to use to access the GUI's clipboard.
@@ -86,6 +88,7 @@ and `getclip' under Cygwin, or `emacs' to use Emacs's GUI 
code for that."
           (const :tag "X11: xclip" xclip)
           (const :tag "X11: xsel" xsel)
           (const :tag "Wayland: wl-copy" wl-copy)
+          (const :tag "Termux: termux-clipboard-get/termux-clipboard-set" 
           (const :tag "X11: Emacs" emacs)))
 (defcustom xclip-program (symbol-name xclip-method)
@@ -136,6 +139,12 @@ See also `x-set-selection'."
                  (apply #'start-process
                         "wl-copy" nil xclip-program
                         (if (memq type '(primary PRIMARY)) '("-p")))))
+              (`termux-clipboard-get
+               (start-process "termux-clipboard-set" nil
+                              (replace-regexp-in-string
+                               "\\(.*\\)termux-clipboard-get"
+                               "\\1termux-clipboard-set"
+                               xclip-program 'fixedcase)))
               (method (error "Unknown `xclip-method': %S" method)))))
       (when proc
         (process-send-string proc data)
@@ -176,6 +185,8 @@ See also `x-set-selection'."
                                             xclip-program 'fixedcase)
                   nil standard-output nil
                   (if (memq type '(primary PRIMARY)) '("-p")))))
+        (`termux-clipboard-get
+         (call-process xclip-program nil standard-output nil))
         (method (error "Unknown `xclip-method': %S" method))))))

reply via email to

[Prev in Thread] Current Thread [Next in Thread]