Skip to content

webpaste.el can paste whole buffers or parts of buffers to several pastebin-like services and supports failover if one service fails.

License

Notifications You must be signed in to change notification settings

dickmao/webpaste.el

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Webpaste.el – Paste text to pastebin-like services

https://img.shields.io/badge/license-GPL_3-green.svg https://melpa.org/packages/webpaste-badge.svg https://stable.melpa.org/packages/webpaste-badge.svg https://travis-ci.org/etu/webpaste.el.svg?branch=master https://coveralls.io/repos/github/etu/webpaste.el/badge.svg?branch=master

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.

Installation

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)))

Configuration

Choosing providers / provider priority

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"))))

Confirm pasting with a yes/no confirmation before pasting

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.

Open recently created pastes in browser

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.

Providers to implement [7/10]

  • [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

About

webpaste.el can paste whole buffers or parts of buffers to several pastebin-like services and supports failover if one service fails.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Emacs Lisp 98.3%
  • Makefile 1.1%
  • Nix 0.6%