This mode allows to paste whole buffers or parts of buffers to pastebin-like services. It supports more than one service and will failover if one service fails. More services can easily be added over time and prefered services can easily be configured.
The lazy way (Using use-package)
This requires that you have use-package set up. But it’s in my opinion the 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)))
To select which providers to use in which order you need to set the variable
webpaste-provider-priority
which is a list of strings containing the
providers names.
Examples:
;; Choosing githup gist only
(setq webpaste-provider-priority '("gist.github.com"))
;; Choosing ptpb.pw as first provider and dpaste.de as second
(setq webpaste-provider-priority '("ptpb.pw" "dpaste.de"))
;; Choosing 1) ptpb.pw, 2) dpaste.de, 3) ix.io
(setq webpaste-provider-priority '("ptpb.pw" "dpaste.de" "ix.io"))
;; You can always append this list as much as you like, and which providers
;; that exists is documented below in the readme.
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))
:config
(progn
(setq webpaste-provider-priority '("ptpb.pw" "dpaste.de"))))
To enable a confirmation dialog to always pop up and require you to confirm
pasting before text is actually sent to a paste-provider you just need to set
the variable webpaste/paste-confirmation
to a value that is non-nil.
Example:
;; Require confirmation before doing paste
(setq webpaste/paste-confirmation t)
Can also be put in the :config
section of use-package
the same way as the
provider definitions above.
To enable opening of recently created pastes in an external browser, you can
enable the option webpaste/open-in-browser
by setting this value to a
non-nil value.
Example:
;; Open recently created pastes in an external browser
(setq webpaste/open-in-browser t)
Can also be put in the :config
section of use-package
the same way as the
provider definitions above.
- [X] ptpb.pw
- [X] ix.io
- [X] dpaste.com
- [X] sprunge.us
- [X] dpaste.de
- [X] gist.github.com
- [X] paste.pound-python.org
- [ ] paste.debian.net
- [ ] bpaste.net
- [ ] eval.in