A comprehensive Pushbullet client for GNU Emacs that allows you to send and manage pushes directly from your editor.
- Interactive UI: Browse and manage your pushes in a dedicated Emacs buffer
- Send Notes: Send text notes to Pushbullet with custom titles
- Region Pushing: Push selected text regions to your devices
- Clipboard Integration: Send clipboard contents to Pushbullet
- Pagination Support: Load multiple pages of pushes efficiently
- Export: Export Pushes to Org-Mode
(use-package pushbullet
:straight (:type git :host github :repo "sav/emacs-pushbullet"))(package! pushbullet :recipe (:host github :repo "sav/emacs-pushbullet"))- Clone this repository:
git clone https://github.com/sav/emacs-pushbullet.git - Add the following to your
~/.emacs.d/init.el:(add-to-list 'load-path "~/path/to/emacs-pushbullet") (require 'pushbullet)
- Get your Pushbullet API token:
- Go to https://www.pushbullet.com/#settings/account
- Copy your “Access Token”
- Configure the token in Emacs:
(setq pushbullet-api-token "your-api-token-here")
Or use
M-x customize-variable RET pushbullet-api-token - Alternatively, just add an entry for `pushbullet.com` (lower-case) in your `.authinfo.gpg`:
machine pushbullet.com password "your-api-token-here"
;; Number of pushes to fetch per request
(setq pushbullet-api-limit 50)
;; Default title for pushes
(setq pushbullet-default-title "My Emacs")
;; Maximum columns for text wrapping
(setq pushbullet-columns 100)
;; Enable debug logging (default: nil)
(setq pushbullet-debug t
pushbullet-api-debug t)| Command | Description |
|---|---|
M-x pushbullet | Opens or switches to the main Pushbullet UI buffer. |
M-x pushbullet-send | Prompts for a title and text to send a new note push. |
M-x pushbullet-send-text | Prompts for text to send a new note push, using a default title. |
M-x pushbullet-region | Sends the active region’s content as a note push. |
M-x pushbullet-yank | Sends the latest kill-ring entry (clipboard content) as a note push. |
M-x pushbullet-export | Exports currently fetched pushes to an Org-mode buffer. |
| Key | Function |
|---|---|
C-c C-u | Fetch more pushes. |
C-c C-e | Export pushes to Org-mode. |
C-c C-o | Open a URL at the current cursor position. |
q | Close the Pushbullet buffer. |
(pushbullet) ; Opens the main Pushbullet buffer(pushbullet-send "Meeting Reminder" "Don't forget the team meeting at 3 PM")- Select a region in any buffer
- Run
M-x pushbullet-region - The selected text will be sent with the buffer name as the title
(pushbullet-yank) ; Sends current kill-ring contentsYour Pushbullet API access token (required).
Number of pushes to fetch per request (default: 20).
Default title for pushes (default: "GNU Emacs <version>").
Maximum columns for text wrapping (default: 70).
Whether to display the send form in the Pushbullet UI (default: t).
Enable debug logging (default: nil).
Enable debug logging for the API requests (default: nil).
Open the Pushbullet application buffer.
Send a note to Pushbullet using the given title, message body, and, optionally, a URL.
Send a note with the default title and specified text.
Push the selected region to Pushbullet. The buffer name is used as the title.
Push the current kill-ring (clipboard) contents to Pushbullet.
Export the list of Pushes to Org-Mode.
This package requires the following packages:
emacs(>= 29.1)all-the-icons(>= 5.0.0)request(>= 0.3.3)json(>= 1.5)auth-source(>= 2.3.1)
This project is licensed under the GNU General Public License v3.0 - see the LICENSE file for details.
Current version: 1.0.1
- New UI with new features and a form for submitting pushes
- Deletion of a single push or all pushes at once
- Export pushes to Org-Mode
- Show image and files URLs
- Initial release
- Basic push sending functionality
- Interactive Buffer
- Region and clipboard integration
- Pagination support