1
0
Fork 0
tinmop/ChangeLog

3648 lines
96 KiB
Plaintext

2021-11-28 cage
* ChangeLog,
* Makefile.am,
* Makefile.in,
* NEWS.org,
* aclocal.m4,
* configure,
* configure.ac,
* scripts/import-following.lisp,
* tinmop.asd:
- updated Changelog and NEWS.org.
- increased version number;
- added a missing script in makefile.
- updated building scripts;
- removed wrong backslash from Makefile.am.
- added script: 'import-following.lisp'.
2021-11-27 cage
* etc/init.lisp:
- [gemini] changed keychords for searching and opening links in the
mainwindow.
2021-11-26 cage
* etc/init.lisp,
* modules/delete-by-regex.lisp,
* modules/next-previous-open.lisp,
* src/db.lisp,
* src/line-oriented-window.lisp,
* src/message-window.lisp,
* src/open-message-link-window.lisp,
* src/package.lisp,
* src/ui-goodies.lisp:
- fixed module delete-post-using-regex; the procedure delete all the
rows matching a regex not only the visible ones in thread window;
- moved keybinding from modules/next-previous-open.lisp into the main
init file.
- [gemini] added commands: 'go-to-previous-link' and
'go-to-next-link'.
- [gemini] fixed command 'open-next-visible-link'.
2021-11-20 cage
* etc/init.lisp,
* modules/delete-by-regex.lisp,
* src/api-client.lisp,
* src/thread-window.lisp:
- added new module: 'delete-by-regex.lisp';
- fixed bug that prevented to update local and federated timeline;
- prevented crash when syncing thread window that contains no posts;
2021-11-19 cage
* src/db.lisp,
* src/package.lisp,
* src/ui-goodies.lisp:
- refactored some code in a function: 'db:row-avatar'.
2021-11-16 cage
* doc/man.org,
* doc/tinmop.man,
* etc/init.lisp,
* src/package.lisp,
* src/program-events.lisp,
* src/ui-goodies.lisp:
- prevented sending a successful notification when the procedure to
follow or unfollow an user failed.
- fixed function's name.
- added load-script-file.
- mentioned again "-G" command line switch in the manpage.
- updated manpage.
- added command 'view-user-avatar'.
2021-11-15 cage
* src/gemini-viewer.lisp,
* src/gemini/client.lisp:
- added query to redirect if present in the redirect iri.
- skipped redirect if parsing of iri failed.
2021-11-14 cage
* scripts/get-following.lisp,
* src/api-client.lisp,
* src/api-pleroma.lisp,
* src/package.lisp:
- added a script to get a list of people user is following.
- fixed typo.
2021-11-13 cage
* doc/man.org,
* doc/tinmop.man:
- updated manpage.
2021-11-12 cage
* ChangeLog,
* etc/shared.conf,
* po/it.po,
* po/tinmop.pot,
* src/command-line.lisp,
* src/db.lisp,
* src/gemini-page-toc.lisp,
* src/gemini-viewer.lisp,
* src/main.lisp,
* src/message-window.lisp,
* src/package.lisp,
* src/program-events.lisp,
* src/software-configuration.lisp,
* src/ui-goodies.lisp,
* src/windows.lisp:
- added command-line option for gemini fullscreen mode;
- cleaned up command line switch management.
- removed argument for ommand line switch 'gemini-client-only'.
- added exclusive gemini client UI layout.
- removed duplicates in url history when printing gemini startpage in
gemini full screen mode.
-updated italian translation.
-updated Changelog.
- fixed typo in changelog.
- changed logic to guess if the window is displaying gemini contents;
- replaced window'stitle with the IRI of the gemini content streaming;
- fixed italian translation.
- used an error message instead of a notification when opening a file
that does not exists (thanks op\!).
- made width of TOC customizable (when using tinmop in gemini
fullscreen mode).
2021-11-10 cage
* etc/shared.conf,
* src/gemini-viewer.lisp,
* src/package.lisp,
* src/software-configuration.lisp:
- [gemini] added customizable buffer size when opening partial gemini
content with an external program.
using "no wait" directive can be followed by "buffer NUMBER" to
customize the cache (in Mib) to be cached before opening the partial
downloaded data.
- [gemini] ensured opening files with an external program if the size
of the file is smaller than the cache size.
- fixed default in config file.
2021-11-07 cage
* etc/default-theme.conf,
* etc/shared.conf,
* src/gemini/client.lisp:
- [gemini] prevented sending fragment part of the IRI to server;
- chaged prefix for links in gemini streams.
2021-11-06 cage
* etc/shared.conf,
* src/gemini-viewer.lisp,
* src/gemini/gemini-parser.lisp,
* src/gemini/package.lisp,
* src/message-window.lisp,
* src/package.lisp,
* src/program-events.lisp,
* src/tests/text-utils-tests.lisp,
* src/text-utils.lisp:
- added 'search-gemini-fragment'
- changed 'raw-text' to 'source-line';
- added ocstring to 'search-gemini-fragment'.
- [gemini] added 'search-message-gemini-fragment-event'
When a fragment is present in a uri/iri it is used as a regular
expression to search in the *source* of the text, the window's content
is moved to shows the *rendered* line where matching occurred.
2021-11-05 cage
* src/complete.lisp,
* src/db.lisp,
* src/gemini-viewer.lisp,
* src/gemini/gemini-parser.lisp,
* src/gemini/package.lisp,
* src/package.lisp,
* src/tests/text-utils-tests.lisp,
* src/text-utils.lisp:
- fixed crash when completing an empty command line (pressing tab with
no string typed on the command line);
- fixed crash when completing bookmark entry with non word character
(e.g. '[');
- added macro 'gemini-parser:with-initialized-parser';
- added source metadata (sourceline and source-line-id to results of
gemini parsing to IR (see: sexp->text-rows).
- added 'match-words'.
2021-10-30 cage
* etc/init.lisp,
* src/api-client.lisp,
* src/message-window.lisp,
* src/package.lisp,
* src/ui-goodies.lisp:
- added command 'open-next-visible-link';
- removed debug message.
2021-10-27 cage
* src/message-window.lisp:
- transform any line made from blank characters in vertical-space.
2021-10-26 cage
* src/gemini/gemini-parser.lisp,
* src/message-window.lisp:
- ensured a line is not added to a line in the slot 'normal-text'.
- [gemini/parsing] transformed to vertical space a text line made from
blank characters only.
2021-10-25 cage
* src/gemini/gemini-parser.lisp,
* src/message-window.lisp:
- removed unused argument.
- [gemini] fixed crash occurred when rendering an empty quote line.
2021-10-24 cage
* ChangeLog,
* src/gemini/gemini-parser.lisp,
* src/html-utils.lisp,
* src/package.lisp:
- added missing author to Changelog.
- [gemini] attached source line to each parsed gemtext node.
2021-10-22 cage
* src/gemini/gemini-parser.lisp,
* src/message-window.lisp:
- [gemini] moved fitting of quoted lines to message window routines.
2021-10-17 cage
* etc/shared.conf,
* scripts/delete-old-posts.lisp,
* src/gemini-viewer.lisp,
* src/package.lisp,
* src/software-configuration.lisp,
* src/ui-goodies.lisp:
- [experimental][gemini] used URI's fragment as a search criteria for
the gemini page (disabled by default).
- prompted for older threshold instead of using a constant.
2021-10-15 cage
* Makefile.am,
* Makefile.in,
* scripts/delete-old-posts.lisp,
* src/api-client.lisp,
* src/package.lisp:
- added a script to delete old posts.
- updated build script to install 'delete-old-posts.lisp'
2021-10-13 cage
* etc/shared.conf,
* src/package.lisp,
* src/program-events.lisp,
* src/software-configuration.lisp:
- allowed skipping posts using language type.
2021-10-10 cage
* doc/man.org,
* doc/tinmop.man,
* etc/init.lisp,
* src/db.lisp,
* src/gemini/gemini-parser.lisp,
* src/gemini/package.lisp,
* src/main.lisp,
* src/package.lisp,
* src/program-events.lisp,
* src/ui-goodies.lisp:
- added 'gemini-all-unread-posts', 'shuffle-tour',
'gemlog-add-unread-posts-tour', 'clear-tour'
'gemini-all-unread-posts' give user the choice to add all the
currently unread post to the link tour.
- added a section related to 'tour mode' in the manual plus some
minor, cosmetic, changes.
2021-10-08 cage
* etc/init.lisp,
* po/it.po,
* po/tinmop.pot,
* src/line-oriented-window.lisp,
* src/message-window.lisp,
* src/package.lisp,
* src/program-events.lisp,
* src/ui-goodies.lisp:
- fixed adjusting strategy functions when drawing gemini text.
- forced scrolling to the last message when a new message has been
posted on the chat window;
- added 'message-window-lock-scrolling' and
'message-window-unlock-scrolling' allowing users to choose their
preferered way to render the gemini text (this is useful for gemini
streaming services, like chat or similar).
- fixed 'adjust-rows-select-last';
- rewinded selected row to first one when a new gemin page is loaded.
- added 'eval-command';
- added docstrings for scroll lock related functions.
updated italian translation.
2021-10-07 cage
* src/main.lisp,
* src/modules.lisp:
- ignored error when trying to open a shared configuration file (lisp
code) on program start; search for a file in the user's home instead.
- ensured, when program starts, that the init file in the user's home
is loaded (if such init file exists).
2021-10-04 cage
* src/gemini-page-toc.lisp,
* src/gemini-viewer.lisp:
- [gemini] prevented crash happening when trying to render a TOC from
an empty gemtext.
- [gemini] prevented signalling a condition when quitting the program
and a gemini text is streaming;
if there is some gemini text streaming the function
'ui:clean-temporary-file' will remove the file that the streaming
thread is using for caching. So when the gemini rendering thread
returns will try to remove the already deleted file, leading to a
crash.
2021-09-27 cage
* Makefile.in,
* aclocal.m4,
* configure,
* configure.ac,
* quick_quicklisp.sh.in,
* src/os-utils.lisp,
* tinmop.asd:
- updated building scripts;
- removed useless variable from 'configure.ac'
- changed dependency to cl-ppcre-unicode;
- fixed reader macro for 'os-utils:run-external-program'.
2021-09-26 cage
* ChangeLog:
- improved Changelog.
2021-09-12 cage
* src/os-utils.lisp,
* src/package.lisp,
* src/ui-goodies.lisp:
- fixed docstring.
- notified an error when the manpage can not be printed on screen.
- prevented moving of the selected message in thread window when a
thread is expanded.
2021-09-11 cage
* ChangeLog,
* src/thread-window.lisp:
- fixed thread-window:resync-rows-db, was not redrawing the window if no
message was presents.
- improved positioning of selected row in
'thread-window:resync-rows-db'.
- updated changelog.
2021-09-10 cage
* ChangeLog,
* po/it.po,
* po/tinmop.pot,
* src/conditions.lisp,
* src/db.lisp,
* src/line-oriented-window.lisp,
* src/package.lisp,
* src/program-events.lisp,
* src/thread-window.lisp,
* src/ui-goodies.lisp:
- prevented crash when mark or unmark for deletion an empty thread
window.
- prevented moving selected message when updating a timeline backward.
- prevented moving selected message when updating a timeline.
- updated italian translation.
2021-09-09 cage
* etc/init.lisp,
* src/package.lisp,
* src/ui-goodies.lisp:
- added a command to open all the attachments of a post.
- prevented quitting program when users does not input a valid answer at
prompt asking for deleting pleroma messages.
- prevented quitting program when users does not input a valid answer at
prompt asking for deleting temp files.
2021-09-04 cage
* src/gemini/gemini-parser.lisp,
* src/gemini/package.lisp,
* src/message-window.lisp:
- added group-id property to all gemtext elements.
- changed function name from 'header-group-id' to
'current-header-group-id'.
- removed useless comment.
2021-09-03 cage
* src/gemini-page-toc.lisp,
* src/gemini/gemini-parser.lisp,
* src/gemini/package.lisp,
* src/hooks.lisp,
* src/message-window.lisp,
* src/package.lisp,
* src/ui-goodies.lisp:
- [gemini] added 'pre-group-id' slot to gemini text preformatted line;
this changes fixed the selection of a TOC entry when reading a
gemini text too.
- added hook:*before-rendering-message-visible-rows*;
- changed default: appending hooks by default in hook:add-hook.
- highlighted current TOC entry while browsing gemini page/gempub;
2021-09-02 cage
* Makefile.am,
* Makefile.in,
* po/POTFILES.in,
* po/it.po,
* po/tinmop.pot,
* quick_quicklisp.sh.in,
* tinmop.asd:
- updated italian translation.
- updated makefile rule to recompile the binary if asdf file is
modified.
- updated version of croatoan installed by the building script;
2021-08-29 cage
* src/keybindings.lisp,
* src/line-oriented-window.lisp,
* src/package.lisp,
* src/tui-utils.lisp:
- forced colors to selected line in line oriented-window.
- improved search command apropos.
- removed debug message.
2021-08-28 cage
* Makefile.in,
* configure,
* configure.ac,
* doc/man.org,
* etc/default-theme.conf,
* etc/init.lisp,
* modules/expand-abbrev-command-window.lisp,
* po/it.po,
* po/tinmop.pot,
* src/config.lisp.in.in,
* src/constants.lisp,
* src/gempub.lisp,
* src/keybindings.lisp,
* src/line-oriented-window.lisp,
* src/main.lisp,
* src/open-attach-window.lisp,
* src/package.lisp,
* src/program-events.lisp,
* src/software-configuration.lisp,
* src/ui-goodies.lisp:
- added 'apropos-help-global'.
- added 'open-manual'.
- added command to show bookmaks also to global keymap;
- added more terms when searching gempub metadata ('<', '>', '<=', '<=',
'=' '!=').
- allowed line-oriented-window to render unselected items with
different color than foreground;
- allowed a custom init.lisp file in the config user home.
- capured parsing errors when querying gempub library.
- fixed 'valid-results-p' when a global search is performed.
- fixed position of cursor when expanding abbreviations.
- switched to gemini keymap when opening a gemini page from memory.
- updated italian translation;
- updated manpage and docstring relative to gempub and tour mode.
- updated welcome window's text.
2021-08-27 cage
* src/gempub.lisp,
* src/package.lisp,
* src/program-events.lisp,
* src/ui-goodies.lisp:
- automatically add a tour mode to browse the contents when opening a
gempub.
- defined alias for 'zip-file-p' as 'gempub-file-p'.
- prevented non local links to be in tour mode when opening a gempub.
2021-08-26 cage
* etc/default-theme.conf,
* etc/init.lisp,
* etc/shared.conf,
* src/db.lisp,
* src/gemini-viewer.lisp,
* src/gempub.lisp,
* src/package.lisp,
* src/program-events.lisp,
* src/ui-goodies.lisp,
* src/zip-info.lisp:
- added opening of gempub files from gempub library window.
- added toc when a gemini file is loaded from a local file.
- ensured 'gempub-metadata-find' returns a single row;
- ensured gempub paths are normalized before adding in the library;
- fixed comment.
- prevented crash when probing for a zip file which size is less than
the mazimum size of end of central directory registry.
- respected index metadata when opening a gempub file.
- used default path for gempub library.
- wrote selected gempub entry in bold.
2021-08-25 cage
* etc/default-theme.conf,
* etc/init.lisp,
* src/db.lisp,
* src/gempub.lisp,
* src/keybindings.lisp,
* src/package.lisp,
* src/software-configuration.lisp,
* src/specials.lisp,
* src/ui-goodies.lisp:
- added a window to show gempub file's library.
2021-08-23 cage
* etc/shared.conf,
* src/db-utils.lisp,
* src/db.lisp,
* src/filesystem-utils.lisp,
* src/gempub.lisp,
* src/package.lisp,
* src/scheduled-events.lisp,
* src/software-configuration.lisp,
* src/zip-info.lisp:
- added a directory to store gempub, the software will sync the
directory's contents with its internal metadata database.
2021-08-22 cage
* .gitignore,
* configure,
* configure.ac,
* src/config.lisp.in,
* src/config.lisp.in.in,
* src/db.lisp,
* src/gempub.lisp,
* src/line-oriented-window.lisp,
* src/os-utils.lisp,
* src/package.lisp,
* tinmop.asd:
- [gempub] added extraction of metadata from gempub;
- added gempub-support in *features*;
- added table to save gempub's metadata.
- fixed test to add gempub-support in features.
- removed exiting from configure if unzip is not found.
- removed generated file config.lisp.in.
2021-08-21 cage
* src/package.lisp,
* src/zip-info.lisp:
- added zip-info:list-entries.
2021-08-20 cage
* Makefile.in,
* configure,
* configure.ac,
* etc/shared.conf,
* po/POTFILES.in,
* po/it.po,
* po/tinmop.pot,
* src/config.lisp.in,
* src/config.lisp.in.in,
* src/filesystem-utils.lisp,
* src/os-utils.lisp,
* src/package.lisp,
* src/program-events.lisp,
* src/ui-goodies.lisp,
* src/zip-info.lisp,
* tinmop.asd:
- added 'temporary-directory'.
- added 'unzip-file';
- added dependency on 'unzip';
- added draft of gpub support;
- added function 'zip-file-p' to recognize zip files.
- fixed typo.
- fixed zip-info conatant name.
- sorted directory entries when rendering a directory using tinmop.
- updated tranlation template files and italian translation.
2021-08-16 cage
* etc/init.lisp,
* etc/shared.conf,
* src/complete.lisp,
* src/db.lisp,
* src/gemini/gemini-parser.lisp,
* src/gemini/package.lisp,
* src/gemini/subscription.lisp,
* src/package.lisp,
* src/program-events.lisp,
* src/ui-goodies.lisp:
- added a title to bookmark page.
- added deletion of bookmark's entries.
- prevented crash when opening tour mode links and configuration
directive 'open-message-link-window.close-after-select' values 'yes'.
- set open-message-link-window.close-after-select to 'yes'.
- started with gemini link bookmark.
2021-08-15 cage
* src/ui-goodies.lisp:
- prevented a race condition occurring when accessing the database on
program quit.
2021-08-14 cage
* po/it.po,
* src/command-window.lisp,
* src/complete.lisp,
* src/db.lisp,
* src/keybindings.lisp,
* src/line-oriented-window.lisp,
* src/package.lisp,
* src/program-events.lisp,
* src/ui-goodies.lisp,
* src/windows.lisp:
- complete in a different way things that looks like local paths when
opening gemini address.
- fixed italian format string.
- fixed regression: command apropos works again.
- ignored error when refreshing gemlogs.
- move cursor to the end of th estring when browsing command line's
history.
- prevented a crash when opening a directory that does not exists on
local filesystem.
- prevented two messages with the same message-index presents in the
same folder and timeline.
- refactored gemlog updating event.
2021-08-13 cage
* src/command-window.lisp,
* src/line-oriented-window.lisp,
* src/package.lisp,
* src/tags-window.lisp,
* src/thread-window.lisp,
* src/windows.lisp:
- forced resizing of suggestion window when terminal is resized.
- improved macro 'when-window-shown' to prevent crash of the program
when terminal window is too small.
2021-08-12 cage
* etc/init.lisp,
* etc/shared.conf,
* modules/expand-abbrev-command-window.lisp,
* po/it.po,
* po/tinmop.pot,
* src/program-events.lisp,
* src/text-utils.lisp,
* src/ui-goodies.lisp:
- added loading module for abbreviation by default in config file.
- changed abbrevation.
- made gemlog's updating non blocking.
- prevented crash when teminal height was to small to fits suggetion
window.
- updated italian translation.
2021-08-07 cage
* Makefile.in,
* modules/expand-abbrev-command-window.lisp,
* src/complete-window.lisp,
* src/keybindings-window.lisp,
* src/text-utils.lisp:
- prevented crash when suggestion windows are shown when the width of
the terminal was too thin paginating the suggestions failed.
- updated Makefile.in to include new module.
- updated docs for module.
2021-08-06 cage
* Makefile.am,
* Makefile.in,
* etc/init.lisp,
* modules/expand-abbrev-command-window.lisp,
* src/command-window.lisp,
* src/hooks.lisp,
* src/package.lisp:
- added a module to expand abbreviations for the command window.
- added keychord to opening gemini certificate window from global
keymap.
- allowed switching off abbreviations on the command-window.
- instructed Makefile to install module 'expand-abbrev-command-window'.
- removed nobase in Makefile.am.
2021-08-05 cage
* ChangeLog,
* Makefile.am,
* Makefile.in,
* install-sh:
- prevented stripping of directory for data and doc files;
- updated Changelog.
2021-08-03 cage
* etc/init.lisp,
* src/package.lisp,
* src/ui-goodies.lisp:
- [gemini] added a procedure to import tls certificates.
2021-07-31 cage
* doc/tinmop.man,
* src/command-window.lisp,
* src/main.lisp,
* src/open-message-link-window.lisp,
* src/package.lisp,
* src/program-events.lisp,
* src/scheduled-events.lisp,
* src/software-configuration.lisp,
* src/ui-goodies.lisp,
* doc/man.org,
* etc/shared.conf,
* etc/shared.conf,
* src/line-oriented-window.lisp,
* src/package.lisp,
* src/program-events.lisp,
* src/software-configuration.lisp,
* src/tour-mode-parser.lisp:
- added a configuration directive to update subscription to gemlogs
at starts;
- added scheduled events when program starts;
- made update to gemlog less blocking;
- increased default history purging threshold;
- prevented out of bound condition when scrolling message-window's
contents (this was actually a regression);
- added a configuration directive to close the link window after a
link has been selected;
- relaxed a bit the tour mode indices parser (allow multiple
consecutive separator and comma as separator);
- made less confusing complete command line.
- fixed manpage.
2021-07-29 cage
* doc/man.org,
* doc/tinmop.man:
- updated manpage, explained command line keys;
- updated manpage in man format.
2021-07-26 cage
* ChangeLog,
* src/constants.lisp,
* src/line-oriented-window.lisp,
* src/message-window.lisp,
* src/package.lisp,
* src/9p-client/client.lisp:
- wrapped function in '(eval-when..'. - updated/fixed Changelog.
- added client.lisp
- added adjust-strategy-last to show text in message-window;
- removed call to 'adjust-selected-rows' when redrawing
message-window;
- fixed 'adjust-selected-rows', was never actually called.
2021-07-26 cage
* ChangeLog,
* src/9p-client/client.lisp,
* src/constants.lisp,
* src/line-oriented-window.lisp,
* src/message-window.lisp,
* src/package.lisp:
- wrapped function in '(eval-when..'.
- updated/fixed Changelog.
- added adjust-strategy-last to show text in message-window;
- removed call to 'adjust-selected-rows' when redrawing
message-window;
- fixed 'adjust-selected-rows', wa never actually called.
- added client.lisp
2021-07-25 cage
* src/complete.lisp,
* src/constants.lisp,
* src/gemini-viewer.lisp,
* src/gemini-viewer.lisp,
* src/main-window.lisp,
* ChangeLog,
* etc/shared.conf,
* src/command-window.lisp,
* src/software-configuration.lisp:
- suppressed printing of three notes;
- [gemini] added "no wait" directive when downloading non gemini
text format from gemini: allow opening file before it is downloaded completely;
- revert to old completion method for non URI;
- added type declaration to remove optimization note;
- updated Changelog.
2021-07-23 cage
* src/command-window.lisp,
* src/complete-window.lisp,
* src/complete.lisp,
* src/conditions.lisp,
* src/gemini/client.lisp,
* src/package.lisp,
* src/text-utils.lisp:
- implemented cut line from point (using "^K") in command window;
- fixed typo;
- [gemini] added moving selected uri from suggestion window using
Tab key;
- resetted selected item position when a 'suggestion-window' is
shown;
- changed the way the input is completed, complete with current
selected item in suggestion window;
- [gemini] used fuzzy matching when looking for URI in history.
2021-07-22 cage
* etc/default-theme.conf,
* etc/default-theme.conf,
* etc/init.lisp,
* etc/init.lisp,
* src/command-window.lisp,
* src/complete-window.lisp,
* src/complete-window.lisp,
* src/complete.lisp,
* src/message-window.lisp,
* src/package.lisp,
* src/software-configuration.lisp,
* src/tests/text-utils-tests.lisp,
* src/text-utils.lisp,
* src/tui-utils.lisp:
- removed empty lines in sources;
- [gemini] changed streaming animation;
- [gemini] allowed open gemini links from gemlog subscription
window;
- highlighted a bit more matched characters in 'suggestion-window';
- fixed padding when fitting suggestions into 'suggestion-win'.
- allowed selecting a suggestion from suggestion-window; -
highlighted matching characters in suggestion window.
2021-07-17 cage
* etc/default-theme.conf,
* etc/shared.conf,
* modules/rewrite-message-urls.lisp,
* src/gemini/client.lisp,
* src/gemini/gemini-parser.lisp,
* src/gemini/package.lisp,
* src/message-window.lisp,
* src/package.lisp,
* src/software-configuration.lisp,
* src/tui-utils.lisp:
- [gemini] removed link prefix for link labels that starts with an
emoji;
- [gemini] removed splitting of long link labels;
- fixed output stream of 'print-debug'.
2021-07-16 cage
* src/db.lisp,
* src/emoji-matcher.lisp,
* src/gemini/client.lisp,
* src/gemini/gemini-parser.lisp,
* src/gemini/package.lisp,
* src/package.lisp:
- [gemini fixed validity check for client certificate (thanks op!);
- removed link prefix if link line starts with an emoji.
2021-07-15 cage
* etc/init.lisp,
* src/emoji-matcher.lisp,
* src/gemini-viewer.lisp,
* src/package.lisp,
* src/program-events.lisp,
* LICENSES.org;
- [gemini] fixed missing rendering of search query results.
- made clear source and license of the emojis;
- fixed docstring (thanks op!);
- prevented a crash when refresh of chats hits a network error.
- added 'emojip'.
- added 'starts-with-emoji-p'.
- renamed 'starts-with-emoji-p' to 'starting-emoji'.
2021-07-14 cage
* etc/default-theme.conf,
* src/9p-client/client.lisp,
* src/message-window.lisp,
* src/package.lisp,
* src/program-events.lisp,
* src/software-configuration.lisp:
- [gemini] added a visual hint while a gemini page is streaming contents;
- [9p] changed default for opening to 'read';
- [9p] added an example using 'stat'.
2021-07-10 cage
* src/program-events.lisp,
* src/windows.lisp,
* quick_quicklisp.sh.in,
* src/9p-client/client.lisp:
- changed croatoan's 'window-position' to 'widget-position';
- updated version of croatoan known to works with tinmop in
building script;
- [9p] added 'open-path' and 'slurp-file'.
2021-06-26 cage
* src/9p-client/conditions.lisp,
* src/9p-client/package.lisp,
* src/program-events.lisp,
* tinmop.asd,
* src/9p-client/client.lisp,
* src/9p-client/message-types.lisp,
* src/api-client.lisp:
- implemented a minimal 9p client.
2021-07-09 cage
* src/program-events.lisp,
* etc/init.lisp,
* src/gemini-viewer.lisp:
- used TAB to move to next unread message;
- remvod the BOM from a gemini text stream.
2021-07-06 cage
* quick_quicklisp.sh.in:
- pinned the commit of croatoan.
2021-07-05 cage
* README.org,
* README.txt:
- updated README.org (new building instructions).
2021-07-05 cage
* README.org,
* README.txt,
* configure,
* configure.ac,
* Makefile.in,
* quick_quicklisp.sh.in:
- updated building script to fetch croatoan from git.
2021-07-03 cage
* src/command-window.lisp,
* src/db-utils.lisp,
* src/main.lisp,
* src/ui-goodies.lisp,
* etc/default-theme.conf,
* src/constants.lisp,
* src/package.lisp:
- added a welcome window.
2021-06-29 cage
* NEWS.org:
* configure.ac,
* tinmop.asd,
* configure,
- updated building scripts.
- mentioned changelog in NEWS file.
2021-06-28 cage
* src/gemini/gemini-parser.lisp,
* src/message-window.lisp:
-[gemini] removed preformatted line truncate;
- [gemini] colored the alt text as the preformatted line (when
shown).
2021-06-27 cage
* src/message-window.lisp:
- do not show marks for empty lines.
2021-06-27 cage
* etc/default-theme.conf,
* src/message-window.lisp,
* src/package.lisp,
* src/software-configuration.lisp:
- marked that there is content on the left in message window
when scrolling horizontally.
2021-06-27 cage
* src/program-events.lisp:
- [gemini] forced redraw of the window when rendering a new gemini
stream.
2021-06-27 cage
* etc/init.lisp,
* src/message-window.lisp,
* src/package.lisp,
* src/ui-goodies.lisp:
- truncated long lines in message window and allowed horizontal
scrolling.
2021-06-25 cage
* src/program-events.lisp:
- fixed find-user-id-from-exact-acct, was returning a wrong user id.
2021-06-20 cage
* src/program-events.lisp:
- [gemini] prevented repainting of the message-window if not needed
when streaming gemini text from the net.
2021-06-18 cage
* src/gemini-viewer.lisp:
* src/gemini/subscription.lisp:
- [gemini] ensured the certificate is sent when performing a request;
- [gemini] prevented crash when a gemlog changed certificate and
post's list is refreshed.
2021-06-17 cage
* po/Makevars,
* po/it.po,
* po/tinmop.pot:
* src/scheduled-events.lisp,
* src/text-utils.lisp,
* src/tui-utils.lisp,
* src/ui-goodies.lisp,
* src/gemini-viewer.lisp,
* src/open-message-link-window.lisp,
* src/package.lisp,
* src/program-events.lisp:
* src/windows.lisp:
* src/gemini-page-toc.lisp:
- prevented crash when closing program while a gemini page is
rendering.
- updated Italian translation.
- changed three dots with ellipsis.
- [gemini] ensured we have not to wait a stream is completed
before opening a new one.
- ensured windows are cleared when terminal is resized.
- rearrange TOC window on resize.
- increased priority for message window text searching event.
2021-06-16 cage
* etc/shared.conf,
* src/line-oriented-window.lisp,
* src/message-window.lisp,
* src/open-message-link-window.lisp,
* src/package.lisp,
* src/package.lisp,
* src/ui-goodies.lisp,
* etc/init.lisp:
- [gemini] allowed scrolling of a gemini page when focus is on the
TOC.
- fixed regression: searching in the message window does not get
stuck at the first occurrence.
- shadowed 'split-lines' from croatoan.
- fixed regex for opening some files with tinmop (example: Open a
gemini file with tinmop only if a local file or served trough
gemini protocol.
2021-06-13 cage
* etc/init.lisp,
* src/api-client.lisp,
* src/db.lisp,
* src/package.lisp,
* src/program-events.lisp,
* src/ui-goodies.lisp:
- added feature: expand tree of posts fetching again even posts that
was deleted before;
- [gemini] allowed save in tour the selected link.
- [gemini] changed TOC callback: jump to page's section when
selecting TOC entry.
2021-06-12 cage
* src/line-oriented-window.lisp,
* src/ui-goodies.lisp:
- fixed selected-row-delete
- redraw following request window when an entry is deleted.
2021-06-09 cage
* quick_quicklisp.sh.in:
- fixed quick_quicklisp template file, was missing awk.
2021-06-05 cage
* src/line-oriented-window.lisp:
- fixed a regression that made the program crash when adding an
attachment to a post.
2021-05-30 cage
* etc/default-theme.conf,
* src/mtree-utils.lisp:
- improved appearance of keybindigs tree.
2021-05-29 cage
* src/ui-goodies.lisp:
- wrapped call to external editor to catch errors and print a
message.
2021-05-28 Omar Polo
* src/os-utils.lisp,
* src/software-configuration.lisp:
- looking for values of environment variables EDITOR and VISUAL if
the user did not specified an editor in the config file. If both
variables are empty use "ed".
2021-05-23 cage
* etc/init.lisp:
- [gemini] reverted tour mode keys to old ones "t t" -> "t"
there is usually no needs for explicitly open a TOC gemini window
as it is opened automatically when the gemini stream is completed.
2021-05-22 cage, Omar Polo
* AUTHORS,
* po/it.po,
* po/tinmop.pot,
* po/tinmop.pot,
* src/api-client.lisp,
* src/db.lisp,
* src/main-window.lisp,
* src/package.lisp,
* src/program-events.lisp,
* src/thread-window.lisp,
* etc/default-theme.conf,
* src/notify-window.lisp,
* src/package.lisp,
* src/software-configuration.lisp,
* src/thread-window.lisp:
- made geometry of notification window customizable (via
configuration file).
- made some stylistic changes to client's (pleroma) authorization
procedures.
- added AUTHORS file.
- [pleroma client authentication] (Omar Polo)
- don't unnecessarily bind *output-stream* (o.p.)
- reply to the HTTP client before closing the
connection
- always close the client socket
-updated Italian translation (cage, Omar Polo)
- added mentions rendering in the thread window modeline.
- decrease mentions count on the modeline when a status that
contains a mention is opened.
2021-05-18 cage
* src/gemini-viewer.lisp:
- [gemini] ensured cached text file are opened with tinmop or user
defined programs.
- [gemini] refresh TOC when rendering a cached gemini file.
2021-05-17 cage
* src/gemini-page-toc.lisp,
* src/program-events.lisp:
* src/open-message-link-window.lisp:
* src/gemini-viewer.lisp,
* src/open-message-link-window.lisp,
* src/program-events.lisp:
- [gemini] prevented moving focus to message window when opening a
link.
- [gemini] recycled TOC window between gemini pages.
- [gemini] fixed regression opening gemini link is possible again;
- prevented hiding of notifications by the gemini TOC window.
2021-05-16 cage
* etc/init.lisp,
* src/gemini-page-toc.lisp,
* src/gemini-page-toc.lisp,
* src/gemini-viewer.lisp,
* src/gemini/gemini-parser.lisp,
* src/gemini/gemini-parser.lisp,
* src/keybindings.lisp,
* src/line-oriented-window.lisp,
* src/message-window.lisp,
* src/message-window.lisp,
* src/open-message-link-window.lisp,
* src/package.lisp,
* src/program-events.lisp,
* src/software-configuration.lisp,
* src/ui-goodies.lisp,
* src/ui-goodies.lisp,
* tinmop.asd,
* etc/default-theme.conf,
* src/gemini-viewer.lisp,
* src/gemini-viewer.lisp,
* src/gemini-viewer.lisp,
* src/gemini/package.lisp,
* src/gemini/package.lisp,
* src/main-window.lisp,
* src/program-events.lisp,
* src/program-events.lisp,
* src/specials.lisp:
- added a generated TOC for gemini files.
- [gemini] fixed regression opening gemini link is possible again;
- prevented hiding of notifications by the gemini TOC window.
- [gemini] removed removing of text from TOC entry.
- [gemini] fixed row moving in TOC window.
- [gemini] ensured TOC is rendered only for rendering stream.
- [gemini] fixed parser, made many parser state variables
from function local to thread local;
- fixed 'line-oriented-widget:append-new-rows'; uses slots instead
of accessors as, for example, message window skips invisible
lines when specialized (on message-window) method 'rows' is called.
2021-05-15 cage
* src/program-events.lisp:
- prevented rendering gemini files in the message window when a toot
is shown.
2021-05-14 cage
* src/gemini/client.lisp,
* src/gemini/subscription.lisp:
- [gemini] fixed parsing of gemlog pages. Subtitle was never
recognized even if actually present.
2021-05-13 cage
* modules/rewrite-message-urls.lisp,
* src/line-oriented-window.lisp,
* src/message-window.lisp,
* src/misc-utils.lisp,
* src/open-message-link-window.lisp,
* src/package.lisp,
* src/program-events.lisp,
* src/ui-goodies.lisp:
- got rid of 'prepare-new-search' and 'cleanup-after-search';
- fixed misc:safe-subseq (subseq sequence -1)' does not signals an
error anymore.
2021-05-09 cage
* etc/shared.conf,
* src/gemini/gemini-parser.lisp:
- [gemini] fixed parsing of quoted lines, an empty line can be part
of the quote.
2021-05-09 cage
* src/main.lisp,
* src/os-utils.lisp:
- wrapped sb-ext:run-program;
- do not load configuration files if cli options '-h' or '-v' are
used.
2021-05-06 cage
* src/program-events.lisp:
- performed a cleanup of searching even if the search string is
empty or is not a valid regular expression.
2021-05-06 cage
* src/package.lisp,
* src/program-events.lisp:
- [gemini] expand tilde when trying to open a local file or
directory.
2021-05-04 cage
* src/tour-mode-parser.lisp,
* src/ui-goodies.lisp,
* src/package.lisp,
* tinmop.asd:
- [gemini] improved tour-mode the command accepts space separated
list of link index or link ranges (e.g: "5-7 1 2").
2021-05-02 cage
* README.org,
* README.txt,
* etc/init.lisp,
* po/it.po,
* po/tinmop.pot,
* src/message-window.lisp,
* src/ui-goodies.lisp,
* src/line-oriented-window.lisp,
* src/package.lisp:
- prevented out of bound condition when scrolling message-window's
contents. When user switched from a page to another shorter the
scrolling position was not restored, pointing outside the actual
text line counts. This prevent the correct rendering of the page
(a blank page is shown instead) and crash the software if
scrolling up. Thanks op!
- [gemini] fixed order of links when showing tour-mode's queue
(thanks op!).
- [gemini] changed gemini search site.
- updated italian translation.
- improved docstring for tour-mode.
- [gemini] improved tour-mode, allow collect links by regex not only
by indices.
2021-05-01 cage
* src/open-message-link-window.lisp,
* src/package.lisp,
* src/ui-goodies.lisp,
* etc/init.lisp,
* etc/init.lisp,
* src/package.lisp,
* src/ui-goodies.lisp:
- added a command to show the tour's queue.
- removed hardcoded list of windows that loose focus when focus is
changed.
- added tour mode to explore geminispace.
2021-04-28 cage
* doc/man.org,
* doc/tinmop.man,
* src/filesystem-utils.lisp,
* src/gemini-viewer.lisp,
* src/open-attach-window.lisp,
* src/package.lisp,
* src/program-events.lisp,
* src/stack.lisp,
* src/ui-goodies.lisp,
* src/windows.lisp,
* etc/init.lisp,
* src/gemini-viewer-metadata.lisp,
* src/package.lisp:
-[gemini] removed loop when going back in history. when follownig
a redirect both the original (the redirect) and the actual URI was
saved in the history. So if an user, after followed a redirect,
tried to go back would reach the same redirect, this generated a
loop;
- updating documentation (mentioning navigation keys);
- implemented a new method to move focus between windows (using
'M-arrowkeys').
2021-04-27 cage
* src/filesystem-utils.lisp,
* src/open-attach-window.lisp:
- fixed procedures that extract extension from a local path or an
URI.
2021-04-26 cage
* src/gemini/gemini-parser.lisp:
- fixed 'make-gemini-iri', was crashing the program when 'port'
argument was null.
2021-04-25 cage
* Makefile.am,
* Makefile.in,
* po/POTFILES.in,
* po/it.po,
* po/tinmop.pot,
* src/program-events.lisp,
* src/text-utils.lisp:
- updated italian translation.
- fixed text-utils:percent-encoded-p, an empty string is not
percent-encoded;
- raised a better error when an empty string is entered as a gemini
address;
- instructed Makefile to recompile the package if a source is
modified;
- updated italian translation.
2021-04-24 cage
* src/gemini/gemini-parser.lisp:
- [gemini] omitted default port when building URI.
2021-04-23 cage
* src/filesystem-utils.lisp:
- used 'mkstemps' intead of 'mkstemp' as the latter does not
supports suffix and the temporary keeps the same names.
2021-04-21 cage
* modules/rewrite-message-urls.lisp,
* src/message-window.lisp,
* src/package.lisp:
- optimized module 'rewrite-message-urls.lisp'.
- fixed end position for 'visible-rows'
2021-04-20 cage
* src/message-window.lisp:
- fixed rendering of text: all text is now rearranged to fit
the window.
2021-04-16 cage
* src/gemini/gemini-parser.lisp,
* src/iri-parser.lisp,
* src/package.lisp,
* src/tests/iri-tests.lisp,
* src/text-utils.lisp,
* src/gemini/client.lisp:
- quote meta characters when matching for RE, searching for a common
prefix from a bag of strings.
- [gemini] allowed to connect to host using IP address instead of
hostname;
- fixed 'make-gemini-iri', was building wrong IRI with IP6 address
as host;
- trimmed square brackets from IP literal when parsing an IRI;
- [gemini] prevented trimming of preformatted gemtext line.
2021-04-13 cage
* src/gemini/gemini-parser.lisp,
* src/gemini/package.lisp,
* src/message-window.lisp,
* src/package.lisp,
* src/tui-utils.lisp,
* LICENSES.org,
* src/follow-requests.lisp,
* src/text-utils.lisp,
- added 'remove-corrupting-utf8-chars' to clean up rendered text
from trouble characters.
-[gemtext] added metadata for list, header lines and link lines;
- fixed processing of follow requests.
2021-04-11 cage
* modules/rewrite-message-urls.lisp,
* src/line-oriented-window.lisp,
* src/message-window.lisp,
* src/package.lisp,
* src/ui-goodies.lisp,
* etc/init.lisp,
* src/gemini/gemini-parser.lisp,
* src/message-window.lisp:
- [gemini] added feature to toggle preformatted block on/off;
- [gemini] trimmed alt-text; - reworded some functions;
- specialized message-window' to skip invisible rows.
2021-04-10 cage
* modules/rewrite-message-urls.lisp,
* src/gemini-viewer.lisp,
* src/gemini/package.lisp,
* src/line-oriented-window.lisp,
* src/open-attach-window.lisp,
* src/package.lisp,
* src/program-events.lisp,
* src/software-configuration.lisp,
* src/thread-window.lisp,
* src/tui-utils.lisp,
* modules/rewrite-message-urls.lisp,
* src/gemini-viewer.lisp,
* src/gemini/gemini-parser.lisp,
* src/hooks.lisp,
* src/main.lisp,
* src/message-window.lisp,
* src/text-utils.lisp,
* src/ui-goodies.lisp:
- exit from the program, without launching the debugger, when the
configuration module was not found but notify a warning, instead,
if the module was not essential (like when loaded from the command
line using switch "-M");
- load a module even if loading an URL has been requested from the
command line;
- [gemini] ensured tail call when downloading a non-text file;
- fixed RE in 'open-attach-window:get-extension';
- fixed bug that prevented to open an attachment from cached file.
- rewritten rendering of text in message window i got rid of slot
support-text in message-window, so that class does not maintain a
state.
- changed behaviour of split-line (split-line (format nil "~2%"))
; => ("" "") That is an empty line is returned as empty string and
not skipped Thanks to people from IRC and cl-ppcre maintainer for
help!
- [breaking changes] changed 'hooks:*before-prepare-for-rendering-message* with
'hooks:*before-rendering-message-text*.
021-04-08 cage
* src/conversations-window.lisp,
* src/gemini-subscription-window.lisp,
* src/gemini-viewer.lisp,
* src/gemini/package.lisp,
* src/message-rendering-utils.lisp,
* src/open-attach-window.lisp,
* src/package.lisp,
* src/sending-message.lisp,
* src/thread-window.lisp,
* src/ui-goodies.lisp,
* src/chats-list-window.lisp,
* src/follow-requests.lisp,
* src/gemini-client-certificates-window.lisp,
* src/gemini/gemini-parser.lisp,
* src/line-oriented-window.lisp,
* src/message-window.lisp,
* src/open-message-link-window.lisp,
* src/program-events.lisp,
* src/tags-window.lisp,
- [gemini] tag preformatted text lines with metadata (group-id and
alt text).
- discouraged use of slot 'rows' for 'row-oriented-widget', used API
instead.
2021-04-07 cage
* src/program-events.lisp:
- [gemini] removed unused arg from 'refresh-gemini-message-window'.
2021-04-06 cage
* src/line-oriented-window.lisp,
* src/message-window.lisp,
* src/open-message-link-window.lisp,
* src/package.lisp,
* src/program-events.lisp,
* src/ui-goodies.lisp:
- fixed searching in links or gemini pages: searching starts from
the first row.
- fixed search in message window. If more than one occurrence of
the matched string was present (in the same line) drawing the last
will overwrite the others.
2021-04-05 cage
* etc/default-theme.conf,
* modules/rewrite-message-urls.lisp,
* src/gemini/client.lisp,
* src/gemini/gemini-parser.lisp,
* src/gemini/gemini-parser.lisp,
* src/gemini/package.lisp,
* src/gemini-viewer.lisp,
* src/line-oriented-window.lisp,
* src/message-window.lisp,
* src/message-window.lisp,
* src/misc-utils.lisp,
* src/package.lisp,
* src/program-events.lisp,
* src/program-events.lisp,
* src/software-configuration.lisp,
* src/thread-window.lisp,
* src/tui-utils.lisp,
* src/ui-goodies.lisp:
- fixed search in message-window;
- there was a lot of problems related to type of an element of
'rows', they must be always a complex string - moreover there was
an incorrect positioning of the matching string when character
with column width >1 was present before the string compatible with
the regex;
- changed 'source-text' to 'support-text'.
- removed debug message.
- fixed and simplified 'refresh-gemini-message-window', was always appending
contents.
- [gemini] fixed gemini text parser.
- [gemini] fixed rendering of quoted lines;
- [gemini] do not set, always append, source text when refreshing a
gemini window.
- [gemini] started coloring preformatted block.
2021-04-03 cage
* src/complete.lisp,
* src/gemini/client.lisp,
* src/gemini/gemini-parser.lisp,
* src/gemini-viewer.lisp,
* src/main.lisp,
* src/message-window.lisp,
* src/open-message-link-window.lisp,
* src/package.lisp,
* src/program-events.lisp,
* src/program-events.lisp,
* src/ui-goodies.lisp:
- [gemini] improved rendering of quoted text.
- [gemini] percent encoded paths when exploring local file systems.
- fixed crash when 'contains-clsr' is called This function called
cl-ppcre:create-scanner but if the argument to this function can
not be interpreted as a valid regex (e.g "["), an error was
signalled.
- [gemini] fixed bug that prevented a page to be reloaded; -
[gemini] use cache, if possible, when opening a gemini url.
2021-04-01 cage
* src/filesystem-utils.lisp,
* src/iri-parser.lisp,
* src/tests/iri-tests.lisp,
* src/tests/uri-tests.lisp,
* src/uri-parser.lisp:
* etc/shared.conf,
* src/filesystem-utils.lisp,
* src/gemini-viewer.lisp,
* src/gemini/client.lisp,
* src/gemini/gemini-parser.lisp,
* src/gemini/package.lisp:
- fixed, again fs:dirp;
- fixed iri parser (parses correctly IRI like mailto:...).
- moved to an internal wrapping of 'mkstemp' to allow extensions in
filename;
- [gemini] rendering all stream with MIME type "text/*" with this
program.
2021-03-28 cage
* etc/default-theme.conf:
* src/filesystem-utils.lisp,
* src/open-message-link-window.lisp,
* src/os-utils.lisp,
* src/package.lisp,
* src/program-events.lisp,
* src/program-events.lisp,
* src/tests/uri-tests.lisp,
* etc/shared.conf,
* src/open-attach-window.lisp,
* src/software-configuration.lisp,
* src/uri-parser.lisp,
- [gemini] allowed exploring directory using relative path;
- [gemini] allowed opening a file using tinmop itself
(example: opening a gemini text file);
- added a more hi-level function to open a file with an external
program.
- this function takes into account the file that should be
opened with tinmop and uses 'xdg-open' as fallback if the user did
not specified an association program file-type.
- fixed 'uri:normalize-path';
- [gemini] cleaned paths when exploring local tree;
- changed link color when printed in link windows;
- cleaned a bit reults of 'prepend-pwd'.
2021-03-27 cage
* src/filesystem-utils.lisp,
* src/gemini/client.lisp,
* src/gemini/package.lisp,
* src/iri-parser.lisp,
* src/main.lisp,
* src/open-message-link-window.lisp,
* src/package.lisp,
* src/package.lisp,
* src/uri-parser.lisp,
* src/gemini-viewer.lisp,
* src/gemini-viewer.lisp,
* src/gemini/gemini-parser.lisp,
* src/html-utils.lisp,
* src/open-message-link-window.lisp,
* src/program-events.lisp,
* src/ui-goodies.lisp:
- [gemini] added feature: loading local gemini folders or files from command
line (switch: '-o') or using TUI;
- used 'load-gemini-url', when possible, to avoid duplication.
2021-03-14 cage
* src/api-pleroma.lisp,
* src/main.lisp:
- fixed chat API;
- fixed regression, loading scripts works again.
2021-03-13 cage
* src/api-pleroma.lisp:
* src/db.lisp:
- used version 2 for get chats;
- changed the way a message is deleted: when deleting a reblogging
message delete the reblogged message as well. This way quit
should be faster as the folder ".reblogged" can not grows without
limit anymore;
- made explicit the folder for parent (reblogged) messages;
- fixed docstring.
2021-03-09 cage
* README.txt,
* configure,
* etc/init.lisp,
* po/it.po,
* po/tinmop.pot,
* src/gemini-viewer.lisp,
* src/message-window.lisp,
* src/program-events.lisp,
* src/software-configuration.lisp,
* NEWS.org,
* README.org,
* src/package.lisp:
- fixed typos in NEWS.org;
- reverted method of rendering of text in message window to a
line-based one. The old method that packed text got from Gemini
stream in single event was ugly and blocked the UI. This version
revert to a line by line rendering but it is optimized and does
not gets slow with the size of the text the window holds;
- added command for sending to pipe contents of message windows;
- made nicer the error message when a directive is missing from
configuration file;
- updated README (new installation instruction and mentioning
openssl);
- updated translations files; - updated configure (new version
number).
2021-03-03 cage
* configure.ac,
* tinmop.asd,
* NEWS.org:
- updated version number and NEWS file.
2021-02-27 cage
* configure:
* Makefile.in,
- updated building script and Makefile.
2021-02-26 Omar Polo
* configure.ac:
- use autoconf' ${AWK} instead of looking for gawk This also fixes
an instance of `awk' that should be ${AWK}
2021-02-26 Omar Polo
* compare_version.awk:
- avoid strtonum (a GNU AWK extension) this drops the requirements
on strtonum, making the script (AFAIK) POSIX compliant. This
(ab)uses the fact that `+' will cast its operator to numbers.
Tested with GNU AWK and "The One True AWK" on OpenBSD.
2021-02-21 cage
* src/gemini-viewer.lisp,
* src/package.lisp,
* etc/shared.conf,
* src/software-configuration.lisp:
- [gemini] made fetching of favicon opt-in by default tinmop will
not fetch favicon.txt anymore, this feature must be enabled by
user using a configuration directive.
2021-02-20 cage
* src/api-client.lisp:
- fixed crash when starting the program without a configuration
file.
2021-02-19 cage
* src/keybindings-window.lisp,
* src/windows.lisp,
* src/complete-window.lisp,
* src/notify-window.lisp:
- changed ':draw-border' to ':border' to track the new croatoan API.
2021-02-19 cage
* src/api-pleroma.lisp,
* src/api-client.lisp:
- added version 2 of get chat list endpoint.
2021-02-18 cage
* src/tui-utils.lisp:
- fixed append.
2021-02-18 cage
* src/package.lisp,
* src/tui-utils.lisp,
* src/misc-utils.lisp,
* src/software-configuration.lisp:
- improved a bit rendering speed of text in message window.
2021-02-13 cage
* etc/default-theme.conf,
* etc/shared.conf,
* src/open-attach-window.lisp,
* src/software-configuration.lisp:
* src/package.lisp:
- allowed users (via configuration directive) to use (or not) cache
when opening a link with a custom program.
2021-02-11 cage
* src/software-configuration.lisp:
- prevented crash when a program to open a link is not found.
2021-02-10 cage
* README.txt:
* etc/default-theme.conf,
* src/open-message-link-window.lisp,
* src/package.lisp,
* README.org,
* src/os-utils.lisp,
* src/software-configuration.lisp:
- added configuration directive to use a specific program to open
a link (e.g. open all mp3 files with program mpv);
- updated README, if no configuration file is given tinmop can be
used as a gemini client.
2021-02-09 cage
* src/gemini/client.lisp,
* src/gemini-viewer.lisp:
- [gemini] removed useless 'unwind-protect' (and simplified code)
from 'gemini-client:request';
- [gemini] in gemini-client:request-dispatch signal a condition
('not-implemented-error') instead of doing nothing when a response
in not handled (i.e. no function for that response type exists).
2021-02-07 cage
* src/gemini-viewer.lisp:
- [gemini] ensured 'gemini-viewer:request' respects the 'enqueue'
argument when making recursive call to itself.
2021-02-07 cage
* src/conditions.lisp, src/gemini-viewer.lisp,
src/gemini/client.lisp: - [gemini] rewritten gemini-viewer:request using
gemini-client:request-dispatch machinery; hopefully this should made
the function easier to read (by human) and extend.
2021-02-06 cage
* src/gemini/client.lisp,
* src/hooks.lisp,
* src/package.lisp:
* src/db.lisp,
* src/gemini-viewer.lisp,
- replaced local function 'fetch-cached-certificate' with a global;
- replaced local function with a global one;
- added hook '*after-saving-message*.
2021-02-02 cage
* src/gemini-viewer.lisp,
* src/program-events.lisp,
* src/tui-utils.lisp:
* src/package.lisp,
- fixed indentation of 'gemini-viewer:request';
- [gemini] encoded the input string before making the request;
- prevented crash when sending message to command did not worked.
Printing error to command line instead.
2021-01-31 cage
* README.org,
* README.txt,
* aclocal.m4,
* configure,
* src/gemini/client.lisp,
* src/grovel-idn.lisp,
* src/package.lisp,
* src/tests/idn-tests.lisp,
* tinmop.asd,
* Makefile.in,
* configure.ac,
* src/idn.lisp,
* src/tests/package.lisp:
- removed dependency from libidn2 punycode encoding comes from an
internal implementation instead of using an C library.
2021-01-28 cage
* src/gemini-viewer.lisp,
* src/gemini/package.lisp,
* src/package.lisp,
* src/software-configuration.lisp,
* src/ui-goodies.lisp,
* etc/default-theme.conf,
* src/gemini/client.lisp,
* src/gemini/subscription.lisp,
* src/program-events.lisp:
- [gemini] added support for favicon.txt, the implementation more
or less follow gemini://mozz.us/files/rfc_gemini_favicon.gmi but
it does render the first character of the file instead of checking
for emoji characters;
- [gemini] fixed canceling subscription to gemlogs.
2021-01-27 cage
* src/complete.lisp,
* src/db.lisp,
* etc/default-theme.conf:
- made input command history less messy
- adding a sequence of n equals entries count as one (no duplicate
entries on top of the history);
- removed duplicate for gemini history URL.
2021-01-24 cage
* etc/default-theme.conf,
* src/message-rendering-utils.lisp,
* src/software-configuration.lisp,
* src/text-utils.lisp,
* src/ui-goodies.lisp,
* etc/default-theme.conf,
* src/gemini/gemini-parser.lisp,
* src/package.lisp,
* src/tags-window.lisp:
- added feature to allow users to configure symbols rendered for
each toot visibility level in main window.
- prevented crash truncating the scaled width of tags window.
- prevented non rendering of 'new-message' character in tags window.
- made 'text-utils:strim-blanks' returns nil and not "NIL" when
input is null;
- [gemini] trim white spaces from link name.
- [gemini] shown selected row in gemlog subscription window.
2021-01-23 cage
* src/db-utils.lisp,
* src/db.lisp,
* src/message-rendering-utils.lisp,
* src/thread-window.lisp,
* src/gemini-viewer.lisp,
* src/gemini/client.lisp,
* src/gemini/package.lisp,
* src/gemini/subscription.lisp:
- changed db-nil-p this function was transforming "no" and even
0.0 (floating point number) to nil. That behaviour was incorrect
for numbers and probably not desirable for the string "No" (in
fact poll with "No" option was not rendered because of this).
Removed conversion for non- integer numbers and prevented
conversion from some kind of non empty string (like "nil" or "no")
via a key argument.
- [gemini] made slurp-gemini-url works with redirect; - [gemini]
made some refactoring for building redirect IRIs.
2021-01-18 cage
* src/db.lisp,
* src/gemini-subscription-window.lisp:
- [gemini] fixed purging and refreshing posts from subscribed gemlog
- changing deleting of posts references to logical deleting
(i.e. setting a boolean column to true); - fixed time threshold
for purging (must be a negative integer).
2021-01-17 cage
* po/it.po,
* po/tinmop.pot,
* src/keybindings.lisp,
* src/tui-utils.lisp,
* src/ui-goodies.lisp:
* src/gemini-viewer.lisp,
- shown a message when user's searching for commands returns no
results. - updated Italian translation - improved a bit a single
docstring
- [gemini] fixed test for checking valid cached value for
certificate/key pair. The function to find a cached
certificate/key or create a new pair returns a multiple value. I
was using multiple-value-list for getting the pairs
certificate/key from said functions. Then i was checking the
results of 'multiple-value-list' for null values to get the non
correct pair, but that expression never return nil (was returning
'(nil) instead). This was breaking the client authentication.
2021-01-16 cage
* src/main.lisp,
* src/package.lisp,
* src/software-configuration.lisp:
- added some more tests for checking missing values from
configuration files.
2021-01-13 cage
* configure,
* configure.ac:
* po/tinmop.pot:
* src/package.lisp,
* src/resources-utils.lisp,
* po/it.po,
* src/main.lisp,
* src/software-configuration.lisp,
- Reportedly the program works with 1.4.16.
- suggest the user how to bypass the compiler check
- create an empty config file if the user did not provided one,
instead of printing an error and exit.
- updated Italian translation.
2021-01-12 cage
* src/api-client.lisp,
* src/api-pleroma.lisp,
* src/package.lisp:
- prevented authorization of client if no server name has been
provided by the user in the config file.
2021-01-11 cage
* po/POTFILES.in,
* po/it.po,
* po/tinmop.pot,
* src/db.lisp,
* src/open-message-link-window.lisp,
* src/package.lisp,
* src/program-events.lisp,
* src/scheduled-events.lisp,
* src/ui-goodies.lisp,
* src/open-message-link-window.lisp,
* src/ui-goodies.lisp:
- [gemini] ensure link opened is saved in history.
- [gemini] fixed rendering of 'seen' flag for gemini post;
- [gemini] mark post as read when opening the corresponding link.
- [gemini] prevent gemlog window to lose focus when a gemlog is
selected.
- made gemlog window close when focus passes to thread window.
- added scheduling of purging of old gemlog's posts;
- updated Italian translation.
2021-01-10 cage
* po/tinmop.pot,
* src/db.lisp,
* src/gemini-subscription-window.lisp,
* src/line-oriented-window.lisp,
* src/package.lisp,
* src/program-events.lisp,
* src/scheduled-events.lisp,
* src/ui-goodies.lisp:
* etc/init.lisp,
* po/it.po,
* src/gemini/subscription.lisp,
* src/package.lisp,
* src/program-events.lisp,
* src/ui-goodies.lisp,
- updated Italian translation;
- [gemini]
- added command to refresh all gemlogs;
- added scheduled refresh of all gemlogs;
- fixed sorting of gemlog posts;
- prevent crash when subscribing to an already subscribed gemlog;
- added cancel of subscriptions.
2021-01-09 cage
* aclocal.m4,
* configure,
* configure.ac,
* etc/init.lisp,
* po/tinmop.pot,
* src/db.lisp,
* src/gemini/gemini-parser.lisp,
* src/gemini/package.lisp,
* src/gemini/subscription.lisp,
* src/package.lisp,
* src/program-events.lisp,
* src/specials.lisp,
* src/ui-goodies.lisp,
* tinmop.asd,
* Makefile.in,
* etc/default-theme.conf,
* etc/init.lisp,
* po/it.po,
* src/gemini-subscription-window.lisp,
* src/gemini/package.lisp,
* src/grovel-idn.lisp,
* src/keybindings.lisp,
* src/program-events.lisp,
* src/software-configuration.lisp,
* src/ui-goodies.lisp:
- [gemini]
- added a draft for gemlog subscriptions;
- added subscription command to gemlog.
- used pkg-config in the libidn2 grovel file (thanks to yumh!);
- updated Italian translation;
- using pkg-config for checking libidn2 with configure script.
2021-01-08 cage
* src/gemini/client.lisp,
* src/gemini/package.lisp,
* src/html-utils.lisp,
* src/package.lisp,
* tinmop.asd:
* src/db.lisp,
* src/gemini/subscription.lisp,
* src/misc-utils.lisp,
- [gemini] Started with gemlog subscription, added database table and
interface and subscribing API.
2021-01-06 cage
* po/it.po,
* po/tinmop.pot,
* src/message-rendering-utils.lisp:
- rendered visibility of a status when printed on the main window;
- tested with latest croatoan: no problem so far;
- updated PO file.
2021-01-05 cage
* Makefile.am,
* Makefile.in:
- instructed Makefile to install the module
'rewrite-message-urls.lisp'.
2021-01-04 cage
* README.org,
* README.txt,
* doc/tinmop.man,
* doc/man.org:
- updated FAQ;
- updated manpage.
2021-01-03 cage
* README.org,
* README.txt,
* configure,
* configure.ac,
* src/gemini-viewer.lisp,
* src/grovel-idn.lisp:
* src/gemini-viewer-metadata.lisp,
-[gemini] added urls to history if document is loaded from cached
content too;
- added switch to disable compiler check at build time;
- updated README and FAQ;
- removed IDN2_ALABEL_ROUNDTRIP_FAILED and
IDN2_NO_ALABEL_ROUNDTRIP from grovel file for libidn2 This value
has been added lately to the C library and some system
(reportedly: Debian Buster) ships an old version of the library
without this enumeration's value. I am commenting out the code,
preventing grovel to process it for now.
2021-01-02 cage
* modules/rewrite-message-urls.lisp,
* src/open-message-link-window.lisp,
* src/program-events.lisp:
- fixed hooks for remapping links in gemini window.
- [modules] rewrite-message-urls, quoting regexp before replacing.
Also refactored some repeated code in a function.
- [modules] rewrite-message-urls: changed name function to avoid
conflicts with other modules.
2020-12-31 cage
* modules/next-previous-open.lisp,
* modules/rewrite-message-urls.lisp,
* src/hooks.lisp,
* src/hooks.lisp,
* src/main.lisp,
* src/misc-utils.lisp,
* src/open-message-link-window.lisp:
* src/package.lisp,
* src/scheduled-events.lisp,
* src/ui-goodies.lisp:
* etc/init.lisp,
* modules/rewrite-message-urls.lisp,
* src/command-line.lisp,
* src/main.lisp,
* src/open-message-link-window.lisp,
* src/program-events.lisp,
- added a profiling macro;
- added function to stop event dispatching;
- Added a command line switch to load a module;
- fixed 'run-hook-compose';
- reverse link order in window;
- added 'run-hook-compose';
- added a module to rewrite URLs;
- made scheduled updating of chat messages happening only when a
chat window is shown; this changes should make the program more
responsive when scrolling the text of the main window.
2020-12-30 cage
* etc/init.lisp,
* src/line-oriented-window.lisp,
* src/open-message-link-window.lisp,
* src/program-events.lisp,
* po/it.po,
* po/tinmop.pot,
* etc/init.lisp,
* src/os-utils.lisp,
* src/package.lisp,
* src/program-events.lisp,
* src/ui-goodies.lisp:
- allow repeat search on links window's items;
- updated Italian translation;
- added a command to send data to an external program.
2020-12-29 cage
* NEWS.org:
* etc/init.lisp,
* modules/share-gemini-link.lisp,
* src/complete.lisp,
* src/db.lisp,
* src/gemini-viewer.lisp,
* src/main.lisp,
* src/package.lisp,
* src/program-events.lisp,
* src/ui-goodies.lisp,
* LICENSES.org,
* etc/init.lisp,
* src/gemini-viewer-metadata.lisp,
* src/gemini/client.lisp,
* src/message-window.lisp,
* src/ui-goodies.lisp,
- added reference to cl-str;
- [gemini] fix split when separator is at the end of a path;
- using a cache for username completion;
- changed default completion function to "no completion";
- added mention to the person that helped to spot a bug;
- fixed NEWS.org;
- added command to scroll main window using 'newline' key;
- added command to repeat the last text search;
- [gemini] added a command to refresh a page;
- refactoring some code to add the above command.
2020-12-28 cage
* Makefile.in,
* modules/next-previous-open.lisp,
* src/gemini/client.lisp,
* src/modules.lisp:
* src/package.lisp,
* src/package.lisp,
* src/text-utils.lisp,
* src/text-utils.lisp,
* src/ui-goodies.lisp,
* Makefile.am,
* scripts/welcome-bot.lisp,
- fixed welcomebot and moved to a new directory "scripts";
Also export some symbols that this script uses, from others packages;
- improved 'percent-decoded-p';
- [gemini] allow percent encoding of query, path and fragment only
if not already encoded;
- added missing call to format;
- reorganized modules and scripts directories;
- removed spurious NIL when writing a message.
2020-12-27 cage
* Makefile.am,
* Makefile.in,
* doc/tinmop.man,
* modules/share-gemini-link.lisp,
* modules/welcome-bot.lisp,
* po/it.po,
* po/tinmop.pot,
* src/package.lisp,
* src/ui-goodies.lisp:
* doc/man.org,
* etc/init.lisp,
* po/POTFILES.in,
- used a parameter for the welcome message;
- updated manpage;
- updated italian translation;
- moved welcomebot script in the right directory when installed;
- added a module to share a gemini page on pleroma.
2020-12-26 cage
* doc/welcome-bot.lisp
* src/db.lisp:
- added a script for a welcome bot;
- fixed false positive for new message on subscribed tags.
2020-12-25 cage
* src/gemini-viewer.lisp,
* src/gemini/client.lisp,
* src/gemini/client.lisp:
* src/grovel-idn.lisp,
* src/iri-parser.lisp,
* src/tests/uri-tests.lisp,
* LICENSES.org,
* src/gemini/gemini-parser.lisp,
* src/tests/iri-tests.lisp,
* src/uri-parser.lisp:
- [gemini] percent encoding path query and fragment before performing
the request.
- removed warning for missing constants in grovel file.
- fixed IRI and URI parser;
- taken into account fragment of IRI;
- added more IRI and URI test;
- passes all the client tests.
2020-12-21 cage
* src/program-events.lisp:
- fixed swapped functions (unfollow -> follow).
2020-12-21 cage
* src/open-message-link-window.lisp:
- [gemini] fixed bug that prevented visit the same link more than
once.
2020-12-21 cage
* po/it.po, po/tinmop.pot:
- updated italian translation.
2020-12-21 cage
* src/api-client.lisp, src/package.lisp, src/program-events.lisp:
- improved following/unfollowing users previously only user that
had an entry in the program local database could be followed or
unfollowed. With this changes the software perform a name lookup
in the client and follow the first user found that match searched
username.
2020-12-20 cage
* quick_quicklisp.sh.in:
- removed installation of 'quri'.
2020-12-20 cage
* README.org, README.txt:
- removed mentioning of manual installation of tooter from README.
2020-12-17 cage
* src/complete.lisp, src/gemini-viewer.lisp,
src/gemini/client.lisp, src/gemini/gemini-parser.lisp,
src/gemini/package.lisp, src/package.lisp, src/program-events.lisp,
src/ui-goodies.lisp:
- changed 'uri' to 'iri' where does makes sense to me.
2020-12-17 cage
* src/gemini-viewer.lisp, src/program-events.lisp,
src/ui-goodies.lisp:
- [gemini] fixed bugs that prevented the same IRI to be opened
multiple-time.
2020-12-14 cage
* NEWS.org, configure, configure.ac, tinmop.asd:
- increased version;
- fixed typo.
2020-12-14 cage
* NEWS.org:
- updated documentation.
2020-12-14 cage
* ChangeLog:
- tracking changes.
2020-12-14 cage
* src/gemini-viewer.lisp, src/gemini/client.lisp,
src/gemini/gemini-parser.lisp, src/iri-parser.lisp:
- [gemini] switched from URI to IRI;
- fixed wrong slot symbol.
2020-12-13 cage
README.org
README.txt
configure
configure.ac
src/gemini-viewer.lisp
src/gemini/client.lisp
src/gemini/gemini-parser.lisp
src/iri-parser.lisp
src/iri-parser.lisp
src/iri-parser.lisp
src/package.lisp
src/package.lisp
src/tests/iri-tests.lisp
src/tests/package.lisp
src/uri-parser.lisp
tinmop.asd
- fixed ssl checking in configure script (was given error when the
library was actually found).
- added mention of gcc and xgettext in README.
- specialize 'normalize-path' on iri;
- changed package name: uri-parser -> uri.
- removed 'uri-' prefix from 'uri' slots names.
- added IRI parser.
2020-12-12 cage
README.org,
README.txt,
configure,
configure.ac,
src/grovel-idn.lisp,
src/idn.lisp,
src/package.lisp,
tinmop.asd:
- added minimal wrapping of libidn2;
- added library checks (libidn2 and libssl) to configure scripts;
- removed commented reference to quri.
2020-12-09 cage
* src/tests/package.lisp, src/tests/x509-tests.lisp, src/x509.lisp,
tinmop.asd:
- fixed segmentation fault whit FFI code (x509 certificate dump).
2020-12-08 cage
* src/ui-goodies.lisp:
- quit the program if user choose to keeps statuses marked for
deletion.
2020-12-08 cage
* etc/init.lisp, src/follow-requests.lisp, src/ui-goodies.lisp:
- exposed to the UI 'refresh-chats';
- fixed type in 'follow-request-window' slot;
- fixed docstring.
2020-12-07 cage
* src/api-client.lisp, src/follow-requests.lisp:
- fixed slot types declaration to allow compilation with newer SBCL.
2020-11-01 cage
* src/gemini-viewer.lisp, src/ui-goodies.lisp:
- [gemini] prevent overwriting of TOFU warning by other messages.
2020-10-25 cage
* LICENSES.org, src/gemini-viewer.lisp,
src/gemini/gemini-parser.lisp, src/package.lisp,
src/tests/gemini-parser-tests.lisp, src/tests/package.lisp,
src/tests/program-events-tests.lisp, src/tests/uri-tests.lisp,
src/uri-parser.lisp, tinmop.asd:
- replaced quri with an internal parser;
- [gemini] the client passes the torture test again;
- fixed event test.
2020-10-24 cage
* src/gemini-viewer.lisp:
- removed debug code.
2020-10-24 cage
* src/gemini-viewer.lisp, src/program-events.lisp:
- [gemini] fixed a regression, display again source of a gemini
file.
2020-10-24 cage
* src/gemini-viewer.lisp:
- [gemini] use named parameter in recursive requests.
2020-10-23 cage
* etc/default-theme.conf, etc/init.lisp, src/db.lisp,
src/gemini-client-certificates-window.lisp, src/gemini-viewer.lisp,
src/gemini/client.lisp, src/keybindings.lisp, src/os-utils.lisp,
src/package.lisp, src/program-events.lisp,
src/software-configuration.lisp, src/specials.lisp,
src/tui-utils.lisp, src/ui-goodies.lisp, tinmop.asd:
- [gemini] implemented a draft of a client authentication (via TLS
certificates).
2020-10-11 cage
* Makefile.am, Makefile.in, configure, configure.ac,
src/config.lisp.in, src/config.lisp.in.in, src/constants.lisp,
src/db.lisp, src/gemini-viewer.lisp, src/gemini/client.lisp,
src/gemini/package.lisp, src/os-utils.lisp, src/package.lisp:
- [gemini] starting using certificates;
- removed hardcoded 'xdg-open' binary name.
2020-10-06 cage
* src/gemini-viewer.lisp, src/package.lisp,
src/priority-queue.lisp, src/program-events.lisp:
- [gemini] remove a bottleneck when download of a gemini page is
completed;
Instead of process multiple events, each one with a single line to
render, compact all the lines in a single event and, then, process
all the lines at once.
2020-10-03 cage
* etc/init.lisp, src/complete.lisp, src/line-oriented-window.lisp,
src/open-message-link-window.lisp, src/package.lisp,
src/program-events.lisp, src/ui-goodies.lisp:
- added the possibility to search inside a widows that contains a
collection of links.
2020-10-02 cage
* NEWS.org, src/constants.lisp, src/program-events.lisp:
- actually use the compiled regex-scanner when searching text in the
message window;
- increased refresh frequency;
- removed author name from NEWS.org.
2020-10-01 cage
* src/program-events.lisp:
- [gemini] removed waiting for rendering of a page before going back
in browsing history.
2020-10-01 cage
* src/open-message-link-window.lisp, src/package.lisp,
src/program-events.lisp, src/ui-goodies.lisp:
- [gemini] fixed the stopping of rendering the old page when a new
link is opened;
- [gemini] added 'gemini-abort-all-downloading-event', used when
quitting.
2020-09-30 cage
* src/gemini-viewer.lisp, src/open-message-link-window.lisp,
src/package.lisp, src/priority-queue.lisp, src/program-events.lisp,
src/ui-goodies.lisp:
- [gemini] remove all pending rendering events when quitting.
2020-09-30 cage
* src/package.lisp, src/priority-queue.lisp,
src/program-events.lisp:
- [gemini] remove from the event queue all the lines got from a
gemtext download when aborting a download.
2020-09-27 cage
* src/api-client.lisp, src/api-pleroma.lisp, src/command-line.lisp,
src/package.lisp:
- removed method to delete notifications using old API new version
of pleroma implements the same API as mastodon 3.x;
- fixed command line switch to get notification for mentions.
2020-09-26 cage
* src/api-client.lisp:
- prevented crash when updating mentions The 'status' slot in a
'mention' object can be nil, in this case expand the tree does not
makes sense and should be avoided.
2020-09-26 cage
* src/program-events.lisp:
- add mentions only is not empty or nil, previous check just
tested for null.
2020-09-24 cage
* src/program-events.lisp:
- added mention only if non-nil (when sending a status).
2020-09-19 cage
* NEWS.org, configure, configure.ac, tinmop.asd:
- increased version.
2020-09-19 cage
* ChangeLog:
- tracking changes.
2020-09-19 cage
* src/stack.lisp:
- fixed 'stack-raise-to-top'
Swapping the position of the window to be raised with the head
of the was a bad idea. Sometimes a windows could go behind
the omnipresent windows (messages, thread etc.) and never shown
(as covered by the others).
2020-09-18 cage
* src/program-events.lisp:
- fixed indentation.
2020-09-18 cage
* src/os-utils.lisp, src/ui-goodies.lisp:
- lowered permanence of notification when updating timelines;
- fixed managing of editor arguments.
2020-09-12 cage
* po/it.po, po/tinmop.pot:
- updated italian translation.
2020-09-12 cage
* src/filesystem-utils.lisp, src/package.lisp, src/ui-goodies.lisp:
- added exit handler to clean temporary files.
2020-09-12 cage
* etc/shared.conf:
- improved regular expressions for message coloring.
2020-09-12 cage
* etc/shared.conf, src/gemini-viewer.lisp,
src/gemini/gemini-parser.lisp, src/package.lisp,
src/ui-goodies.lisp:
- [gemini] ensure just a single gemini file is in rendering state
at the same time;
- [gemini] add a newline to data before parsing a gemini file
only when needed (there is no one at the end);
- commented and improved some regular expressions for coloring.
2020-09-11 cage
* src/gemini-viewer.lisp:
- [gemini] clear the streams window before redrawing when refreshing
the window's contents.
2020-09-11 cage
* etc/init.lisp, src/open-message-link-window.lisp,
src/package.lisp, src/ui-goodies.lisp:
- [gemini] feature added: start downloading a gemini file in
background (i.e. without rendering on the window);
- removed explicit package name 'specials' in ui-goodies.lisp.
2020-09-10 cage
* po/it.po, po/tinmop.pot:
- updated italian translation.
2020-09-10 cage
* etc/default-theme.conf, src/chats-list-window.lisp:
- fixed chat list windows items.
2020-09-10 cage
* etc/init.lisp, src/api-pleroma.lisp,
src/line-oriented-window.lisp, src/message-window.lisp,
src/package.lisp, src/program-events.lisp, src/ui-goodies.lisp:
- added feature create new chat;
- fixed crash when selecting a chat with no messages.
2020-09-09 cage
* etc/default-theme.conf, etc/init.lisp,
src/chats-list-window.lisp, src/conversations-window.lisp,
src/db.lisp, src/package.lisp, src/program-events.lisp,
src/scheduled-events.lisp, src/software-configuration.lisp,
src/ui-goodies.lisp, src/windows.lisp:
- changed position and (configurable) colors for chat window;
- added feature: change chat labels.
2020-09-07 cage
* src/chats-list-window.lisp:
- prevent printing of chat messages from ignored users.
2020-09-06 cage
* po/it.po, po/tinmop.pot:
- updated italian translation.
2020-09-06 cage
* etc/init.lisp, src/db.lisp, src/open-message-link-window.lisp,
src/package.lisp, src/ui-goodies.lisp:
- added chat attachments browsing window.
2020-09-06 cage
* etc/init.lisp, src/chats-list-window.lisp, src/keybindings.lisp,
src/main.lisp, src/message-window.lisp, src/package.lisp,
src/program-events.lisp, src/scheduled-events.lisp,
src/ui-goodies.lisp:
- basics chats works.
2020-09-06 cage
* src/program-events.lisp, src/ui-goodies.lisp:
- given focus to message window when a chat is opened;
- scroll to end of chat when new message arrived.
2020-09-06 cage
* po/it.po, po/tinmop.pot, src/api-pleroma.lisp,
src/chats-list-window.lisp, src/complete.lisp, src/db.lisp,
src/main.lisp, src/message-window.lisp, src/package.lisp,
src/program-events.lisp, src/scheduled-events.lisp,
src/ui-goodies.lisp, tinmop.asd:
- posting on chats works;
- fixed ordering in db:all-chat-messages (message-id was not a
valid column name);
- added scheduled events;
- minor changes in labels.
2020-09-06 cage
* src/api-client.lisp, src/api-pleroma-entities.lisp,
src/api-pleroma.lisp, src/box.lisp, src/bs-tree.lisp,
src/chats-list-window.lisp, src/command-line.lisp,
src/command-window.lisp, src/complete-window.lisp,
src/conditions.lisp, src/config.lisp.in, src/constants.lisp,
src/conversations-window.lisp, src/crypto-utils.lisp,
src/date-formatter.lisp, src/db-utils.lisp, src/db.lisp,
src/emoji-shortcodes.lisp, src/filesystem-utils.lisp,
src/follow-requests.lisp, src/gemini-viewer-metadata.lisp,
src/gemini-viewer.lisp, src/gemini/client.lisp,
src/gemini/gemini-constants.lisp, src/gemini/gemini-parser.lisp,
src/gemini/package.lisp, src/hooks.lisp, src/html-utils.lisp,
src/interfaces.lisp, src/keybindings-window.lisp,
src/keybindings.lisp, src/line-oriented-window.lisp,
src/main-window.lisp, src/main.lisp,
src/message-rendering-utils.lisp, src/message-window.lisp,
src/misc-utils.lisp, src/modeline-window.lisp, src/modules.lisp,
src/mtree-utils.lisp, src/notify-window.lisp, src/num-utils.lisp,
src/open-attach-window.lisp, src/open-message-link-window.lisp,
src/os-utils.lisp, src/package.lisp, src/point-tracker.lisp,
src/priority-queue.lisp, src/program-events.lisp, src/queue.lisp,
src/rb-tree.lisp, src/resources-utils.lisp,
src/sending-message.lisp, src/software-configuration.lisp,
src/specials.lisp, src/stack.lisp, src/suggestions-window.lisp,
src/tags-window.lisp, src/tests/all-tests.lisp,
src/tests/box-tests.lisp, src/tests/gemini-parser-tests.lisp,
src/tests/misc-tests.lisp, src/tests/mtree-tests.lisp,
src/tests/numeric-tests.lisp, src/tests/package.lisp,
src/tests/program-events-tests.lisp,
src/tests/text-utils-tests.lisp,
src/tests/thread-window-tests.lisp, src/text-utils.lisp,
src/thread-window.lisp, src/tui-utils.lisp, src/ui-goodies.lisp,
src/windows.lisp, src/x509-ffi.lisp, src/x509.lisp:
- changed GPL comment headers.
2020-09-06 cage
* src/message-window.lisp:
- fixed vertical position of line mark in message window.
2020-09-06 cage
* src/line-oriented-window.lisp, src/message-window.lisp:
- fixed 'line-oriented-window:row-move' must return always a
number (0), not nil, when no movement occurs;
- fixed vertical scrolling boundaries of messages window.
2020-09-05 cage
* po/it.po, src/api-pleroma.lisp, src/program-events.lisp,
src/ui-goodies.lisp:
- minor cleaning.
2020-09-05 cage
* po/POTFILES.in, po/it.po, po/tinmop.pot:
- updated italian translation.
2020-09-05 cage
* etc/default-theme.conf, etc/init.lisp, etc/shared.conf,
src/api-pleroma-entities.lisp, src/api-pleroma.lisp,
src/chats-list-window.lisp, src/db.lisp, src/gemini-viewer.lisp,
src/keybindings.lisp, src/main.lisp, src/package.lisp,
src/program-events.lisp, src/software-configuration.lisp,
src/specials.lisp, src/ui-goodies.lisp, tinmop.asd:
- chats can be fetched, via UI, and printed on window.
2020-09-02 cage
* src/api-pleroma.lisp, src/package.lisp:
- [pleroma-API] added 'fetch-chat-message.
2020-09-02 cage
* src/api-pleroma.lisp, src/db.lisp:
- added tables for chats;
- fixed some slot names for chat entities.
2020-09-02 cage
* ChangeLog:
- tracking changes.
2020-09-02 cage
* src/api-pleroma.lisp, src/package.lisp:
- [pleroma-API] added a few function to use chats.
2020-08-30 cage
* configure, configure.ac, tinmop.asd:
- increased version.
2020-08-30 cage
* ChangeLog, NEWS.org:
- tracking changes.
2020-08-30 cage
* po/it.po, po/tinmop.pot:
- updated italian translation.
2020-08-30 cage
* etc/default-theme.conf, etc/init.lisp, etc/shared.conf,
src/gemini-viewer-metadata.lisp, src/gemini-viewer.lisp,
src/keybindings.lisp, src/package.lisp, src/program-events.lisp,
src/software-configuration.lisp, src/specials.lisp,
src/tui-utils.lisp, src/ui-goodies.lisp:
- [gemini] added a window to manage all the gemini streams opened.
2020-08-29 cage
* src/gemini-viewer.lisp:
- [gemini] starting download thread in ':rendering' status.
2020-08-29 cage
* configure, src/gemini-viewer-metadata.lisp,
src/gemini-viewer.lisp, src/open-message-link-window.lisp,
src/program-events.lisp, tinmop.asd:
- [gemini] added slot 'status-stream'.
This will allow to enqueue multiple documents download.
2020-08-28
* src/line-oriented-window.lisp
* src/open-message-link-window.lisp
* src/gemini-viewer.lisp
* src/misc-utils.lisp
- added vertical top padding for 'line-oriented-window'.
This means also that the gemini links window will render the link
name on top of the link uri.
- [gemini] wrapped non gemini download thread.
Also added a few of useful slots like temporary file path and number of
bytes downloaded so far.
2020-08-27
* src/gemini-viewer.lisp
* src/program-events.lisp
- added 'gemini-stream' class.
Starting wrapping streaming of gemini's data using hi level
structures (this way we can associate a for each stream), this
could be useful to let the user start or stop the stream or open the
data downloaded so far.
2020-08-19
* .gitignore
* Makefile.in
* etc/init.lisp
* src/db.lisp
* src/gemini-viewer.lisp
* src/gemini/client.lisp
* src/gemini/gemini-parser.lisp
* src/gemini/package.lisp
* src/html-utils.lisp
* src/line-oriented-window.lisp
* src/message-window.lisp
* src/misc-utils.lisp
* src/package.lisp
* src/program-events.lisp
* src/ui-goodies.lisp
* tinmop.asd
- Added Makefile.in.
- [gemini] allowed secret input;
- tracking changes in croatoan
some function in 'tui-utils' are just wrappers for the
equivalents in the library;
- added more docstrings;
- use new i18n feature form unix-opt to localize program's usage
messages.
2020-07-26
- [gemini] the parser has been modified to renders (in a separate
thread) the contents of a gemini file parsed so far without waiting
for the whole document to be read from the socket.
This feature should prevent blocking the client when the server
never close the socket (i.e. for streamed contents).
- [gemini] added the possibility to abort current page download.
2020-07-17
* src/program-events.lisp
- prevented a crash if an invalid regular expression is used
when searching in a message window.
2020-07-15
* etc/init.lisp
* po/it.po
* po/tinmop.pot
* src/gemini-viewer.lisp
* src/gemini-viewer.lisp
* src/gemini/client.lisp
* src/gemini/gemini-parser.lisp
* src/gemini/package.lisp
* src/package.lisp
* src/ui-goodies.lisp
- [gemini] parse link even if link name is empty
sometimes you can met a link like:
=>URI<space><linebreak>
even if this is, in my opinion, a malformed link (there should be a
text -the link name- after the space) parse anyway as if the link name
exists and is empty;
- [gemini] added the option to view gemini page's source.
- [gemini] fixed bug that prevented rendering of levels 3 headers;
- [gemini] fixed information string;
- updated italian translation.
2020-07-13
* etc/shared.conf
* src/message-rendering-utils.lisp
* src/message-window.lisp
- fixed regex for percent numbering;
- formatted as floating points votes percentage in polls.
2020-07-08
* etc/default-theme.conf
* etc/shared.conf
* src/command-line.lisp
* src/gemini/client.lisp
* src/gemini/gemini-parser.lisp
* src/gemini/package.lisp
* src/main.lisp
* src/package.lisp
* src/software-configuration.lisp
* tinmop.asd
- [gemini] made some elements of page rendering customizable
using 'gemini-page-theme' class some elements of the rendered page
(header prefix, bullet and so on) can be customized.
users can use configuration files directive to change the appearance of said elements
(both character and color or font variants);
- removed unused argument from command line switch: '-m'.
2020-07-06
* src/notify-window.lisp
* src/program-events.lisp
* src/ui-goodies.lisp
- correctly enqueued multiple "update timeline" commands.
2020-07-04
* po/it.po
* po/tinmop.pot
* quick_quicklisp.sh.in
* src/gemini-viewer.lisp
* src/gemini/client.lisp
* src/gemini/gemini-parser.lisp
* src/misc-utils.lisp
* src/package.lisp
* src/tui-utils.lisp
* src/ui-goodies.lisp
* tinmop.asd
- [gemini]
- using quri instead of puri library because the first has a better handling
of UTF-8;
- using binary stream instead of ASCII.
2020-07-02
* src/gemini/gemini-parser.lisp
* src/message-rendering-utils.lisp
* src/ui-goodies.lisp
- prevented crash when 'original-path' is nil;
- fix expanding of message threads: expands reblogged toots if exists;
- added some vertical space before rendering poll.
2020-06-29
* etc/next-previous-open.lisp
* po/it.po
* po/tinmop.pot
* src/gemini-viewer.lisp
- changed key for 'delete-and-move-next' command.
- updated italian translation.
- [gemini viewer] fixed history navigation.
2020-06-28
* etc/init.lisp
* src/gemini-viewer.lisp
* src/main.lisp
* src/message-window.lisp
* src/package.lisp
* src/program-events.lisp
* src/ui-goodies.lisp
- [gemini browser] added a 'go-back' command.
- made the program asks for redirects following only when the event
queue is empty;
- added 'gemini-request-event';
- gave focus back to message window when closing link window in
gemini mode.
- fixed bug that prevented to properly reset links list when in gemini mode;
- added command 'open-gemini-address';
- minor refactoring.
2020-06-27
* etc/init.lisp
* src/db.lisp
* src/hooks.lisp
* src/program-events.lisp
- added more parameters for each function that could be added to
`*skip-message-hook*';
- changed unique constrains for TOFU table.
2020-06-23
* LICENSES.org
* doc/man.org
* doc/tinmop.man
* etc/init.lisp
* po/it.po
* po/tinmop.pot
* src/command-line.lisp
* src/constants.lisp
* src/db.lisp
* src/filesystem-utils.lisp
* src/gemini-viewer.lisp
* src/gemini/client.lisp
* src/gemini/package.lisp
* src/main.lisp
* src/package.lisp
* src/ui-goodies.lisp
- changed function name: 'temporary-filename' to 'temporary-file';
- allowed the user to bypass TOFU exception;
- fixed TOFU check;
- used 'notify' instead of error message;
- added a command line option to retrieve a gemini URL.
2020-06-22
* LICENSES.org
* README.org
* README.txt
* doc/man.org
* doc/tinmop.man
* etc/init.lisp
* etc/shared.conf
* po/POTFILES.in
* po/it.po
* po/tinmop.pot
* quick_quicklisp.sh.in
* src/db.lisp
* src/filesystem-utils.lisp
* src/gemini-viewer.lisp
* src/gemini/client.lisp
* src/gemini/gemini-constants.lisp
* src/gemini/gemini-parser.lisp
* src/gemini/package.lisp
* src/keybindings.lisp
* src/line-oriented-window.lisp
* src/message-window.lisp
* src/open-message-link-window.lisp
* src/package.lisp
* src/stack.lisp
* src/tests/gemini-parser-tests.lisp
* src/tests/package.lisp
* src/text-utils.lisp
* src/ui-goodies.lisp
* src/x509-ffi.lisp
* src/x509.lisp
* tinmop.asd
- gemini client works, but missing client authorization using certificates
(codes 6x);
- TOFU works someway but appears to me it is an ugly hack.
2020-06-14
* LICENSES.org
* etc/init.lisp
* src/complete.lisp
* src/package.lisp
* src/text-utils.lisp
- prevented crash that happened when using an invalid regular
expression to complete input. There was no reason to use regular
expression there but valid reasons to not use them. ;)
2020-06-13 cage
* src/db.lisp
* src/notify-window.lisp
* src/package.lisp
* src/program-events.lisp
- prevent adding duplicate entries in +table-pagination-status+
This could happened when concurrent fetching messages command was
launched from the user.
- preventing writing a notification window that completed his
life cycle. 'notify-window:draw-pending' checks if 'life' slot is
a positive number before drawing, without the check drawing on a
ncurses window pointer pointing to invalid memory was possible.
2020-06-12 cage
* etc/default-theme.conf
* src/api-client.lisp
* src/command-line.lisp
* src/mtree-utils.lisp
* src/package.lisp
* src/software-configuration.lisp
* src/thread-window.lisp
* src/tui-utils.lisp
* src/ui-goodies.lisp
- do not climb the thread (probably could be changed by a command
line switch in the future) when fetching messages;
- configurable color for root of rendered trees;
- made expanding thread command non blocking.
2020-06-11 cage
* etc/shared.conf
* src/api-client.lisp
* src/db.lisp
* src/package.lisp
* src/program-events.lisp
* src/software-configuration.lisp
* src/ui-goodies.lisp
- fixed skipping of ignored users
When a set of downloaded statuses contains one or more status from
an ignored user restarts the download process again starting from the
last (or first, if going backward) downloaded status (ordered by ID).
This way we could skip over a bunch of ignored status.
The number of download restarting iteration is limited to 3
- added a configuration directive to ignore usernames that match a
regular exception.
2020-06-07 cage
* configure
* src/ui-goodies.lisp
* src/api-client.lisp
* src/api-pleroma.lisp
* src/db.lisp
* src/message-rendering-utils.lisp
* src/package.lisp
* src/text-utils.lisp
* tinmop.asd
- remove duplicated urls in messages that are a reblog;
- fixed swapped docstrings;
- updated configure.
- moved pleroma specific API to i package :api-pleroma;
- renamed function: 'text-utils:left-padding-suffix' to 'text-utils:left-padding-prefix';
- rendered the choice index for poll's choices;
- shown if a poll allows multiple choices;
- printed an error to the user when trying to vote for a message
that does not contains a poll.
2020-05-31 cage
* etc/init.lisp
* src/api-client.lisp
* src/program-events.lisp
* src/ui-goodies.lisp
* etc/default-theme.conf
* etc/shared.conf
* po/it.po
* po/tinmop.pot
* src/db.lisp
* src/message-rendering-utils.lisp
* src/package.lisp
* src/software-configuration.lisp
* src/thread-window.lisp
- [breaking changes]
Added polls. To allow this feature two new tables
"poll" and "poll-options" has been added to database schema.
2020-05-30 cage
* etc/init.lisp
* src/api-client.lisp
* src/command-line.lisp
* src/complete.lisp
* src/db.lisp
* src/main.lisp
* src/package.lisp
* src/program-events.lisp
* src/thread-window.lisp
* src/tui-utils.lisp
* src/ui-goodies.lisp
* tinmop.asd
- [breaking changes] changed table for attachments;
- fixed bug that prevented statuses missing attachments when the
status was reblogged.
- added optional notification of statuses mentioning the user;
- protected reblogged timeline from accidental deletion;
- added the possibility to force expanding of a message tree;
- rearranged compilation order to prevent warning about command line
switch;
- rearranged order of packages.
2020-05-20 cage
* quick_quicklisp.sh.in
- removed useless switch.
2020-05-19 cage
* src/db.lisp (renumber-timeline-message-index)
* src/command-line.lisp (gen-opts)
* etc/shared.conf
- fixed renumbering of 'message-index' of status
The old procedure did not took into account the 'folder' and
'timeline' columns making possible to overwrite index of a copy of
the same message placed in different folder. This bug made the
program crash;
- fixed command line long option;
- fixed wrong name of a variable in a configuration file.
2020-05-18 cage
* doc/man.org
* doc/tinmop.man
* po/it.po
* po/tinmop.pot
* src/command-line.lisp
* src/main.lisp
* src/package.lisp
- added the reset of timeline pagination from command line.
2020-05-17 cage
* src/open-message-link-window.lisp
* src/text-utils.lisp
- added a class to represent a window with the links that a message contains
The links are collected by the new function
text-utils:collect-links applied on the rendered text of a status.
2020-05-15 cage
- initial release