1
0
Fork 0
Commit Graph

289 Commits

Author SHA1 Message Date
cage b4a3dfabde - added feature: expand tree of posts fetching again even posts that was deleted before. 2021-06-13 14:07:47 +02:00
cage c323ef3847 - made clear that "ed" is the standard editor. 2021-05-28 20:58:22 +02:00
cage cedbf01b03 - made geometry of notification window customizable (via configuration file). 2021-05-22 19:41:36 +02:00
cage deaf94299a - decrease mentions count on the modeline when a status that contains a mention is opened. 2021-05-22 12:23:15 +02:00
cage c2e8e38249 - added mentions rendering in the thread window modeline. 2021-05-22 10:42:01 +02:00
cage 4a6e2fca3d - added a generated TOC for gemini files. 2021-05-16 15:23:55 +02:00
cage cd11e04658 - got rid of 'prepare-new-search' and 'cleanup-after-search';
- fixed misc:safe-subseq (subseq sequence -1)' does not signa an error anymore.
2021-05-13 15:32:31 +02:00
cage 844dd1b931 - [gemini] expand tilde when trying to open a local file or directory. 2021-05-06 16:59:11 +02:00
cage 37bab5740b - [gemini] improved tour-mode
the command accepts space separated list  of link index or link ranges
(e.g: "5-7 1 2").
2021-05-04 11:52:42 +02:00
cage e319ccd112 - 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!
2021-05-02 16:28:50 +02:00
cage 528700907f - added a command to show the tour's queue. 2021-05-01 20:25:15 +02:00
cage 864dc959e6 - added tour mode to explore geminispace. 2021-05-01 13:44:50 +02:00
cage 29c09553d1 -[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.
2021-04-28 20:56:37 +02:00
cage 8e924ded74 - implemented a new method to move focus between windows (using 'M-arrowkeys'). 2021-04-28 16:26:10 +02:00
cage 02894dcc64 - optimized module 'rewrite-message-urls.lisp'. 2021-04-21 16:29:50 +02:00
cage 90bad8b21c - fixed 'make-gemini-iri', was building wrong IRI with ipv6 address as host. 2021-04-16 14:44:22 +02:00
cage a9ce526dce - added 'remove-corrupting-utf8-chars' to clean up rendered text from trouble characters. 2021-04-13 18:32:48 +02:00
cage 15bbb49d5e - [gemini] added feature to toggle preformatted block on/off;
- [gemini] trimmed alt-text;

- reworded some functions.
2021-04-11 15:19:45 +02:00
cage 84a8029c9a - specialized message-window' to skip invisible rows. 2021-04-11 11:06:39 +02:00
cage 6786d48f6d - 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 behaivour of split-line
  (split-line (format nil "~2%")) ; => ("" "")

  That is an emtpy 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*.
2021-04-10 13:52:56 +02:00
cage ca2ace2551 - discouraged use of slot 'rows' for 'row-oriented-widget', used API instead. 2021-04-08 15:13:31 +02:00
cage 3ca18e1fd9 - fixed searching in links or gemini pages: searching starts from the first row. 2021-04-06 19:59:58 +02:00
cage 816a04812d - 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.
2021-04-05 18:10:14 +02:00
cage 9572f2a917 - changed 'source-text' to 'support-text'. 2021-04-05 17:33:16 +02:00
cage fac77297e8 - [gemini] started coloring preformatted block. 2021-04-05 12:01:30 +02:00
cage 9e3269576d - [gemini] improved rendering of quoted text. 2021-04-03 15:03:24 +02:00
cage 8b50eec3be - [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.
2021-03-28 14:33:56 +02:00
cage 87377914a3 - [gemini] added a symbol to mark a directory when exploring local filesystem. 2021-03-27 10:37:05 +01:00
cage 6a82f892a1 - [gemini] added feature: open local directory. 2021-03-27 10:21:33 +01:00
cage db34a2f958 - [gemini] added feature: loading local gemini files from command line (switch: '-o'). 2021-03-27 09:19:13 +01:00
cage b73f982408 - 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.
2021-03-09 11:32:09 +01:00
cage 8230056152 - [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-21 12:23:01 +01:00
cage bb53d98f4c - improved a bit rendering of text in message window. 2021-02-18 19:43:27 +01:00
cage 121eaed346 - reverting order of packaging. 2021-02-13 19:35:24 +01:00
cage 8f0f4af090 - moving tiu-utils symbols before software-configuration. 2021-02-13 19:15:01 +01:00
cage 3df833b248 - added configuration directive to use a specific program to open a
link (e.g. open all mp3 files with program mpv).
2021-02-10 17:43:40 +01:00
cage 986ea84313 - added hook '*after-saving-message*. 2021-02-06 12:29:31 +01:00
cage b37c590265 - prevented crash when sending message to command did not worked.
Printing error to command line instead.
2021-02-02 20:44:18 +01:00
cage 0fc46fa1b5 - removed dependency from libidn2
punycode encoding  comes from  an internal implementation  istead of
  using an C library.
2021-01-31 13:08:34 +01:00
cage 17401274b5 - [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.
2021-01-28 15:35:26 +01:00
cage 1710ac5b48 - added feature to allow users ro configure symbols rendered for each toot visibility level in main window. 2021-01-24 16:15:42 +01:00
cage 8e58698bfa - added some more tests for checking missing values from configuration files. 2021-01-16 13:17:15 +01:00
cage 382c61818d - create an empty config file if the user did not provided oopne, instread of printing an error and exit. 2021-01-13 17:28:23 +01:00
cage 72254f981a - prevented authorization of client if no server nameahs been provided
by the user in the config file.
2021-01-12 20:31:44 +01:00
cage 766367369c - added scheduling of purging of old gemlog's posts;
- updated italian translation.
2021-01-11 19:36:43 +01:00
cage 7f5a21c9ed - [gemini] ensure link opened is saved in history. 2021-01-11 18:21:38 +01:00
cage 44b6c62e44 - [gemini]
- added command to refresh all gemlogs;
  - added scheduled refresh of all gemlogs;
  - fixed sorting of gemlog posts.
2021-01-10 13:01:03 +01:00
cage f09b0f4aa3 - [gemini]
- prevent crash when subscribing to an already subscribed gemlog;
  - added cancel of subscriptions.
2021-01-10 11:35:28 +01:00
cage a0f8c83681 - [gemini] added a draft for gemlog subscriptions. 2021-01-09 16:27:40 +01:00
cage f6c02041ef - [gemini] added subscription command to gemlog. 2021-01-09 11:01:10 +01:00
cage 7e32091b6f - [gemini]
Started with gemlog subscription, added database table and interface
  and subscribing API.
2021-01-08 18:21:43 +01:00
cage a3c2550ff4 - Added a command line switch to load a module.
- fixed 'run-hook-compose'.
2020-12-31 15:36:10 +01:00
cage 8dae8ddac2 - added 'run-hook-compose';
- added a module to rewrite URLs.
2020-12-31 14:58:40 +01:00
cage 3245239eee - added a profiling macro;
- added function to stop event dispatching.
2020-12-31 11:36:34 +01:00
cage abec6a9322 - added a command to send data to an external program. 2020-12-30 12:24:13 +01:00
cage 9876213933 - using a cache for username completion. 2020-12-29 19:14:18 +01:00
cage 77b7188581 - added command to repeat the last text search. 2020-12-29 13:01:59 +01:00
cage 94a8e29f84 - [gemini] added a command to refresh a page;
- refactoring some code to add the above command.
2020-12-29 12:36:22 +01:00
cage 5151fbe4a2 - [gemini] allow percent encoding of query, path and fragment only if not already encoded. 2020-12-28 12:40:47 +01:00
cage 6c590dbf1a - fixed welcomebot and moved to a new directory "scripts";
Also export some symbols that this script uses, from others packages.
2020-12-28 12:12:23 +01:00
cage 47fa796bc6 - added a module to share a gemini page on pleroma. 2020-12-27 14:51:59 +01:00
cage ba4577d223 - 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-21 12:11:15 +01:00
cage c9d9559f1a - changed 'uri' to 'iri' where does makes sense to me. 2020-12-17 13:56:07 +01:00
cage 62394d319a - removed 'uri-' prefix from 'uri' slots names. 2020-12-13 15:29:04 +01:00
cage 13fdc439a8 - added IRI parser. 2020-12-13 15:27:55 +01:00
cage 5f8c9d422e - added minimal wrapping of libidn2;
- added library checks (libidn2 and libssl) to configure scripts;
- removed commented reference to quri.
2020-12-12 14:49:31 +01:00
cage 664e8212ce - replaced quri with an internal parser;
- [gemini] the client passes the torture test again;

- fixed event test.
2020-10-25 19:58:05 +01:00
cage 269a08718c - [gemini] implemented a draft of a client authentication (via TLS certificates). 2020-10-23 20:57:17 +02:00
cage 497efa6a92 - [gemini] starting using certificates;
- removed hardcoded 'xdg-open' binary name.
2020-10-11 18:22:07 +02:00
cage 911c80dc25 - [gemini] remove a bottleneck when download of a gemini page is completed;
Instead  of process  multiple event  with  a single  line to  render
  compact all the lines in a single event and, then, process it.
2020-10-06 19:15:23 +02:00
cage 0274841672 - added searching in command's help. 2020-10-03 21:08:55 +02:00
cage a54e05a05f - added the possibility to search inside a widows that contains a collection of links. 2020-10-03 16:58:02 +02:00
cage ce61ab6537 - [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-10-01 16:41:24 +02:00
cage 02ce8fd187 - [gemini] remove all pending rendering events when quitting. 2020-09-30 18:24:58 +02:00
cage f1a0715c2b - [gemini] remove from the event queue all the lines got from a gemtext download
when aborting a download.
2020-09-30 16:36:34 +02:00
cage 4bbb0184e1 - removed nethod 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-27 18:19:26 +02:00
cage fd53ec036d - Added optional mentions before sending a message. 2020-09-18 16:32:04 +02:00
cage 99977af671 - added exit handler to clean temporary files. 2020-09-12 11:16:15 +02:00
cage 0cfdb8844e - [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 (thre is no one at the end);
- commented and improved some regular expressions for coloring.
2020-09-12 10:23:26 +02:00
cage 5ad0a67195 - [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-11 15:18:59 +02:00
cage 52f550df5e - added feature create new chat;
- fixed crash when selecting a chat with no messages.
2020-09-10 17:50:22 +02:00
cage c26ca88e60 - changed position and (configurable) colors for chat window;
- added feature: change chat labels.
2020-09-09 21:13:57 +02:00
cage 2d66bdd63d - added chat attachments browsing window. 2020-09-06 20:17:34 +02:00
cage f135292e53 - basics chats works. 2020-09-06 17:28:16 +02:00
cage b2b3e65431 - 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 14:42:16 +02:00
cage c5118d46a6 - changed GPL comment headers. 2020-09-06 11:32:08 +02:00
cage 75d81ec708 - chats can be fetched, via UI, and printed on window. 2020-09-05 17:02:00 +02:00
cage 4046f516f8 - [pleroma-API] added 'fetch-chat-message. 2020-09-02 17:17:16 +02:00
cage 91145e7f37 - [pleroma-API] added a few function to use chats. 2020-09-02 16:30:13 +02:00
cage f7d025ea2a - [gemini] added a window to manage all the gemini streams opened. 2020-08-30 15:38:05 +02:00
cage f4ef9ff9e8 - readded some functions (synctatic sugar to manipulate croatoan's 'complex-*' object). 2020-08-16 11:28:14 +02:00
cage dd1e4f6066 - added a slot in 'command-window' to allow the user to insert secret
input.

 the same character is echoed instead of the actual input.
2020-08-16 11:27:38 +02:00
cage 5169deaedd - tracking changes in croatoan.
- some function in 'tui-utils' are just wrappers for the equivalents in the library.
2020-08-14 20:15:30 +02:00
cage 38585b27ac - changed 'cat-' function names with 'concat-'. 2020-08-14 17:49:37 +02:00
cage bc171fb14a - [gemini] added the possibility to abort current page download. 2020-07-26 16:34:05 +02:00
cage 1eeed9538e - [gemini] download of non gemini documents happens in a concurrent
way (in a different thread)
- [gemini] prevent links to be appended even when user is opening a new document;
- [gemini] added a notification when download of a gemini document has terminated.
2020-07-26 13:29:24 +02:00
cage 254cd94720 - [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).
2020-07-26 12:07:26 +02:00
cage f5d4d878ec - do not mentions people that do not appears in the current thread. 2020-07-19 13:27:40 +02:00
cage 7b48939deb - tried to fix mentioning of non local user in reply. 2020-07-18 13:03:58 +02:00
cage fb0fd48865 - [gemini] added the option to view gemini page's source. 2020-07-15 12:40:30 +02:00
cage c84de306c8 - [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-08 18:38:17 +02:00
cage 49214475ab - [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-04 11:15:55 +02:00
cage ab4b871ef5 - [gemini browser] added a 'go-back' command. 2020-06-28 17:39:21 +02:00
cage d1266fa422 - fixed bug that prevented to properly reset links list when in gemini mode. 2020-06-28 12:59:23 +02:00
cage ee862ac62b - added command 'open-gemini-address'. 2020-06-28 12:36:59 +02:00
cage 62d3356e78 - made the program asks for redirects following only when the event
queue is empty;
- added 'gemini-request-event';
- minor refactoring.
2020-06-27 22:50:46 +02:00
cage 15987cc5b2 - added '*skip-message-hook*' (with example). 2020-06-25 14:38:14 +02:00
cage 9229d4dd08 - added support for signature. 2020-06-24 19:42:05 +02:00
cage 28917208d6 - added a command line option to retrieve a gemini URL. 2020-06-23 15:51:43 +02:00
cage f861d80b8c - [gemini] percent encoded query. 2020-06-23 15:22:28 +02:00
cage a683c2aecd - changed function name: 'temporary-filename' to 'temporary-file'. 2020-06-23 13:12:35 +02:00
cage 9461c0ea70 - gemini client works (but missing client authorization using certificates). 2020-06-22 14:03:06 +02:00
cage ffdd960673 - added a draft for gemini client. 2020-06-19 11:40:20 +02:00
cage b38b7eac25 Merge branch 'master' into gemini-client 2020-06-14 17:10:50 +02:00
cage ae60831b42 - 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-14 17:09:43 +02:00
cage 24379a7420 - added a draft of a parser for gemini files. 2020-06-14 16:46:28 +02:00
cage 45a56fcf11 - prevent adding duplicate entries in +table-pagination-status+
This could  happened when concurrent fetching  messages command was
  launched from the user.
2020-06-13 13:02:23 +02:00
cage 387cd85c0a - do not climb the thread (probably colud be changed by a command line switch in the future)
when fetching messages.
- configurable color for root of rendered trees.
2020-06-12 18:10:01 +02:00
cage 93950ca530 - 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-11 17:28:39 +02:00
cage 70b9918704 - 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 choicehs;
- shown if a poll allows multiple choiches.
2020-06-07 11:50:36 +02:00
cage 4f522225a4 - added voting to polls;
- fixed poll's rendering.
2020-05-31 16:49:26 +02:00
cage ab50276605 - added rendering of polls. 2020-05-31 12:47:48 +02:00
cage fd3f1b617b - rearranged compilation order to prevent warning about command line
switch;
- rearranged order of packages.
2020-05-30 10:11:10 +02:00
cage 9895843b21 - added optional notification of statuses mentioning the user;
- protected reblogged timeline from accidental deletiion;
- added the posiibility to force expanding of a message tree.
2020-05-30 09:53:12 +02:00
cage 1548229b28 - added the reset of timeline pagination from command line. 2020-05-18 19:16:52 +02:00
cage 07b13b40d2 - added a window to browse the links that a message contains. 2020-05-17 17:47:33 +02:00
cage 149b39e93b - always load a shared configuration file;
- updated documentation.
2020-05-16 13:45:07 +02:00
cage f4c4afb476 - added a command to download the latest toots from a server. 2020-05-15 19:03:51 +02:00
cage 11bdf47b6c - added user mention on top of a reply message. 2020-05-15 17:39:23 +02:00
cage 7640da7d60 - added 'about' help window. 2020-05-15 16:44:06 +02:00
cage 7f9b2c6d88 - fixed MAKEFILE.am;
- changed sxl-composer package name.
2020-05-15 16:12:40 +02:00
cage 37e8e49abf - prevent skipping of messages for subscribed tags;
- changed keys for tags window.
2020-05-14 20:23:40 +02:00
cage bc4d42d847 - added notify error when updating timelines fails. 2020-05-14 18:14:36 +02:00
cage dbdc2d9590 - changed class name from 'update-timeline-event' to
'save-timeline-in-db-event'.
2020-05-14 16:49:05 +02:00
cage c975074667 - changed function name 'id->user' to 'user-id->user'. 2020-05-14 16:36:55 +02:00
cage 5f00107808 - prevented skipping of statuses when updatig timeline (so i hope);
- added the possibility to update a timeline going backward;
- added two new  key to delete a  status and move to  next or previous
  one.
2020-05-14 16:32:01 +02:00
cage b229787044 - changed function name 'draw-keybinding-mode' to 'draw-string-mode';
- prevented an  info or error message  on the command line  to overlap
  with  prompt when  asking for  user input  and, in  particular, when
  asking for message attachment.
- prevented crash when trying to expand a null string;
- clear send-message-window before deleteing an attach from the list;
- added an info when a status is ready to be sent;
- using a stack to sort drawing order of windows.
2020-05-09 21:58:12 +02:00
cage e40cfc8c2d - updated manpage;
- updated italian translation;
- added a couple of resources reltaed functions.
2020-05-09 13:53:09 +02:00
cage c56a5b86ca - initial commit. 2020-05-08 15:45:43 +02:00