💾 Archived View for gemi.dev › gemini-mailing-list › 000910.gmi captured on 2024-08-19 at 02:32:20. Gemini links have been rewritten to link to archived content

View Raw

More Information

⬅️ Previous capture (2023-12-28)

-=-=-=-=-=-=-

[ANN] [tech] Romulus Gemini Client

1. Luke Emmet (luke (a) marmaladefoo.com)

Hello everyone

I've been working on a new console Gemini client - Romulus. It's cross 
platform, written in C#.

Its new, so there may be some rough edges. But already its quite 
full-featured, particularly from a user interface perspective.

Key features include:


   layout to indicate the page elements and structure. A quiet UI to save your eyes.


For further details, screenshots and downloads, see

  gemini://gemini.marmaladefoo.com/romulus/

  https://github.com/LukeEmmet/Romulus

For now I have a precompiled binary for windows, but it should compile for 
other platforms. If anyone can assist with how to cross-compile the C# for 
other platforms, please let me know. This is an area I am still finding my way in.

  https://www.marmaladefoo.com/pages/romulus

If you manage to compile it or try it out, any feedback would be appreciated.

 - Luke

Link to individual message.

2. Frank Jüdes (Frank.Juedes (a) linux4specialists.com)

Hi Luke,

a very nice program and easy to install on Windows. I have been feared in 
the past by our developers for discovering even the weirdest issues in 
their programs… I have tested your program - on Windows - against my 
server, so here's a list for you: 😜

 * It does not display *all* characters, defined in Unicode version 13.
   - That is very likely nothing you can fix before Micro$oft gets its
   act together and fixes the issues with the terminal-window object!
 * If there are a lot of headers in the document, the /structure/
   display overflows and only the top headers will be displayed:
   gemini://h2903872.stratoserver.net/cgi-bin/man2gmi/-k%20str
 * Something doesn't work right when you paste a Gemini-URL out of
   another browser into the input-box of Romulus, it either reported
   that i was unable to connect or crashed:
 * The time-out of five seconds prevents some of the CGI programs on my
   server from being used with Romulus:
   gemini://h2903872.stratoserver.net/cgi-bin/figlet/Romulus - will
   sometimes work, when the big, fat Database on that machine isn't
   allocating all resources to itself, but usually if fails with a
   time-out. It would be nice to be able to configure the timeout.

That's it! - I'm trying to make it run in Linux and will test there.

Best regards from Charleston (WV),
     Frank/2


On 2021-05-19 18:03, Luke Emmet wrote:
> Hello everyone
> 
> I've been working on a new console Gemini client - Romulus. It's cross 
platform, written in C#.
> 
> Its new, so there may be some rough edges. But already its quite 
full-featured, particularly from a user interface perspective.
> 
> Key features include:
> 
> * Interactive menus
> * Mouse support, including wheelmouse scrolling for consoles that support it
> * Monochrome yet beautiful gemtext rendering, by using whitespace and
>    layout to indicate the page elements and structure. A quiet UI to save your eyes.
> * Fixes vertical spacing between elements for a global homogenous gemtext style
> * Pretty text rendering, including hanging bullets, nice quotations and the like
> * Interactive table of contents for each page
> * Fast history navigation, including remembering page offset
> * Bookmark support
> 
> For further details, screenshots and downloads, see
> 
> gemini://gemini.marmaladefoo.com/romulus/
> 
> https://github.com/LukeEmmet/Romulus
> 
> For now I have a precompiled binary for windows, but it should compile 
for other platforms. If anyone can assist with how to cross-compile the C# 
for other platforms, please let me know. This is an area I am still finding my way in.
> 
> https://www.marmaladefoo.com/pages/romulus
> 
> If you manage to compile it or try it out, any feedback would be appreciated.
> 
>  - Luke
> 
-- ------------------------------------------------------------------------
My Gemini capsule orbits at gemini://h2903872.stratoserver.net/cgi-bin/figlet/Romulus
------------------------------------------------------------------------

Link to individual message.

3. Michael Mientus (michael.mientus (a) gmail.com)

> If anyone can assist with how to cross-compile the
> C# for other platforms, please let me know. This is an area I am still
> finding my way in.

I have no experience. But I would start by searching the Mono docs for clues.

=> https://www.mono-project.com/docs/getting-started/application-portabilit
y/    Application Portability | Mono

-- Mike

Link to individual message.

4. Luke Emmet (luke (a) marmaladefoo.com)

Hi Frank

Thanks for the feedback.

On 20-May-2021 06:13, Frank Jüdes wrote:

> a very nice program and easy to install on Windows. I have been feared 
in the past by our developers for discovering even the weirdest issues in 
their programs… I have tested your program - on Windows - against my 
server, so here's a list for you: 😜
> 
>   * It does not display *all* characters, defined in Unicode version 13.
>     - That is very likely nothing you can fix before Micro$oft gets its
>     act together and fixes the issues with the terminal-window object!

Yes Windows Terminal is getting better, but it's not perfect yet. I found 
this checklist about getting the best display of unicode which helps a 
bit. Certainly you need to use the new Terminal, not just the default Windows shell.

https://akr.am/blog/posts/using-utf-8-in-the-windows-terminal

>   * If there are a lot of headers in the document, the /structure/
>     display overflows and only the top headers will be displayed:
>     gemini://h2903872.stratoserver.net/cgi-bin/man2gmi/-k%20str

Yes, that's a known limitation for now, although most Gemini pages have 
less than 10-20 headings which works fine. I might add a scrolling list 
for such situations, but my thinking for now is that generally having them 
directly in a menu makes for rapid interaction.

I think Romulus is the first console application to show the document 
structure, but I'm happy to be corrected if not.

>   * Something doesn't work right when you paste a Gemini-URL out of
>     another browser into the input-box of Romulus, it either reported
>     that i was unable to connect or crashed:

Yes, it expects a full URL, so if the "gemini://" scheme is missing it did 
not default to it.
This is now fixed in an upcoming commit.

>   * The time-out of five seconds prevents some of the CGI programs on my
>     server from being used with Romulus:
>     gemini://h2903872.stratoserver.net/cgi-bin/figlet/Romulus - will
>     sometimes work, when the big, fat Database on that machine isn't
>     allocating all resources to itself, but usually if fails with a
>     time-out. It would be nice to be able to configure the timeout.

Its a possible enhancement, certainly the underlying library SmolNetSharp 
allows this as a parameter on the request itself.

I've created some issues on the repo to cover the above items.

> That's it! - I'm trying to make it run in Linux and will test there.

Thanks - I'd be interested to hear how you get on

 - Luke

Link to individual message.

---

Previous Thread: Re: Gemini Digest, Vol 22, Issue 18

Next Thread: Status update for MoonGem - Gemini server with inline Lua scripting