[Tue Oct 29 22:26:31 2024] gemini://bbs.geminispace.org and station seem to work since the new update. Good work. Thanks a lot! [Tue Oct 22 17:21:44 2024] v- That's interesting to hear that you can't specify elpher-certificate-map via customize. A list of 2-element lists is a perfectly valid alist according to the manual. I'll look into this. [plugd] [Fri Oct 18 09:23:08 2024] Refreshing (R) should do it, otherwise I have no idea. I have crt and key files in ~/.config/emacs/elpher-certificates directory (plus setq) and that’s about it. [Thu Oct 17 17:25:11 2024] v- Doesn't work for me. I set the elpher-certificate-map list according to the docs but it doesn't work with bbs.geminispace.org. Is there some cache I need to clean first or something? [Wed Oct 16 21:49:54 2024] *Or something to that effect… I’m unsure of names, as I’m relatively new to Emacs. [Wed Oct 16 21:48:13 2024] Certificates do work, but you have to do (setq elpher-certificate-map '(("gemini://bbs.geminispace.org/" "user-name"))) manually. It does not work through customization interface as the option’s format description appears to be wrong - it expects an alist, while actually elpher needs a two-elements list. [Thu Oct 10 11:28:41 2024] v- When I have the time and inclination, yes. [plugd] [Wed Oct 9 20:06:30 2024] gemini://bbs.geminispace.org/ and gemini://station.martinrue.com/ still don't work with client certificates. Is this going to be fixed? [Fri Oct 4 13:06:26 2024] ? [Mon Aug 12 13:32:33 2024] v- While I agree this would be nice, it's imposible to know what content is static vs dynamically generated. I think an option to disable caching (discussed below) is a more appropriate answer to this. [plugd] [Sun Aug 11 02:18:52 2024] It would be useful to automatically reload when following links for dynamically generated sites since they'll have new content with each visit. [Sat Aug 3 14:32:55 2024] v- Currently not: you need to use M-x elpher-reload (by default bound to R) to force a reload in this case. Somebody else asked about this recently so I might have another look at this to see if there's an easy way to make this an option. [plugd] [Fri Jul 26 05:31:17 2024] Is there a way to have Elpher always re-load when following a link on a page, even if I have already visited it before? [Tue Jul 2 10:19:26 2024] Thanks: flycheck failed to flag this as a 29.1-only function. Fixed in 3.6.2. [plugd] [Sat Jun 29 16:57:36 2024] The versions of elpher on MELPA and nonfree both contain three instances a void function 'keymap-set' around line 710 which should be replaced with define-key. [Sun Jun 16 02:03:23 2024] v- I've just issued a patch release with the default start page gemini search engine set to aura. [plugd] [Wed Jun 12 22:22:18 2024] v- Thanks for letting me know. Is there any indication this is a permanent outage? Do you have suggestions for alternative search tools? Remember also that you can completely configure your start page however you like by setting the elpher-start-page customisation variable to a local gemtext file. [plugd] [Mon Jun 10 11:15:14 2024] the gemini search engine geminispace.info is down, please include another one on the start page [Tue May 28 09:50:56 2024] v- Thanks for the suggestion! I'll look into including some suggestions in the next release of the manual. [Sun May 12 14:12:59 2024] Elpher is fantastic, what makes it better is using Symbola font, so you don't just see the unicode box with the hex values. It might be worth giving a mention to install that font for a more "richer" experiance. [Fri May 10 10:59:08 2024] v- Following on from this: I did look into modifying the caching logic in the way you describe, but it turns out not to be a simple change and I don't currently have the time/inclination to make big changes to the organisation of the code. If lots of other people also want this feature I might reconsider. Sorry! [plugd] [Sun Mar 24 14:24:08 2024] v- Thanks for the kind words! And yes this would be possible to set up, but would require some modification of the caching logic. I'll try to look into this next weekend. [plugd] [Sun Mar 24 14:22:49 2024] v- Mattof: I've just released a new version (3.6) which adds shift-enter and shift-click commands to open links in a new buffer. [plugd] [Wed Mar 20 00:02:09 2024] Thank you for making my favorite Gemini/Gopher browser! Is is possible to configure Elpher so that when a link is followed, it always loads the page from the host and does not call up what's in the cache if the page has been visited before. I like the cache to be used when going "back" through history, but when I click on a link, I want a fresh copy. [Tue Mar 12 11:36:00 2024] v- Hi Matt, good idea! It's not possible "out of the box", but it should be easy to add. I'll look into this. [plugd] [Sat Mar 9 10:24:58 2024] Is it possible to open een gopher-link in *a new window* - like shift-enter in eww? [mattof] [Wed Mar 6 03:52:09 2024] How wonderful! Gopher brings so many cute memories. And now I have it in Emacs. Feels so so good. [Wed Mar 6 03:50:46 2024] huh? [Thu Feb 15 17:01:56 2024] v- Great to hear! [plugd] [Thu Feb 15 10:38:17 2024] Looks like the issue with relative URLs is indeed fixed. Thank you! [Wed Feb 14 10:54:52 2024] v- I've just released a patch (3.5.1) which should address this issue. Let me know how you go. [plugd] [Wed Feb 14 09:58:14 2024] v- Thanks for letting me know. I'll look into this. [Mon Feb 12 10:33:29 2024] bbs.geminispace.org uses relative links that look like this: ?number (e.g. ?47, ?48, ?49...) to change a user's "avatar" (emoji symbol). This happens on pages whose absolute URL is gemini://bbs.geminispace.org/settings/avatar/letters-numbers-here, but letters-numbers-here part is ignored by elpher when relative URLs are resolved. I.e. instead of gemini://bbs.geminispace.org/settings/avatar/letters-numbers-here?avatar-id it becomes gemini://bbs.geminispace.org/settings/avatar/?avatar-id [Wed Dec 6 17:42:15 2023] v- Sorry, I'm a bit thick. Documentation for what exactly? Elpher? There's an info manual which comes bundled with the package. [plugd] [Mon Dec 4 10:31:09 2023] I think that "add proxy" means that there is no documentation how it works. I can't find. [Tue Aug 15 09:35:20 2023] v- Hi, thanks! What do you mean by "add proxy" though? [plugd] [Thu Aug 10 18:24:45 2023] works super good, pls add proxy [Tue Jun 20 09:48:05 2023] v- Regarding the broken client certificate behaviour with Station; yes, I'm aware of this problem and a fix is on the way. Thanks for your patience! [plugd] [Tue Jun 20 09:46:26 2023] v- Regarding outlines, Elpher is compatible with Imenu so with Helm, for instance, you can get an outline of a gemini document using C-x c i, and M-x imenu brings up a minibuffer menu to jump to the different headings. [plugd] [Fri Jun 9 07:39:18 2023] Hi. Just wanted to let you know that since the "certificate map" update logging into Station is completely impossible for me. If I specify a value in the certificate map, I get a "Wrong type argument: characterp, \," error when trying to login. If not, I'm presented with the usual prompt to choose a client cert, but I'm still not logged in afterwards. [Thu Jun 8 20:42:52 2023] I like Elpher but was wondering if it would be possible to add a function to view an outline of a gemini page's structure (based on the header lines), like Lagrange does. I can get this by fetching the raw page and using an occur regex, but then if I switch back to the nice formatted view, the occur buffer entries are no longer jump-able. [Fri May 19 14:07:38 2023] v- Thanks for the encouragement! In fact the default start page (about:welcome) already does link to two search engines - one each for gopher and gemini. If you'd like to customize this, the manual describes how to set a custom start page. This can be any elpher-compatible URL, including a file: URL. (My personal preference is to create a local text/gemini document containing useful links - favourite search engines, links to the bookmark page, etc, then set this as the start page.) [Wed May 17 13:00:34 2023] Thank you for writting Elpher! It would be great to have the start page show a search engine. [Fri May 12 15:54:16 2023] v- Oops! It seems Station never actually requests a certificate via a 6x response except on the login page: all of the functionality is in the parent addresses. The new cert system in elpher is more restrictive in where the certificate gets applied, so the certificate being activated for gemini://station.martinrue.com/login means it remains inactive for gemini://station.martinrue.com/. Clearly my assumptions about how client certificates were being used were wrong - sorry! I'll get onto this and issue a patch as soon as I can. (This weekend.) [Thu May 11 17:10:16 2023] Now, another weird thing is happening. On Station, when I select the "join" link, elpher shows the "using certificate..." message, but then the capsule won't load saying "Wrong type argument: characterp, \,". When I set the elpher-certificate-map variable to nil, this won't happen, but then I can't log in at all, even by manually choosing my certificate. [Thu May 11 17:04:38 2023] On a second try, yes, astrobotany does seem to be already logged in without me doing anything. Not sure what I was doing before! Station however is still logged out when you go to the home page, unless you select the "join" link. As to searching links using "m" it's already my very favorite elpher feature. It's the main reason I can't use anything else really. It feels so good to have my familiar emacs fuzzy search available to me anytime I want. [Thu May 11 10:04:05 2023] v- regarding the other question about links extending to the start of the screen, yes I can see this is slightly annoying. I'll see what I can do. In the meantime, if you use "m" and the tab/shift-tab to navigate the menus the cursor should wind up in the right place. [plugd] [Thu May 11 10:02:07 2023] v- Elpher won't supply the certificate until the server explicitly requests via response code 6, just to avoid making identifiable connections unless actually necessary. This should happen automatically though. For astrobotany, using the map in the message below allows me to directly visit app/plant, /app/pond, /app/message-board without having to explicitly log in. If I want to go to the actual astrobotany menu, I use the /app url. In none of these do I need to do anything special to log in, although the first time I follow any of these links elpher will need to handle the 6 response (so there's a tiny bit of extra screen flicker). Does this help? Maybe I'm not understanding your question. [plugd] [Thu May 11 08:17:20 2023] So I tried the new version. I think the way it works is that whenever the website requests a certificate, it checks to see if there is a pre-determined one in the map. This does make things slightly faster. However, I was thinking, is there a way to _always_ use the given certificates for matching prefixes? I think this is how Lagrange handles this, because when I go to Station or Astrobotany with Lagrange, I'm always already logged in. But with Elpher, I still have to click on the login link (and Astrobotany somehow makes you do the login dance every single time!). [Wed May 10 15:58:52 2023] Just saw the latest update. Awesome. I'm gonna give it a go when I get home from work. Meanwhile, I have another small bit of feedback. Currently, on gemini links, when the cursor is in the first three columns, or at the very end of the line, pressing enter won't work. It would be great if we could press enter anywhere in the line in order to open a link. Not a big issue, it's just a tiny little bit of pain! :) [Fri May 5 10:31:25 2023] v- It took a bit longer than promised, but I've added a new customization variable, elpher-certificate-map, which allows you to specify mappings between URL prefixes and installed client certificates. For example, adding (setq elpher-certificate-map '(("gemini://astrobotany.mozz.us/app" "astrobotany"))) to your configuration will cause the certificate named "astrobotany" to be used for all gemini URLs starting with gemini://astrobotany.mozz.us/app. I think this solves your problem. The update is in elpher 3.5.0 (just released), see the info manual for details. [plugd] [Thu Apr 20 10:15:30 2023] v- Good idea! I've wondered this myself occasionally, although it's never annoyed me enough to do anything about it. (Astrobotany is the only place I use client certificates, although I'm aware other sites like Station use them also.) It should be very easy to add a customizable variable containing an alist of url->certificate mappings. I'll have a look at this on the weekend. [plugd] [Wed Apr 19 19:50:49 2023] I've been using elpher for a month or two, and been really enjoying it. Thanks! One thing I want to ask it, is there a way to tell elpher to always use a certain client certificate for some capsules? It's a little painful to constantly have to refresh to make elpher ask me to choose a certificate, and then repeat that in like five minutes. I took quick look at the source code and the manual, but couldn't find anything. [Thu Mar 23 13:56:44 2023] v- The behaviour of C-g when cancelling gemini input has been modified to solve this problem in the latest release. [plugd] [Thu Mar 16 10:48:37 2023] v- thanks! Good point re the C-g thing in gemini input. I've become so used to that behaviour that I've stopped seeing it as a bug - but you're absolutely right, it's a bit messy! I'll look into it. [plugd] [Sun Mar 12 02:12:15 2023] Thanks for elpher, I really enjoy using it. I haven't encountered any problems so far except for C-g canceling input in Gemini protocol. I'll always get "error in process sentinel" which I suppose is not intentional. [Mon Nov 14 10:24:23 2022] v- Hi, glad to hear you're enjoying it! Regarding ANSI, do you have the xterm-color package installed as described in chapter 12 of the elpher manual? The default support provided by ansi-color (part of emacs) isn't that great, but xterm-color lets me see ansi colour in preformatted gemini blocks and text files. [plugd] [Mon Nov 14 05:54:15 2022] Hi! I've been using elpher for gemini for a while now. Love it, thank you. :) I've just noticed that ANSI escape sequences aren't being properly interpreted in preformatted blocks in gemtext. They're stripped out, but not displayed. I was hoping to colourise my ascii art. :) [Wed Sep 21 13:54:21 2022] Great to hear, JDP! [plugd] [Tue Sep 20 08:48:56 2022] Thank You for elpher, it is great to browse gopher and gemini sites while in my favourite editor interface to the LSIP machine. Very cool. - JDP [Fri Sep 9 18:24:10 2022] didje: great that it's working! For the feedback code, a basic example is in the examples/ directory of the scratchy repository. You can see the actual code used for my gopherhole here: gopher://thelambdalab.xyz/0/projects/elpher/submit-feedback.scm and gopher://thelambdalab.xyz/0/projects/elpher/view-feedback.scm. [plugd] [Fri Sep 9 16:45:27 2022] thanks for the idea plugd, i tested with a generated one and it helps me understand that i don't have the right format certificate. finally the one generated for amfora is exactely the same i must use for elpher. so i copy the amfora one to the elpher directory, and now it works with it. thanks again for your help ! another question : have you released somewhere the code you use for dealing the submit feedback you use here ? [didje] [Fri Sep 9 13:43:30 2022] Regarding "scratchy", it's not an egg, it's just one of my projects: gopher://thelambdalab.xyz/1/projects/scratchy/ [plugd] [Fri Sep 9 13:40:48 2022] didje: "Connection timed out" messages indicate that emacs is experiencing network connectivity problems, rather than certificate issues. Have you tried generating a new certificate in elpher to see whether you get the same error? [plugd] [Thu Sep 8 20:47:14 2022] this question isn't about elpher, my certificates are correct but I don't find information about scratchy software ( I think is a egg of chicken) [Thu Sep 8 18:24:32 2022] and for information, i have the same problem with astrobotany site :( [didje] [Thu Sep 8 18:20:22 2022] thanks plugd, my certificate is used now, but when i try to join station.martinrue.com for example, i have this error : Connection timed out. Retrying with IPv4. do you see why ? [didje] [Thu Sep 8 10:05:58 2022] v- to install a certificate manually, you'll need to ensure that both the crt and key files have the same prefix (eg astrobotany.key and astrobotany.crt) before copying them to your ~/.emacs.d/elpher-certificates/ directory. You can also add the certificate automatically in elpher, as described in section 8.1 of the manual. Good luck! [plugd] [Wed Sep 7 11:52:53 2022] hello, i have with amfora a certificate and a key configured in pem format. i have transformed the pem certificate to crt certificate and put it in directory ~/.emacs.d/elpher. and when i go to a gemini site which use the certificate, elpher can't find a certifitate when i try autocomplete. did i forgot something ? [Tue Aug 30 11:53:48 2022] Thanks for the reply! I shall have checked the documentation for elpher before asking. And thanks for this great package. :D [Tue Aug 30 09:49:04 2022] v- it's technically possible (C-u M-x elpher will open a new elpher buffer) but there's no corresponding elpher-go that does this. It's possible this will improve in future. [plugd] [Mon Aug 29 15:37:54 2022] Is it possible to open an Elpher link in a new buffer? [Tue Aug 16 09:45:15 2022] v- here's the project page: gopher://thelambdalab.xyz/1/projects/scratchy/ [plugd] [Tue Aug 16 00:10:26 2022] where can I find Scratchy 1.4.1? [Wed Aug 10 00:12:47 2022] Re Spartan. I understand you. And thanks for you good work! [Mon Aug 1 06:32:40 2022] v- Thanks! Re spartan: there's a branch in the repository where I've added basic support, but I didn't like the way it complicated the code due to spartan's text/almost-gemini markup format, so I didn't merge it. I might reconsider if spartan becomes more popular. [plugd] [Fri Jul 29 04:02:06 2022] I use elpher on Emacs and I love it. Do you think to support Spartan protocol? [Fri May 27 13:45:41 2022] Lovely mode! [Mon May 9 15:05:38 2022] v- Yikes, thanks for letting me know!! I've renewed the certificate. (I really should figure out why my certbot cron job is failing one of these days!) [plugd] [Mon May 9 14:05:03 2022] Hey, i'm using doom emacs and my update fails because the certificate for thelambdalab.xyz expired yesterday ;) [Mon May 9 10:42:31 2022] v- No, the "type" of a page is defined by the link you followed to get to it. If you want to modify the type, you need to go to a page with a different URL using, for example, 'o'. [plugd] [Sat May 7 08:59:46 2022] Is there a navigational function to go the parent that switches back to type 1? [Mon Apr 18 20:48:14 2022] What do you mean precisely by org-mode support? It's already possible to open gopher/gemini/finger links from org documents. Perhaps you mean rendering of org documents from elpher? If so, this is potentially possible, provided the documents are given the appropriate mime type. (Elpher will never attempt to auto-detect document types.) [plugd] [Sat Apr 16 16:30:22 2022] Is org-mode support possible in Elpher? [Fri Apr 15 19:02:40 2022] v- I agree the default keybindings are ... opinionated. While I obviously like them, they're not going to be right for everybody. Luckily rebinding keys in emacs is not only possible, but encouraged! You should be able to add a hook to elpher-mode to set things up precisely how you like. (Related: at some point I'd like to have the default start page display _current_ bindings, not just the defaults, to better support custom bindings.) [plugd] [Mon Apr 11 15:07:15 2022] I love it, but maybe I like common emacs keybind, example: g to reload, l to back, etc [Mon Apr 11 15:02:39 2022] hi [Mon Apr 11 10:16:27 2022] Following up on the previous comment, this issue is addressed in the master branch, and the fix will be in the next release. Thanks again for letting me know. [plugd] [Thu Mar 24 10:36:10 2022] Thanks for letting me know about the indentation issue. This will definitely be text/gemini-specific - elpher doesn't apply any auto-fill to gopher directories or other text/plain documents. The text/gemini behaviour is related to how the default emacs auto-fill works. I'll look into it. [plugd] [Sun Mar 20 18:06:57 2022] Admittedly, this is a small complaint, but elpher has problems with indentations in paragraphs in gemini (haven't tested with gopher). It is supposed to stop indenting after the first line break, but doesn't do so, instead keeping the indentation for the whole paragraph. I uploaded a picture showing on the top the expected result and on the bottom what elpher shows. https://ttm.sh/if_.png [Thu Mar 3 09:59:20 2022] Thanks for the encouragement everyone! Re emacs 26.x support: there have been a lot of API improvements since 27.1, which was released 2 years ago. Avoiding these makes for harder maitenance - sorry! Re port 7070 for gopher over TLS: is this a standard? I've never come across it in the wild, but perhaps I've been living under a rock? Happy to add this if it's common. [plugd] [Sun Feb 27 11:33:57 2022] Hey, awesome project! What about setting 7070 as the default port for TLS gopherholes (or providing a var)? [Sat Feb 26 05:23:17 2022] Glad that gopher is working inside emacs. Unfortunately, elpher cannot be installed on emacs 26.x (Ubuntu 20.04 package). Would be nice to bring down version requirement so elpher can be installed on Ubuntu 20.04 [Sat Feb 19 17:58:22 2022] I want to say what a pleasure it's been to use Elpher. My first impression of Gopher was that it was too clunky to browse. Elpher completely changed my mind. Now it's a joy. Thank you for providing a wonderful client! [Wed Feb 9 01:18:01 2022] Hi plugd, thanks for the swift reply! I've just installed the new version and it now works wonderfully! Thanks again! [Tue Feb 8 18:18:55 2022] Hi rtr, thanks - glad you like it! And thanks for letting me know about the ipv6 address issue. I'm just using emacs' built-in URL parser, but weirdly it doesn't handle this properly on its own. I've just committed a patch to work around this, and pushed a new version (3.3.2). Let me know if it still doesn't work. [plugd] [Sun Feb 6 01:00:53 2022] Hi plugd, thank you for creating and maintaining Elpher! Thanks to this I've been perusing the small internet more and more. I have one issue though, I've been getting into yggdrasil lately and that protocol uses IPv6 for its stuff. It seems that the browser doesn't handle the standard [aaaa: ... :ffff] IPv6 address format properly. However, if you insert the address without any square brackets elpher seems to handle it pretty well. So I assume that the issue lies with how the square brackets are interpreted in elpher. Either way, thanks again for creating such a handy and useful software! Cheers -rtr [Sat Feb 5 11:11:37 2022] Hello plugd. Elpher is awesome! Thank you much for Elpher [Tue Feb 1 21:18:26 2022] Hi lagash, this needs to be better documented, but ANSI support is already included in elpher. This is why baud.baby doesn't just look like a mess of control characters. However, by default it uses the emacs-native package "ansi-color" to achieve this, which only supports 8 basic colours. To see baud.baby rendered more nicely, try installing the "xterm-color" package from MELPA. This enables 256-color ANSI support. [plugd] [Tue Jan 18 21:04:08 2022] For sites like gopher://baud.baby that use ANSI escape codes, Elpher doesn't handle them automagically. (require 'ansi-color) (let ((inhibit-read-only t)) (ansi-color-apply-on-region (point-min) (point-max))) is the code you're looking for. Perhaps add it as a minor mode to Elpher, or run it on load if some variable is set? - lagash [Sun Jan 16 17:41:28 2022] Thanks for making Elpher! It's great! [Thu Dec 23 09:47:54 2021] v- great to hear! Thanks for the kind words :) [plugd] [Wed Dec 22 08:27:20 2021] Thank you much for Elpher! Very appreciated. Works like a charm. Congrats! [Tue Oct 19 02:24:59 2021] I was going to submit a bug report that Debian Stable's Elpher 2.1.0 forgets the window's font-size, but Elpher 3.2 does it fine! Thank you for continuing to keep Elpher updated. :) [Thu Oct 7 11:20:50 2021] v- sorry about that, it seems fboundp only applies to symbols. The latest commit should fix this. [plugd] [Sat Oct 2 05:31:09 2021] With the latest commit (fbf5fbc), when browse-url-browser-function is an alist, elpher crashes because fboundp fails with it. elpher doesn't even start due to that. [Tue Sep 28 18:35:49 2021] thank you for creating elpher, works great [Thu Jul 29 21:31:35 2021] I'm really liking Elpher so far. Just barely learned about the Gemini/Gopher protocols and was hoping to find a good non-GUI client. Luckily, the best one I could find was written for Emacs. Easily my favorite client of the several I've tried. [Thu Jul 29 13:45:04 2021] v- Hi everyone, thanks for the support over the last year - and sorry for the terminal emacs gemini rendering bug! The latest release finally fixes this and several of ther other points raised below. [plugd] [Sat May 15 20:12:47 2021] Nice work!!! Indieterminacy [Sat May 1 19:15:55 2021] It would be great if Elpher included a `browse-url'-like function i.e. a function that can be used as the car of `browse-url-handlers'. This would allow Elpher to seamlessly integrate with EWW and other Emacs modes that might want to open links using the Gopher or Gemini protocol. Maybe the function could even be automatically added to `browse-url-default-handlers' during setup. [Mon Apr 26 18:42:31 2021] Elpher is really nice, it can do gopher, gemini or even finger. Though the gemini part can be tricky, for me it worked after (setq elpher-use-tls t) which was tried on Doom Emacs. [Thu Apr 15 20:23:04 2021] Best browser, but I can't do gemini on terminal emacs. Wrong type argument: number-or-marker-p, nil for everything. [Fri Apr 2 16:19:30 2021] Link menu completion order [Tue Mar 30 19:35:09 2021] with or without gnutls-verify-error most of the gemini pages are inaccessibles for me. gemini://gemini.circumlunar.space/ doesn't work for instance. :/ [Fri Mar 26 18:59:34 2021] Found a fix to timeouts with gemini. Just add (setq gnutls-verify-error t) to your config file. [Fri Mar 26 16:46:37 2021] I get timeouts for everything in gemini too. How do I fix that? [Tue Mar 16 03:07:16 2021] Oh no! Somebody bent my '!' in to a '?' [Tue Mar 16 03:06:29 2021] Been using elpher for a long time for browsing gopher and now gemini space. Thanks for your hard work? As for a suggestion, it would be lovely if org-store-link was aware of gopher: and gemini: links. [Mon Mar 15 00:30:19 2021] Hi, I like elpher very much, it is a pleasure to use. The only problem I've encountered until now is with my own gemini capsule, for some reason elpher is breaking the preformatted content between ``` it is ruining my ASCII art :( in every other browser I tried it is working as expected. [Tue Mar 9 04:24:14 2021] I really like Elpher for browsing gopher, but no gemini sites are loading. If that works I'll probably switch from Lagrange. :) [Fri Feb 26 06:50:43 2021] I'm also getting timeouts on everything gemini [Wed Feb 24 19:43:28 2021] Elpher not displaying [Fri Feb 19 08:27:29 2021] I'm also seeing the "wrong type" errors when browsing Gemini pages from the tty. There are two patches for that: patch_header_text_termina and patch_emacs_tty. The latter is mine. I wrote it before I saw patch_header_text_termina. I would have discarded it, but patch_header_text_termina wasn't working for me. By the way, I'm loving this client, and I also use it under emacspeak. [Mon Feb 8 01:01:37 2021] Oh, wow, almost forgot. In Gemini pages, after the "```", there is now the option for content writers to add Alt Text (a description of the content", for things like ascii graphics and such. But, Elpher doesn't display the Alt Text part, so it'd be great if Elpher displayed that, and even better if there were a way to skip the block entirely, or choose to hide them or fold them. [Mon Feb 8 00:53:26 2021] As an Emacspeak user, (github.com/tvraman/emacspeak), I find this client very useful. The only pain points are that when a page has finished loading, I'm not alerted to this fact. It's not that big a deal, since pages load just about istantly, but it's something that could be improved. Also, and I've fixed this for the most part, having a symbol for a link isn't so helpful, since that I have to Tab to that link and press Enter, so I emptied the link string, so it's just on that line. Also, pressing Tab doesn't speak the item I've moved to. But overall, this has become my only Gemini/Gopher client, and I very much appreciate it! [Sun Jan 24 16:51:27 2021] Thanks, love this! I am getting the "wrong type argument stringp nil" error every time I try to load a gemini page. I am using emacs in the terminal. [Fri Jan 22 21:50:04 2021] Thanks for elpher [Thu Jan 14 09:44:07 2021] Trying to access gemini://astrobotany.mozz.us/app on "GNU Emacs 26.1 (build 2, x86_64-pc-linux-gnu, GTK+ Version 3.24.5) of 2019-09-23, modified by Debian" results in "Symbol’s function definition is void: read-answer" [Sat Jan 2 21:53:46 2021] For folks who are getting "connection timeout", I found that (setq elpher-ipv4-always t) solved the issue for me. [Wed Dec 30 12:30:25 2020] 6 [Mon Dec 21 19:27:18 2020] I was also getting the stringp error when visiting gemini pages for a while. That's gone, but now I get: "When attempting to retrieve gemini://gemini.circumlunar.space/: Malformed response: No CRLF-delimited header found in response" [Fri Dec 18 23:29:46 2020] also forgot to specify my specs, emacs/27.1 on Raspbian 10 [Fri Dec 18 23:28:37 2020] nice work on elpher! my favourite gopher/gemini client. i have put it onto my pi (terminal-only) and started to encounter some problems with gemini pages, in that they fail with the problem "wrong type argument: stringp, nil". if i view the source of the page it works fine, but as soon as i reload it gives this error. this is only a problem in the terminal-only emacs environment :/ [Sat Dec 12 05:56:59 2020] sry, forgot to mention: I'm running elpher on Doom(2.0.9) Emacs(27.1), macOS Catalina 10.15.7 [Sat Dec 12 05:51:57 2020] hey, thanks for this package! I'm having trouble too connecting to Gemini sites. I get a "connection time-out" message. [Wed Dec 2 21:16:00 2020] Oh, I just saw the older feedback (only up to Nov 8 loaded). I _do_ have gnutls-verify-error non-nil, so I guess that's on me [Wed Dec 2 21:05:58 2020] I seem to be unable to connect to any Gemini sites. Elpher reports a timeout, but no other information. For instance, navigating to the link to Project Gemini on the homepage attempts a connection but then fails with a timeout. [Tue Nov 24 22:09:12 2020] Question: is there a way to submit a client certificate for a capsule that doesn't require it? Maybe I'm misunderstanding the protocol but it seems elpher only sends one when it gets a status code asking for one? [Sat Nov 21 21:38:50 2020] test [Mon Nov 16 20:44:01 2020] nvm, it appears i cannot see feedback before 8november. I can see the whole thing in lynx, elpher only shows most recent(16nov now). A bummer :( [Mon Nov 16 20:30:39 2020] view recent feedback is blank in elpher, anyone else? emacs v27, latest elpher from melpa [Sun Nov 8 23:45:41 2020] [Sat Nov 7 22:33:47 2020] I just saw the other feedbacks mentionning how to fix the gemini issue by disabling tls CA check. I think it would help to add a message to check for tls-checktrust variable and if not nil and in case of timeout error provide a link to a gopher page explaining how to properly configure elpher with tls with also the security implications. Thanks again for elpher anyway. It's great! [Fri Nov 6 23:53:45 2020] Hi! Thanks for elpher. I just installed it to try gemini. Unfortunately, when I tried to join the project gemini url I get a failure (while I verified the gemini page works via some web proxy). Elpher try and fail, then I get a message retrying with IPv4. Still failing. So you know :). Cheers. [Thu Nov 5 11:27:48 2020] Ops, I thought I could insert more than one line. I wanted to thank you for gopher, which is awesome. Howerver, I just found out that " [Thu Nov 5 11:25:27 2020] Wrong gemtext parsing [Thu Nov 5 03:56:02 2020] thank you for the correct Doom Emacs tls config [Thu Oct 29 08:37:04 2020] hello, elpher is awesome, kind of a newbie here so do anyone knows how to open two different elpher instances? right now using the elpher command always points to the same buffer [Sun Oct 25 02:41:47 2020] continued, doom emacs https://pastebin.com/LYGBjf0f [Sun Oct 25 02:38:37 2020] (setq gnutls-verify-error nil [Sun Oct 25 02:38:06 2020] This is less feedback and more some info. Doom emacs doesn't use standard tls settings. You can run something like this to get gemini working (setq gnutls-verify-error nil [Sat Oct 24 18:08:26 2020] I'm submitting some feedback on Elpher from Elpher. It is good. Thank you :) [Fri Oct 23 20:20:21 2020] I use elpher about every day and I enjoy it. I like to read gemini in variable-pitch mode, so I changed the last line of elpher-with-clean-buffer to this: (append args (list '(variable-pitch-mode)))))) Otherwise, elpher would turn off variable-pitch-mode every time I visited another page. [Fri Oct 23 13:37:15 2020] im the one that couldnt access any gemsite, I have no idea why but it fixed itself when I changed from doom emacs to spacemacs [Thu Oct 22 16:45:10 2020] Works great, even in Debian Stable's Emacs 26.1. Not sure why Melpa gate's it behind 26.2... [Sat Oct 17 18:54:52 2020] Elpher has some wrong type argument issues when trying gemini links on emacs 27 [Sun Oct 4 18:50:10 2020] hello, do anyone knows how to fix this? I cant access any gemini site (no problems with gopher, and no problems with Kristall nor AV-98), the minibuffer just says: connection timed out. Retrying with IPV4, and after that: Error in the main window, any idea? [Sun Oct 4 15:47:09 2020] Now I don't have to exit Emacs (God forbid!) to browse Gopher/Gemini sites. Thanks a lot! ~brown121407 [Wed Sep 30 15:08:52 2020] Best Gemini client out there! Thank you! [Mon Sep 14 03:18:34 2020] And the native-comp bug has been fixed! [Thu Sep 10 00:47:09 2020] native-comp bug filed here: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=43280 [Sat Sep 5 00:15:53 2020] l;kj [Fri Sep 4 07:09:51 2020] When attempting to retrieve gemini://gemini.circumlunar.space/: Symbol’s function definition is void: \(setf\ url-port\) [Fri Sep 4 07:08:38 2020] Great Package! I'm also seeing what I imagine is a compilation issue. I'm running the native-comp branch ot 28.0.50 and see this error with a majority of gemini addresses: [Fri Sep 4 07:07:31 2020] submit [Wed Sep 2 18:52:12 2020] Elpher is superb, any chance that you could implement per-scheme proxies so that we could use, for example, Duckling-proxy? [Mon Aug 17 01:20:37 2020] This is great, I love it. Thanks very much! I've just discovered that with Emacs 28.0.50 and native compilation enabled, trying to access some URLs fails with the error message: "Symbol’s function definition is void: \(setf\ url-port\)" ... I guess this is likely to be an issue with Emacs' native compilation? [Sun Aug 16 01:33:27 2020] Really nice, thanks! Just sent a patch to properly create the certificate directory [Tue Aug 11 06:50:14 2020] This software very nice indeed! [Wed Aug 5 09:51:25 2020] I'm not sure where to look for an answer to this but, how can I get GIFs to display in Elpher? [Thu Jul 30 12:41:44 2020] Something went wrong last time I was posting here. Huh. Anyway, disregard it. [Thu Jul 30 08:14:32 2020] COPYING file has placeholders unmodified. On line [Fri Jul 10 10:52:07 2020] v- Re elpher packaging: Amazing! Thanks for packaging it up! Re tslil.xy: thanks for the kind words! I'm not experiencing any problems connecting to your site from my end. Perhaps you can shoot me an email and we can try to get to the bottom of this? (btw the first thing I'd try is "forcing" ipv4 using the relevant customization variable.) [plugd] [Tue Jul 7 07:50:52 2020] elpher will soon be in Debian's packages https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=963032 :) [Mon Jul 6 06:40:31 2020] This is really great, thanks, i'm very enthusiastic about being able to use my favourite operating system to read gemini/gopher sites! Unfortunately i seem to have come up stuck in my usage case, it's quite probable that i'm doing something wrong, but nevertheless: my gemini site (running on gemserv) gemini://tslil.xyz does not work in Elpher, though it does appear to work in the other clients and proxies i tested. Is the server misconfigured somehow and other software is lenient, or is this a bug in Elpher? [Mon Jun 8 23:36:10 2020] v- Wow I'm really getting behind in replying to feedback! Thanks to both new posters for the encouragement. :-) Re colours, you should be able to change these to your liking by customizing the faces in the elpher customization group. Re key bindings, the reason n/p aren't aliases for tab/shift-tab is that they conflict with vi navigation keys, and I try to keep both evil and non-evil emacs users happy. :-) Re threading, yeah I'm worried it's a bit of a dog's breakfast to use gnutls-cli. But it's nice to know it's an option we can use if we get desperate enough... [plugd] [Fri Jun 5 17:11:49 2020] Threading woes: I suppose you are right, given the isolation it can be written in a way that does not affect the rest of the system. Personally, I did not like the approach of handing things off to an external program in circe. Thought it solves a problem, it is not elegant to say the least. I imagine it will also introduce many other cases that will necessitate extra care while debugging &extending. Just to mention one here, one has to start thinking about the external APIs of gnutls-cli instead of working from within emacs and its governance - which may potentially make things complex in the long run. Another point here is that it only handles establishing connections and giving over control of the sockets. Rest of the code already is async and handled well by emacs. I will try and discuss this in [Fri Jun 5 15:24:10 2020] Hey, I love this! I'm a gopher (and emacs) newbie, but having a ball. Just wondering if keys `n/p` could be aliases for `tab/shift-tab` because that seems to be pretty "standard"? Of course i just remapped them myself, but thought I'd suggest it - and also again to say thanks! [Fri Jun 5 06:01:27 2020] Thank you a lot for such a pleasant and useful Gemini/Gopher client! :) It is very nice to use and even helped me to discover the whole new Gemini protocol: I was and Emacs user for a long time before and strongly prefer controlling things by keyboard rather than mouse, so when I was heard about small text Internet and looked around in search of good Gopher client, I've found Elpher, and the description was saying about support of Gemini protocol. And I've found it superior to Gopher, and I also like green color more than orange :), so I wonder, whether I could reverse the colors Elpher shows Gemini/Gopher links to be the more advanced Gemini rendered in green and older Gopher in orange? ^) [Thu Jun 4 21:14:57 2020] v- Thanks for looking into this! Yes, this doesn't surprise me. It certainly doesn't block once the connection is made. I still don't understand some of the interactions with servers pointed to by AAAA DNS records - sometimes this blocks for ages, and DNS itself can't be the issue. Regarding use of gnutls-cli, it's definitely something I'm willing to look into. I'm not convinced it'd be too big of a problem to implement: elpher keeps the network code fairly isolated in "getter" functions (one for each application protocol). I'd be most worried about having an external dependency, which I've managed to avoid until now. [plugd] [Tue Jun 2 14:07:39 2020] Further analysis on the blocking issues shows that DNS resolution is where the main problem lies. This is present in eww as well. Look at https://lars.ingebrigtsen.no/2016/02/22/a-big-patch-for-emacs-a-small-step-for-eww/ for some work on eww. I looked at circe which uses gnutls-cli to circumvent the issues of blocking connections. It uses `start-process' to initiate tls connections along with its own way of handling sentinels and event emissions. To move elpher to such a model is kind of a big task that necessitates a complete rethinking of the package. Thanks single threaded emacs! [Sun May 31 12:44:05 2020] I went through some code earlier too, and found the networking calls as async as they can be made in emacs. While discussing this on #emacs another bug was filed as a result of debugging: https://github.com/lastquestion/explain-pause-mode/issues/34 I will keep looking into it though! Thanks! [Sun May 31 00:50:38 2020] v- Sadly not. Elpher actually already asks emacs to handle network operations asynchronously, but the main thread is still blocked until the connection is made. This seems to be a limitation of emacs itself, or if its not it's one that's above my pay grade to find a way around. I've worked very hard to get rid of the worst blocks and I think the current situation is going to be as good as it gets. Hopefully, though, the shorter connection timeout of 5s means that even the worst of these blocks can't be _too_ long. (Although I understand that even 1 or 2 secs would be painful if it's blocking the WM!) Sorry I can't give you a better answer! :-( [plugd] [Fri May 29 21:01:48 2020] I use exwm, and elpher blocks the main thread. What this means is that I cannot switch to anything else while elpher is at work. This is generally okay because it does not take much time to load gopher documents, but I got stuck for a few seconds today. Is this something in work already? [Sun May 24 13:12:16 2020] Regarding user certificates, I think it _should_ be possible to do this in elpher, even if we have to call an external program to do the dirty work. Support for user-specified (pre-generated) certificates should be in within a week. [plugd] [Sun May 24 13:09:42 2020] Hrm, that's odd about the bookmarks. Can you maybe contact me at plugd@thelambdalab.xyz? It should be easy to get to the bottom of this, but I'm unable to replicate the issue here. [plugd] Edit: this turned out to be a bug in an earlier version. This should be fixed in the most recent Elpher release. [Sat May 23 23:24:03 2020] I'm curious about the potential for elpher to generate client certificates (specifically to interact with Gemini servers using them for user sessions). I had a look at the docs for elisp and TLS but it wasn't clear to me if this is even supported in Emacs. [Sat May 23 23:17:08 2020] I think there's an issue with the latest update and bookmarks, when I try to bookmark I get "symbol's value as variable is void". However a c-h v on my elpher-bookmarks-file shows the correct value (and B shows my bookmarks). Any ideas? [Fri May 22 14:59:24 2020] v- it's possible that the latest update solves your connection problems, particularly if you were using elpher in combination with the Doom configuration. Let me know if you still have problems. [plugd] [Fri May 22 10:10:04 2020] v- One other thing, it may be helpful to know whether you're running on Windows or not. I've had issues with eol-translations causing havoc on Windows machines in the past, so something like that could explain why I've never encountered it. [plugd] [Fri May 22 09:12:03 2020] v- Do you have an example of a specific server? I've just tried all of the servers in solderpunk's list and was able to load all of them (besides the one that requires IPv6 - my ISP stupidly doesn't support this - and zaibatsu, which for a while now has been refusing connections). Thanks. [plugd] [Wed May 20 16:06:17 2020] Gemini servers hosted using gemserv don't seem to function using Elpher. Elpher complains about malformed headers when such sites are accessed. Could be gemserv bug? [Tue May 19 23:33:58 2020] Thank you for making a nice emacs gopher & gemini client! <3 (Shufei) [Sun May 17 17:43:27 2020] v- Glad you're enjoying the new formatting! For zip and other binary files, you can always download by using "d" to open the link. But you're definitely right, the default behaviour on opening "unsupported" mime types like application/zip should have been to offer to save the file. I've made that change now. Thanks for letting me know about this! [plugd/Tim] [Sun May 17 16:37:57 2020] Thanks Tim for the new update, word wrapping is much nicer now! I was wondering about support for downloading zip files over gemini, the mime type currently is unsupported? [Sat May 16 15:07:35 2020] v- To the person asking about TOR, thanks for the encouragement!! Regarding your question, I realy don't know much about TOR at all (I think I tried using it once in the last 10 years) so I really have no idea what would be involved in making this happen at the level of an emacs package. Have you tried launching emacs with torify? (This is all a quick google search turned up.) [plugd] [Sat May 16 14:55:52 2020] v- Good idea - bookmarks file name can now be customized. [plugd] [Fri May 15 06:34:31 2020] Make Elpher bookmarks file location customizable. [Thu May 14 09:34:56 2020] Thank you so much for actively developing this client, it's easily my favorite way to browse gopher and gemini! I have no idea how reasonable this would be, but would there be some way to implement access to gopher pages which are hosted through TOR? That's essentially the only pain point left for me now that finger is supported. Keep up the good work! [Thu May 14 02:43:10 2020] v- Great idea! Will be thinking seriously about history saving/navigation shortly. [plugd] [Tue May 12 00:27:23 2020] saving history? [Thu Jan 23 04:54:21 2020] V- Sorry to hear about this issue. TBH I didn't think I had control over the scaling of images at all. (The interactive zooming features seem to require an imagemagick installation.) But w3m manages to do scale images correctly even without this dependency, so it must be possible to sort out. Thanks for the heads up! I'd hate to get in the way of you reading XKCD. :-) [plugd] [Thu Dec 19 02:28:02 2019] I am using a 4k display. While w3m seems to respect the zoom level when viewing images, they are really tiny in elpher. It would be nice to have them at a size in which i can actually see something. (xkcd for example is unreadable). [Sun Nov 24 10:26:36 2019] v- And regarding using `with-current-buffer', I already do (uless I've missed something) use this around code that expects the *elpher* buffer to be current. This is done via the `elpher-with-clean-buffer' macro. BTW much of the buffer handling will change soon, as I'm about to introduce support for multiple buffers. (See ISSUES.org in the multi-buffer branch.) [plugd] [Sun Nov 24 10:26:12 2019] v- Thanks for the suggestion - will look into that. And thanks for any work you did on the node-URL thing. I hope you didn't do too much before noticing my updates! [plugd] [Sun Nov 24 07:03:00 2019] This reminds me of another thing, all calls to `switch-to-buffer' should be replaced with something equivalent using `display-buffer' inside, such as `pop-to-buffer-same-window'. This allows users to customize where exactly the elpher buffer shows up. For extra robustness I'd make sure all functions expecting to be called inside an elpher buffer are used from a caller with `with-current-buffer'. [Sun Nov 24 07:01:00 2019] Good work, I was about to hand in code for reworking generation of nodes from URLs, but it seems you did that yourself some time ago. With that change it's easy to write a handler that can be used as `browse-url-browser-function': (defun (my-elpher-browse-url (url &rest _args) (let ((node (elpher-make-node url (elpher-address-from-url url)))) (pop-to-buffer-same-window "*elpher*") (elpher-visit-node node))) [Wed Oct 23 11:13:03 2019] v- Elpher runs on the GNU Emacs platform, so as long as you're able to get that running on Windows you should be able to install Elpher as per the instructions in the README. - plugd [Wed Oct 23 10:16:27 2019] How can I get the Windows version? Its not clear to me where it is. [Wed Oct 23 01:15:05 2019] v- Thanks! - plugd [Tue Oct 22 23:29:21 2019] This is the best gopher client I've seen thus far. Combined with doom-emacs, it's a big win in my book. Two thumbs up!