1
0
Fork 0
tinmop/ChangeLog

8070 lines
210 KiB
Plaintext

2024-03-12 cage
* ChangeLog,
* NEWS.org,
* data/scripts/generate-gemlog.lisp,
* po/de.po,
* po/es.po,
* po/fr.po,
* po/it.po,
* po/pl.po,
* po/tinmop.pot,
* src/message-rendering-utils.lisp:
- prevented the poll's results to be printed before expiration.
- [script] added the option to submit the feed to and antenna
instance, when generating a gemlog;
- updated changelog.
2024-03-03 cage
* src/gemini/dummy-server.lisp,
* src/gui/client/titan-window.lisp,
* src/gui/server/public-api-gemini-stream.lisp,
* src/json-rpc2.lisp:
- [GUI] fixed managing of gemini responses when a titan request was
performed (TOFU errors, TLS certificate password etc.);
- fixed error arising when 'debug-gemini-gui' was called with more
than two arguments.
2024-03-02 cage
* ChangeLog,
* NEWS.org,
* configure,
* configure.ac,
* etc/init.lisp,
* src/line-oriented-window.lisp,
* tinmop.asd:
- [TUI] added 'C-g' keybinding to close the windows.
- [TUI] added 'C-g' keybinding to close the blocking dialog window.
- [TUI] refactored quitting dialog test code in a function.
- updated NEWS.org and Changelog.
- removed 'rc1' from version number.
2024-03-01 cage
* ChangeLog,
* configure,
* configure.ac,
* doc/tinmop.man,
* doc/tinmop.org,
* po/de.po,
* po/es.po,
* po/fr.po,
* po/it.po,
* po/pl.po,
* po/tinmop.pot,
* src/api-client.lisp,
* src/command-window.lisp,
* src/package.lisp,
* src/program-events.lisp,
* src/ui-goodies.lisp,
* src/windows.lisp,
* tinmop.asd:
- added keybinding to cancel inputing of the string command.
- updated italian translation.
- updated manpage.
updated changelog.
- used a keyword as the value that signals that a command has been
cancleled instead of 'nil'.
2024-03-01 cage
* doc/tinmop.man,
* doc/tinmop.org,
* po/de.po,
* po/es.po,
* po/fr.po,
* po/it.po,
* po/pl.po,
* po/tinmop.pot,
* src/command-window.lisp,
* src/program-events.lisp,
* src/ui-goodies.lisp:
- added keybinding to cancel inputing of the string command.
- updated italian translation.
- updated manpage.
2024-02-28 cage
* etc/init.lisp,
* etc/shared.conf,
* src/command-window.lisp,
* src/open-attach-window.lisp,
* src/ui-goodies.lisp:
- [TUI] allowed the backspace key to send rubout char (ASCII 177).
- decommented configuration directive to open text files with tinmop.
- [TUI] added command to download a message's attachment ignoring the
cached value (if such entry in the cache exists).
2024-02-27 cage
* src/command-window.lisp:
- [TUI] fixed name of backspace keycode when parsing 'command'
events..
2024-02-25 cage, pabloscloud
* configure,
* configure.ac,
* po/de.po,
* po/es.po,
* po/fr.po,
* po/it.po,
* po/pl.po,
* po/tinmop.pot,
* src/gemini/client.lisp,
* src/gemini/dummy-server.lisp,
* src/gui/client/scheduler.lisp,
* src/gui/server/public-api-gemini-gemlog.lisp,
* src/gui/server/public-api-gemini-stream.lisp:
- [GUI] added timeout test for dummy server;
- [GUI] returned a more useful error message to user when a timeout
occurred.
- [GUI] returned a more useful error message to user when an error
occurred while refreshing posts from gemlogs.
- [GUI] updated italian translation.
- [GUI] added notification of errors when refreshing gemlogs posts on
program starting.
- updated version number also in configure.ac.
Translated using Weblate (German)
Currently translated at 13.4% (73 of 541 strings)
Translation: tinmop/tinmop
Translate-URL:
https://translate.codeberg.org/projects/tinmop/tinmop/de/
Merge pull request 'Translations update from Weblate' (#8) from
translate/tinmop:weblate-tinmop-tinmop into master
2024-02-23 cage
* src/api-client.lisp,
* src/gui/client/main-window.lisp:
- instructed address bar to autoselect a candidate only when expanding
local paths (not URLs).
- prevented treating 'update' notifications as mentions.
2024-02-19 cage
* src/gopher-window.lisp,
* src/gopher/package.lisp,
* src/gopher/parser.lisp:
- allowed empty lines in a gopher map (thanks op!).
2024-02-18 cage
* etc/init.lisp,
* po/de.po,
* po/es.po,
* po/fr.po,
* po/it.po,
* po/pl.po,
* po/tinmop.pot,
* src/db.lisp,
* src/message-rendering-utils.lisp,
* src/thread-window.lisp:
- fixed searching in reblogged statuses body, previously the search
procedure skipped the reblogged statuses.
- fixed translatable string.
2024-02-17 cage
* ChangeLog,
* etc/init.lisp,
* po/de.po,
* po/es.po,
* po/fr.po,
* po/it.po,
* po/pl.po,
* po/tinmop.pot,
* src/gemini-viewer.lisp,
* src/kami/client.lisp,
* src/os-utils.lisp,
* src/package.lisp,
* src/ui-goodies.lisp:
- updated italian translation;
- updated translation file template.
- [TUI] added support for certificate's password for gemini requests.
- prevented 'ssl-key-has-empty-password-p' to print on console the
prompt asking for key password.
- added password protected TLS key, for kami protocol.
- removed output from ssl command when checking for empty password for
a certificate.
- added command 'clear-cached-client-tls-certificates'.
- updated italian translation.
- updated-changelog.
2024-02-16 cage
* etc/init.lisp,
* src/gemini/client.lisp,
* src/gui/client/main-window.lisp,
* src/package.lisp,
* src/ui-goodies.lisp:
- [GUI] set state of the certificates toolbar button, not only the
image label in: 'set-certificate-button-(active|inactive).
- [TUI] added command to change TLS client certificate password.
2024-02-15 cage
* Makefile.am,
* Makefile.in,
* data/icons/fmw_profile.png,
* src/gemini-viewer.lisp,
* src/gemini/client.lisp,
* src/gemini/package.lisp,
* src/gui/client/certificates-window.lisp,
* src/gui/client/icons.lisp,
* src/gui/client/main-window.lisp,
* src/gui/server/public-api-gemini-certificates.lisp,
* src/gui/server/public-api-gemini-stream.lisp,
* src/gui/server/public-api.lisp,
* src/kami/client.lisp,
* src/package.lisp:
- [GUI] added a button to give a visual hint that a the client
provided the server a TLS certificate.
- [GUI] added confirmation from user before deleting a certificate.
- [GUI] added callback for toolbar certificate button (change password
for certificate).
- [GUI] ensured the key for cached password for TLC client certificate
is erased if an error occurred during gemini connection.
- [GUI] ensured the passwords cache for TLS client certificate is
emptied after changing a password.
2024-02-14 cage
* src/gemini/client.lisp,
* src/gemini/package.lisp,
* src/gui/client/gui-goodies.lisp,
* src/gui/client/main-window.lisp,
* src/gui/server/public-api-gemini-certificates.lisp,
* src/gui/server/public-api-gemini-stream.lisp,
* src/gui/server/public-api.lisp,
* src/os-utils.lisp,
* src/package.lisp:
- [GUI] added procedures to manage passwords for client TLS
certificates.
2024-02-11 cage
* LICENSES.org,
* src/api-client.lisp,
* src/gemini-viewer.lisp,
* src/gemini/client.lisp,
* src/gemini/dummy-server.lisp,
* src/gemini/gemini-parser.lisp,
* src/gemini/titan.lisp,
* src/gui/client/certificates-window.lisp,
* src/gui/client/json-rpc-communication.lisp,
* src/gui/client/main-window.lisp,
* src/gui/client/program-events.lisp,
* src/gui/client/titan-window.lisp,
* src/gui/server/public-api-gemini-certificates.lisp,
* src/gui/server/public-api-gemini-stream.lisp,
* src/gui/server/public-api.lisp,
* src/misc-utils.lisp,
* src/package.lisp,
* src/program-events.lisp,
* src/tests/gemini-parser-tests.lisp,
* src/tests/program-events-tests.lisp,
* src/ui-goodies.lisp,
* tinmop.asd:
- [GUI] fixed deletion of TLS client certificates;
- chaged API name form 'gemini-delete-certificate' to
'gemini-delete-tofu-certificate';
- added 'misc:db-stderr'.
- removed all direct references to package 'bt' (used wrappers
instead);
- addedd missing file 'dummy-server.lisp';
- updated LICENSES.org.
- added optional key password argument to gemini and titan requests.
- replaced occurences of 'with-lock' with 'misc:with-lock-held'.
Merge branch 'master' into add-password-tls-certificates
2024-02-10 cage
* src/command-line.lisp,
* src/gemini/package.lisp,
* src/gui/server/public-api-gemini-stream.lisp,
* src/main.lisp,
* src/package.lisp,
* src/x509.lisp,
* tinmop.asd:
- added a dummy gemini server for debugging purposes.
2024-02-08 cage
* src/gui/client/certificates-window.lisp,
* src/gui/server/public-api-gemini-certificates.lisp,
* src/package.lisp:
[GUI] added procedures to change the passhphrase to protect the
private key of a gemini certificate.
2024-02-04 cage
* src/filesystem-utils.lisp,
* src/os-utils.lisp:
- added function 'os-utils:change-ssl-key-passphrase'.
- fixed 'filesystem-utils:temporary-directory'.
2024-01-29 cage, lejun
* po/de.po,
* po/es.po,
* po/fr.po,
* po/it.po,
* po/pl.po,
* po/tinmop.pot,
* src/gui/client/certificates-window.lisp:
- fixed typo
for reference:
https://translate.codeberg.org/translate/tinmop/tinmop/en/?&offset=105#comments
Thanks to the person who reported this issue!
- updated italian translation.
Translated using Weblate (French)
Currently translated at 32.4% (167 of 514 strings)
Translation: tinmop/tinmop
Translate-URL:
https://translate.codeberg.org/projects/tinmop/tinmop/fr/
Merge pull request 'Translations update from Weblate' (#7) from
translate/tinmop:weblate-tinmop-tinmop into master
2024-01-18 cage
* src/gui/client/gemlog-window.lisp,
* src/gui/server/public-api-gemini-gemlog.lisp,
* src/gui/server/public-api.lisp:
- [GUI] added contextual menu to copy gemlogs links or mark all their
posts as already read.
2023-12-28 cage
* src/api-client.lisp:
- added missing space to control string in the procedure to print
notification.
2023-12-27 cage
* po/de.po,
* po/es.po,
* po/fr.po,
* po/it.po,
* po/pl.po,
* po/tinmop.pot,
* src/api-client.lisp:
- added id of the posts the notification refers to;
- updated italian translation.
2023-12-24 cage
* src/db.lisp,
* src/gui/client/main-window.lisp:
- [GUI] fixed test for checking mime-type on an image;
- allowed null values for preview url in post's attachments.
- fixed call to 'member'.
2023-12-07 cage
* src/program-events.lisp,
* src/tui-utils.lisp:
- fixed test for conditional macro call.
- removed another recursive thread locking
('push-downloading-behind').
2023-12-02 cage
* data/scripts/generate-gemlog.lisp,
* src/api-client.lisp,
* src/gemini-viewer.lisp,
* src/gemini/gemini-parser.lisp,
* src/html-utils.lisp,
* src/misc-utils.lisp,
* src/package.lisp,
* src/program-events.lisp,
* src/tui-utils.lisp,
* src/ui-goodies.lisp:
- changed all recursive lock with the non-recursive type;
- prevented opening another connection when deleting cache;
- improved rendering of html blockquote.
- prevented opening another connection in a callback contained in
'status-tree->text'.
- added a directive just to debug error signaled from the TUI.
- improved generated gemini pages for the gemlog;
- removed another recursive thread locking.
2023-11-19 cage
* ChangeLog,
* NEWS.org,
* tinmop.asd:
- increased version number.
- updated changelog and news file.
2023-11-18 cage
* src/command-window.lisp,
* src/complete.lisp:
- fixed file completion in the command window.
2023-11-17 cage
* src/html-utils.lisp:
- prevented adding a quote prefix to each element inside a blockquote
tag, when converting html to text.
2023-11-14 cage
* src/sending-message.lisp:
- made space to accomodate list of attachments in sending post
window.
2023-11-12 cage
* etc/init.lisp,
* po/de.po,
* po/es.po,
* po/fr.po,
* po/it.po,
* po/pl.po,
* po/tinmop.pot,
* src/command-window.lisp,
* src/keybindings.lisp,
* src/line-oriented-window.lisp:
- changed keyboard events management to reflects changes in croatoan
API.
- updated documentation.
- updated translation files.
Currently translated at 99.6% (510 of 512 strings)
Merge pull request 'Translations update from Weblate' (#5) from
translate/tinmop:weblate-tinmop-tinmop into master
Translated using Weblate (Italian)
Currently translated at 100.0% (512 of 512 strings)
Translation: tinmop/tinmop
Translate-URL:
https://translate.codeberg.org/projects/tinmop/tinmop/it/
Merge pull request 'Translations update from Weblate' (#6) from
translate/tinmop:weblate-tinmop-tinmop into master
2023-11-11 cage
* doc/tinmop.man,
* doc/tinmop.org,
* etc/init.lisp,
* quick_quicklisp.sh.in,
* src/package.lisp,
* src/thread-window.lisp,
* src/ui-goodies.lisp,
* tinmop.asd:
- improved formatting of text in window that shows the parent of a
message.
- added new command: 'delete-shown-post'.
- updated documentation.
- increased version number.
- update script quick_quicklisp to fetch newer version of some
libraries.
2023-11-07 cage
* README.org,
* src/message-rendering-utils.lisp:
- shown subject of the reblogged status, if exists;
- removed mention of dependency from tk-img.
2023-11-03 cage
* src/db.lisp,
* src/gui/client/gui-goodies.lisp,
* src/message-rendering-utils.lisp:
- removed dependency to 'cl-syntax';
- added subject and language headers to statuses printed in the
message window.
2023-10-29 cage
* src/gui/client/main-window.lisp:
- [GUI] added new events for links
- button two will open the link in background;
- button one pressed when simultaneously pressing the control
button will add the link to the tour.
2023-10-27 cage
* src/api-client.lisp,
* src/program-events.lisp:
- checked for tags and languages in the parent status if it is non
null, when filtering out statuses;
- ensured the post containing mentions is saved also in the home
timeline.
Pleroma provides status that mentions the user in the home timeline
whilst mastodon does not. The code manually copy each status with
mention in the local home timeline when using tinmop with a mastodon
instance.
2023-10-20 cage
* src/api-client.lisp:
- removed sorting of statuses when saving pagination.
2023-10-19 cage
* README.org,
* doc/tinmop.man,
* doc/tinmop.org,
* src/2d-utils.lisp,
* 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/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-tree-window.lisp,
* src/filesystem-utils.lisp,
* src/follow-requests.lisp,
* src/gemini-client-certificates-window.lisp,
* src/gemini-page-toc.lisp,
* src/gemini-subscription-window.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/gemini/subscription.lisp,
* src/gemini/titan.lisp,
* src/gempub.lisp,
* src/gopher-window.lisp,
* src/gopher/client.lisp,
* src/gopher/package.lisp,
* src/gopher/parser.lisp,
* src/gui/client/client-configuration.lisp,
* src/gui/client/json-rpc-communication.lisp,
* src/gui/client/os-utils.lisp,
* src/gui/client/scheduler.lisp,
* src/gui/server/json-rpc-communication.lisp,
* src/gui/server/main-window-server-side.lisp,
* src/gui/server/public-api-gemini-bookmark.lisp,
* src/gui/server/public-api-gemini-certificates.lisp,
* src/gui/server/public-api-gemini-gemlog.lisp,
* src/gui/server/public-api-gemini-stream.lisp,
* src/gui/server/public-api-gemini-tour-links.lisp,
* src/gui/server/public-api.lisp,
* src/hooks.lisp,
* src/html-utils.lisp,
* src/interfaces.lisp,
* src/iri-parser.lisp,
* src/json-rpc2.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/scheduled-events.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/idn-tests.lisp,
* src/tests/iri-tests.lisp,
* src/tests/json-rpc2-tests.lisp,
* src/tests/kami-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/tests/uri-tests.lisp,
* src/tests/x509-tests.lisp,
* src/text-utils.lisp,
* src/thread-window.lisp,
* src/tour-mode-parser.lisp,
* src/tui-utils.lisp,
* src/ui-goodies.lisp,
* src/uri-parser.lisp,
* src/windows.lisp,
* src/x509-ffi.lisp,
* src/x509.lisp,
* src/zip-info.lisp:
- fixed notify of new posts in subscribed tags.
- changed brief description of the program.
- updated copyright.
- updated README.
- updated documentation.
2023-10-15 cage
* doc/tinmop.man,
* doc/tinmop.org,
* etc/init.lisp,
* po/de.po,
* po/es.po,
* po/fr.po,
* po/it.po,
* po/pl.po,
* po/tinmop.pot,
* src/db.lisp,
* src/package.lisp,
* src/ui-goodies.lisp:
- added a command to show the parent of a post.
- updated documentation;
- changed a function's name.
- updated Italian translation.
2023-10-14 cage
* data/scripts/get-following.lisp,
* src/api-client.lisp,
* src/db.lisp,
* src/link-header-parser.lisp,
* src/package.lisp,
* src/program-events.lisp,
* src/tests/link-header-tests.lisp,
* src/tests/package.lisp,
* src/ui-goodies.lisp,
* tinmop.asd:
- used the new pagination API.
- removed link header parser.
- removed references to file related to parsing of the link headers;
- used 'tooter:collect-all-pages' instead of 'slurp-all-pages'.
- prevented false positives for new message in the subscribed tags.
- fixed type of value 'tag-names';
- fixed a couple of docstrings.
used correct type for tags in status (was using 'tag' instead of
'status-tag').
- fixed tags usage histogram.
2023-10-10 pabloscloud
* po/de.po:
Translated using Weblate (German)
Currently translated at 13.8% (69 of 497 strings)
Translation: tinmop/tinmop
Translate-URL:
https://translate.codeberg.org/projects/tinmop/tinmop/de/
2023-10-05 cage
* src/message-window.lisp,
* src/open-message-link-window.lisp,
* src/package.lisp,
* src/text-utils.lisp,
* src/thread-window.lisp,
* src/ui-goodies.lisp:
- fixed extraction of URLs of the selected status in threads window if
it is a reblogged one.
2023-10-03 cage
* src/gopher-window.lisp,
* src/gopher/parser.lisp:
- [gopher] prevented crash when opening a gopher link and gopher
window is not visible;
- [gopher] fixed parsing of text files.
2023-10-02 Adolfo Jayme Barrientos
* po/es.po:
Translated using Weblate (Spanish)
Currently translated at 25.9% (129 of 497 strings)
Translation: tinmop/tinmop
Translate-URL:
https://translate.codeberg.org/projects/tinmop/tinmop/es/
2023-10-01 cage
* etc/default-theme.conf,
* src/chats-list-window.lisp,
* src/html-utils.lisp,
* src/message-rendering-utils.lisp,
* src/package.lisp,
* src/program-events.lisp,
* src/software-configuration.lisp,
* src/ui-goodies.lisp:
- improved rendering for statuses that contains tag: <li> and
<blockquote>.
2023-09-28 cage
* src/link-header-parser.lisp,
* src/package.lisp,
* src/tests/link-header-tests.lisp,
* src/tests/package.lisp,
* tinmop.asd:
- added procedures to extract id form pagination header.
2023-09-27 cage
* data/scripts/get-following.lisp,
* src/api-client.lisp,
* src/api-pleroma.lisp,
* src/db.lisp,
* src/package.lisp:
- added 'local-user-acct';
- moved 'get-following' from api-pleroma to api-mastodon (this
endpoint is not specific to pleroma).
- fixed type of 'reblog-id' column in table 'status'.
2023-09-25 cage
* etc/default-theme.conf,
* etc/init.lisp,
* po/LINGUAS,
* po/de.po,
* po/es.po,
* po/fr.po,
* po/it.po,
* po/pl.po,
* po/tinmop.pot,
* src/api-client.lisp,
* src/package.lisp,
* src/program-events.lisp,
* src/scheduled-events.lisp,
* src/software-configuration.lisp,
* src/thread-window.lisp,
* src/ui-goodies.lisp:
- added support for announcements.
- updated italian translation;
- added support for other languages.
2023-09-24 cage
* etc/init.lisp,
* src/api-pleroma.lisp,
* src/package.lisp,
* src/program-events.lisp,
* src/scheduled-events.lisp:
- fixed testing of post's language
- converted the language from keyword to string for regex scanning;
- reverted the test final value because the old one was filtering
out posts with allowed language.
- added function 'instance-pleroma-p';
- prevented the program to run pleroma specific code if the client is
connected to a mastodon instance.
2023-09-19 cage
* etc/init.lisp,
* po/it.po,
* po/tinmop.pot,
* src/package.lisp,
* src/program-events.lisp,
* src/ui-goodies.lisp:
- allowed changing language before sending a post;
- updated italian translation.
2023-09-18 cage
* ChangeLog,
* NEWS.org,
* po/it.po,
* po/tinmop.pot,
* tinmop.asd:
- increased version number;
- updated changelog and NEWS files.
2023-09-17 cage
* src/gui/client/main-window.lisp,
* src/gui/client/stream-frame.lisp:
- [GUI] renamed function.
2023-09-16 cage
* src/gui/client/constants.lisp,
* src/gui/client/main-window.lisp,
* src/gui/client/menu-command.lisp,
* src/gui/client/stream-frame.lisp,
* src/package.lisp:
- [GUI] added method "stream-url" specialized on 'gemini-stream';
- [GUI] fixed setting status of stream on completion;
- [GUI] removed freezing when scaling text on rendering of an active
stream;
- [GUI] prevented crash when ask the program to shows an already shown
stream frame.
2023-09-14 cage
* src/gui/client/icons.lisp:
- ensured decoding of the icons is made from TK to preserve alpha
channel information.
2023-09-13 cage
* etc/shared.conf,
* po/it.po,
* po/tinmop.pot,
* src/api-client.lisp,
* src/complete.lisp,
* src/constants.lisp,
* src/package.lisp,
* src/program-events.lisp,
* src/sending-message.lisp,
* src/software-configuration.lisp,
* src/ui-goodies.lisp:
- added language parameter for each post sent.
- fixed macro 'with-sending-message-data' to include the new
parameter: 'language'.
- updated italian translation.
2023-09-11 cage
* src/gui/client/main-window.lisp:
- ensured also PNG file are scaled when rendering the gemtext.
2023-09-10 cage
* src/gui/client/main-window.lisp:
- [GUI] prevented to transform to an absolute URL an already absolute
URL.
2023-09-09 cage
* etc/shared-gui.conf,
* src/api-client.lisp,
* src/gui/client/client-configuration.lisp,
* src/gui/client/main-window.lisp,
* src/misc-utils.lisp,
* src/package.lisp:
- fixed 'misc:fresh-vector-insert@';
- scaled inline images that nodgui can manipulates (JPEG and TGA), to
fits the gemtext widget's width.
- added configuration directive to scale inlined images.
2023-08-30 cage
Merge pull request 'Translations update from Weblate' (#4) from
translate/tinmop:weblate-tinmop-tinmop into master
2023-08-25 Eryk Michalak
* po/pl.po:
Added translation using Weblate (Polish)
2023-08-18 cage
* src/gui/client/main-window.lisp,
* src/gui/client/stream-frame.lisp:
- [GUI] - discarded rest of a stale rendering when bringing a stream
to foreground.
2023-08-17 cage
* src/gui/client/main-window.lisp,
* src/gui/client/stream-frame.lisp:
- [GUI] - added flag to interrupt discard rendering of gemtext.
For example is used before scaling the text the rendering is blocked,
the gemtext widget cleaned before starting again the rendering with
scaled fonts.
- [GUI] fixed code to revive a stream.
- [GUI] removed insertion cursor from gemtext widget.
2023-08-16 cage
* src/complete.lisp,
* src/db.lisp,
* src/gui/client/main-window.lisp,
* src/gui/client/stream-frame.lisp,
* src/package.lisp:
- fixed typo.
- [GUI] ensured updating URL in the address bar, when reviving a
stream.
- [GUI] ensured rendering TOC only after there is no more data in the
gemtext stream.
- [GUI] ensured pushing stream revive into the events queue.
- added bookmarked URLs to the list of candidates for autocompletion.
- [GUI] added scaling of gemtext using mousewheel (actually button 4
and 5).
- [GUI] added scaling of gemtext using mousewheel events (not fired on
GNU/linux, maybe in other OS).
2023-08-15 cage
* data/scripts/generate-gemlog.lisp,
* src/api-client.lisp,
* src/filesystem-utils.lisp,
* src/gui/client/main-window.lisp,
* src/gui/client/stream-frame.lisp,
* src/package.lisp:
- [GUI] revive stream with doubleclick on an intem of the stream
frame.
- [GUI] improved rendering speed by not applying text tags to empty
lines and normal text, moreover cached the gemtext fonts.
- [script] removed file extension from link names.
- excluded follow requests when downloading the notifications;
- [GUI] ensured the absolute local path has been set in the address bar
when opening a local path from command line (switch '-o').
2023-08-14 cage
* data/scripts/generate-gemlog.lisp,
* src/gui/client/stream-frame.lisp,
* src/os-utils.lisp:
- [script] allowed all the template variable to be got from
environment variables, when generating a gemlog.
- added fallback value for os-utils:getenv.
- [GUI] prevented error when downloading binary files (like bitmap
images) or other files that are not in gemtext format or, finally, can
not be rendered in tinmop.
2023-08-04 cage
* ChangeLog,
* NEWS.org,
* src/gemini-viewer.lisp,
* src/gemini/client.lisp,
* src/gemini/package.lisp,
* src/gemini/titan.lisp,
* src/gui/client/titan-window.lisp,
* src/gui/server/public-api-gemini-stream.lisp,
* tinmop.asd:
- [TITAN] prevented dropping of query component.
After discussing on IRC (thanks!) i think is legit (according to the
specification) to have URL like that:
titan://invalid/path/to/script;mime=text/plain;size=1;token=foo?query=bar
- updated changelog.
- increased version number;
- updated news file and changelog.
2023-08-03 cage
* data/scripts/generate-gemlog.lisp:
- initialized the parser in the script to generate gemlog.
2023-08-02 cage
* data/icons/fmw_arrow-down.png,
* data/icons/fmw_arrow-up.png,
* data/icons/fmw_back.png,
* data/icons/fmw_bullet-go.png,
* data/icons/fmw_bus-go.png,
* data/icons/fmw_bus.png,
* data/icons/fmw_cross.png,
* data/icons/fmw_dice.png,
* data/icons/fmw_document-accept.png,
* data/icons/fmw_document-add.png,
* data/icons/fmw_document-delete.png,
* data/icons/fmw_document-edit.png,
* data/icons/fmw_folder.png,
* data/icons/fmw_go.png,
* data/icons/fmw_open_tour.png,
* data/icons/fmw_page.png,
* data/icons/fmw_refresh.png,
* data/icons/fmw_rss-add.png,
* data/icons/fmw_rss-delete.png,
* data/icons/fmw_search.png,
* data/icons/fmw_star-blue.png,
* data/icons/fmw_star-yellow.png,
* data/icons/fmw_text.png,
* data/icons/fmw_two-pictures.png,
* data/icons/fmw_uparrow.png:
- [GUI] downscaled icons to 24x24 pixels.
2023-08-01 cage
* etc/shared-gui.conf,
* src/gui/client/stream-frame.lisp:
- [GUI] changed layout of buttons in stream frame;
- reverted scaling of icons.
2023-07-31 cage
* doc/tinmop.man,
* doc/tinmop.org,
* etc/init.lisp,
* etc/shared-gui.conf,
* src/gui/client/client-configuration.lisp,
* src/gui/client/icons.lisp,
* src/package.lisp:
- changed keychord to repeat search using the latest search criteria
used in a previous search.
- updated documentation.
- [GUI] added icons scaling.
2023-07-30 cage
* ChangeLog,
* doc/tinmop.man,
* doc/tinmop.org,
* etc/init.lisp:
- updated changelog;
- updated documentation.
2023-07-29 cage
* Makefile.am,
* Makefile.in,
* etc/gui.conf,
* etc/{gui.conf => shared-gui.conf},
* lisp-dependencies,
* po/it.po,
* po/tinmop.pot,
* src/gui/client/client-configuration.lisp,
* src/gui/client/main-window.lisp,
* src/gui/client/menu-command.lisp,
* src/gui/client/stream-frame.lisp,
* src/main.lisp,
* src/package.lisp:
- [GUI] restored toggling stream frame.
- updated italian translation.
- [GUI] added configuration directive to toggle visibility of TOC and
streams frame.
- [GUI] included the system-wide configuration file into the user
defined configuration file.
- added yason as dependency.
- added missing newline.
2023-07-28 cage
* po/it.po,
* po/tinmop.pot,
* src/gui/client/main-window.lisp,
* src/gui/client/menu-command.lisp,
* src/gui/client/search-frame.lisp,
* src/gui/client/stream-frame.lisp,
* src/message-rendering-utils.lisp:
- [TUI] printed 'reply to' and 'boosted from' label in a separate
paragraph.
- [GUI] allowed modify the height of the stream frame (using paned
frame).
- updated italian translation.
2023-07-27 cage
* po/POTFILES.in,
* po/it.po,
* po/tinmop.pot,
* src/gui/client/main-window.lisp,
* src/gui/client/menu-command.lisp,
* src/gui/client/search-frame.lisp,
* src/gui/client/stream-frame.lisp,
* src/gui/client/stream-window.lisp,
* src/modeline-window.lisp,
* src/package.lisp,
* tinmop.asd:
- fixed padding of modeline.
- [GUI] refactored name for stream window to stream frame.
- [GUI] refreshed streams frame when loading an URL.
- changed filename;
- [GUI] added a button to refresh stream-frame;
- updated italian translation.
2023-07-26 cage
* LICENSES.org,
* src/api-client.lisp,
* src/db.lisp,
* src/gempub.lisp,
* src/gui/client/main-window.lisp,
* src/gui/client/menu-command.lisp,
* src/gui/client/stream-window.lisp,
* src/misc-utils.lisp,
* src/package.lisp,
* src/thread-window.lisp,
* src/tui-utils.lisp:
- [GUI] embedded stream window into the main-window.
- removed macro 'defalias', does not works with sbcl 2.3.6;
- optimized 'read-stream-chunks';
- ensured funtions that expand modeline always return a string.
- [GUI] sorted streams when shown in the stream frame.
2023-07-23 cage
* src/gui/client/scheduler.lisp:
- [GUI] added scheduler arguments function to set busy the UI during
the scheduled process running.
- [GUI] instructed the scheduler to respects the configuration
directive 'start.update.gemlog'.
2023-07-22 cage
* po/it.po,
* po/tinmop.pot,
* src/gemini/titan.lisp,
* src/gui/client/main-window.lisp,
* src/iri-parser.lisp:
- [TITAN] fixed building of request URL
Many thanks to Alex Schroeder for help and supporting!
- fixed building of URL composed of only a path component in
'render-iri';
- [GUI] remove standard port value before requesting an URL.
- [GUI] prevented an infinite loop when cancelling a request with user
input.
- updated italian translation.
2023-07-21 cage
* Makefile.am,
* Makefile.in,
* data/error-pages/51,
* data/error-pages/header-51.png,
* src/gui/client/main-window.lisp,
* src/gui/client/scheduler.lisp,
* src/gui/client/titan-window.lisp,
* src/gui/server/public-api-gemini-stream.lisp:
- updated Makefiles;
- allowed loading a local file in 'slurp-iri' if the IRI argument
lacks scheme, and authority components;
- allowed inlining of images from local path;
- allowed linking of local resources in error page;
- inlined images automatically in error pages.
- [TITAN] fixed paremeter: 'size'.
2023-07-16 cage
* Makefile.am,
* Makefile.in,
* data/error-pages/51,
* data/icons/fmw_text.png,
* po/it.po,
* po/tinmop.pot,
* src/db.lisp,
* src/gui/client/main-window.lisp,
* src/gui/server/public-api-gemini-stream.lisp,
* src/message-rendering-utils.lisp,
* src/package.lisp,
* src/thread-window.lisp:
- added 'reply to' field to post's header.
- [GUI] added custom error pages for gemini errors code.
- [GUI] reinitialized internal state of the renderer when rendering an
error page.
- updated italian translation.
- updated Makefile.am.
2023-07-15 cage
* po/de.po,
* po/es.po,
* po/fr.po,
* po/it.po,
* po/tinmop.pot,
* src/api-client.lisp,
* src/command-line.lisp,
* src/follow-requests.lisp,
* src/gemini/client.lisp,
* src/gempub.lisp,
* src/gui/client/bookmark-window.lisp,
* src/gui/client/os-utils.lisp,
* src/gui/client/titan-window.lisp,
* src/line-oriented-window.lisp,
* src/message-rendering-utils.lisp,
* src/os-utils.lisp,
* src/program-events.lisp,
* src/resources-utils.lisp,
* src/scheduled-events.lisp,
* src/software-configuration.lisp,
* src/thread-window.lisp,
* src/ui-goodies.lisp:
- removed full stop ('.'), from some translatable strings.
- used ellipsis instead of tree full stops.
- removed colon fron a translatable string.
- added full stops for command line help strings;
- updated italian translation.
Added translation using Weblate (French)
Added translation using Weblate (German)
Added translation using Weblate (Spanish)
Merge pull request 'Translations update from Weblate' (#1) from
translate/tinmop:weblate-tinmop-tinmop into master
Merge pull request 'Translations update from Weblate' (#2) from
translate/tinmop:weblate-tinmop-tinmop into master
- removed space from translatable string.
Translated using Weblate (Italian)
Currently translated at 100.0% (498 of 498 strings)
Translation: tinmop/tinmop
Translate-URL:
https://translate.codeberg.org/projects/tinmop/tinmop/it/
Merge pull request 'Translations update from Weblate' (#3) from
translate/tinmop:weblate-tinmop-tinmop into master
2023-07-14 cage
* po/POTFILES.in,
* po/it.po,
* po/tinmop.pot,
* src/gui/client/main-window.lisp,
* src/gui/client/scheduler.lisp,
* src/gui/server/public-api.lisp,
* src/package.lisp:
- [GUI] scheduled deletion of old history entries;
- [GUI] removed scheduler's notifications.
- updated italian translation.
2023-07-12 cage
* po/it.po,
* po/tinmop.pot,
* src/gui/client/main-window.lisp,
* src/gui/client/scheduler.lisp,
* src/gui/client/titan-window.lisp,
* src/gui/server/public-api-gemini-gemlog.lisp,
* src/gui/server/public-api.lisp,
* src/package.lisp,
* tinmop.asd:
- [GUI] implemented a feature to saving content of a link to a file.
- [GUI] added a suggested file name when saving a link's content.
- [GUI] prevented crash when no file has been chosen to save a link's
content.
- [GUI] used file extension for filtering candidates file when saving
a link's contents.
- [GUI] added a scheduler.
2023-07-10 cage
* po/POTFILES.in,
* po/it.po,
* po/tinmop.pot:
- updated italian translation.
2023-07-09 cage
* src/gemini/package.lisp,
* src/gui/client/certificates-window.lisp,
* src/gui/client/icons.lisp,
* src/gui/client/main-window.lisp,
* src/gui/client/titan-window.lisp,
* src/gui/server/public-api-gemini-stream.lisp,
* src/gui/server/public-api.lisp,
* src/json-rpc2.lisp,
* src/package.lisp,
* tinmop.asd:
- [GUI] fitted titan protocol into the interface.
2023-07-08 cage
* src/json-rpc2.lisp:
- [JSONRPC] improved error message.
2023-07-07 cage
* Makefile.in,
* configure,
* configure.ac,
* src/config.lisp.in.in,
* src/constants.lisp,
* src/db.lisp,
* src/gemini-viewer.lisp,
* src/gemini/client.lisp,
* src/gemini/gemini-constants.lisp,
* src/gemini/package.lisp,
* src/gemini/titan.lisp,
* src/gui/client/gemlog-window.lisp,
* src/gui/server/public-api-gemini-stream.lisp,
* src/hooks.lisp,
* src/iri-parser.lisp,
* src/misc-utils.lisp,
* src/open-message-link-window.lisp,
* src/os-utils.lisp,
* src/package.lisp,
* src/program-events.lisp,
* tinmop.asd:
- implemented titan protocol;
- [TUI] added titan requests;
- [GUI] fixed crash when opening the gemlog windows after refreshed
the gemlogs data.
- [TUI] allowed upload of strings via titan, not only files.
2023-07-01 cage
* src/gui/client/main-window.lisp:
- [GUI] fixed vertical positioning for inlined images.
2023-06-30 cage
* src/gui/client/main-window.lisp,
* src/gui/server/public-api-gemini-stream.lisp,
* tinmop.asd:
- [GUI] fixed rendering of gemtext's slices
Rendering was working only when the whole gemtext was received in a
single block over the net. If not the rendering code printed the
text lines out of order or even replicating the first lines.
- [GUI] fixed starting index for rendering;
- [RPC] removed a stale stream coming form a cache item that must be
invalidated.
- [RPC] avoided duplicated code.
- added missing dependency.
2023-06-28 cage
* src/gui/server/public-api-gemini-stream.lisp:
- [RPC] added debug function for gemini streams.
2023-06-25 cage
* CONTRIBUTING.org,
* README.org,
* etc/gui.conf,
* src/gui/client/gemlog-window.lisp,
* src/gui/client/internal-paths.lisp,
* src/gui/client/main-window.lisp,
* src/package.lisp:
- [GUI] fixed bug that made the program stuck with the hand shaped
mouse pointer;
- [GUI] increased text size.
- mentioned the translations web interface.
2023-06-24 cage
* data/scripts/generate-gemlog.lisp,
* src/gui/client/main-window.lisp,
* src/gui/client/os-utils.lisp,
* src/gui/server/public-api-gemini-stream.lisp,
* src/iri-parser.lisp,
* src/os-utils.lisp,
* src/package.lisp:
- printed sorted topics when generating a gemlog.
- printed TOC also for gemini pages loaded from a local path.
- ignored fragment when using the heuristic to openin an URL using an
external resource.
- [GUI] fixed scanning for images that can be inlined;
- prevented signaling an error when parsing an IRI to open the
resource with an external program.
- [GUI] fixed TOC's item number padding.
2023-06-20 cage
* CONTRIBUTING.org,
* README.org,
* configure,
* configure.ac,
* doc/tinmop.man,
* doc/tinmop.org,
* po/Makevars,
* quick_quicklisp.sh.in,
* tinmop.asd:
- fixed references to old repository.
2023-06-18 cage
* Makefile.am,
* Makefile.in,
* README.txt,
* data/scripts/gemget.lisp,
* etc/gui.conf,
* po/POTFILES.in,
* po/it.po,
* po/tinmop.pot,
* src/gemini/package.lisp,
* src/gemini/subscription.lisp,
* src/gui/client/certificates-window.lisp,
* src/gui/client/gemlog-window.lisp,
* src/gui/client/gui-goodies.lisp,
* src/gui/client/main-window.lisp,
* src/gui/server/public-api-gemini-gemlog.lisp,
* src/gui/server/public-api.lisp,
* src/package.lisp,
* tinmop.asd:
- [GUI] changed keybinding to go back in history of visited pages.
- [GUI] added button to refresh the gemlogs subcriptions.
- increased version number.
- [GUI] improved error message when an host is not found on gemlogs
refreshing.
- updated italian translation.
- removed README.txt
- removed README.txt from Makefiles.
2023-06-17 cage
* src/gemini-viewer.lisp,
* src/gui/server/public-api-gemini-stream.lisp:
- [GUI] prevented the server to open with an exernal program a file
downloaded;
- [RPC] considered non gemini text streams the same as binary stream
to prevent an endless loop.
2023-06-13 cage
* etc/gui.conf,
* src/gui/client/main-window.lisp:
- [GUI] changed default keybindings.
2023-06-11 cage
* etc/gui.conf,
* src/gui/client/main-window.lisp,
* tinmop.asd:
- [GUI] fixed highlighting of the selected text.
2023-06-10 cage
* etc/gui.conf,
* src/gui/client/client-configuration.lisp,
* src/gui/client/main-window.lisp,
* src/package.lisp:
- [GUI] fixed 'global' keybindings
the software responds to global keychord pressed even if the gemtext
window has not the focus.
- [GUI] added keybindings for reloading the current gemini address.
2023-06-07 cage
* src/gui/client/main-window.lisp:
- [GUI] fixed image positioning.
2023-06-05 cage
* etc/gui.conf,
* src/gui/client/client-configuration.lisp:
- [GUI] fixed setting of font for normal text in the gemtext window,
the configurations directive was ignored before this patch.
- [GUI] removed debug code.
2023-06-04 cage
* src/emoji-matcher.lisp,
* src/gui/client/gemlog-window.lisp,
* src/gui/client/internal-paths.lisp,
* src/gui/client/main-window.lisp,
* src/gui/server/public-api-gemini-stream.lisp:
- [GUI] reinitialize IR lines of client window before displaying a
gemlog.
- [GUI] reinitialize IR lines of client window before displaying the
bookmarks page.
- [GUI] marked gemlog entry as opened when loading one of its posts.
- fixed test to check if acharacter is an emoji.
- returned the whole codepoints list if a char is an emoji.
- fixed 'starting-emoji'.
2023-06-02 cage
* src/gui/client/main-window.lisp:
- [GUI] optimized rendering of gemtext when scaling command is
launched.
Previously a new RPC call was performed to get the gemtext lines,
now the version cached by the client is used.
2023-06-01 cage
* etc/gui.conf,
* src/gui/client/client-configuration.lisp,
* src/gui/client/main-window.lisp,
* src/package.lisp:
- [GUI] added commands to scale rendered gemtext.
2023-05-31 cage
* src/api-client.lisp,
* src/gui/client/main-window.lisp,
* src/program-events.lisp:
- [GUI] added font scaling for gemtext.
- changed mentions saving, just save the posts where the user is
mentioned, not the tree that contains the posts.
2023-05-30 cage
* src/gui/client/main-window.lisp:
- [GUI] save in history only gemtext link.
2023-05-25 cage
* quick_quicklisp.sh.in:
- improved installation script to use a proxy, if needed;
- addded fetching two more libraries from git instead than from
quicklisp.
2023-05-24 cage
* Makefile.am,
* Makefile.in,
* NEWS.org,
* lisp-dependencies:
- added nodgui in the installation script;
- fixed version number in NEWS.org file.
- removed reference to module;
- added newline in lisp dependencies file.
- added reference to gui.conf in Makefile.am, this file needs to be
installed.
- added reference to gui.conf in Makefile.in, this file needs to be
installed.
2023-05-23 cage
* src/gui/client/main-window.lisp:
- moved 'global bindings' to the gemtext widget.
2023-05-21 cage
* src/command-window.lisp,
* src/gui/client/main-window.lisp,
* src/main.lisp:
- prevented crash when hitting backspace after pressing a key that not
belong to any key-chord with the suggestion window not visible.
- fixed typo.
- [GUI] allowed opening a URI indicated on the command line using the
'-o' switch, when using the GUI.
2023-05-20 cage
* etc/gui.conf,
* src/gui/client/client-configuration.lisp,
* src/gui/client/main-window.lisp,
* src/gui/server/public-api-gemini-stream.lisp,
* src/package.lisp:
- [GUI] restored auto-adjust width of TOC widget.
- [GUI] added configuration directive to enable or disable TOC
autoresize.
- [GUI] improved formatting of TOC entries.
- [GUI] prevented gemtext widget to take the focus (tanks op!).
2023-05-19 cage
* src/gui/client/main-window.lisp,
* src/gui/client/menu-command.lisp:
- [GUI] allowed resizing the TOC using the mouse (thanks op for the
suggestion!).
2023-05-18 cage
* ChangeLog,
* NEWS.org,
* README.org,
* README.txt,
* configure,
* configure.ac,
* doc/tinmop.man,
* doc/tinmop.org,
* etc/gui.conf,
* po/it.po,
* po/tinmop.pot,
* src/gui/client/main-window.lisp,
* src/gui/server/public-api-gemini-certificates.lisp,
* tinmop.asd:
- updated version number;
- updated documentation;
- [GUI] fixed again the mouse pointer's shape when moving in the
gemtext window: sometimes got stuck in the 'hand2' shape.
- updated README.
- added more padding to rendered gemtext.
- [GUI] added a workaround to deal with URI that have no path
component (thanks op!).
- [GUI] fixed deletion of old certificates when a mismatch with the
cached ones occurred.
- updated italian translation;
- [GUI] fixed typo.
2023-05-17 cage
* etc/default-theme.conf,
* etc/gui.conf,
* etc/shared.conf,
* src/gui/client/client-configuration.lisp,
* src/gui/client/main-window.lisp,
* src/package.lisp:
- [GUI] added configuration directive to emphasize text wrappend in
asterisk.
- [GUI] used the graphical debugger.
2023-05-16 cage
* data/icons/fmw_two-pictures.png,
* etc/gui.conf,
* src/gemini-viewer.lisp,
* src/gui/client/client-configuration.lisp,
* src/gui/client/main-window.lisp,
* src/gui/client/search-frame.lisp,
* src/package.lisp:
- [gui] used IRI's fragment as regex search.
- [GUI] added configurable text selection color in gemtext window.
- [GUI] added missing icon.
2023-05-15 cage
* etc/gui.conf,
* src/gui/client/main-window.lisp,
* src/software-configuration.lisp:
- fixed configuration parser to allow empty strings;
- [GUI] drafted a theme.
2023-05-14 cage
* etc/gui.conf,
* src/gui/client/bookmark-window.lisp,
* src/gui/client/client-configuration.lisp,
* src/gui/client/internal-paths.lisp,
* src/gui/client/main-window.lisp,
* src/gui/server/main-window-server-side.lisp,
* src/gui/server/public-api-gemini-tour-links.lisp,
* src/package.lisp:
- [GUI] reinitialized IR of gemtext before opening a new IRI.
- [GUI] prevented reinitializing the IR of gemtext if not in status
'streaming'.
- [GUI] added more keybindigs related to link tour.
- [GUI] prevented adding the same link to tour more than once.
- [GUI] removed menu shortcuts;
- [GUI] unfocus autocomplete entry when an url has been chosen;
- [GUI] unfocus gemtext window when a link has been clicked.
- [GUI] added horizontal padding for gemtext widget.
- [GUI] added more keybindings;
- [GUI] parsed keybindings.
- [GUI] added bookmark keybinding.
- [GUI] fixed bookmarking URL.
- [GUI] added show bookmarks command.
- [GUI] remove focus form autocomplete entry when opening bookmarks
page.
2023-05-13 cage
* Makefile.am,
* Makefile.in,
* etc/gui.conf,
* po/it.po,
* po/tinmop.pot,
* src/gui/client/client-configuration.lisp,
* src/gui/client/gui-goodies.lisp,
* src/gui/client/icons.lisp,
* src/gui/client/main-window.lisp,
* src/gui/client/menu-command.lisp,
* src/gui/client/stream-window.lisp,
* src/gui/server/public-api-gemini-stream.lisp,
* src/misc-utils.lisp,
* src/package.lisp:
- [GUI] completed inilining of image one by one.
- [GUI] added visual hint that the process of inlining an image is in
progress.
- [GUI] added command to inline all images in a page.
- added all the icons to Makefile.am.
- updated italian translation.
- [GUI] started with configurable keybindings.
- [GUI] added more keybindings;
- [GUI] pass focus to the entry when the search frame is shown.
2023-05-12 cage
* src/gui/client/main-window.lisp,
* src/gui/server/public-api-gemini-stream.lisp,
* src/gui/server/public-api.lisp:
- [GUI] started adding feature to inline bitmaps.
- [GUI] fixed regression: restored 'go up' command.
- [GUI] fixed inlining bitmap position.
- [GUI] show 'inline' menu item only for links to supported files.
- [GUI] saved visited links in the history kept in the database.
2023-05-08 cage
* src/gui/client/main-window.lisp,
* src/iri-parser.lisp,
* src/package.lisp:
- added 'iri:iri=';
- jumping to the corresponding feature when typing in the adderss bar
a special iri (e.g. 'about:bookmark').
2023-05-07 cage
* data/icons/fmw_rss-add.png,
* data/icons/fmw_rss-delete.png,
* src/constants.lisp,
* src/db.lisp,
* src/gui/client/gemlog-window.lisp,
* src/gui/client/icons.lisp,
* src/gui/client/internal-paths.lisp,
* src/gui/client/main-window.lisp,
* src/gui/server/public-api-gemini-gemlog.lisp,
* src/gui/server/public-api.lisp,
* src/package.lisp:
- [GUI] added button to subscribe (and unsubscribe) to a gemlog.
- [GUI] updated address bar when loading a gemlog feed.
2023-05-06 cage
* src/db.lisp,
* src/gui/client/gemlog-window.lisp,
* src/gui/client/main-window.lisp,
* src/gui/client/menu-command.lisp,
* src/gui/client/stream-window.lisp,
* src/gui/server/public-api-gemini-gemlog.lisp,
* src/gui/server/public-api.lisp,
* src/package.lisp,
* src/program-events.lisp,
* tinmop.asd:
- [GUI] added widget for gemlogs showing and unsubscribing.
- [GUI] fixed link text tag limits
2023-05-03 cage
* src/gui/client/certificates-window.lisp,
* src/gui/client/gui-goodies.lisp,
* src/gui/client/menu-command.lisp,
* src/gui/client/search-frame.lisp:
- [GUI] chaged code to match the new nodgui API related to both modal
and non-modal toplevel;
- [GUI] fixed callback to make visible the next matched text in a
gemtext search.
- [GUI] fixed checkbutton for case matching search in gemntext.
2023-04-15 cage
* src/constants.lisp,
* src/gui/client/menu-command.lisp,
* src/package.lisp:
- [GUI] improved help window.
2023-04-14 cage
* Makefile.am,
* Makefile.in,
* data/icons/fmw_dice.png,
* po/POTFILES.in,
* po/it.po,
* po/tinmop.pot,
* src/gemini/client.lisp,
* src/gui/client/bookmark-window.lisp,
* src/gui/client/gui-goodies.lisp,
* src/gui/client/icons.lisp,
* src/gui/client/main-window.lisp,
* src/gui/client/tour-window.lisp,
* src/gui/server/public-api-gemini-tour-links.lisp,
* src/hooks.lisp,
* src/package.lisp:
- [GUI] added commands to shuffle the tour.
- updated italian translation.
- updated Makefile.am to include the new icons.
- [GUI] printed information when streaming is started or finished;
- [GUI] increased width of bookmark window.
- removed debug code
- [GUI] increased size of tour management window.
2023-04-13 cage
* data/icons/fmw_bullet-go.png,
* data/icons/fmw_bus-go.png,
* data/icons/fmw_bus.png,
* src/gui/client/icons.lisp,
* src/gui/client/main-window.lisp,
* src/gui/client/menu-command.lisp,
* src/gui/client/stream-window.lisp,
* src/gui/client/tour-window.lisp,
* src/gui/server/public-api-gemini-tour-links.lisp,
* src/package.lisp,
* tinmop.asd:
- [GUI] added basic functionalities of link tour.
- [GUI] added contextual menu command for opening link in background.
- [GUI] added command for copying and bookmarking a link from the
contextual menu.
2023-04-12 cage
* src/gui/client/main-window.lisp,
* src/gui/server/public-api-gemini-tour-links.lisp,
* src/gui/server/public-api.lisp:
- [GUI] added contextual menu for links;
- [GUI] added command to add a link to the tour.
2023-04-10 cage
* data/icons/fmw_arrow-down.png,
* data/icons/fmw_arrow-up.png,
* data/icons/fmw_cross.png,
* data/icons/fmw_document-edit.png,
* po/it.po,
* src/gui/client/bookmark-window.lisp,
* src/gui/client/icons.lisp,
* src/gui/client/main-window.lisp,
* src/gui/client/menu-command.lisp,
* src/gui/client/search-frame.lisp,
* src/package.lisp,
* tinmop.asd:
- [GUI] improved visuals of bookmark managing window;
- [GUI] fixed italian translation;
- [GUI] added document edit icon.
- [GUI] added searching regex in gemtext window.
- [GUI] fixed order of tags when searching gemtext;
- [GUI] prevented crash when searching an empty gemtext widget.
- [GUI] added commands to toggle search frame.
- [GUI] added a better icon for search frame closing button.
2023-04-09 cage
* data/icons/fmw_star-blue.png,
* data/icons/fmw_star-yellow.png,
* po/POTFILES.in,
* po/it.po,
* po/tinmop.pot,
* src/constants.lisp,
* src/db.lisp,
* src/gui/client/bookmark-window.lisp,
* src/gui/client/certificates-window.lisp,
* src/gui/client/gui-goodies.lisp,
* src/gui/client/icons.lisp,
* src/gui/client/internal-paths.lisp,
* src/gui/client/main-window.lisp,
* src/gui/client/menu-command.lisp,
* src/gui/client/stream-window.lisp,
* src/gui/server/public-api-gemini-bookmark.lisp,
* src/gui/server/public-api.lisp,
* src/package.lisp,
* tinmop.asd:
- [GUI] added command to bookmark and delete a gemini address.
- [GUI] prevented closing bookmark window if validation failed when
adding a bookmark.
- [GUI] added code to render the bookmarks page.
- [GUI] refactored code related to the internal IRIs.
- [GUI] added window to manage bookmarks (only deletion so far);
- updated italian translation.
- [GUI] added window to modify bookmark entry.
2023-04-07 cage
* src/complete.lisp,
* src/constants.lisp,
* src/gui/client/main-window.lisp,
* src/package.lisp:
- [GUI] moved toolbar's buttons to the left side.
- [GUI] ensured the address bar is updated whan a link has been
clicked.
- allowed complete local path even when using file scheme ('file://').
2023-04-06 cage
* Makefile.am,
* Makefile.in,
* src/gui/client/main-window.lisp,
* src/gui/server/main-window-server-side.lisp,
* src/gui/server/public-api.lisp,
* src/iri-parser.lisp,
* src/package.lisp,
* src/ui-goodies.lisp:
- [GUI] added command for the 'go up iri' button.
- updated Makefile.am to aloww to find the new icon files.
- [GUI] fixed messed up callbacks for 'up' and 'back' buttons.
2023-04-05 cage
* src/gemini-viewer-metadata.lisp,
* src/gui/client/main-window.lisp:
- [GUI] added command for the 'back' button;
- [RPC] fixed function to get the IRI loaded before the latest one;
- [GUI] refactored some code about main window's callbacks;
- [GUI] highlighted TOC entries when the mouse pointer is over the
widget.
2023-04-03 cage
* src/gui/client/main-window.lisp:
- [GUI] implemented reload iri button command.
2023-04-02 cage
* data/icons/{fmw_page-accept.png => fmw_document-accept.png},
* src/gui/client/constants.lisp,
* src/gui/client/icons.lisp,
* src/gui/client/main-window.lisp,
* src/gui/client/stream-window.lisp,
* src/package.lisp:
- [GUI] added command to reload a gemini stream from the streams
window.
2023-03-29 cage
* data/icons/fmw_page-accept.png,
* data/icons/fmw_page.png,
* src/gui/client/certificates-window.lisp,
* src/gui/client/gui-goodies.lisp,
* src/gui/client/json-rpc-communication.lisp,
* src/gui/client/main-window.lisp,
* src/gui/client/menu-command.lisp,
* src/gui/client/stream-window.lisp,
* src/gui/server/public-api-gemini-stream.lisp,
* src/gui/server/public-api.lisp,
* src/package.lisp,
* tinmop.asd:
- [GUI] added stream window (list the streams and delete them).
2023-03-25 cage
* data/icons/fmw_document-add.png,
* data/icons/fmw_document-delete.png,
* data/icons/fmw_folder.png,
* src/gui/client/certificates-window.lisp,
* src/gui/client/icons.lisp,
* src/package.lisp:
- [GUI] improved certificates window;
- added midding icons file.
- [GUI] added a better default directory when chosing a certificate
file for import.
- [GUI] increased width of entries in import certificates dialog
window.
2023-03-24 cage
* src/gui/client/certificates-window.lisp,
* src/gui/client/icons.lisp,
* src/gui/client/json-rpc-communication.lisp,
* src/gui/client/menu-command.lisp,
* src/gui/server/public-api-gemini-certificates.lisp,
* src/gui/server/public-api.lisp,
* src/package.lisp,
* src/program-events.lisp:
- [GUI] added button to delete and import gemini gertificates.
- [GUI] improved certificates window;
- removed useless code.
2023-03-21 cage
* src/gui/client/certificates-window.lisp,
* src/gui/client/main-window.lisp,
* src/gui/client/menu-command.lisp,
* src/gui/server/public-api-gemini-certificates.lisp,
* src/package.lisp,
* tinmop.asd:
- [GUI] added menu command to shows certificates.
2023-03-19 cage
* etc/gui.conf,
* src/gui/client/client-configuration.lisp,
* src/gui/client/main-window.lisp,
* src/package.lisp,
* src/software-configuration.lisp:
- [GUI] removed deadlock when rendering gemtext and the TOC.
- [GUI] made the TOC's resize its width to fits the TOC items width.
- [GUI] added configuration directive for TOC width limits;
- [GUI] refactored TOC rendering code;
- [GUI] clear TOC widget from legacy items befor rendering the new
TOC.
- [GUI] implemented TOC callback (scroll to header when clicking on
the corresponding TOC item.
2023-03-18 cage
* etc/gui.conf,
* src/gui/client/client-configuration.lisp,
* src/gui/client/main-window.lisp,
* src/gui/server/public-api.lisp,
* src/package.lisp,
* src/software-configuration.lisp:
- [GUI] started with TOC rendering.
2023-03-17 cage
* src/gui/client/main-window.lisp,
* src/gui/server/public-api-gemini-stream.lisp:
- [GUI] fixed test for checking if a stream is exhausted;
- [RPC] force a maximum width for the TOC entry.
2023-03-16 cage
* src/gemini-viewer.lisp,
* src/gui/client/main-window.lisp,
* src/gui/server/public-api-gemini-stream.lisp:
- [GUI] prevented wrapping of preformatted lines.
- [GUI] prevented error when loading twice a non-text resource (e.g.
loading twice the same URL pointing to a bitmao image.).
- [gemini] added missing arguments when creating an instance of
'gemini-others-data-stream'.
2023-03-15 cage
* etc/shared.conf,
* src/gemini-viewer.lisp,
* src/gui/client/main-window.lisp,
* src/gui/server/public-api-gemini-stream.lisp:
- [GUI] fixed discarding rendering of lines coming from a stopped
stream;
- [GUI] added downloading and opening of non text data.
- [GUI] refactored a test.
- [GUI] added downloading of data with text/* MIME type (but not
gemini);
- [GUI] refactored rendering of simple text data;
- [GUI] removed debugging form.
2023-03-14 cage
* src/gui/client/main-window.lisp,
* src/gui/client/os-utils.lisp:
- [GUI] instructed the client to open local file using external
software.
2023-03-12 cage
* etc/gui.conf,
* src/gemini/client.lisp,
* src/gemini/gemini-parser.lisp,
* src/gemini/package.lisp,
* src/gui/client/client-configuration.lisp,
* src/gui/client/gui-goodies.lisp,
* src/gui/client/main-window.lisp,
* src/gui/server/public-api-gemini-stream.lisp,
* src/gui/server/public-api.lisp,
* src/package.lisp:
- [gemini] returned the meta header to user when a protocol error
occurred.
- [GUI] added code to deal with query input (status 10 and 11).
- [GUI] fixed leaking lines parameter when rendering preformatted
text;
- [gemini] added a missing newline character in
'geminize-preformatted';
- [GUI] parsed standard colors for gemini window's text;
- [GUI] rendered the gemini protocol rerror responses to the
gemtext
window instead of poppinu out a dialog window.
2023-03-11 cage
* src/gui/client/main-window.lisp,
* src/gui/server/public-api-gemini-stream.lisp,
* src/package.lisp,
* src/program-events.lisp:
- [RPC] bubbled-up error when using wait results cuncurrent events.
- [RPC] resignalled TOFU error to client in a structured form to let
the user deal with it;
- [GUI] improved protocol error messages.
- [GUI] prevent rendering of lines in the queue when corresponding
stream has been canceled;
- [GUI] print an error when opening a non existent local path.
- [GUI] fixed test for discarding canceled stream lines left in the
queue;
- [GUI] setted the font for the rendered gemtext from the one choosen
in the configuration file.
2023-03-08 cage
* src/gui/client/main-window.lisp,
* src/gui/server/public-api-gemini-stream.lisp:
- [RPC] fixed 'code' argument of 'make-gemini-response' (passed a
struct but an integer was expected instead);
- [GUI] implemented redirect;
- [GUI] implemented opening of local directory.
- [GUI] hide candidates when loading an url.
2023-03-06 cage
* src/constants.lisp,
* src/gemini/gemini-parser.lisp,
* src/gui/client/main-window.lisp,
* src/gui/client/os-utils.lisp,
* src/gui/server/public-api-gemini-stream.lisp,
* src/gui/server/public-api.lisp,
* src/package.lisp,
* tinmop.asd:
- [GUI] made link working for local files and gemtext files over
gemini protocol.
2023-03-03 cage
* src/gemini/gemini-parser.lisp,
* src/gui/client/main-window.lisp:
- [GUI] transformed relative IRI to absolute in the rendered gemtext;
[GUI] printed IRI on the info-bar when moving cursor over links in the
rendered gemtext.
2023-03-02 cage
* src/complete.lisp,
* src/gui/client/main-window.lisp,
* src/package.lisp:
- removed wrong assumption that input is a simple string when
completing expanding the tilde as home of the user.
- [GUI] allowed expanding of local paths in the address bar;
- refactored callback related to opening address.
2023-02-28 cage
* src/gui/client/main-window.lisp:
- [GUI] removed inefficent code to render the gemtext;
- added dummy function as link callback.
2023-02-27 cage
* etc/gui.conf:
- [GUI] added GUI configuration file.
2023-02-26 cage
* Makefile.am,
* Makefile.in,
* configure,
* configure.ac,
* src/api-client.lisp,
* src/config.lisp.in.in,
* src/gui/client/client-configuration.lisp,
* src/gui/client/gui-goodies.lisp,
* src/gui/client/main-window.lisp,
* src/package.lisp:
- [GUI] added correct wrapping for gemtext widget.
- [GUI] ensured the rendering of the gemtext respects the directives
in the configuration file (font, color, justification, etc).
- added package URL to the authorized client.
2023-02-25 cage
* src/gemini/client.lisp,
* src/gemini/package.lisp,
* src/gui/client/gui-goodies.lisp,
* src/gui/client/main-window.lisp,
* src/package.lisp:
- [GUI] started a news thread where getting gemini stream's data.
- [GUI] added theming to gemtext.
- [GUI] rendered links;
- [GUI] started with focus on the address text entry.
2023-02-24 cage
* etc/init.lisp,
* src/gemini-subscription-window.lisp:
- rearranged columns of gemlog subscriptions.
- fixed typos in init file.
2023-02-22 cage
* src/gui/client/gui-goodies.lisp,
* src/gui/client/main-window.lisp,
* src/package.lisp:
- added functions to set meesages on the info-bar.
2023-02-21 cage
* Makefile.am,
* Makefile.in,
* src/gui/client/client-configuration.lisp,
* src/gui/client/gui-goodies.lisp,
* src/gui/client/main-window.lisp,
* src/main.lisp,
* src/package.lisp,
* tinmop.asd:
- added 'etc/gui.conf' to the file to be distributed;
- [GUI] added gemtext window;
- [GUI] fixed loading of GUI specific configuration file;
- [GUI] completed parsing of configuration values (e.g. color names
are converted to corresponding TK color codes).
2023-02-19 cage
* po/POTFILES.in,
* po/it.po,
* po/tinmop.pot,
* src/gemini/client.lisp,
* src/gui/client/gui-goodies.lisp,
* src/gui/client/main-window.lisp,
* src/gui/client/menu-command.lisp,
* src/gui/client/program-events.lisp,
* src/gui/server/public-api-gemini-stream.lisp,
* src/main.lisp,
* src/package.lisp,
* tinmop.asd:
- [RPC] moved request enqueue macros to the GUI loop package;
- [GUI] ensured the gui events loop thread is terminated before
quitting the server and the program.
- [gemini] improved format control for protocol error messages;
- [GUI] logged RPC request error instead of opening a dialog message
when in debug mode;
- [GUI] added a draft of callback for opening a gemini address.
- [RPC] learnt that (error "string" arg1 arg2 ... argn), is similar to
(error (format nil "string" arg1 arg2 ... argn)) so (error (format
nil "~a" "~c")) is equal to (error "~c"); => format error (missing
argument for format string)!
- [GUI] bound the wish interpreter handle to a special variable so
that the gui event loop can reference it and call, without errors,
nodgui functions.
- [GUI] removed useless information (for users) when showing errors
(RPC errors contained the whole request as sexp).
- [GUI] removed warning about missing variable
'gui-goodies:*gui-server*' in file containing the gui event loop.
- [RPC] added iri for failed stream when signalling an error.
- [i18n] updated translatable files;
- [i18n] updated italian translation.
2023-02-18 cage
* data/icons/fmw_uparrow.png,
* src/filesystem-utils.lisp,
* src/gui/client/gui-goodies.lisp,
* src/gui/client/icons.lisp,
* src/gui/client/main-window.lisp,
* src/package.lisp,
* src/zip-info.lisp:
- converted namestring to pathname in a couple of functions.
- [GUI] added 'up' button.
- [GUI] bound return event for the address bar to a dummy function.
- [GUI] tracked slot name changing in nodgui.
2023-02-17 cage
* src/constants.lisp,
* src/gui/client/gui-goodies.lisp,
* src/gui/client/main-window.lisp,
* src/gui/client/menu-command.lisp,
* src/main.lisp,
* src/package.lisp:
- [GUI] used the new autocomplete widget of nodgui.
- made 'about' help window, modal.
- prevented connecting to a pleroma instance when loading a script in
gemini exclusive mode.
- prevented connecting to a pleroma instance when running the TUI in
gemini exclusive mode.
2023-02-14 cage
* src/ui-goodies.lisp:
- [kami] prevented landing on the debugger if communicating with
a kami
server fails.
2023-02-12 cage
* src/gui/client/main-window.lisp,
* src/gui/server/public-api-gemini-stream.lisp:
- [RPC] added indices of matching chars in string that complete the
IRI in 'complete-net-address'
This data would be useful to highlight parts of the string that
matches the criteria to complete the user suggestions (typed on the
address text entry).
2023-02-11 cage
* src/api-client.lisp,
* src/windows.lisp:
- fixed default callback in input dialog.
- input dialog reurn :canceled if the user pressed the 'cancel'
button;
- fixed an infinite loop when the user chose to cancel saving the URI
to autorize the client.
- flush the socket buffer to ensure the successful autorization
message is delivered to the browser.
2023-02-10 cage
* src/gui/client/main-window.lisp,
* src/gui/server/json-rpc-communication.lisp,
* src/gui/server/public-api.lisp:
- [RPC] fixed server stopping;
- [GUI] notify RPC errors to the user using the GUI.
2023-02-09 cage
* src/gemini-viewer.lisp,
* src/gui/client/json-rpc-communication.lisp,
* src/gui/client/main-window.lisp,
* src/gui/client/menu-command.lisp,
* src/gui/server/json-rpc-communication.lisp,
* src/gui/server/public-api.lisp,
* src/json-rpc2.lisp,
* src/main.lisp,
* src/package.lisp,
* src/program-events.lisp,
* src/tests/program-events-tests.lisp:
- [GUI] started connecting JSON API with GUI;
- [RPC] reworked 'slurp-gemini-stream' to use events queue;
- [GUI] fixed dispatching of events
- [GUI] added address autocomplete;
- added optional argument to specify pushing function in:
'program-events:push-function-and-wait-results'.
2023-02-08 cage
* Makefile.am,
* Makefile.in,
* src/gui/client/constants.lisp,
* src/gui/client/gui-goodies.lisp,
* src/gui/client/icons.lisp,
* src/gui/client/main-window.lisp,
* src/gui/client/menu-command.lisp,
* src/gui/client/validation.lisp,
* src/package.lisp,
* tinmop.asd:
- added some functions to build the GUI.
2023-02-05 cage
* LICENSES.org,
* Makefile.am,
* Makefile.in,
* data/icons/fmw_back.png,
* data/icons/fmw_go.png,
* data/icons/fmw_open_tour.png,
* data/icons/fmw_refresh.png,
* data/icons/search.png,
* data/icons/{search.png => fmw_search.png},
* src/gui/client/icons.lisp,
* src/gui/client/json-rpc-communication.lisp,
* src/gui/client/main-window.lisp,
* src/gui/client/menu-command.lisp,
* src/gui/server/public-api-gemini-stream.lisp,
* src/gui/server/public-api.lisp,
* src/json-rpc2.lisp,
* src/main.lisp,
* src/modules.lisp,
* src/package.lisp,
* tinmop.asd,
* {modules => data/modules}/delete-by-regex.lisp,
* {modules => data/modules}/expand-abbrev-command-window.lisp,
* {modules => data/modules}/next-previous-open.lisp,
* {modules => data/modules}/rewrite-message-urls.lisp,
* {modules => data/modules}/share-gemini-link.lisp,
* {scripts => data/scripts}/delete-old-posts.lisp,
* {scripts => data/scripts}/export-gemini-subscriptions.lisp,
* {scripts => data/scripts}/fetch-post-tree.lisp,
* {scripts => data/scripts}/gemget.lisp,
* {scripts => data/scripts}/generate-gemlog.lisp,
* {scripts => data/scripts}/get-following.lisp,
* {scripts => data/scripts}/import-following.lisp,
* {scripts => data/scripts}/import-gemini-subscriptions.lisp,
* {scripts => data/scripts}/welcome-bot.lisp:
- [GUI] added a bit of scaffolding for the interface;
- [GUI/RPC] added method to start and retrieve a gemini stream's
data.
- instruct makefile to copy modules, script and icons in differents
subdirectory when installing the package.
- [GUI] added a few icons.
2023-02-04 cage
* src/json-rpc2.lisp:
- [JSON-RPC] added the request (that triggered the error) to the data
field of an error response.
2023-02-02 cage
* po/it.po,
* po/tinmop.pot,
* src/gui/client/program-events.lisp,
* src/package.lisp,
* src/program-events.lisp,
* src/tests/program-events-tests.lisp,
* src/ui-goodies.lisp,
* src/windows.lisp:
- updated italian translation;
- added message to inform about the downloading of notifications.
- made the event-queue optionally blocking (block the caller thread if
empty).
- added parent window to the dialog.
2023-02-01 cage
Merge branch 'master' into add-gemini-gui
2023-01-30 cage
* ChangeLog,
* NEWS.org,
* po/it.po,
* po/tinmop.pot,
* quick_quicklisp.sh.in,
* src/package.lisp,
* src/program-events.lisp,
* src/windows.lisp:
- used the brand new dialog window made available from croatoan.
- updated croatoan revision to fetch during installation.
- updated changelog.
- updated NEWS.org.
- updated italian translation.
2023-01-15 cage
* src/box.lisp,
* src/gui/client/json-rpc-communication.lisp,
* src/gui/client/program-events.lisp,
* src/gui/server/json-rpc-communication.lisp,
* src/gui/server/public-api-gemini-certificates.lisp,
* src/gui/server/public-api-gemini-stream.lisp,
* src/gui/server/public-api-structs.lisp,
* src/gui/server/public-api.lisp,
* src/message-window.lisp,
* src/package.lisp,
* src/program-events.lisp,
* src/tests/program-events-tests.lisp,
* tinmop.asd:
- [RPC] added API for generate the TOC from a gemtext;
- removed duplicated code (used the class 'box:box' instead of struct
'json-rpc-communication:box).
- [GUI] added client events loop.
- added missing file;
- [RPC] splitted the package json-rpc-munication in two files: one in
server directory and the other in the client directory.
2023-01-13 cage
* src/gemini-viewer.lisp,
* src/gui/client/client-configuration.lisp,
* src/gui/server/json-rpc-communication.lisp,
* src/gui/server/public-api-gemini-certificates.lisp,
* src/gui/server/public-api-gemini-stream.lisp,
* src/gui/server/public-api-gemini-tour-links.lisp,
* src/gui/server/public-api-structs.lisp,
* src/gui/server/public-api.lisp,
* src/json-rpc2.lisp,
* src/package.lisp,
* src/tests/json-rpc2-tests.lisp,
* tinmop.asd:
- added missing parens.
Merge branch 'master' into add-gemini-gui
- [JSON-RPC] fixed tests (the error object returns the field 'data'
now).
- [RPC] added function to close server;
- [JSON-RPC] allowed API to signal a custom 'jsonrpc-error'.
- [JSON-RPC] fixed macro for signal error.
- [RPC] fixed encoding of certificates.
- [RPC] refactored public API in multiple files.
- [RPC] moved struct 'box'.
- [GUI] added procedures to get client configuration.
- [gemini] used function 'maybe-notify'.
2023-01-12 cage
* configure,
* configure.ac,
* src/gemini-viewer.lisp,
* src/gui/server/json-rpc-communication.lisp,
* src/gui/server/main-window-server-side.lisp,
* src/gui/server/public-api.lisp,
* src/os-utils.lisp,
* src/package.lisp,
* src/ui-goodies.lisp,
* tinmop.asd:
- [RPC] added functions for managing tour links and clients
certificates.
- made the program respect the `open' configuration directive for when
downloading MINE type "text/*"
Before this patch, the software tried to open all the text MIME type
in the main window regardless any setting in the configuration file
that imposed to use a program to open a file based on a regular
expression (e.g. `open "^((gemini://)|(\\.)|(/)).+txt$" with "vi"',
did not worked).
Merge branch 'master' into add-gemini-gui
- increased version number.
2023-01-11 cage
* etc/shared.conf,
* src/gemini-viewer.lisp,
* src/gui/server/main-window-server-side.lisp,
* src/main.lisp,
* src/message-window.lisp,
* src/misc-utils.lisp,
* src/package.lisp,
* src/text-utils.lisp,
* tinmop.asd:
- removed resetting of gemini parser status when downloading a text
encoded, but non-gemini, file;
- [rpc] added tour links slot for gemni window (server);
- added loading configuration file for GUI (RPC client) at start;
- refactored metadata slot thei is now used by a TUI window and the
server side gemini window;
- added optional string bag parameter to 'text-utils:trim-blanks'.
2023-01-08 cage
* po/POTFILES.in,
* po/it.po,
* po/tinmop.pot:
-updated italian translation and list of files that contains striin
that can be translated.
2023-01-06 cage
* modules/share-gemini-link.lisp,
* src/gemini-viewer-metadata.lisp,
* src/gemini/client.lisp,
* src/gui/json-rpc-communication.lisp,
* src/gui/main-window-server-side.lisp,
* src/gui/public-api.lisp,
* src/gui/{ => server}/json-rpc-communication.lisp,
* src/gui/{ => server}/main-window-server-side.lisp,
* src/gui/{ => server}/public-api.lisp,
* src/json-rpc2.lisp,
* src/message-window.lisp,
* src/package.lisp,
* src/program-events.lisp,
* src/tests/jsonrpc2-tests.lisp,
* src/tests/{jsonrpc2-tests.lisp => json-rpc2-tests.lisp},
* src/ui-goodies.lisp,
* tinmop.asd:
- log gemini and json, debug messages even if *features* does not
contains :debug-mode;
- [RPC] fixed 'gemini-stream-info';
- [RPC] added 'gemini-stream-parsed-line-slice';
- [RPC] added error handling for 'gemini-stream-parsed-line';
- [JSON-RPC] fixed encoding of error responses.
- renamed test file.
- [JSONRPC] included actual ID to the error response when possible.
- [JSONRPC] used a custom error when a called function fails for some
reason.
- [JSONRPC] added optional data field to error response.
- [RPC] removed parsed lines from object returned by the function
'gemini-stream-info', there are more specialized functions to get
those;
- [RPC] added 'gemini-all-stream-info'.
- [RPC] added representation of the main gemini window in the server;
- [RPC] added two IRI's history manipulation functions.
- [GUI] moved server side GUI to a proper component and directory.
- fixed missing function argument in module.
2023-01-02 cage
* src/program-events.lisp:
- prevented crash when printing a notification after deletion.
2023-01-01 cage
* etc/init.lisp,
* src/api-client.lisp,
* src/gemini/gemini-parser.lisp,
* src/gui/public-api.lisp,
* src/json-rpc2.lisp,
* src/package.lisp,
* src/program-events.lisp,
* src/tests/gemini-parser-tests.lisp,
* src/ui-goodies.lisp:
- added a new command 'delete-notifications';
- retrofitted 'add-metadata-to-parsed-gemini-lines' into the main
gemini parser;
- fixed json generation of parsed lines in 'gemini-stream-info'.
- [rpc] fixed error handling.
- [rpc] added 'gemini-stream-parsed-line'.
- [rpc] fixed error responses, tests passed again.
- [rpc] returned an error if a gemini stream can not be foud in
'gemini-stream-info'.
2022-12-30 cage
* src/gemini/gemini-parser.lisp,
* src/gemini/package.lisp,
* src/gui/json-rpc-communication.lisp,
* src/gui/public-api.lisp,
* src/json-rpc2.lisp,
* src/package.lisp,
* src/tests/gemini-parser-tests.lisp:
- added parameter 'initialize-parser' (default to nil), to reset
parser state in 'sexp->text-rows';
- added 'add-metadata-to-parsed-gemini-lines'
This function will add attributes (like ':header-group-id') to the
sexp representation of a gemini stream (structure: (tag
((attribute-key attribute value)...) text line) )
- [JSON-RPC API] added a couple of public API function.
- added 'list-id' as metadata for gemini list;
- added unit tests for gemini parser.
2022-12-29 cage
* src/db-utils.lisp,
* src/gemini-viewer.lisp,
* src/gemini/client.lisp,
* src/gemini/gemini-parser.lisp,
* src/gemini/subscription.lisp,
* src/program-events.lisp,
* tinmop.asd:
- added a couple of debug flags to make logging more fine-tuned.
- added slot 'parsed-lines' to gemini-viewer:gemini-stream,
moreover used this slots when downloading a gemini stream
This changes means that the parsing of gemini stream is no more done
in program events but during the downloading thread.
See, for example the changes in:
'gemini-viewer:make-gemini-download-event'
- added a parameter to prevent notification when downloading a gemini
stream
see 'gemini-viewer:request-stream-gemini-document-thread';
- added a more human friendly constants for each gemini status code
(e.g. +success+ for code 20).
- as the gemini parser has status added a parameter
('initialize-parser') to
'gemini-parser:parse-gemini-file' (default to nil, do not initialize);
- initialize the gemini parser when needed.
- moved macro definition on top of the file.
2022-12-28 cage
* src/gemini/client.lisp,
* src/gemini/package.lisp:
- [gemini] added better names for status code of a gemini response
(e.g. '+20+' -> '+success+').
2022-12-27 cage
* src/gui/json-rpc-communication.lisp,
* src/json-rpc2.lisp,
* src/main.lisp,
* src/tests/jsonrpc2-tests.lisp,
* tinmop.asd:
- [gui] added an actual funcion for API;
- [jsonrpc] added more information when an internal error occurred;
- added 'main:rpc-server-init'.
2022-12-26 cage
* README.org,
* README.txt,
* src/program-events.lisp:
- updated READMEs.
- used a better default for slot 'local-path' to prevent crash when
'sexp->links' is called with an empty string as local-path argument.
2022-12-23 cage
* scripts/generate-gemlog.lisp:
- improved error reporting in script 'generate-gemlog.lisp'.
2022-12-17 cage
* src/ui-goodies.lisp:
- caught all errors signaled when something has gone wrong
downloading the messages containing the subscribed tags.
2022-12-14 cage
* ChangeLog,
* NEWS.org,
* configure.ac,
* quick_quicklisp.sh.in,
* src/ui-goodies.lisp,
* tinmop.asd:
- removed hard-coded font spec when making an image mosaic;
- updated croatoan version.
- increased version number;
- updated news and changelog files.
- fixed version number.
- updated version number in configure.ac too.
2022-12-12 cage
* ChangeLog,
* NEWS.org,
* doc/tinmop.man,
* doc/tinmop.org,
* po/it.po,
* po/tinmop.pot:
- updated changelog.
- updated italian translation.
- updated NEWS file.
- updated documentation.
2022-12-11 cage
* src/ui-goodies.lisp:
- captured error that could happens when making a image mosaic from a
gemini page.
2022-12-10 cage
* Makefile.in,
* README.org,
* README.txt,
* configure,
* configure.ac,
* etc/init.lisp,
* etc/shared.conf,
* po/it.po,
* po/tinmop.pot,
* src/config.lisp.in.in,
* src/os-utils.lisp,
* src/package.lisp,
* src/software-configuration.lisp,
* src/ui-goodies.lisp:
- added command 'gemini-images-montage'.
- updated italian translation;
- fixed error messages when collecting images.
- removed fuzzy bit from italian PO file.
- added progression messages when composing images.
- added docstring to 'gemini-images-montage'
- updated READMEs.
- added a pair of directives to configure montage of gemini images.
- added a better name for images captions, when composing images from
a gemini page.
2022-12-09 cage
* src/program-events.lisp:
- ensured an user is added into the the database before following
them.
2022-12-08 cage
* etc/shared.conf,
* src/sending-message.lisp:
- reworked a few regular expressions to fix mentions coloring.
2022-12-07 cage
* src/open-message-link-window.lisp:
- prevented useless percent encoding of a path.
2022-11-29 cage
* src/db.lisp,
* src/modeline-window.lisp,
* src/package.lisp,
* src/program-events.lisp,
* src/software-configuration.lisp:
- added a configuration directive to filter out unwanted hashtags.
2022-11-28 cage
* src/db.lisp:
- removed debug code.
2022-11-27 cage
* etc/shared.conf,
* src/api-client.lisp,
* src/package.lisp,
* src/program-events.lisp,
* src/software-configuration.lisp:
- added a configuration directive to leave or delete mentions from the
server after fetching them.
2022-11-26 cage
* src/gemini-viewer.lisp:
- fixed declaration.
2022-11-25 cage
* src/api-client.lisp,
* src/gemini-viewer.lisp,
* src/gemini/client.lisp,
* src/program-events.lisp,
* src/tui-utils.lisp:
- prevented deletion of mentions when the program is in debug-mode;
- [gemini] prevented crash when and error getting data from TLS
socket;
- prevented crash when dumping mentions.
- ignore errors when getting gemlog feeds data.
2022-11-24 cage
* src/line-oriented-window.lisp:
- prevented crash when calling resync-rows-db of a null object.
2022-11-23 cage
* etc/shared.conf:
- fixed coloring regex.
2022-11-21 cage
* src/api-pleroma.lisp,
* src/chats-list-window.lisp,
* src/message-window.lisp,
* src/program-events.lisp,
* tinmop.asd:
- prevented crash when opening empty chat windows;
- fixed refreshing of chats.
- flipped off debug switch.
2022-11-20 cage
* ChangeLog,
* configure,
* configure.ac,
* src/program-events.lisp,
* tinmop.asd:
- updated Changelog.
- increased version number.
- removed field from changelog.
- removed empty line.
2022-11-19 cage
* ChangeLog,
* po/it.po,
* po/tinmop.pot,
* scripts/generate-gemlog.lisp,
* src/program-events.lisp,
* src/thread-window.lisp:
- updated italian translation.
- updated Changelog.
- prevented crash when updating the thread window with a non existent
status-id.
- [gemini] prevented the script 'generate-gemlog.lisp' to export files
that do not match .gmi extension;
- fixed wrong class name when printing mentions.
2022-11-18 cage
* src/db.lisp,
* src/package.lisp,
* src/program-events.lisp,
* src/software-configuration.lisp,
* src/thread-window.lisp:
- added a configuration directive to filter boost based on a regular
expression matching the username.
2022-11-17 cage
* etc/init.lisp,
* etc/shared.conf,
* src/package.lisp,
* src/program-events.lisp,
* src/ui-goodies.lisp:
- added command 'print-mentions';
- highlight mentions in message window.
2022-11-15 cage
* etc/shared.conf,
* po/it.po,
* po/tinmop.pot,
* src/text-utils.lisp,
* src/ui-goodies.lisp:
- added preview and confirm prompt for each file attached on a status.
- allowed also collection of gopher address, printed on the message
window, in the link window.
- updated Italian translation.
2022-11-13 cage
* src/ui-goodies.lisp:
- added docstring for 'status-tree->text'.
- made notification an error.
2022-11-12 cage
* src/api-client.lisp,
* src/num-utils.lisp,
* src/ui-goodies.lisp:
- added code to try to recover from a failed tag request.
- fixed accessor's name.
2022-10-29 cage
* quick_quicklisp.sh.in:
- updated croatoan version.
2022-10-14 cage
* ChangeLog,
* NEWS.org,
* configure,
* configure.ac,
* src/gemini-viewer.lisp,
* src/gemini/gemini-parser.lisp,
* src/gemini/package.lisp,
* src/ui-goodies.lisp,
* tinmop.asd:
- reset the message 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.
- updated version number;
updated Chengelog and NEWS files
- updated autotools scripts.
- [gemini] made the special variable gemini-parser:*raw-mode-data*
thread local
There is no sense to share it between multiple threads parsing a
gemini stream as the status of the parser (preformatted or not) from
one could leaks into another.
2022-10-09 cage
* etc/init.lisp,
* src/gopher/parser.lisp,
* src/ui-goodies.lisp:
- fixed gopher URI parser.
- capured errors signalled by malformed URI, when opening gopher
address.
2022-10-02 cage
* etc/init.lisp,
* src/iri-parser.lisp,
* src/message-window.lisp,
* src/package.lisp,
* src/ui-goodies.lisp:
- added a function to extract and display links extracted from the
contents of a message window;
- fixed 'iri:absolute-url-p'.
2022-10-01 cage
* doc/tinmop.man,
* doc/tinmop.org,
* etc/init.lisp,
* src/api-client.lisp,
* src/gopher-window.lisp,
* src/package.lisp,
* src/thread-window.lisp,
* src/ui-goodies.lisp:
- ensured non mention notifications are excluded in
'api-client:mentions'.
- [gopher] added notification of any error signaled when making a
gopher request.
- [gopher] fixed going back to net history.
- changed function's name: 'gemini-history-back' ->
'net-address-history-back'.
- updated manpage.
2022-09-25 cage
* po/POTFILES.in,
* po/it.po,
* po/tinmop.pot,
* src/gopher-window.lisp,
* src/ui-goodies.lisp:
- [gopher] removed bad characters when printing lines.
- enqueue the procedure to create a gopher window.
- updated italian translation.
2022-09-23 cage
* src/gopher/parser.lisp:
- [gopher] uses type 1 lines as default type for URI.
2022-09-21 cage
* etc/default-theme.conf,
* src/gopher-window.lisp,
* src/gopher/parser.lisp:
- [gopher] added support for index search lines.
2022-09-20 cage
* src/keybindings.lisp:
- prevented a crash adding the gopher keymap to the list of help
window's headers.
2022-09-11 cage
* src/complete.lisp:
- fixed 'complete-uri-matcher', does not take into account string case
difference anymore.
- simplified sorting predicate to complete IRI.
2022-09-10 cage
* etc/init.lisp,
* src/filesystem-utils.lisp,
* src/html-utils.lisp,
* src/mtree-utils.lisp,
* src/package.lisp,
* src/ui-goodies.lisp:
- added command "status-tree->text".
- fixed regression in 'text-utils:parent-dir-path'.
2022-09-06 cage
* etc/init.lisp,
* modules/delete-by-regex.lisp,
* src/modules.lisp,
* src/package.lisp:
- added command 'print-post-id';
- removed importing of alexandria in modules, used local-nickname,
instead.
2022-09-04 cage
* src/gemini-viewer.lisp,
* src/gopher-window.lisp:
- allowed pushing in the address visited queue only gemtext pages and
gopher menu.
2022-08-31 cage
* etc/init.lisp,
* src/gopher-window.lisp,
* src/misc-utils.lisp,
* src/open-message-link-window.lisp,
* src/package.lisp,
* src/program-events.lisp,
* src/ui-goodies.lisp:
- added bookmarking of gopher addresses.
- renamed function.
2022-08-29 cage
* src/gopher/parser.lisp:
- added a new parser just for gopher address; they are not IRI as the
selector part can contains arbitrary characters even that ones that
are not allowed in IRI's path component.
2022-08-28 cage
* etc/default-theme.conf,
* etc/init.lisp,
* modules/expand-abbrev-command-window.lisp,
* src/gemini-viewer.lisp,
* src/gopher-window.lisp,
* src/gopher/client.lisp,
* src/gopher/package.lisp,
* src/gopher/parser.lisp,
* src/keybindings.lisp,
* src/package.lisp,
* src/software-configuration.lisp,
* src/specials.lisp,
* src/ui-goodies.lisp,
* tinmop.asd:
- added a basic gopher implementation.
Merge branch 'gopher-support'
- removed debug code.
- fixed 'ui:open-net-address';
- [module] expanded gopher abbreviation in
'expand-abbrev-command-window.lisp'.
2022-08-25 cage
* src/filesystem-utils.lisp,
* src/gopher/client.lisp,
* src/gopher/package.lisp,
* src/gopher/parser.lisp:
- fixed 'fs:split-path-elements'
- before:
(fs:split-path-elements "/a/b") ;=> ("" "a" "b")
(fs:split-path-elements "/a/b") ;=> ("a" "b")
- [gopher] added 'client:request'.
2022-08-23 cage
* scripts/fetch-post-tree.lisp,
* src/package.lisp,
* src/program-events.lisp,
* src/ui-goodies.lisp:
- added module 'fetch-post-tree.lisp';
- changed the window type from gemini to standard type for printing
the output from a module.
2022-08-21 cage
* src/gemini/package.lisp,
* src/gopher/client.lisp,
* src/gopher/package.lisp,
* src/gopher/parser.lisp,
* tinmop.asd:
- [gopher] implemented a basic parser.
2022-08-19 cage
* ChangeLog,
* NEWS.org,
* src/gemini/client.lisp,
* tinmop.asd:
- [gemini] added missing mandatory argument to function that builds
the redirect URI.
- increased version number;
- updated NEWS and Changelog.
2022-08-19 cage
* src/gemini/client.lisp:
- [gemini] added missing mandatory argument to function that builds
the redirect URI.
2022-08-15 cage
* ChangeLog,
* NEWS.org,
* src/db.lisp,
* src/gemini-subscription-window.lisp,
* tinmop.asd:
- changed sorting criteria for gemlog subscriptions;
Promotes on top subscriptions with unread posts.
- updated ChangeLog.
- increased version number;
- updated News file.
- actually increased version number.
2022-08-05 cage
* src/gemini-viewer.lisp,
* src/gemini/gemini-parser.lisp,
* src/gemini/subscription.lisp,
* src/program-events.lisp,
* src/ui-goodies.lisp,
* src/windows.lisp:
- taken into account the query of the original URI when combining it
with a path.
- moved window that got the focus on top of the windows stack, to be
sure will be visible to the user when redrawing the terminal.
Merge branch 'fix-absolutize-links'
2022-07-21 cage
* etc/default-theme.conf,
* src/gemini-subscription-window.lisp,
* src/package.lisp,
* src/software-configuration.lisp:
- improved appearance of gemini subscriptions window.
2022-07-15 cage
* src/gemini/client.lisp:
- [gemini] remove redirect loop when the meta was an absolute URI.
2022-07-13 cage
* etc/default-theme.conf,
* scripts/generate-gemlog.lisp,
* src/gemini/client.lisp,
* src/gemini/gemini-parser.lisp,
* src/gemini/package.lisp,
* src/html-utils.lisp,
* src/package.lisp,
* src/software-configuration.lisp:
- [modules] added backlink to generated gemlog pages;
- [gemini] fixed rendering of links that starts with an emoji.
2022-07-09 cage
* ChangeLog,
* po/it.po,
* scripts/generate-gemlog.lisp,
* src/ui-goodies.lisp:
- fixed formatting in generated gemlog topic index;
- fixed Italian translation.
- [gemini] fixed command for opening of the next visible link;
- updated ChangeLog.
2022-07-08 cage
* src/message-window.lisp:
- fixed excessive page scrolling in message window.
2022-07-06 cage
* src/complete.lisp,
* src/main.lisp:
- mitigated issue with unparsed keyboard input coming from ncurses.
- improved sorting of URI fuzzy matching.
2022-07-03 cage
* src/windows.lisp:
- made links window respects resize events.
2022-07-02 cage
* scripts/generate-gemlog.lisp,
* src/db.lisp,
* src/filesystem-utils.lisp,
* src/gemini-viewer.lisp,
* src/gemini/client.lisp,
* src/gemini/subscription.lisp,
* src/iri-parser.lisp,
* src/misc-utils.lisp,
* src/text-utils.lisp,
* src/ui-goodies.lisp,
* src/uri-parser.lisp,
* src/zip-info.lisp:
- removed direct call to babel:octets-to-string, using 'to-s' wrapper,
instead.
- [gemini] prevented crash when no previous link to open is found
before the selected line.
- clean usernames from problematic characters.
2022-07-01 cage
* etc/init.lisp,
* src/line-oriented-window.lisp,
* src/message-window.lisp,
* src/package.lisp,
* src/ui-goodies.lisp:
- [gemini] added command 'open-previous-link'.
2022-06-29 cage
* src/gemini-viewer.lisp,
* src/program-events.lisp:
- [gemini] prevented landing on debugger (or even crash) when DNS
lookup fails.
2022-06-15 cage
* etc/init.lisp,
* scripts/generate-gemlog.lisp,
* src/open-message-link-window.lisp,
* src/package.lisp,
* src/specials.lisp,
* src/ui-goodies.lisp:
- added 'ui:tui-active-p'.
- [gemini] added a script to generate a gemlog;
- removed *tour-links-window*;
- adding a new command: open-gemini-links-and-ask-tour.
2022-06-14 cage
* src/gemini/gemini-parser.lisp,
* src/open-message-link-window.lisp,
* src/ui-goodies.lisp:
- [gemini] added alt text even for preformatting end tag.
- prevented crash when the tour indices exceeds the number of links in
a page.
- [gemini] prevented crash when an illegal character is found in an
URI.
2022-06-04 cage
* src/package.lisp,
* src/resources-utils.lisp:
- added 'get-resource-dir' and 'get-data-dir'.
2022-06-03 cage
* src/filesystem-utils.lisp,
* src/tui-utils.lisp:
- prevented 'apply-coloring' signals an error when coloring an empty
complex-string.
- fixed return type of 'apply-coloring' when the complex-string is
empty.
- removed file descriptor leak in '%mkstemp';
- specialized method sequence-empty-p for complex string.
2022-05-27 cage
* src/misc-utils.lisp,
* src/package.lisp:
- fixed misc:array-slice;
- changed misc:split-into-sublist to misc:split-into-chunks.
2022-05-25 cage
* tinmop.asd:
- added bugtracker URI.
2022-05-01 cage
* Makefile.am,
* Makefile.in,
* po/it.po,
* po/tinmop.pot,
* src/api-client.lisp,
* src/package.lisp,
* src/program-events.lisp,
* src/ui-goodies.lisp:
- optimized expanding of status trees that contains mentions;
- fixed file path of Makefile.am;
- fixed typo.
- added captions for attachments.
- updated Italian translation.
2022-04-25 cage
* doc/tinmop.man,
* doc/tinmop.org,
* doc/{man.org => tinmop.org}:
- updated manpage.
- fixed manpage.
2022-04-23 cage
* etc/init.lisp,
* po/it.po,
* po/tinmop.pot,
* quick_quicklisp.sh.in,
* src/filesystem-utils.lisp,
* src/package.lisp,
* src/ui-goodies.lisp,
* src/x509.lisp:
- allowed printing about kami ID from the window of the TLS
certificates.
- updated Italian translation.
- updated croatoan commit.
2022-04-22 cage
* src/kami/client.lisp,
* src/misc-utils.lisp,
* src/ui-goodies.lisp:
- [kami] removed setf' of global variables.
- prevented program freeze when a kami error occurred.
2022-04-20 cage
* src/command-line.lisp:
- used 'alexandria:when-let' macro to simplify the code.
2022-04-16 cage
* etc/init.lisp,
* po/it.po,
* po/tinmop.pot,
* src/line-oriented-window.lisp,
* src/misc-utils.lisp:
- added row count for all window that display rows of text.
- prevented crash when building the function bound to a keychord that
is defined as an anonymous function.
- updated Italian translation.
- prevented printing line count for empty row window.
2022-04-15 cage
* src/kami/client.lisp,
* src/line-oriented-window.lisp:
- prevented program to hang when a file is created or deleted using
kami.
When a file was created and deleted and the kami window was closed
the program stopped responding if the user tried to open a new kami
address.
- improved a bit appearance of help window.
2022-04-08 cage
* src/command-window.lisp,
* src/gemini-page-toc.lisp,
* src/open-message-link-window.lisp,
* src/package.lisp,
* src/windows.lisp:
- ensured only an instance of gemini TOC, gemini link and chat window
could exists.
- removed debug message.
2022-04-06 cage
* etc/init.lisp,
* src/hooks.lisp,
* src/package.lisp,
* src/program-events.lisp,
* src/ui-goodies.lisp,
* src/x509.lisp:
- hooks:*before-composing-message*;
- removed memory leak in ssl-utils:dump-certificate;
- added an hook to remove footnotes added by tinmop in post's reply.
2022-03-27 Andrea Feletto , cage
* Makefile.am,
* Makefile.in,
* lisp-dependencies,
* quick_quicklisp.sh.in,
* tinmop.asd:
- simplified Makefile (used asdf to build the executable in a portable
way).
- moved lisp dependency list to own file
- added PWD value to asdf registry.
2022-03-26 cage
* configure,
* configure.ac:
- enable configure option to compile with ECL compiler.
2022-03-23 cage
* src/windows.lisp:
- added package qualificator to croatoan's classes symbols.
2022-03-21 cage
* Makefile.in,
* src/conversations-window.lisp,
* src/filesystem-tree-window.lisp,
* src/follow-requests.lisp,
* src/gemini-page-toc.lisp,
* src/line-oriented-window.lisp,
* src/main.lisp,
* src/message-window.lisp,
* src/notify-window.lisp,
* src/open-attach-window.lisp,
* src/open-message-link-window.lisp,
* src/package.lisp,
* src/program-events.lisp,
* src/sending-message.lisp,
* src/tags-window.lisp,
* src/windows.lisp:
- used package local nickname instead us :use croatoan's symbols.
2022-03-20 cage
* Makefile.am,
* quick_quicklisp.sh.in,
* src/constants.lisp,
* src/emoji-matcher.lisp,
* src/main-window.lisp,
* src/mtree-utils.lisp,
* src/os-utils.lisp:
- added compilation macros to use ECl processes procedures;
- added compilation macro to skip SBCL specific muffling condition
procedures;
- added purgatory as dependency to installing script.
- using codepoints instead of char to match emoji, this changes allow
for ECL to compile the code.
- added compilation macro to compile constant using ECL.
- ensured exiting from REPL when building the executable using ECL.
2022-03-19 cage
* Makefile.am,
* Makefile.in,
* configure,
* configure.ac,
* quick_quicklisp.sh.in,
* src/misc-utils.lisp:
- disabled functions that depends on quicklisp.
- suppressed missing function warning when quicklisp is unavailable.
- added package qualificator to constant's name to prevent warning.
- fixed functions that print program's dependencies.
- removed fetching purgatory from repository, quicklisp includes the
latest version now.
- added support for ECL in autotools scripts.
- fixed building scripts.
2022-03-12 cage
* ChangeLog,
* NEWS.org,
* etc/init.lisp,
* src/ui-goodies.lisp:
- updated ChangeLog.
- added a command to subscribe to tag from the tag window.
- updated NEWS.org;
- added docstring.
2022-03-11 cage
* po/it.po,
* po/tinmop.pot,
* src/2d-utils.lisp,
* src/gemini-viewer.lisp,
* src/message-window.lisp,
* src/open-message-link-window.lisp,
* src/package.lisp,
* src/ui-goodies.lisp,
* src/windows.lisp:
- refactored a bit 'pass-focus-next';
- [kami] prevented crashes when routine fails.
- added a parameter to discard windows when calculating the non
intersecting ones.
- optimized 'draw-all' made clearing window optional and draw only
full visible window.
- fixed a bit 'win-clear', calling wclear was not needed.
- pass the focus to the message-window when opening a gemini from a
message link window.
- [gemini] rendered again the focus mark when a gemini stream has
ended.
2022-03-10 cage
* src/2d-utils.lisp,
* src/filesystem-utils.lisp,
* src/package.lisp,
* src/ui-goodies.lisp,
* src/windows.lisp,
* tinmop.asd:
- fixed passing focus between windows.
2022-03-06 cage
* etc/init.lisp,
* po/it.po,
* po/tinmop.pot,
* src/package.lisp,
* src/program-events.lisp,
* src/ui-goodies.lisp:
- added a command to 'jump' between window in a zig-zag way;
- fixed crash when starting program in gemini fullscreen mode.
- prevented infinite recursion when try to move focus from a modal
window.
2022-03-05 cage
* etc/init.lisp,
* src/open-message-link-window.lisp,
* src/package.lisp,
* src/ui-goodies.lisp,
* src/windows.lisp:
- added slot 'modalp' to class wrapper-window.
- fixed moving the focus between windows using ALT-arrow.
2022-03-04 cage
* README.org,
* README.txt,
* etc/init.lisp,
* po/it.po,
* po/tinmop.pot,
* quick_quicklisp.sh.in,
* src/open-attach-window.lisp,
* src/open-message-link-window.lisp,
* src/os-utils.lisp,
* src/package.lisp,
* src/specials.lisp,
* src/ui-goodies.lisp,
* tinmop.asd:
- changed sizes and title of window that shows tour links.
- added command to copy a link to clipboard.
- refactored clipboard utility function.
- fixed positioning of links window.
- made tour links window independent from other links window.
- updated Italian translation.
- allowed to copy to clipboard post's attachments.
- fixed slot and reader name.
2022-03-02 cage
* etc/init.lisp,
* src/command-window.lisp,
* src/db-utils.lisp,
* src/db.lisp,
* src/filesystem-utils.lisp,
* src/package.lisp,
* src/ui-goodies.lisp:
- added a command to clear the cache;
- fixed 'cat-parent-dir'.
- remove the root of the keychord tree when hitting :backspace.
2022-02-26 cage
* src/ui-goodies.lisp:
- [kami] used info messages instead of notification when uploading or
downloading files.
- [kami] prevented crash when uploading or downloading failed.
- clear gemlog window when scrolling.
2022-02-25 cage
* etc/init.lisp,
* etc/shared.conf,
* po/it.po,
* po/tinmop.pot,
* src/gemini-viewer.lisp,
* src/message-window.lisp,
* src/open-attach-window.lisp,
* src/package.lisp,
* src/program-events.lisp,
* src/software-configuration.lisp,
* src/ui-goodies.lisp,
* src/windows.lisp:
- asking for confirmation when quitting the program using 'q'.
- prevented window's title to go out of the window's width.
- made the program re-expand truncated title when the width of
terminal window increased.
- prevented thread-window from disappears when resizing the terminal
window's width.
- fixed positioning of message-window when resizing terminal in gemini
mode.
- added 'k' and 'j' as alias for scrolling windows up and down.
- updated Italian translation.
- [gemini] added two new commands to go back in an URL path.
- added command 'gemini-jump-to-link';
- fixed layout in gemini full screen mode.
- added docstring.
2022-02-24 cage
* etc/init.lisp,
* src/filesystem-utils.lisp,
* src/package.lisp,
* src/program-events.lisp,
* src/ui-goodies.lisp:
- used osicat as provider for 'mkstemps'.
- [gemini] added searching or jumping to first or last item in a TOC
window.
2022-02-23 cage
* ci/README.md,
* etc/init.lisp,
* src/command-window.lisp,
* src/tui-utils.lisp:
- fixed event triggered by backspace when the keybinding suggestion
tree is shown (thanks tgl!);
- updated ci/README.md.
- added keychord 'C-q' to quit the program.
2022-02-21 Francesco Bonanno
* ci/Containerfile,
* ci/README.md,
* ci/build.sh,
* ci/entrypoint.sh:
Adding CI/CD and container building support
2022-02-20 cage
* Makefile.am,
* Makefile.in,
* configure,
* configure.ac,
* quick_quicklisp.sh.in,
* scripts/gemget.lisp:
- fixed guessing of parent dir from value of $PWD
in script quick_quicklisp.sh (thanks mibofra!).
- added option '--do-not-prompt' to quick_quicklisp.sh, to prevent
asking question about init file modification.
- quoted variables to prevent globbing.
- added script 'gemget.lisp'.
2022-02-19 cage
* etc/init.lisp,
* src/gemini-viewer-metadata.lisp,
* src/gemini-viewer.lisp,
* src/kami/client.lisp,
* src/ui-goodies.lisp:
- prevented crash when bookmarking the start page in gemini fullscreen
mode (Thanks reDFog!).
- prevented some kind of windows from losing focus (thanks reDFog)!
- prevented reusing an already clunked fid when uploading a file.
- [kami] ensured 'collect-tree' returns both values: files and
directories.
2022-02-18 cage
* Makefile.am,
* Makefile.in,
* README.org,
* README.txt,
* compile,
* config.guess,
* config.sub,
* configure,
* configure.ac,
* missing,
* quick_quicklisp.sh.in,
* src/constants.lisp,
* src/kami/client.lisp,
* src/line-oriented-window.lisp,
* src/ui-goodies.lisp:
- added more tests in configure.ac
- moved test for gettext.
- updated Makefile.am to install two new scripts.
- added cloning of purgatory from repository.
- added check for purgatory dir when installing package.
- added missing '$' in variable name.
- removed bash as dependency (thanks op!);
- made quick_quicklisp.sh executable.
- updated building scripts.
- [kami] prevented a crash (and a fid leak) when creating new files or
directories.
- added a minimal list of keybindings to welcome window.
- printed a minimal list of keychords on the welcome window.
- removed bash specific syntax (thanks op!).
2022-02-17 cage
* po/it.po,
* po/tinmop.pot,
* scripts/export-gemini-subscriptions.lisp,
* scripts/import-gemini-subscriptions.lisp,
* src/gemini/package.lisp,
* src/main.lisp,
* src/package.lisp,
* src/tests/uri-tests.lisp,
* src/text-utils.lisp,
* src/ui-goodies.lisp:
- improved 'text:to-s', accepts byte or character vectors.
- added a script to import and export gemlog subscriptions;
- prevented printing diagnostic message if the program is executing a
script.
- forced opening of TOC window when loading a net address as
instructed from the command line (i.e. using the '-o' switch).
- [kami] prevented crash when downloading fails, notify an error
instead.
- updated docstrings.
- updated Italian translation.
- fixed symbol export for 'normalize path' (thanks op!).
2022-02-16 cage
* src/filesystem-tree-window.lisp,
* src/filesystem-utils.lisp,
* src/kami/client.lisp,
* src/package.lisp,
* src/text-utils.lisp,
* src/ui-goodies.lisp:
- [kami] fixed mirror uploading.
- prevented signalling error when an invalid byte sequence is met,
when converting octets to string.
- renamed function: 'filesystem-query-treenode' ->
'filesystem-query-path'.
- renamed function: 'download-treenode' -> 'download-path'.
- renamed function: 'upload-treenode' -> 'upload-path'.
removed useless spaces and fixed function name.
- exported correct symbols.
2022-02-13 cage
* src/filesystem-utils.lisp,
* src/kami/client.lisp,
* src/package.lisp:
- [kami] made an effort to replicate the permissions when uploading a
file.
- [kami] made an effort to replicate the permissions when downloading
a file.
2022-02-11 cage
* ChangeLog,
* NEWS.org,
* po/it.po,
* po/tinmop.pot,
* src/message-window.lisp,
* src/program-events.lisp,
* src/ui-goodies.lisp:
- prevented crash when performing searching in an empty message
window.
- prevented a condition variable to be awaken even if condition is not
actually met.
- updated Italian translation.
- updated NEWS.org and ChangeLog.
2022-02-09 cage
* src/command-line.lisp:
- fixed keyword name.
2022-02-06 cage
* ChangeLog,
* configure,
* configure.ac,
* doc/man.org,
* doc/tinmop.man,
* etc/init.lisp,
* src/package.lisp,
* src/ui-goodies.lisp,
* tinmop.asd:
- prevented block of software when opening a kami address with the
filesystem explorer window opened.
- [kami] added 'file-explorer-mark-by-regexp'.
- updated ChangeLog.
- increased version number.
- updated manpage.
2022-02-05 cage
* doc/man.org,
* doc/tinmop.man,
* etc/init.lisp,
* po/it.po,
* po/tinmop.pot,
* src/chats-list-window.lisp,
* src/command-line.lisp,
* src/filesystem-tree-window.lisp,
* src/filesystem-utils.lisp,
* src/kami/client.lisp,
* src/main.lisp,
* src/package.lisp,
* src/ui-goodies.lisp:
- [kami] optimized deletion of file system trees.
- changed variable name.
- [kami] added 'file-explorer-download-mirror'.
- updated manpage.
- updated italian translation.
- allowed opending kami address from command line, using '-o' switch.
- changed variable names so that is clear that the '-o' switch can
open different kind of URI, not only gemini.
- updated documentation.
2022-02-04 cage
* etc/init.lisp,
* src/filesystem-utils.lisp,
* src/gemini-subscription-window.lisp,
* src/kami/client.lisp,
* src/message-window.lisp,
* src/package.lisp,
* src/ui-goodies.lisp,
* src/windows.lisp:
- improved 'fs:octects->units-string'.
- added keychords to jump at the start or end of the link window.
- refactored functions to jump at the begin or end of the file
explorer window.
- prevented chat window from opening when in gemini exclusive mode;
- fixed positioning of gemlog's subscription when in gemini exclusive
mode.
- [kami] appended, if needed, '/' at the end of the proposed local
directory where the file will be downloaded.
- [kami] prevented crash when editing a file with no associated
editing program;
- [kami] added e few informative messages fro the user.
2022-01-29 cage
* etc/init.lisp,
* po/it.po,
* po/tinmop.pot,
* src/filesystem-tree-window.lisp,
* src/filesystem-utils.lisp,
* src/package.lisp,
* src/ui-goodies.lisp:
- added 'file-explorer-upload-mirror'.
- updated italian translation.
2022-01-28 cage
* doc/man.org,
* doc/tinmop.man,
* po/it.po,
* po/tinmop.pot,
* src/filesystem-tree-window.lisp,
* src/filesystem-utils.lisp,
* src/gemini/gemini-parser.lisp,
* src/gempub.lisp,
* src/iri-parser.lisp,
* src/kami/client.lisp,
* src/package.lisp,
* src/program-events.lisp,
* src/ui-goodies.lisp,
* src/uri-parser.lisp:
- added a wrapper for 'fnmatch(3)';
- [kamid] upload works with wildcard (e.g. "/*.lisp");
- moved 'normalize-path' to filesystem-utils.
- [kami] fixed function's name.
- [kamid] download works with wildcard (e.g. /*.lisp);
- [kamid] printed 'type' of node in the details window;
- fixed typos in docstring.
- [kami] when downloading file, strips directories from remote paths.
- updated italian translation.
- added a list of the default keybindings to the manpage.
2022-01-23 cage
* etc/init.lisp,
* modules/expand-abbrev-command-window.lisp,
* po/it.po,
* po/tinmop.pot,
* src/filesystem-tree-window.lisp,
* src/filesystem-utils.lisp,
* src/kami/client.lisp,
* src/kami/package.lisp,
* src/open-message-link-window.lisp,
* src/package.lisp,
* src/ui-goodies.lisp:
- [kami] close the connection when closing the filesystem explorer
window;
- fixed a prompt and an error message.
- added function 'fs:path-referencing-dir-p'.
- [kamid] instructed program to download the element if the url's path
points to a file.
- updated italian translation.
- improved opening net command, gemini and also kami address can be
opened.
- fixed a bug that made the program crash when the gemlog window was
closed in gemini only mode.
- updated italian translation.
- added 'fs:collect-tree'.
2022-01-22 cage
* etc/init.lisp,
* po/it.po,
* po/tinmop.pot,
* src/filesystem-tree-window.lisp,
* src/filesystem-utils.lisp,
* src/kami/client.lisp,
* src/package.lisp,
* src/ui-goodies.lisp:
- [kamid] using the path of the uri when mounting a filesystem.
- [kami] added a window with details of teh file (permissions, size
etc.).
- updated italian translation.
2022-01-16 cage
* src/os-utils.lisp:
- fixed generation of TLS client certificates when using an openssl
binary linked with libressl (thanks op!).
2022-01-15 cage
* etc/init.lisp,
* src/gemini/client.lisp,
* src/gemini/gemini-parser.lisp,
* src/kami/client.lisp,
* src/kami/package.lisp,
* src/package.lisp,
* src/ui-goodies.lisp:
- adding user info in uri related functions.
- added 'kami-open-url'.
2022-01-14 cage
* src/filesystem-tree-window.lisp,
* src/kami/client.lisp,
* src/package.lisp:
- [kami] prevented reading entire file in memory when downloading.
- [kami] increased download buffer-size;
- [kami] actually supersede a file when uploading;
- ensured the uploaded file is seleted after uploading (filesystem
explorer window).
- [kami] removed harmful 'when-let*' that was eating some directory
entries.
2022-01-09 cage
* etc/init.lisp,
* po/POTFILES.in,
* po/it.po,
* po/tinmop.pot,
* src/filesystem-tree-window.lisp,
* src/filesystem-utils.lisp,
* src/gemini/package.lisp,
* src/kami/client.lisp,
* src/kami/package.lisp,
* src/package.lisp,
* src/ui-goodies.lisp:
- added a draft for a kami client.
- updated italian translation.
2022-01-08 cage
* etc/init.lisp,
* src/9p-client/client.lisp,
* src/9p-client/package.lisp,
* src/filesystem-tree-window.lisp,
* src/os-utils.lisp,
* src/package.lisp,
* src/ui-goodies.lisp:
- added code to edit the file in a filesystem explorer window;
- fixed a couple of functions that was trying to download a file when
upload was correct instead.
- removed 9p client code;
- fixed 'open-resource-with-external-program'.
2022-01-06 cage
* ChangeLog,
* etc/default-theme.conf,
* etc/init.lisp,
* etc/shared.conf,
* src/filesystem-tree-window.lisp,
* src/open-message-link-window.lisp,
* src/os-utils.lisp,
* src/package.lisp,
* src/program-events.lisp,
* src/software-configuration.lisp,
* src/ui-goodies.lisp:
- added command file-explorer-scroll-begin;
- added command file-explorer-scroll-end;
- modified 'query-local-filesystem-path' signals an error if the query
type is unknown.
- added 'file-explorer-close-window';
- modified filesystem explorer window's position.
- added downloading and opening a file from filesystem explorer
window.
- added docstring.
- added 'editor' as pseudo external program.
- using the file explorer when opening a local directory.
- substituted . with $PWD when opening file explorer.
- updated changelog.
- fixed a bug in 'jump-to-parent-node', 'normalize a path with a '..'
already generate a path that points to the parent.
2022-01-02 cage
* src/9p-client/conditions.lisp,
* src/9p-client/message-types.lisp,
* src/kami/client.lisp,
* src/kami/package.lisp,
* src/line-oriented-window.lisp,
* src/tests/kami-tests.lisp,
* src/tests/package.lisp,
* tinmop.asd:
- prepared code for kamid.
Merge branch 'kami'
- prevented crash in dialog list window, the event object needed to be
decodified.
2021-12-26 cage
* quick_quicklisp.sh.in,
* src/command-window.lisp,
* src/tui-utils.lisp:
- tracked incompatible changes from croatoan;
An event is no more a character or symbol but is an instabce of
class 'event'.
2021-12-14 cage
* ChangeLog,
* etc/init.lisp,
* po/it.po,
* po/tinmop.pot,
* src/filesystem-tree-window.lisp,
* src/package.lisp,
* src/ui-goodies.lisp:
- implemented mark and deletion of tree in filesystem window.
- updated italian translation.
- updated ChangeLog.
2021-12-13 cage
* etc/init.lisp,
* src/filesystem-tree-window.lisp,
* src/filesystem-utils.lisp,
* src/package.lisp,
* src/tui-utils.lisp,
* src/ui-goodies.lisp:
- implemented querying file's metadata in filesystem window.
- added marking of entries in file explorer window.
2021-12-12 cage
* etc/init.lisp,
* src/filesystem-tree-window.lisp,
* src/keybindings.lisp,
* src/package.lisp,
* src/program-events.lisp,
* src/ui-goodies.lisp:
- implemented downloading file in filesystem window.
- renamed a few filesystem-window's related functions.
- implemented uploading file in filesystem window.
- added a translation header (for printing help) to
'*filesystem-explorer-keymap*'.
- added search in file explorer window.
2021-12-11 cage
* etc/init.lisp,
* src/filesystem-tree-window.lisp,
* src/filesystem-utils.lisp,
* src/package.lisp,
* src/ui-goodies.lisp:
- implemented creating paths in filesystem window.
2021-12-10 cage
* etc/default-theme.conf,
* etc/init.lisp,
* src/filesystem-tree-window.lisp,
* src/filesystem-utils.lisp,
* src/keybindings.lisp,
* src/line-oriented-window.lisp,
* src/package.lisp,
* src/program-events.lisp,
* src/software-configuration.lisp,
* src/specials.lisp,
* src/thread-window.lisp,
* src/ui-goodies.lisp,
* src/windows.lisp,
* tinmop.asd:
- implemented some features of tree filesystem window:
expanding/closing nodes and renaming files or directory.
- implemented deleting of paths in filesystem window.
2021-12-07 cage
* src/command-line.lisp,
* src/main.lisp,
* src/misc-utils.lisp:
- added download of lisp libraries.
2021-12-05 cage
* LICENSES.org,
* src/command-line.lisp,
* src/filesystem-tree-window.lisp,
* src/main.lisp,
* src/misc-utils.lisp,
* src/package.lisp,
* tinmop.asd:
- added -X option;
- starting with filesystem explorer window.
- added license;
- fixed copyright year.
2021-12-04 cage
* src/iri-parser.lisp,
* src/ui-goodies.lisp:
- [gemini] fixed building of URI in 'open-next-visible-link'.
2021-12-03 cage
* ChangeLog,
* Makefile.am,
* Makefile.in,
* README.org,
* README.txt,
* configure,
* configure.ac,
* tinmop.asd:
- added missing reference to module 'delete-by-regex.lisp' in
Makefile.am
- updated documentation.
- increased version number;
- updated building scripts;
- updated ChangeLog.
2021-12-01 cage
* README.org,
* README.txt:
- mentioned 'zip' as dependency in README.
2021-11-30 cage
* modules/delete-by-regex.lisp,
* src/db.lisp,
* src/package.lisp,
* src/thread-window.lisp:
- [modules] marked post as read.
- fixed function name.
- renamed function 'db:mark-status-deleted-p'.
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