Siggo: A terminal GUI for signal-CLI, written in Go

栏目: IT技术 · 发布时间: 5年前

内容简介:A terminal gui for signal-cli, written in Go.

siggo

A terminal gui for signal-cli, written in Go.

Siggo: A terminal GUI for signal-CLI, written in Go

Dependencies

siggo uses the dbus daemon feature of signal-cli, so libunixsocket-java (Debian) or libmatthew-unix-java (AUR) is required.

Install signal-cli and put it somewhere safe in your path. You will need to follow its instructions to either link or register your device. The siggo link <phonenumber> subcommand has been added to make linking more user-friendly, but has not been tested sufficiently. Be sure to prefix with + and country code (for example +12345678901 ).

When setup is finished, you should be able to run without error:

signal-cli -u +<yourphonenumber> receive --json

You are now ready to use siggo .

Security

siggo shells out to signal-cli , so if that worries you, don't use it, for now. I have lofty goals of eventually replacing this with libsignal .

Build

make build

Run

bin/siggo

Keybinds

  • j - Scroll Down
  • k - Scroll Up
  • J - Next Contact
  • K - Previous Contact
  • i - Insert Mode
    • CTRL+L - Clear input field
  • I - Compose (opens $EDITOR and lets you make a fancy message)
  • y - Yank Mode
    yy
    yl
    
  • o - Open Mode
    oo
    ol
    
  • ESC - Normal Mode
  • CTRL+Q - Quit ( CTRL+C should also work)

Configuration

See the configuration README here .

Message History

Message saving is an opt-in feature.

If you enable it, conversations are stored in plain text in ~/.siggo/conversations .

Delete them like this:

rm ~/.siggo/conversations/*

Development

Honestly the code is a hot mess right now, and I don't recommend trying to contribute yet. But I will absolutely take a PR if you want to throw one at me.

If you save the output of signal-cli like so:

signal-cli -u +<yourphonenumber> receive --json > example_messages.json

You can then run siggo using it as mock input. This is useful for development and testing.

bin/siggo -m example_messages.json

This way you can test without sending yourself messages.

Similar Projects / Inspiration

Roadmap

Here is a list of things that are currently broken.

  • Send read receipts for incoming messages ( signal-cli limitation, but might be fixed soon)

Here is a list of features I'd like to add soonish.

  • Better Attachments Support
    • Sending attachments
    • Opening attachments (besides the most recent)
  • gui configuration
    • colors and border styles
  • let user re-sort contact list (for example alphabetically)
  • command to go to next contact with message waiting
  • command to go to contact with fuzzy matching
  • groups support
  • use dbus to send instead of signal-cli, to avoid having to spin up the JVM (might also fix the read receipt issue)
  • there is still some data that i'm dropping on the floor
  • wouldn't tests be neat?

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

程序的法理

程序的法理

孙笑侠 / 商务印书馆 / 2005-11 / 21.00元

《程序的法理》基于法律形式化的理念而展开,着眼于程序的法理分析,力图从中国法治的本土特点出发,发掘程序法理论在中国语境下对应的实际问题,是一部学术价值较高的法学著作。一起来看看 《程序的法理》 这本书的介绍吧!

HTML 压缩/解压工具
HTML 压缩/解压工具

在线压缩/解压 HTML 代码

在线进制转换器
在线进制转换器

各进制数互转换器

RGB CMYK 转换工具
RGB CMYK 转换工具

RGB CMYK 互转工具