-- Leo's gemini proxy

-- Connecting to skyjake.fi:1965...

-- Connected

-- Sending request

-- Meta line: 20 text/gemini;lang=en

Lagrange


Lagrange is a GUI client for browsing Geminispace. It offers modern conveniences familiar from web browsers, such as smooth scrolling, inline image viewing, multiple tabs, visual themes, Unicode fonts, bookmarks, history, and page outlines.


Like Gemini, Lagrange has been designed with minimalism in mind. It depends on a small number of essential libraries. It is written in C and uses SDL for hardware-accelerated graphics. OpenSSL is used for secure communications.


Screenshot (showing "skyjake.fi/lagrange/")


Features


Beautiful typography with full Unicode support

Autogenerated page style and Unicode icon for each Gemini domain

Smart suggestions when typing the URL — search bookmarks, history, identities

Sidebar for page outline, managing bookmarks and identities, and viewing history

Multiple tabs and split view

Identity management — create and use TLS client certificates

Audio playback: MP3, Ogg Vorbis, WAV

And more! Open `about:help` in the app, or see help.gmi


help.gmi (release branch)


Downloads


Prebuilt binaries are available for Windows 64-bit, macOS 10.13 or later, and Linux AppImage (x86_64 and armhf):

Releases for Windows, macOS, and Linux


OS-specific installation instructions


Mobile

iOS beta releases on TestFlight

Android beta releases (F-Droid repository)

Android beta APKs


Source

You can build from source on POSIX-compatible platforms:

Source code and resources (.tar.gz, 9.7 MB)


What's new?


News and announcements (@lagrange@skyjake.fi)

Git tags Gemini feed

Releases RSS feed


v1.17

Release announcement

Submenus: bookmarks and folders, page tools, split view, and user data.

Text snippets.

Additional search URL shortcuts.

Visual refresh: palette tuning, blank page placeholder, menu tweaks.

Working with bookmarks: importing with hierarchy and/or into a folder, adding/moving to folder via navbar bookmark indicator, "Fold All"/"Unfold All".

Resizable dialogs: input prompts, upload dialog, bookmark editor.

Improved text editor: syntax highlighting, text zooming.

Input prompt: always prompt for input before a request and restore previous entries via the Ellipsis menu.

Support for the Nex protocol.

Auto-scroll when selecting text on the page.

Configurable feed subscription refresh interval.

macOS: System UI accent color is available as an option.

Fixed various bugs and glitches.

(v1.17.1) Added "Vibrant Light", improved "Colorful Light". Tuned autoscrolling when selecting text. Improvements and fixes for preformatted blocks: don't adapt font size; mouse wheel scrolls horizontally; only scroll when needed; allow scrolling anywhere on the block; no swipe navigation on scrollable blocks; fixed streaking artifacts; potential crash when (un)folding a block. Other fixes: links not clickable after finding text; keep scroll position when reloading page; overly-tall upload dialog; "View as Plain Text" menu item out of sync with the page.

(v1.17.2) Added support for ANSI Cursor Forward sequence. Bug fixes: background tabs in history; mouse wheel over preformatted blocks; selection extending while scrolling; keeping numbered links mode activate when a link is opened; long bookmark titles in menu; ANSI sequence parsing; inline image load indicator.

(v1.17.3) Bug fixes: pinned bookmark identity via Bookmarks menu; initial scope of a created identity; dropdown menu issues; clearing pinned identity of a bookmark. TUI build was fixed.

(v1.17.4) Hold down Shift to scroll horizontally with mouse wheel. Bug fixes: event processing glitches; links inactive after navigating with Outline; input prompt font zooming; mouse cursor shape with multiple windows.

(v1.17.5) Bug fixes: memory leaks; unnecessary copying of data while fetching an audio file; Gopher `s` item media types; checking UTF-8 content for validity; conditions for applying 'text/gemini' based on file extension.

(v1.17.6) Bug fixes: memory leaks. Gopher: Autodetect text media type from file name.


Feedback


If you have questions, comments or improvement ideas, you can reach me via:

s/Lagrange

Bug reports and feature requests

GitHub issue tracker

Codeberg: PRs only

UI translations (Weblate)

@jk@skyjake.fi

Email (plain or encrypted)


Known issues


Flatpak

Flatpak applications run in a sandbox that limits their access to the rest of the system. At the moment, Lagrange has not been fully adapted to use Flatpak Portal APIs, so the following are known issues:


Unable to open HTTP/HTTPS links via the default browser.

Multiple instances of the application overwrite each other's data.


Wayland

The environment variable `SDL_VIDEODRIVER=wayland` can be used to force SDL to use Wayland instead of X11. However, SDL does not have full support for Wayland at the moment. You should set the Lagrange CMake build option ENABLE_POPUP_MENUS to NO. If there are issues with resizing windows, also set ENABLE_RESIZE_DRAW to NO.


Documentation and tutorials


How to compile (in README.md)

The repository README details the basic build steps, configuration options, and has a few platform-specific notes.


Alex Schroeder: Capsule update using Lagrange on the phone

A thorough walkthrough of how to upload text and files via Titan using the (beta) version of Lagrange on an iPhone.


See also


Gemlog posts about Lagrange

Font Library

Authors and contributors 🥇

Emoji test page

Home

-- Response ended

-- Page fetched on Mon May 6 12:36:52 2024