A terminal-based client for the Gemini protocol.
a gemini client written in Python 3.
(UNIX-only, Windows support with WSL)
Instructions for use:
$ pip install leo-gmi
$ leo --copy-configto create a config file in
$XDG_CONFIG_HOME/leo(falls back to
- If you don't want to put the config file in either of those places,
leo --print-configprints out the config that you can then supply to leo with the
set options to your preferences in the
wrap_textspecifies whether to wrap text beyond a certain width.
wrap_marginspecifies what that width should be.
homepageis a page to load by default if no URL is specified.
cert_pathis the path to a certificate file.
Note: You can specify an alternate config file with the
$ leo --url <url>. If you do not specify a URL, the homepage set in
config.jsonis loaded. If no homepage is set, you will be prompted for a URL.
if you'd like to connect providing a client certificate (required by certain Gemini servers), set the
"cert_path"option in your config file to a valid path to a cert file.
Links are preceded by a number that is underlined and violet in colour. Type in the number of the link at the
(URL/Num):prompt in order to navigate to a specific link, or type in a URL.
reloadto refresh a page.
reload hardredownloads the page.
backtakes you one page back.
lslists all of the links on the current page, for easy navigation.
helpat any time to view a listing of these and other useful commands.
quitto exit leo.
- Only uses the python standard library
- Fully implements Gemini spec
- Passes torture tests at gemini://gemini.conman.org/test/torture/ (Save for the final few Unicode ones, but Unicode support is hard)
- formatted text output with arbitrary wrapping support
- Comes with a built-in pager!
- Lets you save a list of URLs to a file for further viewing / opening in another window
Fork the repo and make a PR! That's all :) You can alternatively send me an e-mail with your patch.
Release history Release notifications | RSS feed
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.