descriptionA gopher and gemini client for GNU Emacs.
last changeWed, 12 Oct 2022 07:37:31 +0000 (09:37 +0200)

Elpher aims to provide a full-featured combination gopher and gemini
client for GNU Emacs.

It supports:
- intuitive keyboard and mouse-driven browsing,
- out-of-the-box compatibility with evil-mode,
- clickable web and gopher links **in plain text**,
- caching of visited sites,
- pleasant and configurable visualization of gopher directories and
  gemini pages,
- direct visualisation of image files,
- jumping directly to links by name (with autocompletion),
- a simple bookmark management system,
- gopher connections using TLS encryption,
- the Finger protocol.

The official home of elpher is gopher://
Please visit that page for development news and to leave feedback.

Elpher is under active development.
Any suggestions for improvements are welcome!


Elpher is available on the non-GNU ELPA package archive.  If you are
using Emacs 28 or later, this archive should be available on your system
by default.  For Emacs 27, you'll need to follow the instructions at to make the archive accessible.

Alternatively, Elpher is available from MELPA (  If
you have never installed packages from this repository before, you'll
need to follow the instructions at

Once one of these package archives is installed, enter the following to
install Elpher:

    M-x package-install RET elpher RET

To uninstall, use

    M-x package-delete RET elpher RET

Quick Start

Once installed, use "M-x elpher" to launch the browser.  This will
open a start page which documents the main key bindings and provides
some links to help kick start your exploration of gopher space and
gemini space.

From here you can move point between links (which may be menu items or
inline URLs in text files) by using TAB and Shift-TAB,
as in Info.  You can also jump directly to a menu item using "m", or
use the standard Emacs or Evil motion and search commands to find your
way around.  To open a link, press enter.  (Where a mouse is
available, Clicking on a link with the mouse cursor has the same

To return to the page you just followed the link from, press "u".

Elpher caches (for the duration of an Emacs session) both page
contents and the position of point on each of the pages (gopher menus,
gemini pages, query results, or text pages) you visit, restoring these
when you next visit the same page.  Thus, pressing "u" displays the
previous page in exactly the same state as when you left, meaning that
you can quickly and visually explore the different documents in a menu
without having to wait for anything to reload.

Of course, sometimes you'll _want_ to reload the current page
rather than stick with the cached version.  To do this use "R".
(This is particularly useful for search query results, where this
allows you to perform a different search.)

To customize the various faces Elpher uses, the start page
and a few other odds and ends, use the following:

    M-x customize-group RET elpher RET

Full Documentation

The full documentation for Elpher can be found in the Info manual,
which should become automatically available if you install Elpher
using "M-x package-install".  To access it, select it from the root
Info directory which can be displayed using "C-h i".


Elpher was originally written and is currently maintained by Tim Vaughan
<>.  Significant improvements and
maintenance have also been contributed by and with the help of Alex
Schroeder <>.  In addition, the following people have
all generously provided assistance and/or patches over the years:

* Jens Östlund <>
* F. Jason Park <>
* Christopher Brannon <>
* Omar Polo <>
* Noodles! <>
* Abhiseck Paira <>
* Zhiwei Chen <>
* condy0919 <>
* Alexis <>
* Étienne Deparis <>
* Simon Nicolussi <>
* Michel Alexandre Salim <>
* Koushk Roy <>
* Vee <>
* Simon South <>
* Daniel Semyonov <>
* Bradley Thornton <>


Elpher is free software and is distributed under the terms of version
3 the GNU General Public License, which can be found in the file named
2022-10-12 plugdOpened issue regarding client certificate scope. master
2022-08-09 plugdMake elpher-go-current respect default url scheme.
2022-08-09 plugdRemoved useless page creation.
2022-08-09 plugdAdded rx dependency to resolve flycheck warning.
2022-08-09 plugdFixed issue to do with current buffer changing during...
2022-08-07 plugdFixed a text/gemini parsing regression.
2022-07-15 plugdFixed an issue with parsing scheme://@host urls.
2022-07-15 plugdComment cleanup and version bump. v3.4.2
2022-07-11 plugdChanged default preformatted face to default.
2022-07-11 plugdReplaced custom preformatted text face.
2022-05-30 plugdRemoved last remaining url-port usage.
2022-05-03 plugdPatch release. v3.4.1
2022-05-02 plugdRemoved preformatted-specific face.
2022-05-02 plugdUpdated welcome page documentation to also mention...
2022-05-01 plugdDocumentation update for 3.4.0. v3.4.0
2022-05-01 plugdAdded option to hide preformatted text by default.
4 months ago v3.4.2
7 months ago v3.4.1
7 months ago v3.4.0
7 months ago v3.3.3
9 months ago v3.3.2
10 months ago v3.3.1
10 months ago v3.3.0
16 months ago v3.2.2
16 months ago v3.2.1
16 months ago v3.2.0
16 months ago v3.1.0
16 months ago v3.0.0
16 months ago v2.10.3
16 months ago history
17 months ago bookmarks
2 years ago v2.10.2
8 weeks ago master
7 months ago spartan
16 months ago patch_no-propertize-gemini-heading-newline
16 months ago patch_fill_paragraph
21 months ago patch_header_text_termina
2 years ago patch_multiple_buffers2
2 years ago bookmarks-history
2 years ago patch_multiple_buffers