Skip to content

emacsmirror/signel

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

25 Commits
 
 
 
 
 
 

Repository files navigation

Sign.el

Sign.el is an Emacs interface for Signal. It communicates with a running signal-cli daemon via JSON-RPC to send and receive messages.

Features

  • Chat Buffers: Read-only history with a guarded input prompt.
  • Media Support: Renders inline images and attachments.
  • Animated Stickers: Automatically converts APNG and WebP stickers to GIF for playback in Emacs.
  • Dashboard: Overview of active conversations.
  • Notifications: Native desktop notifications on new messages.

Dependencies

  1. Emacs 27.1+
  2. signal-cli: Must be installed and available in your $PATH.
  3. ImageMagick (Optional): The convert command is required to render animated stickers.

Setup

Before running Sign.el, you must link or register your account using the command line.

Example (Linking a new device)

signal-cli link -n "emacs-client" | xargs -n 1 qrencode -t utf8

Installation

Clone the repository and add it to your load path.

use-package

(use-package signel
  :load-path "~/.emacs.d/site-lisp/signel" ;; Adjust path as needed
  :config
  ;; REQUIRED: Your registered phone number
  (setq signel-account "+15551234567")

  ;; Optional: If signal-cli is not in your $PATH
  ;; (setq signel-cli-program "/usr/local/bin/signal-cli")
)

Usage

  • Start the background process: M-x signel-start
  • Open the conversation list: M-x signel-dashboard
  • Open a specific chat directly: M-x signel-chat

Keybindings

In Chat Buffers

KeyCommandAction
RETsignel-send-inputSend message
C-c C-csignel-send-inputSend message
C-c C-asignel-attach-fileAttach file

In Dashboard

KeyCommandAction
RETsignel-dashboard-open-entryOpen selected chat
nforward-buttonNext chat
pbackward-buttonPrevious chat
gsignel-dashboard-refreshRefresh list

License

GPLv3

About

Signal client via signal-cli JSON-RPC

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages

  • Emacs Lisp 100.0%