Skip to main content

Discord CLI client written in Python, based on urwid.

Project description

PyPI version

A CLI for discord, written in Python. The name is a combination of discord and curses, as in the terminal interface library. Discurses doesn’t use curses, but i originally planned to. It is now built using urwid, a widget library which can use curses as a rendering engine, but discurses works fine without it.

Questions, bug reports, PRs and comments are all very welcome.

I can be contacted at topisani@hamsterpoison.com Discurses chat view

Contributors list can be seen in the CONTRIBUTORS file. If you have contributed to the project and do not find your name, please let us know.

Installation

Linux

That one is pretty easy:

$ pip install discurses

Python 3.6 is required (as discord.py does not yet work with 3.7).

If you’re having trouble launching the application post-install, check your PATH variable.

$ echo $PATH

Pip installs by default into $HOME/.local/bin which is not typically part of your path. You can add it with the following command:

$ export PATH=$PATH:$HOME/.local/bin

Note: this is a temporary fix, you would need to add $HOME/.local/bin to your .profile or .bashrc to make it permanent, check your distributions documentation for PATH settings.

Windows

Start out by following this guide.

After that, follow the instructions for linux above

Seriously: urwid is sadly not supported on Windows, and since discurses is built on top of that, such an OS is not supported. You may use the official desktop client anyway.

Authentication

Put the file example_discurses.yaml in your ~/.config/ directory, replace the placeholder with your discord token and rename the file to discurses.yaml. You can get the token by visiting https://discordapp.com/channels/@me, opening the developer tools (Ctrl+shift+i or Command+shift+i) and click on the Application tab, then on the sidebar: Local Storage then click the URL from the dropdown and you should see the token key followed by your token, copy what’s inside the speech marks and put it in your .yaml file. This may not be easy using the Discord webapp as there is a mechanism in place to delete the token from storage once the page is loaded (occurs when the splash screen disappears).

Usage

Full list available in discurses/keymaps.py…

When your cursor is in the text box:

Key

Action

enter

send message

meta + enter

insert newline

down

show channel seclector

up

focus on the message list

esc

cancel message

General Commands:

Key

Action

meta + s

toggle server list

meta + b

toggle member list

meta + q

quit

Contributing

First of all, please do, and if you do, feel free to ask me any questions. Also, the issue reports are up for grabs, but id be very happy to be notified before you start work, just so we dont work on the same thing.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

discurses-0.3.5.tar.gz (116.5 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page