* 2023-08-04 version 0.9.9.14142 - New feature - Implemented titan protocol specifications. - Improvements The GUI has been reworked and partially redesigned. - the icons can be scaled; - added a menu item to save the contents a link points to in a file; - added a command to scale the rendered gemtext; - using paned window to allow resize of ancillary widgets in main window (TOC and steams) (thanks op for the suggestion!). - Bugfix Please see the changelog file for information about the bugs fixed. * 2023-05-17 version 0.9.9.1414 - New feature added A GUI for the gemini protocol. * 2023-01-30 version 0.9.9.141 - Bugfix - fixed bug that prevented downloading of posts from subscribed hashtag; - improved error reporting in script 'generate-gemlog.lisp'; - The program respects the directive "open ..." when downloading text/* MIME types, using the gemini protocol; - updated code to works with the new version of the TUI library. * 2022-12-14 version 0.9.9.14 - Bugfix Removed a command switch that prevented the command `gemini-images-montage' to run. * 2022-12-12 version 0.9.9.1 - New feature - added command `gemini-images-montage' this command collects and joins together all the images linked from a gemini page and then displays the resulting images - added command `print-mentions', to dump mentions in the main window; - added a configuration directive to filter boost based on a regular expression matching the username; - added a configuration directive to filter out unwanted hashtags; - added a configuration directive to leave or delete mentions from the server after fetching them; - added command 'gemini-images-montage'. - Improvements - added preview and confirm prompt for each file attached on a status; - [gemini] prevented the script 'generate-gemlog.lisp' to export files that do not match .gmi extension; - Bugfix - fixed bug that prevented updating list of posts from subscribed tags; - gopher links from a main window are collected into the links window; - [gemini] prevented the script 'generate-gemlog.lisp' to export files that do not match .gmi extension; - prevented crash when opening empty chat windows; - fixed refreshing of chats - [gemini] prevented crash when and error getting data from TLS socket; - fixed bug that prevented a remote user to be added in the database whan following them; * 2022-10-14 version 0.9.9 - New feature - This version added support for the gopher protocol. https://en.wikipedia.org/wiki/Gopher_(protocol) - added a command to fetch a pleroma thread given a post's ID; - added a command to get a pleroma post's ID; - added a command to command to convert a pleroma thread to text. - Improvements - [gemini/gopher] searching in URL history does not takes into account the characters case. - Bugfix - prevented crash when opening a post where the user was mentioned - reset the main window's title when opening a post and the message window is displaying a gemini page; - removed unused argument. - [gemini] pushed link into history of visited URL even if the page hes been gotten from local cache. * 2022-08-19 version 0.9.8 - Bugfix - [gemini] fixed a regression that can lead to fails when following a redirection. * 2022-08-15 version 0.9.7 - Improvements - [gemini] Improved appearance of windows that shows subscriptions to gemlogs; - move focus between visible window using 'TAB'. - New script - [gemini] added a script to generate a gemlog; - Bugfix Many bugs have been fixed, please refers to the ChangeLog file for details; * 2022-03-12 version 0.9.5 - New Features This versions added support for 9p protocol over TLS From https://kamid.omarpolo.com/9p.7.html #+BEGIN_QUOTE 9P is a protocol that implements a distributed file systems. It provides primitives to manage (create, read, write and delete) sets of files remotely. These files don't necessarily need to be actually stored on a disk, they may be, for example, synthesised on demand from external sources. #+END_QUOTE - New commands: - copy-link-to-clipboard :: Copy the currently selected link to clipboard; - clear-cache :: Delete permanently cached data (note: this command remove also gemini client certificates!); - gemini-jump-to-link :: Scroll the document to the line where this link appears in the gemini document; - Adding CI/CD and container building support (thanks to mibofra!); - Added new script, ~gemget~, to download a gemini resource from command line (similar to wget); - Improvements - added more key-chord to navigate in gemini TOC window (e.g. jump to first or last item, search); - The layout of the windows has changed and should be a bit less confusing now, also moving window's focus pressing a single key has been implemented; - Refreshing the screen should be faster now and less flickering should be noticeable; - removed bash as dependency (thanks op!). - Bugfix - fixed guessing of parent directory from value of $PWD in script quick_quicklisp.sh (thanks mibofra!); - fixed generation of TLS client certificates when using an openssl binary linked with libressl (thanks op!); - the window title should be truncated according to the terminal's width; - prevented crash when bookmarking the start page in gemini fullscreen mode (Thanks reDFog!). * 2021-11-28 version 0.9.0 - New Features - [gemini] - support for gempub ebook format: https://codeberg.org/oppenlab/gempub ; - Added a command line switch to use the program exclusively as a gemini client ("-G"); - added a bookmark of gemini addresses; - added a procedure to import tls certificates. - [pleroma] - added two scripts to export and import a list of people that user is following; - added a module to delete posts matching a regular expression form the timeline the user is exploring; - added a command to load a script, the output of the script is printed on the main window (if such output does exists). - implemented cut line from point (using "^K") in command window; - added a module to expand abbreviation on command line (e.g. "!g" → "gemini://"). - Improvements - [gemini] - improved tour mode: the tour entries can be shuffled; - added a command to jump to (and open) links in a gemtext; - the URI of the capsule is shown in the title of the window; - added "no wait" directive when downloading non gemini text format from gemini: allow opening file before it is downloaded completely; - used fuzzy matching when looking for URI in history; - made gemlog's updating non blocking. - Bugfix - [gemini] - never send the fragment part of an URI to the server; - fixed crash when completing an empty command line (pressing tab with no string typed on the command line). - [pleroma] - fixed bug that prevented to update local and federated timeline. - prevented crash when teminal height was to small to fits suggestion window. More information is available in the [[./ChangeLog][changelog file]] * 2021-06-29 version 0.8.3 Most important changes are: - New features - when showing posts or gemini pages the window's text can be scrolled horizontally; - Bugfix - [gemini] Server asking for a certificate no more makes the program stuck in a loop; - fixed quick_quicklisp.dh.in (was missing awk); - prevented a crash when a subscribed gemlog changed its certificate; - fixed resizing of windows when the terminal is window resized; - following a user should no more fails with a database error; - attaching a file to a post no more lead to a crash; - fixed text searching procedures in message links window. - Improvements - [gemini] alternative text is rendered with the same color as the preformatted text it is referring to; - a gemini page can be scrolled even if the focus in on the TOC; - selecting an item in the TOC will move the page to the corresponding section; - improved appearance of keybindings tree. For details please check the Changelog. * 2021-05-23 version 0.8.1 - Bugfix - fixed a regression that made the program crash when adding an attachment to a post. * 2021-05-23 version 0.8.0 - New features - [gemini] - Added a table of contents (TOC) window when a gemini stream is completed. The TOC is auto-generated from header lines contained in the gemini text; - the position and width of the notification window is now customizable by users using configuration files. - Bugfix - [gemini] - prevented rendering gemini files in the message window when a toot is shown. - fixed parsing of quoted lines, an empty line can be a valid quote. - recognized gemlog's subtitle (if presents); - if VISUAL or EDITOR contains invalid editor's path and no editor is specified in the configuration file print an error instead of jump to the debugger. - Improvements - When the user try to authenticate the program on a server a success message is returned on the browser (thanks op!). - do not load configuration files if command line options '-h' or '-v' are used; - if no editor is specified in the config file the program look for values of environment variables EDITOR or VISUAL and fallback to ed if the variables are not setted or have empty value; - improved appearance of the tree of available keybindings. * 2021-05-06 version 0.7.0 - New features - added "tour mode" to save a "temporary bookmark" of links as explained here: gemini://gemini.circumlunar.space/users/solderpunk/gemlog/gemini-client-navigation.gmi As an extension of the idea above the command accepts space separated list of link index or link ranges (e.g: "5-7 1 2") but, if a list of number is not recognized by the software, the input from user is used as a regular expression matching either the link name or the link URI. - Bugfix - [gemini] - fixed crash when opening a gemini page longer than one opened before. When user switched from a page to another shorter the window scrolling position was not restored, pointing outside the actual text line counts; - Fixed bug that let users stuck in a loop when going back in history to an URI with a redirect; - fixed bug when creating temporary file, name was not unique; - fixed rendering of gemini page, there was problems wrapping text; - fixed bug that prevented to open a local file using a tilde as an alias for $HOME - prevented a crash when a search was started but not actually performed because of wrong input (i.e. empty input) and the user tried to open the link window - Improvements - [gemini] - Switched to a new capsule when searching geminispace * 2021-04-17 version 0.6.2 - Bugfix - completing a command argument with strings that contains special characters (like, for example a square bracket) no more makes the program crash. * 2021-04-16 version 0.6.1 - Bugfix - [gemini] - Connecting to gemini URI using IP address instead of hostname should be possible now; - Fixed formatting of preformatted lines (a bug was cutting spaces from both ends of the line) * 2021-04-15 version 0.6.0 - New Features - exploring local file system (using '-o' option and rendering gemtext files, of course! - added more option for choosing how to open gemini links or pleroma attachments, tinmop or an external program can be chosen, see the configuration file for examples; - improved rendering of preformatted block and quoted lines of gemtext - [gemini] users can choose to switch from showing alternate text (if exists) instead of a preformatted text blocks (default key for this feature is "t" when the message window got the focus); - removed some control characters that could cause troubles when rendering a text (thanks op and mutt people!) - Bugfix - fixed incorrect rendering of matched text when searching a string in the message window; - opening a module (option "-M") when "-o" (open a gemini address) option is used works now; - Improvements - rendering of gemini pages should be a bit faster, prevents the UI from blocking and should not slow down the software when opening long pages. - added guix instruction for installing the software using guix; - improved error messages when a problem with missing configuration files occurred. - improved program's quitting time. - fixed IRI parsing (older version failed to parse "mailto:..." IRIs. - Breaking changes - [pleroma] using new version of chats API, this makes this software incompatible with old version of pleroma server (< 2.3) - changed 'hooks:*before-prepare-for-rendering-message* with 'hooks:*before-rendering-message-text*. * 2021-03-03 version 0.5.9 - Breaking changes - The favicon.txt (gemini://mozz.us/files/rfc_gemini_favicon.gmi) is now disabled by default, user can enable setting the configuration directive 'gemini.fetch.favicon' to 'yes'. - Improvements - Removed dependency on GNU AWK, any standard AWK implementation will be able to be used by the building script 'quick_quicklisp.sh'. * 2021-02-20 version 0.5.3 - Bugfix - The program crashed when started from the first time. * 2021-02-19 version 0.5.2 - New features - added configuration directive to use a specific program to open a link (e.g. open all mp3 files with program mpv); - Misc - rendering of contents in the message window is faster; - Refactored gemini client (made more easily extensible to accommodate changes in protocol in the future). * 2021-01-21 version 0.5.1 - New features - [gemini] added support for favicon.txt more or less as specified in gemini://mozz.us/files/rfc_gemini_favicon.gmi (it does render the first character of the file instead of checking for emoji characters); - made the text for toot's visibility level (as rendered in main window) configurable. - Bugfix - fixed many problems in gemlog subscriptions; - fixed regression: using client certificate for gemini capsules works again; For other bugfix, please check the changelog. - Misc - removed dependency form libidn2. * 2021-01-10 version 0.5.0 - New features - added subscriptions to gemlog according to the following gemini specification: gemini://gemini.circumlunar.space/docs/companion/subscription.gmi - Bugfix - Fixed configure scripts and several problems related to wrapping libidn2. - Building the program from sources should not fails anymore on debian stable and *BSD. - it is possible to use the program as a gemini client without configure a connection with a pleroma server; * 2020-12-31 version 0.4.2 - Bugfix - Removed lag when scrolling the main window - New modules - Added a module to rewrite URLs in main and link windows. * 2020-12-30 version 0.4.1 - New features - allow repeat search on links window's items; - updated Italian translation; - added a command to send data to an external program. - Bugfix - fixed a bug that caused a redirect loop when accessing gemini pages with a path components of URL that terminate with a slash (e.g. ~.../foo/bar/~). * 2020-12-29 version 0.4.0 - New features - added a command to repeat the last performed search; - "new-line" (aka 'enter') key can be used to scroll main window; - [gemini] added a command to refresh a page; - Modules - added a module to share a gemini link on pleroma. - Scripts - added a simple script for a welcome bot. - Bugfix - fixed IRI parsing and encoding/normalizing; - fixed false positive for new message on subscribed tags; - [gemini] fixed bug that prevented visit the same link more than once; - fixed bugs that prevented following of users whit no messages in local database; - fixed ~quick_quicklisp.sh~ building script (thanks to Ben!). - Documentation - updated manpage. * 2020-12-14 version 0.3.3 This version switched from URI to IRI to resolve DNS names. This means that users can uses UTF-8 characters in host name when resolving a gemini address. * 2020-12-11 This is a bugfix release that allows tinmop to compile and works with newer SBCL compiler. Also fixed a problem that made the user stuck if trying to quit keeping messages marked for deletion. * 2020-10-25 Gemini browser got client authentication support. * 2020-10-01 Several improvements to the gemini browser added. Also a bug that made the program crash when getting mentions from the server has been fixed. The command line switch "-m" to get notification when mentioned did not works at all and has been fixed. * 2020-09-19 Added adding an optional mention when composing a message. Fixed a bug that made the message composition window to disappear before actually sending the message. * 2020-09-12 Added support for pleroma chat. Added managing of gemini streams. A gemini window allow to abort, rendering/opening of gemini connection while streaming. * 2020-08-30 Added a window to manage all the gemini streams opened. The user can ispect the status o all the streams as well abort or open them. * 2020-08-19 The gemini client could now manage secret input if asked by the server. Secret input here means that a placeholder character is printed on the screen instead of the character corresponding to the key pressed by the user (like a password input). * 2020-07-17 The gemini client fetch documents from remote server in a concurrent way now. This way streamed contents could be accessed without blocking the client. * 2020-07-17 Prevented a crash if an invalid regular expression is used when searching in a message window. * 2020-07-15 This version fixes some bugs in gemini page rendering and add an option to display the source of a page. * 2020-07-08 This version improves appearance of gemini page rendering and fixed a bug in a command line switch. * 2020-07-04 Fixed some bugs in gemini viewer. Corrected expansion of retooted messages. * 2020-06-29 - improved gemini navigation. It is possible to go back in a previous viewed address or open an arbitrary URL. * 2020-06-22 - The software includes a gemini client * 2020-06-13 - Fixed bugs when fetching messages that made the program crashed. * 2020-06-12 - the downloading of messages should be faster but now some threads do not get automatic expansions. Thread messages expansion can be requested with a command, bound - by default- to "R". * 2020-06-11 - The software try to skips over statuses authored from an ignored user - in the configuration file the directive + ~ignore-user-regexp~ can be used in the configuration file to ignore users; the value of this variable should be a regular expression that should matches the username, if a match occurs the user is ignored. * 2020-06-07 - version 0.0.4 - Added polls voting; - added the possibility to force expanding of a message tree; - added optional notification of statuses mentioning the user (--notify-mentions); - many bug fixed. * 2020-05-18 Added the reset of timeline pagination from command line. * 2020-05-17 Added a window to browse the links a status contains * 2020-05-15 Initial release