summary refs log tree commit diff
path: root/emacs/elisp/my-clipboard.el
blob: f0f3c01b0c10a31584c0a4328bbde36cfef4df02 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
;;; my-clipboard.el --- Functions related to clipboard
;;; Commentary:
;;; Code:

;; https://github.com/chongchonghe/emacs-dotfile/blob/f4f9ce5f586f224e2c83b118d471652d65d38e8c/packages/simpleclip.el
(defun my/clipboard-get-contents ()
  "Return the contents of the system clipboard as a string."
  (condition-case nil
      (cond
       ((fboundp 'ns-get-pasteboard)
        (ns-get-pasteboard))
       ((and (featurep 'mac)
             (fboundp 'gui-get-selection))
        (gui-get-selection 'CLIPBOARD 'NSStringPboardType))
       ((and (featurep 'mac)
             (fboundp 'x-get-selection))
        (x-get-selection 'CLIPBOARD 'NSStringPboardType))
       ((fboundp 'gui-get-selection)
        (gui-get-selection 'CLIPBOARD (or x-select-request-type 'UTF8_STRING)))
       (t
        (error "Clipboard support not available")))))

(provide 'my-clipboard)
;;; my-clipboard.el ends here