2023-07-30 15:08:21 +02:00
.TH "tinmop" "1"
2020-05-08 15:45:43 +02:00
.SH "Name"
.PP
2023-10-19 18:10:30 +02:00
tinmop - a client for gemini, gopher, mastodon and pleroma social network and kamid (9p protocol over TLS)
2020-05-08 15:45:43 +02:00
.SH "Synopsis"
.PP
2021-11-16 16:26:28 +01:00
tinmop [OPTION]…
2020-05-08 15:45:43 +02:00
.SH "Description"
.PP
2023-07-30 15:08:21 +02:00
This document assumes basic knowledge of how fediverse works. More information about this topic can be found on the following websites:
2021-11-16 16:26:28 +01:00
.IP \(em 4
\fI https://en.wikipedia.org/wiki/Fediverse\fP ;
.IP \(em 4
\fI https://pleroma.social/\fP ;
.IP \(em 4
\fI https://docs.joinmastodon.org/\fP .
2020-05-08 15:45:43 +02:00
.PP
2023-10-19 18:10:30 +02:00
Tinmop proposes an extensible terminal interface to connect with Mastodon or Pleroma social network, the gemini (for connecting to gemspace an optional graphical interface is also available) and gopher protocol.
2021-11-16 16:26:28 +01:00
.IP \(em 4
2023-10-19 18:10:30 +02:00
\fI gemini://geminiprotocol.net/docs/\fP
2021-11-16 16:26:28 +01:00
.IP \(em 4
2023-10-19 18:10:30 +02:00
\fI https://geminiprotocol.net/docs/\fP
2020-05-08 15:45:43 +02:00
2022-02-05 16:33:53 +01:00
.PP
2023-07-30 15:08:21 +02:00
Finally tinmop can connect to network file system using 9p protocol over TLS (using client certificates as authentication method).
2022-02-05 16:33:53 +01:00
.PP
2023-07-30 15:08:21 +02:00
For more information about this feature, please visit: \fI https://kamid.omarpolo.com/\fP .
2024-07-11 14:30:51 +02:00
.SH "Command line options"
2020-05-08 15:45:43 +02:00
.PP
2024-07-11 14:30:51 +02:00
Without options the program will start a terminal interface and will try to connect to your instance (see \fI fuzzy:Configuration\fP ), the most useful command line options follows
2020-05-08 15:45:43 +02:00
2020-06-23 15:51:43 +02:00
.TP
2024-07-11 14:30:51 +02:00
\fB \fC \- o, \- \- open\- net\- address ARG\fP \fP
2022-02-05 16:33:53 +01:00
Open net address (currentli only gemini or 9p)
2020-06-07 12:38:25 +02:00
.TP
2024-07-11 14:30:51 +02:00
\fB \fC \- m, \- \- notify\- mentions ARG\fP \fP
2020-06-07 12:38:25 +02:00
Notify messages that mentions the user
2020-05-08 15:45:43 +02:00
.TP
2024-07-11 14:30:51 +02:00
\fB \fC \- R, \- \- reset\- timeline\- pagination\fP \fP
2023-07-30 15:08:21 +02:00
Reset the timeline pagination. By default the new posts are fetched
2020-05-18 19:16:52 +02:00
starting from the last one downloaded from the instance, this switch
will force the program to fetch the last message posted by users
2020-05-08 15:45:43 +02:00
.TP
2024-07-11 14:30:51 +02:00
\fB \fC \- G, \- \- gemini\- client\- only\fP \fP
2021-11-13 16:34:07 +01:00
Start as gemini client only
.TP
2024-07-11 14:30:51 +02:00
\fB \fC \- c, \- \- check\- follows\- requests\fP \fP
2020-05-08 15:45:43 +02:00
Checks for follow request at start
.TP
2024-07-11 14:30:51 +02:00
\fB \fC \- e, \- \- execute\- script SCRIPT\- FILE\fP \fP
2020-05-18 19:16:52 +02:00
Execute a script file
.TP
2024-07-11 14:30:51 +02:00
\fB \fC \- f, \- \- folder FOLDER\- NAME\fP \fP
Start on that virtual folder
2020-05-18 19:16:52 +02:00
.TP
2024-07-11 14:30:51 +02:00
\fB \fC \- h, \- \- help\fP \fP
2020-05-18 19:16:52 +02:00
print program help and exit
2020-05-08 15:45:43 +02:00
.TP
2024-07-11 14:30:51 +02:00
\fB \fC \- t, \- \- timeline TIMELINE\- NAME\fP \fP
2020-05-08 15:45:43 +02:00
Start using this timeline
.TP
2024-07-11 14:30:51 +02:00
\fB \fC \- u, \- \- update\- timeline\fP \fP
2020-05-18 19:16:52 +02:00
Update the selected timeline
2020-05-08 15:45:43 +02:00
.TP
2024-07-11 14:30:51 +02:00
\fB \fC \- U, \- \- gemini\- gui\- client\- only\fP \fP
2023-05-18 15:38:34 +02:00
Start the program as A gemini GUI client
.TP
2024-07-11 14:30:51 +02:00
\fB \fC \- v, \- \- version\fP \fP
2020-05-08 15:45:43 +02:00
Print program version and exit
2024-04-06 11:13:43 +02:00
.TP
2024-07-11 14:30:51 +02:00
\fB \fC \- F, \- \- fediverse\- account\fP \fP
2024-04-06 11:13:43 +02:00
Specify a fediverse user account (format: user-name@server-name)
2020-05-08 15:45:43 +02:00
.SH "Usage"
.PP
2024-07-11 14:30:51 +02:00
Users of Tinmop supposed to interact with the social network using a terminal interface (TUI, but starting with version 0.9.9.1414 a GUI for gemini is available See \fI fuzzy:GUI\fP ), the terminal screen layout is sketched below:
2020-05-08 15:45:43 +02:00
.RS
.nf
\fC +---------------+---------------------------+
| | |
| tags window | thread windows |
| | |
| | modeline |
+---------------+---------------------------+
| | |
2021-01-04 21:30:55 +01:00
| conversations | main window |
2020-05-08 15:45:43 +02:00
| window | |
| | |
| | |
+---------------+---------------------------+
| command window |
+-------------------------------------------+
\fP
.fi
.RE
.PP
The screen is subdivided in five window:
.TP
2020-05-16 13:45:07 +02:00
\fB tag window\fP
2021-04-28 16:39:54 +02:00
shows the tag users subscribed for and available messages for each tag;
2020-05-08 15:45:43 +02:00
.TP
2020-05-16 13:45:07 +02:00
\fB threads window\fP
2024-07-11 14:30:51 +02:00
for a given timeline and folder (see \fI fuzzy:Folders\fP ) show the discussions saved in user's local database;
2020-05-08 15:45:43 +02:00
.TP
\fB conversations window\fP
show the \fI private\fP conversations the user is having with others;
.TP
2021-01-04 21:30:55 +01:00
\fB main window\fP
show the body of the message selected in the tag window or gemini page
2020-05-08 15:45:43 +02:00
.TP
\fB command window\fP
the window where the user instruct the software to perform commands
2021-11-16 16:26:28 +01:00
.PP
Using the program in gemini exclusive mode (option \fB "-G"\fP ) the program layout is simplified:
.RS
.nf
\fC
+------------------------------------------+
| |
| main window |
| |
| |
| |
+------------------------------------------+
| command window |
+------------------------------------------+
\fP
.fi
.RE
2020-05-08 15:45:43 +02:00
.PP
2024-04-12 16:23:18 +02:00
The main way to interact with the program is using the keyboard. By default you can move focus to each window (except command window that can not get focus explicitly) using \fB 'M-arrow key'\fP (meta is \fB ALT\fP on many keyboards). There is a contextual help that appears when the user input data that provide hints about commands and a quick help window that can be shown by hitting \fC ?\fP (if this keybinding has not been customized).
2021-07-29 19:04:48 +02:00
.SS "Command window keys"
.PP
2023-07-30 15:08:21 +02:00
The command window has a few hardcoded command keys to interact with it:
2021-07-29 19:04:48 +02:00
.IP \(em 4
2021-10-10 13:11:50 +02:00
the \fB left\fP and \fB right\fP arrow keys move the cursor;
2021-07-29 19:04:48 +02:00
.IP \(em 4
2023-07-30 15:08:21 +02:00
the key \fB home\fP and \fB end\fP move the cursor to the start and end of the input respectively;
2021-07-29 19:04:48 +02:00
.IP \(em 4
2023-07-30 15:08:21 +02:00
\fB canc\fP and \fB backspace\fP delete the next and previous character respectively;
2021-07-29 19:04:48 +02:00
.IP \(em 4
2023-07-30 15:08:21 +02:00
the \fB new line\fP (often called \fB enter\fP key) send the input to the program;
2021-07-29 19:04:48 +02:00
.IP \(em 4
2023-07-30 15:08:21 +02:00
\fB C-k\fP (that is: "press 'control' and while pressed press 'k') \fI kills\fP (deletes) the text from the cursor position to the end of the input previously typed;
2021-07-29 19:04:48 +02:00
.IP \(em 4
2024-03-01 14:57:36 +01:00
\fB C-g\fP will cancel the prompt and quit the command;
.IP \(em 4
2023-07-30 15:08:21 +02:00
press \fB M-left\fP and \fB M-right\fP (\fB left alt\fP and \fB left\fP or \fB right\fP arrow together) to browse pages of the suggestion window; the suggestion window is a window that holds a previously inputted data that are compatible with the string the user is typing into the command window;
2021-07-29 19:04:48 +02:00
.IP \(em 4
2023-07-30 15:08:21 +02:00
if suggestions are gemini URI press \fB TAB\fP to input the current selected suggestion;
2021-07-29 19:04:48 +02:00
.IP \(em 4
2023-07-30 15:08:21 +02:00
if suggestion window is \fB not\fP rendered, pressing \fB up\fP and \fB down\fP arrow keys will cycle through input history, if there is not a suggestion window rendered pressing \fB up\fP and \fB down\fP will scroll on suggestions.
2020-05-08 15:45:43 +02:00
.SS "Folders"
.PP
2023-07-30 15:08:21 +02:00
A folder is an object to groups messages for each timeline an arbitrary number of folders can be created, when the last message of a folder is deleted the folder is deleted as well.
.SS "GUI"
.PP
2024-07-11 14:30:51 +02:00
Calling this program with option \fB "-U"\fP will starts with a gemini client with a GUI mode. The Usage should be intuitive for persons that are used to use programs with a graphical interface and mouse interaction. Note that currently gempub files are not supported by GUI. Other features (like tour mode) are, though.
2020-05-08 15:45:43 +02:00
.SH "Configuration"
.PP
2024-07-11 14:30:51 +02:00
The configuration of tinmop is based on text files but they are available two different kinds with different syntax and scope.
2020-05-08 15:45:43 +02:00
.IP \(em 4
2023-07-30 15:08:21 +02:00
a key-value text files used to configure the access credential to server and visual theme of the program (simple configuration);
2020-05-08 15:45:43 +02:00
.IP \(em 4
2023-07-30 15:08:21 +02:00
common lisp source code. Used to write module (AKA plugin) and to configure keybindings to interact with the software.
2020-05-08 15:45:43 +02:00
.PP
2023-07-31 17:58:57 +02:00
The distribution of this software comes with a bunch of pre-backed configuration files
2024-07-11 14:30:51 +02:00
(see \fI fuzzy:Files\fP ) but user is expected to write a simple file with their credential to log into the server, if you want to use tinmop as a fediverse client.
2023-07-31 17:58:57 +02:00
.PP
2024-04-12 16:23:18 +02:00
The system wide configuration files are automatically included in user defined files, the configuration directive in custom files override the system wide ones.
2020-05-08 15:45:43 +02:00
.SS "Simple configuration"
.PP
This is a simple file with each entry in a single line that look like this:
.RS
.nf
\fC
2020-05-16 13:45:07 +02:00
# a line starting with a '#' is a comment
2020-05-08 15:45:43 +02:00
# a file can be included in another with this directive:
2023-07-30 15:08:21 +02:00
use "shared.conf"
2020-05-08 15:45:43 +02:00
# The server instance name
server = server address
# your username
username = username
\fP
.fi
.RE
.PP
2023-10-19 18:10:30 +02:00
Not incidentally the information in the example above are the absolute minimum the user has to provide before starts the program and connect to pleroma/mastodon (to use tinmop as a gemini browser only an empty file will suffice): the name you chose when you made the account on the server and the address of the server.
2020-05-08 15:45:43 +02:00
.PP
2023-07-30 15:08:21 +02:00
As you can see a line starting with a \fB #\fP is considered comment and skipped by the program
2020-05-08 15:45:43 +02:00
.PP
2023-07-30 15:08:21 +02:00
The file with this credential are confidential and must be put into user's home directory under the path
2024-04-12 16:23:18 +02:00
\fC $HOME/.local/share/tinmop/main.conf\fP . Probably the directory \fC tinmop\fP does not exists on user system; if it does not exists will be created by the software the first time it will run.
2020-05-08 15:45:43 +02:00
.PP
2023-07-30 15:08:21 +02:00
If the program was installed correctly two other files with simple semantics are located in your system wide configuration directory (usually \fC /etc/tinmop/\fP ), please check these files for more information, as they are extensively commented.
2020-05-08 15:45:43 +02:00
2021-04-28 16:39:54 +02:00
.PP
2023-07-30 15:08:21 +02:00
Is worth mentioning again that, without an user configuration file, the program can be used as gemini client (see the "-G" command line switch on top of this manual).
2020-05-08 15:45:43 +02:00
.SS "Lisp program"
.PP
2024-04-12 16:23:18 +02:00
These files contains Common lisp (see \fI https://common-lisp.net/\fP ) source code. They are used both as a way to configure the program and to write module for tinmop itself.
2020-05-08 15:45:43 +02:00
.PP
2023-07-30 15:08:21 +02:00
These files are the only way to configure program's keybindings: sequence of pressing button to fire command commands (do not worry it is not too difficult!).
2020-05-08 15:45:43 +02:00
.PP
2023-07-30 15:08:21 +02:00
These files must be a valid Common Lisp program to allow the program to even starts. Again this is actual source code that is loaded end executed by the main program; be careful, do not copy and paste code from untrusted sources as this could results in a \fB severe\fP security damage.
2020-05-08 15:45:43 +02:00
.PP
2023-07-30 15:08:21 +02:00
Again in the configuration directory there is a (commented) file named \fC init.lisp\fP that user can use as their starting point to write their files. A custom init file, or other module files, must be located into the directory \fC $HOME/.local/share/tinmop/\fP .
2020-05-08 15:45:43 +02:00
.PP
2023-07-30 15:08:21 +02:00
However there is no need to write their own init file if user is happy with the provided one by the package maintainers.
2020-05-08 15:45:43 +02:00
.SH "First time start"
.PP
2024-04-12 16:23:18 +02:00
After the configuration, the program can be started but we are not ready to join the fediverse yet because tinmop need to be \fI trusted\fP by the server. Just follows the instruction on screen to register the application with your instance. This procedure should be followed once: when the program starts for the first time (but please note that there must be a file with valid credentials available).
2020-05-08 15:45:43 +02:00
2021-10-10 13:11:50 +02:00
.PP
2023-07-30 15:08:21 +02:00
There is no additional steps to follow to connect to gemspace, instead.
2021-10-10 13:11:50 +02:00
.SH "Gempub support"
.PP
2023-07-30 15:08:21 +02:00
Tinmop maintains a gempub library scanning a directory on your file system (library directory); the library directory path can be set using the configuration directive:
2021-10-10 13:11:50 +02:00
.RS
.nf
\fC
gempub.directory.library = /absolute/path/to/your/gempub/library
\fP
.fi
.RE
.PP
2021-11-16 16:26:28 +01:00
the default value is \fC $XDG_DATA_HOME\fP (usually something like
2021-10-10 13:11:50 +02:00
\fC $HOME/.local/share/tinmop/\fP ).
.PP
2024-06-16 10:55:42 +02:00
Using \fB 'M-g g l'\fP the library can be inspected using a simple query language (similar to SQL) that search in the metadata of the gempub files:
.RS
.nf
\fC
*where* criteria *into* folder-name
\fP
.fi
.RE
.PP
for example:
2021-10-10 13:11:50 +02:00
.RS
.nf
\fC
where author like "calvino" and published < "1980"
2024-06-16 10:55:42 +02:00
where author like "c%al" or published = "1980"
2021-10-10 13:11:50 +02:00
\fP
.fi
.RE
.PP
Valid search keys are:
.IP \(em 4
title;
.IP \(em 4
author;
.IP \(em 4
language;
.IP \(em 4
description;
.IP \(em 4
publish-date;
.IP \(em 4
revision-date;
.IP \(em 4
published;
.IP \(em 4
copyright.
.PP
2024-06-16 10:55:42 +02:00
You can use \fC < > = != <= >= like\fP operators for comparison and the two logical operator \fC and\fP and \fC or\fP ; in the case of the \fC like\fP operator the character \fC %\fP act like a wildcard and means: \fI 'any sequence of character'\fP . A \fC %\fP is implicitly added at both the ends of the string, that is \fC like "foo"\fP will match any string that contains "foo".
2021-10-10 13:11:50 +02:00
.PP
2023-07-30 15:08:21 +02:00
Note that the right hand side of the operator must be wrapped in quotes.
2021-10-10 13:11:50 +02:00
.PP
2023-07-30 15:08:21 +02:00
After the search is performed a window with the results is shown, selecting an item of this window will open the gempub and will add all its table of contents on the tour mode, so that the book could be browsed.
2021-10-10 13:11:50 +02:00
.PP
2023-07-30 15:08:21 +02:00
For more information on tour mode see below or use \fB 'C-h A <enter> tour mode'\fP .
2021-10-10 13:11:50 +02:00
.SH "Tour mode"
.PP
2023-07-30 15:08:21 +02:00
Tinmop maintains a queue of links that can be then visited by the user, this queue is called \fB tour\fP .
2021-10-10 13:11:50 +02:00
.PP
There are two ways to add a link to the tour:
.IP \(em 4
2023-07-30 15:08:21 +02:00
when a link window is open and focused pressing \fB t\fP will start a prompt for link indices to be saved in the tour; the prompt expect a simple, comma or space separated, list of indices or index range, index range is a couple of index separated by a dash, example below:
2021-10-10 13:11:50 +02:00
.RS
.nf
\fC 1 2 5 8-12
\fP
.fi
.RE
2021-11-16 16:26:28 +01:00
.PP
2023-07-30 15:08:21 +02:00
The string above will save the link index number 1, 2, 3, 5, 8, 9, 10, 11, 12 to the tour.
2021-10-10 13:11:50 +02:00
.PP
2023-07-30 15:08:21 +02:00
The other way to add links to the tour is using the command \fB 'gemlog-add-unread-posts-tour'\fP (default keychord: \fB 'M-g s t a'\fP ) that will add all the unread posts to the tour.
2021-10-10 13:11:50 +02:00
.PP
There are a few more useful command to manipulate the tour:
.TP
\fB next-tour-link\fP
2023-07-30 15:08:21 +02:00
(\fB 'M-t t'\fP or just 't' if a gemini window is focused) follows the next link in the tour;
2021-10-10 13:11:50 +02:00
.TP
\fB show-tour-links\fP
2023-07-30 15:08:21 +02:00
(\fB 'M-t s'\fP or just \fB 'T'\fP if a gemini window is focused) shows the contents of the tour in a link window
2021-10-10 13:11:50 +02:00
.TP
\fB clean-all-tour\fP
(\fB 'M-t c'\fP )
.TP
2021-11-16 16:26:28 +01:00
\fB shuffle-tour\fP
2021-10-10 13:11:50 +02:00
(\fB 'M-t S'\fP ) shuffle the contents of the tour
2020-05-08 15:45:43 +02:00
.SH "How to get more help"
.PP
2020-12-27 13:19:32 +01:00
For help with pleroma visit the pleroma website:
.PP
\fI https://pleroma.social/\fP
2023-10-19 18:10:30 +02:00
.PP
The mastodon website can be found at:
.PP
\fI https://joinmastodon.org/\fP
2020-12-27 13:19:32 +01:00
.PP
For information about gemini:
.PP
2023-10-19 18:10:30 +02:00
$ tinmop -o gemini://geminiprotocol.net/
2020-05-08 15:45:43 +02:00
.PP
2023-10-19 18:10:30 +02:00
The program has an inline help (default binding for help is "?"), a manpage (default binding to view the manpage is "C-h m") and inline help that can be searched (default: "C-h A").
2020-12-27 13:19:32 +01:00
2020-05-08 15:45:43 +02:00
.PP
Moreover you can have some useful hint at the program web page:
.PP
2023-10-19 18:10:30 +02:00
\fI https://www.autistici.org/interzona/tinmop/\fP
.SH "Default keybindings for TUI"
2022-01-28 18:45:00 +01:00
.SS "Global keymap"
.TP
2022-02-05 15:27:44 +01:00
\fB ! \fP
gemini-search
2022-01-28 18:45:00 +01:00
.TP
2022-02-05 15:27:44 +01:00
\fB > \fP
open-net-address
2022-01-28 18:45:00 +01:00
.TP
2024-04-06 11:13:43 +02:00
\fB @ \fP
switch-fediverse-account
.TP
2022-01-28 18:45:00 +01:00
\fB ? \fP
print-quick-help
.TP
2023-07-30 15:08:21 +02:00
\fB C d \fP
clear-cache
.TP
\fB C-I \fP
pass-focus-next
.TP
2022-02-05 15:27:44 +01:00
\fB C-a \fP
show-about-window
.TP
2023-10-15 13:58:49 +02:00
\fB A \fP
show-announcements
.TP
2022-02-05 15:27:44 +01:00
\fB C-h A \fP
apropos-help-global
2022-01-28 18:45:00 +01:00
.TP
\fB C-h a \fP
apropos-help
.TP
2022-02-05 15:27:44 +01:00
\fB C-h h \fP
print-quick-help
2022-01-28 18:45:00 +01:00
.TP
\fB C-h m \fP
open-manual
.TP
2023-07-30 15:08:21 +02:00
\fB C-q \fP
quit
.TP
2022-01-28 18:45:00 +01:00
\fB M-c \fP
open-chats-list-window
.TP
2022-02-05 15:27:44 +01:00
\fB M-down \fP
pass-focus-on-bottom
2022-01-28 18:45:00 +01:00
.TP
2022-02-05 15:27:44 +01:00
\fB M-e \fP
eval-command
2022-01-28 18:45:00 +01:00
.TP
\fB M-g c i \fP
import-gemini-certificate
.TP
\fB M-g c s \fP
gemini-open-certificates-window
.TP
\fB M-g g b s\fP
display-bookmark
.TP
2022-02-05 15:27:44 +01:00
\fB M-g g l \fP
open-gempub-library
2022-01-28 18:45:00 +01:00
.TP
2022-02-05 15:27:44 +01:00
\fB M-g s o \fP
gemini-open-gemlog-window
2022-01-28 18:45:00 +01:00
.TP
2022-02-05 15:27:44 +01:00
\fB M-g s r \fP
gemlog-refresh-all
2022-01-28 18:45:00 +01:00
.TP
2022-02-05 15:27:44 +01:00
\fB M-g s t a\fP
gemlog-add-unread-posts-tour
2022-01-28 18:45:00 +01:00
.TP
2022-02-05 15:27:44 +01:00
\fB M-l \fP
load-script-file
2022-01-28 18:45:00 +01:00
.TP
\fB M-left \fP
pass-focus-on-left
.TP
2022-02-05 15:27:44 +01:00
\fB M-right \fP
pass-focus-on-right
2022-01-28 18:45:00 +01:00
.TP
\fB M-s l \fP
message-window-lock-scrolling
.TP
\fB M-s u \fP
message-window-unlock-scrolling
.TP
2022-02-05 15:27:44 +01:00
\fB M-t S \fP
shuffle-tour
2022-01-28 18:45:00 +01:00
.TP
2023-07-30 15:08:21 +02:00
\fB M-t a \fP
open-gemini-links-and-ask-tour
.TP
2022-02-05 15:27:44 +01:00
\fB M-t c \fP
clean-all-tour
.TP
\fB M-t s \fP
show-tour-links
.TP
\fB M-t t \fP
next-tour-link
.TP
\fB M-up \fP
pass-focus-on-top
.TP
\fB q \fP
2023-07-30 15:08:21 +02:00
confirm-and-clean-close-program
2022-01-28 18:45:00 +01:00
.SS "Follow request window"
.TP
2024-03-01 16:08:37 +01:00
\fB C-J (key \fI enter\fP ) \fP
2022-02-05 15:27:44 +01:00
process-follow-requests
2022-01-28 18:45:00 +01:00
.TP
2023-07-30 15:08:21 +02:00
\fB d \fP
2022-01-28 18:45:00 +01:00
follow-request-delete
.TP
2023-07-30 15:08:21 +02:00
\fB down\fP
2022-02-05 15:27:44 +01:00
follow-request-go-down
2022-01-28 18:45:00 +01:00
.TP
2023-07-30 15:08:21 +02:00
\fB j \fP
follow-request-go-down
.TP
\fB k \fP
follow-request-go-up
.TP
\fB q \fP
2022-01-28 18:45:00 +01:00
cancel-follow-requests
.TP
2023-07-30 15:08:21 +02:00
\fB up \fP
2022-02-05 15:27:44 +01:00
follow-request-go-up
.SS "Send post window"
2022-01-28 18:45:00 +01:00
.TP
2024-03-01 16:08:37 +01:00
\fB C-J (key \fI enter\fP ) \fP
2022-02-05 15:27:44 +01:00
send-message
2022-01-28 18:45:00 +01:00
.TP
2023-07-30 15:08:21 +02:00
\fB d \fP
2022-01-28 18:45:00 +01:00
attach-delete
.TP
2023-07-30 15:08:21 +02:00
\fB down\fP
2022-02-05 15:27:44 +01:00
attach-go-down
.TP
2023-07-30 15:08:21 +02:00
\fB e \fP
2022-02-05 15:27:44 +01:00
edit-message-body
2022-01-28 18:45:00 +01:00
.TP
2023-07-30 15:08:21 +02:00
\fB j \fP
attach-go-down
.TP
\fB k \fP
attach-go-up
.TP
\fB m \fP
2022-01-28 18:45:00 +01:00
change-mentions
.TP
2023-07-30 15:08:21 +02:00
\fB q \fP
2022-01-28 18:45:00 +01:00
cancel-send-message
.TP
2024-07-11 14:30:51 +02:00
\fB C-g \fP
cancel-send-message
.TP
2023-07-30 15:08:21 +02:00
\fB s \fP
2022-02-05 15:27:44 +01:00
change-subject
2022-01-28 18:45:00 +01:00
.TP
2023-07-30 15:08:21 +02:00
\fB up \fP
2022-02-05 15:27:44 +01:00
attach-go-up
2022-01-28 18:45:00 +01:00
.TP
2023-07-30 15:08:21 +02:00
\fB v \fP
2022-02-05 15:27:44 +01:00
change-visibility
2022-01-28 18:45:00 +01:00
.SS "Thread window"
.TP
2024-04-08 20:45:44 +02:00
\fB [ \fP
2024-04-06 11:13:43 +02:00
thread-go-to-parent-post
.TP
2024-04-08 20:45:44 +02:00
\fB ^ \fP
thread-open-parent-post
.TP
2024-07-11 14:30:51 +02:00
\fB / q \fP
search-fediverse
.TP
\fB / Q \fP
search-fediverse-local (see: \fI fuzzy:Fediverse local search\fP )
.TP
2022-01-28 18:45:00 +01:00
\fB / b \fP
thread-search-next-message-body
.TP
\fB / m \fP
thread-search-next-message-meta
.TP
2024-04-08 20:45:44 +02:00
\fB C-J (key \fI enter\fP )\fP
2022-02-05 15:27:44 +01:00
thread-open-selected-message
2022-01-28 18:45:00 +01:00
.TP
2022-02-05 15:27:44 +01:00
\fB C-X m b \fP
boost-selected-status
2022-01-28 18:45:00 +01:00
.TP
2022-02-05 15:27:44 +01:00
\fB C-X m f \fP
favourite-selected-status
2022-01-28 18:45:00 +01:00
.TP
2022-02-05 15:27:44 +01:00
\fB C-X m r b\fP
unboost-selected-status
2022-01-28 18:45:00 +01:00
.TP
2022-02-05 15:27:44 +01:00
\fB C-X m r f\fP
unfavourite-selected-status
2022-01-28 18:45:00 +01:00
.TP
2022-02-05 15:27:44 +01:00
\fB C-X m s \fP
subscribe-to-hash
2022-01-28 18:45:00 +01:00
.TP
2022-02-05 15:27:44 +01:00
\fB C-X m t \fP
move-message-tree
2022-01-28 18:45:00 +01:00
.TP
2022-02-05 15:27:44 +01:00
\fB C-X m u \fP
unsubscribe-to-hash
2022-01-28 18:45:00 +01:00
.TP
2022-02-05 15:27:44 +01:00
\fB C-c c \fP
change-conversation-name
2022-01-28 18:45:00 +01:00
.TP
\fB C-c o \fP
open-conversation
.TP
2022-02-05 15:27:44 +01:00
\fB C-c u \fP
update-conversations
2022-01-28 18:45:00 +01:00
.TP
\fB C-f c \fP
change-folder
.TP
2022-02-05 15:27:44 +01:00
\fB C-t R \fP
reset-timeline-pagination
2022-01-28 18:45:00 +01:00
.TP
\fB C-t U \fP
update-current-timeline-backwards
.TP
2022-02-05 15:27:44 +01:00
\fB C-t c \fP
change-timeline
2022-01-28 18:45:00 +01:00
.TP
\fB C-t h r \fP
refresh-tags
.TP
2022-02-05 15:27:44 +01:00
\fB C-t u \fP
update-current-timeline
2022-01-28 18:45:00 +01:00
.TP
2022-02-05 15:27:44 +01:00
\fB C-u c k g\fP
crypto-generate-key
.TP
\fB C-u c k i\fP
crypto-import-key
.TP
\fB C-u c k s\fP
crypto-export-key
2022-01-28 18:45:00 +01:00
.TP
\fB C-u f \fP
follow-user
.TP
2022-02-05 15:27:44 +01:00
\fB C-u i \fP
ignore-user
.TP
2022-01-28 18:45:00 +01:00
\fB C-u r f \fP
start-follow-request-processing
.TP
\fB C-u r r \fP
report-status
.TP
\fB C-u u \fP
unfollow-user
.TP
\fB C-u v a \fP
view-user-avatar
.TP
2022-02-05 15:27:44 +01:00
\fB C-u x \fP
unignore-user
2022-01-28 18:45:00 +01:00
.TP
2022-02-05 15:27:44 +01:00
\fB D \fP
delete-post-using-regex
2022-01-28 18:45:00 +01:00
.TP
2023-07-30 15:08:21 +02:00
\fB I \fP
print-post-id
.TP
\fB M \fP
print-mentions
.TP
2022-02-05 15:27:44 +01:00
\fB M-u \fP
delete-and-move-previous
2022-01-28 18:45:00 +01:00
.TP
2023-07-30 15:08:21 +02:00
\fB N d \fP
delete-notifications
.TP
2024-03-29 12:13:19 +01:00
\fB T d \fP
thread-delete-subtree
.TP
2024-07-11 14:30:51 +02:00
\fB e \fP
edit-posted-message
.TP
2022-02-05 15:27:44 +01:00
\fB P \fP
poll-vote
2022-01-28 18:45:00 +01:00
.TP
2023-10-15 13:58:49 +02:00
\fB p \fP
show-parent-post
.TP
2022-02-05 15:27:44 +01:00
\fB U \fP
thread-mark-prevent-delete-selected-message
2022-01-28 18:45:00 +01:00
.TP
2022-02-05 15:27:44 +01:00
\fB X \fP
refresh-thread-totally
2022-01-28 18:45:00 +01:00
.TP
2023-07-31 17:53:48 +02:00
\fB \\ \\ \fP
repeat-search
.TP
\fB \\ b \fP
2022-02-05 15:27:44 +01:00
thread-search-previous-message-body
2022-01-28 18:45:00 +01:00
.TP
2023-07-31 17:53:48 +02:00
\fB \\ m \fP
2022-02-05 15:27:44 +01:00
thread-search-previous-message-meta
2022-01-28 18:45:00 +01:00
.TP
2022-02-05 15:27:44 +01:00
\fB c \fP
compose-message
2022-01-28 18:45:00 +01:00
.TP
2022-02-05 15:27:44 +01:00
\fB d \fP
delete-and-move-next
2022-01-28 18:45:00 +01:00
.TP
2024-03-01 16:08:37 +01:00
\fB dc (key \fI delete\fP )\fP
2022-02-05 15:27:44 +01:00
thread-mark-delete-selected-message
2022-01-28 18:45:00 +01:00
.TP
\fB down \fP
2022-02-05 15:27:44 +01:00
thread-go-down
.TP
\fB end \fP
thread-goto-last-message
.TP
\fB g \fP
thread-goto-message
.TP
\fB home \fP
thread-goto-first-message
.TP
2023-07-30 15:08:21 +02:00
\fB j \fP
thread-go-down
.TP
\fB k \fP
thread-go-up
.TP
2022-02-05 15:27:44 +01:00
\fB l \fP
open-message-link
2022-01-28 18:45:00 +01:00
.TP
\fB left \fP
2022-02-05 15:27:44 +01:00
open-previous
.TP
\fB n \fP
thread-search-next-unread-message
.TP
\fB r \fP
reply-message
2022-01-28 18:45:00 +01:00
.TP
\fB right \fP
2022-02-05 15:27:44 +01:00
open-next
2022-01-28 18:45:00 +01:00
.TP
2023-07-30 15:08:21 +02:00
\fB s d \fP
status-tree->text
.TP
2022-02-05 15:27:44 +01:00
\fB up \fP
thread-go-up
2022-01-28 18:45:00 +01:00
.TP
2022-02-05 15:27:44 +01:00
\fB v \fP
open-message-attach
2022-01-28 18:45:00 +01:00
.TP
2022-02-05 15:27:44 +01:00
\fB x \fP
refresh-thread
.TP
\fB | \fP
send-message-to-pipe
2024-06-15 17:44:19 +02:00
.SS "Fediverse local search"
.PP
2024-06-16 10:55:42 +02:00
The database containing posts fetched from the server can be searched using a simple query language (loosely similar to SQL):
2024-06-15 17:44:19 +02:00
.RS
.nf
\fC
2024-06-16 14:41:39 +02:00
*where* criteria [*into* folder-name]
2024-06-16 10:55:42 +02:00
\fP
.fi
.RE
.PP
examples:
.RS
.nf
\fC
where rendered-text like "calvino" and username like "cage" into writer-review
2024-06-15 17:44:19 +02:00
where rendered-text like "calvino" and (username like "cage" or rebblogged =1)
\fP
.fi
.RE
.PP
Valid search keys are:
.IP \(em 4
account-id;
.IP \(em 4
account;
.IP \(em 4
application;
.IP \(em 4
content;
This columns holds the original content of the post in HTML format;
.IP \(em 4
favourited;
.IP \(em 4
favourites-count;
.IP \(em 4
folder;
.IP \(em 4
language;
.IP \(em 4
muted;
Boolean value: 0 or 1;
.IP \(em 4
reblogged;
.IP \(em 4
reblogs-count;
.IP \(em 4
redp;
.IP \(em 4
rendered-text;
This columns holds the content of the post as displayed on the program window;
.IP \(em 4
replies-count;
.IP \(em 4
sensitive;
Boolean value: 0 or 1;
.IP \(em 4
spoiler-text;
.IP \(em 4
status-id;
.IP \(em 4
tags;
.IP \(em 4
timeline;
.IP \(em 4
uri;
the address of the post in JSON format
.IP \(em 4
url;
The internet address of the HTML representation of the post;
.IP \(em 4
username;
.IP \(em 4
visibility.
2024-06-16 10:55:42 +02:00
.PP
You can use \fC < > = != <= >= like\fP operators for comparison and the two logical operator \fC and\fP and \fC or\fP ; in the case of the \fC like\fP operator the character \fC %\fP act like a wildcard and means: \fI 'any sequence of character'\fP . A \fC %\fP is implicitly added at both the ends of the string, that is \fC like "foo"\fP will became "%foo%" and will matches any string that contains "foo".
.PP
Note that the right hand side of the operator must be wrapped in quotes.
.PP
2024-06-16 14:41:39 +02:00
The results are saved in the folder specified after the clause \fI into\fP (if omitted a default folder name is used), note that the folder name can not contains spaces.
2022-02-05 15:27:44 +01:00
.SS "Posts window"
2022-01-28 18:45:00 +01:00
.TP
2023-07-30 15:08:21 +02:00
\fB / \fP
2022-01-28 18:45:00 +01:00
message-search-regex
.TP
2024-03-01 16:08:37 +01:00
\fB C-J (key \fI enter\fP ) \fP
2022-02-05 15:27:44 +01:00
message-scroll-down
.TP
2023-07-30 15:08:21 +02:00
\fB N \fP
2022-01-28 18:45:00 +01:00
repeat-search
.TP
2023-07-30 15:08:21 +02:00
\fB b \fP
net-address-history-back
.TP
2023-11-11 19:52:17 +01:00
\fB d \fP
delete-shown-post
.TP
2023-07-30 15:08:21 +02:00
\fB down \fP
2022-02-05 15:27:44 +01:00
message-scroll-down
.TP
2023-07-30 15:08:21 +02:00
\fB end \fP
2022-02-05 15:27:44 +01:00
message-scroll-end
.TP
2023-07-30 15:08:21 +02:00
\fB home \fP
2022-02-05 15:27:44 +01:00
message-scroll-begin
.TP
2023-07-30 15:08:21 +02:00
\fB j \fP
message-scroll-down
.TP
\fB k \fP
message-scroll-up
.TP
\fB l \fP
message-extract-links
.TP
\fB left \fP
2022-02-05 15:27:44 +01:00
message-scroll-left
.TP
2023-07-30 15:08:21 +02:00
\fB npage\fP
2022-01-28 18:45:00 +01:00
message-scroll-next-page
.TP
2023-07-30 15:08:21 +02:00
\fB ppage\fP
2022-01-28 18:45:00 +01:00
message-scroll-previous-page
.TP
2023-07-30 15:08:21 +02:00
\fB right\fP
2022-02-05 15:27:44 +01:00
message-scroll-right
.TP
2023-07-30 15:08:21 +02:00
\fB up \fP
2022-02-05 15:27:44 +01:00
message-scroll-up
.TP
2023-07-30 15:08:21 +02:00
\fB | \fP
2022-01-28 18:45:00 +01:00
send-to-pipe
.SS "Gemini viewer window"
.TP
2023-07-30 15:08:21 +02:00
\fB / \fP
2022-02-05 15:27:44 +01:00
message-search-regex
2022-01-28 18:45:00 +01:00
.TP
2023-07-30 15:08:21 +02:00
\fB B \fP
address-go-back-in-path
.TP
2024-03-01 16:08:37 +01:00
\fB C-J (key \fI enter\fP ) \fP
2022-01-28 18:45:00 +01:00
message-scroll-down
.TP
2023-07-30 15:08:21 +02:00
\fB C-[ \fP
2022-02-05 15:27:44 +01:00
go-to-previous-link
2022-01-28 18:45:00 +01:00
.TP
2023-07-30 15:08:21 +02:00
\fB C-] \fP
2022-02-05 15:27:44 +01:00
go-to-next-link
2022-01-28 18:45:00 +01:00
.TP
2023-07-30 15:08:21 +02:00
\fB C-b a\fP
2022-02-05 15:27:44 +01:00
bookmark-gemini-page
2022-01-28 18:45:00 +01:00
.TP
2023-07-30 15:08:21 +02:00
\fB C-b d\fP
2022-02-05 15:27:44 +01:00
delete-gemini-bookmark
2022-01-28 18:45:00 +01:00
.TP
2023-07-30 15:08:21 +02:00
\fB C-b s\fP
2022-02-05 15:27:44 +01:00
display-bookmark
2022-01-28 18:45:00 +01:00
.TP
2023-07-30 15:08:21 +02:00
\fB I M \fP
gemini-images-montage
2022-12-12 20:21:31 +01:00
.TP
2023-07-30 15:08:21 +02:00
\fB N \fP
2022-01-28 18:45:00 +01:00
repeat-search
.TP
2023-07-30 15:08:21 +02:00
\fB O \fP
2022-02-05 15:27:44 +01:00
open-gemini-toc
2022-01-28 18:45:00 +01:00
.TP
2023-07-30 15:08:21 +02:00
\fB R \fP
address-go-root-path
.TP
\fB T \fP
2022-02-05 15:27:44 +01:00
show-tour-links
2022-01-28 18:45:00 +01:00
.TP
2023-07-30 15:08:21 +02:00
\fB U \fP
2022-02-05 15:27:44 +01:00
gemini-view-source
.TP
2023-07-30 15:08:21 +02:00
\fB [ \fP
open-previous-link
.TP
\fB ] \fP
2022-02-05 15:27:44 +01:00
open-next-visible-link
2022-01-28 18:45:00 +01:00
.TP
2023-07-30 15:08:21 +02:00
\fB b \fP
2022-10-01 18:25:54 +02:00
net-address-history-back
2022-01-28 18:45:00 +01:00
.TP
2023-07-30 15:08:21 +02:00
\fB c \fP
2022-02-05 15:27:44 +01:00
gemini-open-certificates-window
2022-01-28 18:45:00 +01:00
.TP
2023-07-30 15:08:21 +02:00
\fB d \fP
2022-02-05 15:27:44 +01:00
gemini-open-streams-window
.TP
2023-07-30 15:08:21 +02:00
\fB down \fP
2022-02-05 15:27:44 +01:00
message-scroll-down
.TP
2023-07-30 15:08:21 +02:00
\fB end \fP
2022-02-05 15:27:44 +01:00
message-scroll-end
.TP
2023-07-30 15:08:21 +02:00
\fB home \fP
2022-02-05 15:27:44 +01:00
message-scroll-begin
.TP
2023-07-30 15:08:21 +02:00
\fB j \fP
message-scroll-down
.TP
\fB k \fP
message-scroll-up
.TP
\fB l \fP
2022-02-05 15:27:44 +01:00
open-message-link
2022-01-28 18:45:00 +01:00
.TP
2023-07-30 15:08:21 +02:00
\fB left \fP
2022-02-05 15:27:44 +01:00
message-scroll-left
2022-01-28 18:45:00 +01:00
.TP
2023-07-30 15:08:21 +02:00
\fB npage\fP
2022-02-05 15:27:44 +01:00
message-scroll-next-page
2022-01-28 18:45:00 +01:00
.TP
2023-07-30 15:08:21 +02:00
\fB p \fP
2022-02-05 15:27:44 +01:00
message-toggle-preformatted-block
2022-01-28 18:45:00 +01:00
.TP
2023-07-30 15:08:21 +02:00
\fB ppage\fP
2022-02-05 15:27:44 +01:00
message-scroll-previous-page
2022-01-28 18:45:00 +01:00
.TP
2023-07-30 15:08:21 +02:00
\fB r \fP
2022-01-28 18:45:00 +01:00
gemini-refresh-page
.TP
2023-07-30 15:08:21 +02:00
\fB right\fP
2022-02-05 15:27:44 +01:00
message-scroll-right
.TP
2023-07-30 15:08:21 +02:00
\fB s \fP
2022-01-28 18:45:00 +01:00
gemini-subscribe-gemlog
.TP
2023-07-30 15:08:21 +02:00
\fB t \fP
2022-01-28 18:45:00 +01:00
next-tour-link
.TP
2023-07-30 15:08:21 +02:00
\fB up \fP
2022-02-05 15:27:44 +01:00
message-scroll-up
2022-01-28 18:45:00 +01:00
.TP
2023-07-30 15:08:21 +02:00
\fB | \fP
2022-01-28 18:45:00 +01:00
send-to-pipe
.SS "Gemini page table of contents window"
.TP
2023-07-30 15:08:21 +02:00
\fB / \fP
gemini-toc-search
.TP
2024-03-01 16:08:37 +01:00
\fB C-J (key \fI enter\fP ) \fP
2022-02-05 15:27:44 +01:00
gemini-toc-scroll-down-page
2022-01-28 18:45:00 +01:00
.TP
2023-07-30 15:08:21 +02:00
\fB N \fP
repeat-search
.TP
\fB down\fP
2022-01-28 18:45:00 +01:00
gemini-toc-scroll-down
.TP
2023-07-30 15:08:21 +02:00
\fB end \fP
gemini-toc-scroll-end
.TP
\fB home\fP
gemini-toc-scroll-begin
.TP
\fB j \fP
gemini-toc-scroll-down
.TP
\fB k \fP
gemini-toc-scroll-up
.TP
\fB n \fP
2022-01-28 18:45:00 +01:00
gemini-toc-scroll-down-page
.TP
2023-07-30 15:08:21 +02:00
\fB p \fP
2022-01-28 18:45:00 +01:00
gemini-toc-scroll-up-page
2022-02-05 15:27:44 +01:00
.TP
2023-07-30 15:08:21 +02:00
\fB q \fP
2022-02-05 15:27:44 +01:00
gemini-toc-close
.TP
2024-07-11 14:30:51 +02:00
\fB C-g \fP
gemini-toc-close
.TP
2023-07-30 15:08:21 +02:00
\fB up \fP
2022-02-05 15:27:44 +01:00
gemini-toc-scroll-up
2022-01-28 18:45:00 +01:00
.SS "Gemini stream window"
.TP
2024-03-01 16:08:37 +01:00
\fB C-J (key \fI enter\fP ) \fP
2022-02-05 15:27:44 +01:00
gemini-streams-window-open-stream
.TP
2023-07-30 15:08:21 +02:00
\fB a \fP
2022-01-28 18:45:00 +01:00
gemini-abort-download
.TP
2023-07-30 15:08:21 +02:00
\fB down\fP
2022-01-28 18:45:00 +01:00
gemini-streams-window-down
.TP
2023-07-30 15:08:21 +02:00
\fB j \fP
gemini-streams-window-down
.TP
\fB k \fP
gemini-streams-window-up
.TP
\fB q \fP
2022-01-28 18:45:00 +01:00
gemini-streams-window-close
.TP
2023-07-30 15:08:21 +02:00
\fB up \fP
2022-02-05 15:27:44 +01:00
gemini-streams-window-up
2023-07-30 15:08:21 +02:00
.SS "Gemini certificates window"
2022-01-28 18:45:00 +01:00
.TP
2024-03-01 16:08:37 +01:00
\fB C-J (key \fI enter\fP ) \fP
2023-07-30 15:08:21 +02:00
gemini-certificate-information
2022-04-25 13:07:26 +02:00
.TP
2023-07-30 15:08:21 +02:00
\fB d \fP
gemini-delete-certificate
2022-01-28 18:45:00 +01:00
.TP
2023-07-30 15:08:21 +02:00
\fB down\fP
2022-01-28 18:45:00 +01:00
gemini-certificate-window-go-down
.TP
2023-07-30 15:08:21 +02:00
\fB j \fP
gemini-certificate-window-go-down
.TP
\fB k \fP
gemini-certificate-window-go-up
.TP
\fB q \fP
2022-01-28 18:45:00 +01:00
gemini-close-certificate-window
.TP
2024-07-11 14:30:51 +02:00
\fB C-g \fP
gemini-close-certificate-window
.TP
2023-07-30 15:08:21 +02:00
\fB up \fP
2022-02-05 15:27:44 +01:00
gemini-certificate-window-go-up
2024-03-01 16:08:37 +01:00
.TP
\fB c \fP
gemini-change-certificate-password
.TP
\fB D \fP
clear-cached-client-tls-certificates
2022-01-28 18:45:00 +01:00
.SS "Gemini subscription window"
.TP
2024-03-01 16:08:37 +01:00
\fB C-J (key \fI enter\fP ) \fP
2022-01-28 18:45:00 +01:00
show-gemlog-to-screen
.TP
2022-02-05 15:27:44 +01:00
\fB d \fP
gemlog-cancel-subscription
2022-01-28 18:45:00 +01:00
.TP
\fB down \fP
gemlogs-subscription-go-down
.TP
2023-07-30 15:08:21 +02:00
\fB j\fP
gemlogs-subscription-go-down
.TP
\fB k\fP
gemlogs-subscription-go-up
.TP
2022-02-05 15:27:44 +01:00
\fB l \fP
open-message-link
.TP
2022-01-28 18:45:00 +01:00
\fB q \fP
close-gemlog-window
.TP
2024-07-11 14:30:51 +02:00
\fB C-g \fP
close-gemlog-window
.TP
2022-02-05 15:27:44 +01:00
\fB up \fP
gemlogs-subscription-go-up
2022-01-28 18:45:00 +01:00
.SS "Gempub library window"
.TP
2024-03-01 16:08:37 +01:00
\fB C-J (key \fI enter\fP ) \fP
2022-02-05 15:27:44 +01:00
gempub-open-file
2022-01-28 18:45:00 +01:00
.TP
2023-07-30 15:08:21 +02:00
\fB down\fP
2022-01-28 18:45:00 +01:00
gempub-library-window-go-down
.TP
2023-07-30 15:08:21 +02:00
\fB j \fP
gempub-library-window-go-down
.TP
\fB k \fP
gempub-library-window-go-up
.TP
\fB q \fP
2022-01-28 18:45:00 +01:00
gempub-library-window-close
.TP
2024-07-11 14:30:51 +02:00
\fB C-g \fP
gempub-library-window-close
.TP
2023-07-30 15:08:21 +02:00
\fB up \fP
2022-02-05 15:27:44 +01:00
gempub-library-window-go-up
2022-01-28 18:45:00 +01:00
.SS "Post's tag window"
.TP
2024-03-01 16:08:37 +01:00
\fB C-J (key \fI enter\fP ) \fP
2022-01-28 18:45:00 +01:00
open-tag-folder
.TP
2023-07-30 15:08:21 +02:00
\fB U \fP
2022-01-28 18:45:00 +01:00
unsubscribe-to-hash
.TP
2023-07-30 15:08:21 +02:00
\fB down\fP
2022-02-05 15:27:44 +01:00
tag-go-down
.TP
2023-07-30 15:08:21 +02:00
\fB j \fP
tag-go-down
.TP
\fB k \fP
tag-go-up
.TP
\fB r \fP
2022-01-28 18:45:00 +01:00
refresh-tags
2022-02-05 15:27:44 +01:00
.TP
2023-07-30 15:08:21 +02:00
\fB s \fP
subscribe-to-hash
.TP
\fB up \fP
2022-02-05 15:27:44 +01:00
tag-go-up
2022-01-28 18:45:00 +01:00
.SS "Conversations window"
.TP
2024-03-01 16:08:37 +01:00
\fB C-J (key \fI enter\fP ) \fP
2022-01-28 18:45:00 +01:00
goto-conversation
.TP
2023-07-30 15:08:21 +02:00
\fB C-c c\fP
2022-02-05 15:27:44 +01:00
change-conversation-name
2022-01-28 18:45:00 +01:00
.TP
2023-07-30 15:08:21 +02:00
\fB I \fP
2022-02-05 15:27:44 +01:00
ignore-conversation
2022-01-28 18:45:00 +01:00
.TP
2024-03-01 16:08:37 +01:00
\fB dc (key \fI delete\fP )\fP
2022-01-28 18:45:00 +01:00
delete-conversation
.TP
2023-07-30 15:08:21 +02:00
\fB down \fP
2022-02-05 15:27:44 +01:00
conversation-go-down
.TP
2023-07-30 15:08:21 +02:00
\fB j \fP
conversation-go-down
.TP
\fB k \fP
conversation-go-up
.TP
\fB up \fP
2022-02-05 15:27:44 +01:00
conversation-go-up
2022-01-28 18:45:00 +01:00
.SS "Attachments window"
.TP
2024-03-01 16:08:37 +01:00
\fB C-J (key \fI enter\fP ) \fP
2022-01-28 18:45:00 +01:00
open-message-attach-perform-opening
.TP
2024-07-11 14:30:51 +02:00
\fB O \fP
open-attachment-ignoring-cache
.TP
2023-07-30 15:08:21 +02:00
\fB C-c \fP
copy-from-attach-window-to-clipboard
.TP
\fB a \fP
2022-01-28 18:45:00 +01:00
open-all-message-attachments
.TP
2023-07-30 15:08:21 +02:00
\fB down\fP
2022-01-28 18:45:00 +01:00
open-message-attach-go-down
.TP
2023-07-30 15:08:21 +02:00
\fB j \fP
open-message-attach-go-down
.TP
\fB k \fP
open-message-attach-go-up
.TP
\fB q \fP
2022-01-28 18:45:00 +01:00
close-open-attach-window
2022-02-05 15:27:44 +01:00
.TP
2024-07-11 14:30:51 +02:00
\fB C-g \fP
close-open-attach-window
.TP
2023-07-30 15:08:21 +02:00
\fB up \fP
2022-02-05 15:27:44 +01:00
open-message-attach-go-up
2022-01-28 18:45:00 +01:00
.SS "Links window"
.TP
2023-07-30 15:08:21 +02:00
\fB / \fP
2022-02-05 15:27:44 +01:00
search-link-window
.TP
2023-07-30 15:08:21 +02:00
\fB C-c \fP
copy-from-message-link-to-clipboard
2022-01-28 18:45:00 +01:00
.TP
2023-07-30 15:08:21 +02:00
\fB N \fP
2022-02-05 15:27:44 +01:00
repeat-search
.TP
2023-07-30 15:08:21 +02:00
\fB T \fP
2022-02-05 15:27:44 +01:00
save-selected-message-in-tour
2022-01-28 18:45:00 +01:00
.TP
2023-07-30 15:08:21 +02:00
\fB ] \fP
gemini-jump-to-link
.TP
\fB down\fP
2022-01-28 18:45:00 +01:00
open-message-link-go-down
.TP
2023-07-30 15:08:21 +02:00
\fB e \fP
2022-01-28 18:45:00 +01:00
open-message-link-open-enqueue
.TP
2023-07-30 15:08:21 +02:00
\fB end \fP
open-message-link-window-scroll-end
.TP
\fB home\fP
open-message-link-window-scroll-begin
.TP
\fB j \fP
open-message-link-go-down
.TP
\fB k \fP
open-message-link-go-up
.TP
\fB q \fP
2022-02-05 15:27:44 +01:00
close-open-message-link-window
2022-01-28 18:45:00 +01:00
.TP
2024-07-11 14:30:51 +02:00
\fB C-g \fP
close-open-message-link-window
.TP
2023-07-30 15:08:21 +02:00
\fB t \fP
2022-01-28 18:45:00 +01:00
tour-mode-link
.TP
2023-07-30 15:08:21 +02:00
\fB up \fP
2022-02-05 15:27:44 +01:00
open-message-link-go-up
2022-01-28 18:45:00 +01:00
.SS "Chats list window"
.TP
2024-03-01 16:08:37 +01:00
\fB C-J (key \fI enter\fP ) \fP
2022-02-05 15:27:44 +01:00
show-chat-to-screen
2022-01-28 18:45:00 +01:00
.TP
2023-07-30 15:08:21 +02:00
\fB R \fP
2022-01-28 18:45:00 +01:00
refresh-chats
.TP
2023-07-30 15:08:21 +02:00
\fB c \fP
2022-02-05 15:27:44 +01:00
chat-create-new
2022-01-28 18:45:00 +01:00
.TP
2023-07-30 15:08:21 +02:00
\fB down\fP
2022-02-05 15:27:44 +01:00
chat-list-go-down
2022-01-28 18:45:00 +01:00
.TP
2023-07-30 15:08:21 +02:00
\fB j \fP
chat-list-go-down
.TP
\fB k \fP
chat-list-go-up
.TP
\fB l \fP
2022-01-28 18:45:00 +01:00
change-chat-label
.TP
2023-07-30 15:08:21 +02:00
\fB q \fP
2022-02-05 15:27:44 +01:00
close-chats-list-window
.TP
2024-07-11 14:30:51 +02:00
\fB C-g \fP
close-chats-list-window
.TP
2023-07-30 15:08:21 +02:00
\fB r \fP
2022-02-05 15:27:44 +01:00
refresh-chat-messages
2022-01-28 18:45:00 +01:00
.TP
2023-07-30 15:08:21 +02:00
\fB up \fP
2022-01-28 18:45:00 +01:00
chat-list-go-up
.SS "Chat window"
.TP
2022-02-05 15:27:44 +01:00
\fB / \fP
message-search-regex
.TP
2022-01-28 18:45:00 +01:00
\fB M-c \fP
write-to-chat
.TP
2022-02-05 15:27:44 +01:00
\fB a \fP
open-chat-link-window
2022-01-28 18:45:00 +01:00
.TP
\fB down \fP
message-scroll-down
.TP
\fB end \fP
message-scroll-end
.TP
2022-02-05 15:27:44 +01:00
\fB home \fP
message-scroll-begin
2022-01-28 18:45:00 +01:00
.TP
2023-07-30 15:08:21 +02:00
\fB j \fP
message-scroll-down
.TP
\fB k \fP
message-scroll-up
.TP
2022-01-28 18:45:00 +01:00
\fB npage \fP
message-scroll-next-page
.TP
\fB ppage \fP
message-scroll-previous-page
.TP
2022-02-05 15:27:44 +01:00
\fB up \fP
message-scroll-up
2022-01-28 18:45:00 +01:00
.SS "File explorer"
.TP
2023-07-30 15:08:21 +02:00
\fB / \fP
2022-02-05 15:27:44 +01:00
file-explorer-search
2022-01-28 18:45:00 +01:00
.TP
2024-03-01 16:08:37 +01:00
\fB C-J (key \fI enter\fP ) \fP
2022-02-05 15:27:44 +01:00
file-explorer-open-node
2022-01-28 18:45:00 +01:00
.TP
2023-07-30 15:08:21 +02:00
\fB D \fP
2022-01-28 18:45:00 +01:00
file-explorer-delete-tree
.TP
2023-07-30 15:08:21 +02:00
\fB M d \fP
2022-02-05 15:27:44 +01:00
file-explorer-download-mirror
.TP
2023-07-30 15:08:21 +02:00
\fB M u \fP
2022-02-05 15:27:44 +01:00
file-explorer-upload-mirror
.TP
2023-07-30 15:08:21 +02:00
\fB M-m \fP
2022-02-06 13:47:51 +01:00
file-explorer-mark-by-regexp
.TP
2023-07-30 15:08:21 +02:00
\fB N \fP
2022-02-05 15:27:44 +01:00
repeat-search
.TP
2023-07-30 15:08:21 +02:00
\fB X \fP
2022-01-28 18:45:00 +01:00
file-explorer-delete-marked
.TP
2023-07-30 15:08:21 +02:00
\fB a \fP
2022-01-28 18:45:00 +01:00
file-explorer-create-path
.TP
2023-07-30 15:08:21 +02:00
\fB c \fP
2022-02-05 15:27:44 +01:00
file-explorer-close-path
.TP
2023-07-30 15:08:21 +02:00
\fB d \fP
2022-01-28 18:45:00 +01:00
file-explorer-download-path
.TP
2023-07-30 15:08:21 +02:00
\fB down\fP
2022-01-28 18:45:00 +01:00
file-explorer-go-down
.TP
2023-07-30 15:08:21 +02:00
\fB e \fP
2022-02-05 15:27:44 +01:00
file-explorer-edit-file
2022-01-28 18:45:00 +01:00
.TP
2023-07-30 15:08:21 +02:00
\fB end \fP
2022-01-28 18:45:00 +01:00
file-explorer-scroll-end
.TP
2023-07-30 15:08:21 +02:00
\fB home\fP
2022-02-05 15:27:44 +01:00
file-explorer-scroll-begin
.TP
2023-07-30 15:08:21 +02:00
\fB i \fP
2022-02-05 15:27:44 +01:00
file-explorer-node-details
.TP
2023-07-30 15:08:21 +02:00
\fB j \fP
file-explorer-go-down
.TP
\fB k \fP
file-explorer-go-up
.TP
\fB m \fP
2022-02-05 15:27:44 +01:00
file-explorer-mark-entry
.TP
2023-07-30 15:08:21 +02:00
\fB q \fP
2022-01-28 18:45:00 +01:00
file-explorer-close-window
.TP
2024-07-11 14:30:51 +02:00
\fB C-g \fP
file-explorer-close-window
.TP
2023-07-30 15:08:21 +02:00
\fB r \fP
2022-02-05 15:27:44 +01:00
file-explorer-rename-path
2022-01-28 18:45:00 +01:00
.TP
2023-07-30 15:08:21 +02:00
\fB u \fP
2022-02-05 15:27:44 +01:00
file-explorer-upload-path
2022-01-28 18:45:00 +01:00
.TP
2023-07-30 15:08:21 +02:00
\fB up \fP
2022-02-05 15:27:44 +01:00
file-explorer-go-up
.TP
2023-07-30 15:08:21 +02:00
\fB x \fP
2022-02-05 15:27:44 +01:00
file-explorer-expand-path
2022-10-01 18:25:54 +02:00
.SS "Gopher window"
.TP
2024-03-01 16:08:37 +01:00
\fB C-J (key \fI enter\fP ) \fP
2023-07-30 15:08:21 +02:00
gopher-window:open-menu-link
2022-10-01 18:25:54 +02:00
.TP
2023-07-30 15:08:21 +02:00
\fB C-b a\fP
bookmark-gopher-page
2022-10-01 18:25:54 +02:00
.TP
2023-07-30 15:08:21 +02:00
\fB C-b d\fP
delete-gemini-bookmark
2022-10-01 18:25:54 +02:00
.TP
2023-07-30 15:08:21 +02:00
\fB C-b s\fP
display-bookmark
2022-10-01 18:25:54 +02:00
.TP
2023-07-30 15:08:21 +02:00
\fB b \fP
2022-10-01 18:25:54 +02:00
net-address-history-back
.TP
2023-07-30 15:08:21 +02:00
\fB down \fP
gopher-window:go-to-next-link
2022-10-01 18:25:54 +02:00
.TP
2023-07-30 15:08:21 +02:00
\fB j \fP
gopher-window:go-to-next-link
2022-10-01 18:25:54 +02:00
.TP
2023-07-30 15:08:21 +02:00
\fB k \fP
gopher-window:go-to-previous-link
.TP
\fB up \fP
gopher-window:go-to-previous-link
2020-05-08 15:45:43 +02:00
.SH "BUGS"
.PP
2023-07-30 15:08:21 +02:00
There are many, totally unknown, hiding in the code; this is scary! 😱 Please help the programmer to nail them using the https://codeberg.org/cage/tinmop/issues/ \fB at\fP \fI issue tracker\fP .
2020-05-08 15:45:43 +02:00
.SH "Contributing"
.PP
2023-10-19 18:24:52 +02:00
There is always need for help, you can join the developer, sending patches or https://translate.codeberg.org/engage/tinmop/ \fB at\fP \fI translating the UI\fP to your favourite language.
2020-05-08 15:45:43 +02:00
.PP
2023-07-30 15:08:21 +02:00
Just point your browser to the https://codeberg.org/cage/tinmop/ \fB at\fP \fI code repository\fP .
2020-05-08 15:45:43 +02:00
.PP
See also the file CONTRIBUTE.org
2020-05-09 13:53:09 +02:00
.SS "Debug mode"
.PP
2021-10-10 13:11:50 +02:00
If you uncomment the line:
2020-05-09 13:53:09 +02:00
.RS
.nf
\fC ;;(push :debug-mode *features*)
\fP
.fi
.RE
.PP
2023-07-30 15:08:21 +02:00
The program will be compiled in \fC debug\- mode\fP this means that a lot of diagnostic output will be appended to a file named \fC tinmop.log\fP in the directory \fC $HOME/.local/share/tinmop/\fP .
2020-05-09 13:53:09 +02:00
.SH "Files"
.IP \(em 4
\fC $HOME/.local/share/tinmop/db.sqlite3\fP : the program database
.IP \(em 4
\fC $HOME/.local/share/tinmop/client\fP : the program credentials to connect with the instance \fB keep private!\fP
.IP \(em 4
2024-07-11 14:30:51 +02:00
\fC $HOME/.local/share/tinmop/tinmop.log\fP : this file is created only for debugging and should not be enabled in binary package distribution (see \fI fuzzy:Contributing\fP ).
2020-05-09 13:53:09 +02:00
.IP \(em 4
\fC /etc/tinmop/default\- theme.conf\fP : default visual style
.IP \(em 4
2020-05-16 13:45:07 +02:00
\fC /etc/tinmop/shared.conf\fP : some default configuration not related to themes
2020-05-09 13:53:09 +02:00
.IP \(em 4
2023-07-30 15:08:21 +02:00
\fC /etc/tinmop/shared\- gui.conf\fP : default configuration for GUI
.IP \(em 4
2020-05-09 13:53:09 +02:00
\fC /etc/tinmop/init.lisp\fP : system wide configuration
.IP \(em 4
\fC $HOME/.config/tinmop/init.lisp\fP : user configuration
.IP \(em 4
2020-05-16 11:24:11 +02:00
\fC $HOME/.config/tinmop/main.conf\fP : user configuration (simple format)
2023-07-30 15:08:21 +02:00
.IP \(em 4
\fC $HOME/.config/tinmop/main.conf\fP : user configuration for GUI (simple format)
2020-05-08 15:45:43 +02:00
.SH "Privacy"
.PP
2023-07-30 15:08:21 +02:00
The author of this software collects no user data information with this software.
2020-05-08 15:45:43 +02:00
.PP
2023-07-30 15:08:21 +02:00
But this software is a client to connect and interact to one or more remote computer. So potentially it could share a lot of information with other actors but just after the user allowed it to do so.
2020-06-22 13:58:04 +02:00
.PP
2023-07-30 15:08:21 +02:00
It is the user responsibility to checks the privacy conditions of the instance this software connect to.
2020-06-22 13:58:04 +02:00
.PP
2023-07-30 15:08:21 +02:00
By default, pressing "!" will contact the remote service located at: "gemini://houston.coder.town/search".
2020-06-22 13:58:04 +02:00
.PP
2023-07-30 15:08:21 +02:00
Moreover launching \fC quick_quicklisp.sh\fP will contact \fI https://www.quicklisp.org/\fP , check the https://beta.quicklisp.org/quicklisp.lisp \fB at\fP \fI quicklisp sources\fP for details.
2020-05-08 15:45:43 +02:00
.SH "Acknowledgment"
.PP
2023-07-30 15:08:21 +02:00
My deep thanks to the folks that provided us with wonderful SBCL and Common lisp libraries.
2020-05-09 13:53:09 +02:00
.PP
2023-07-30 15:08:21 +02:00
In particular i want to thanks the authors of the libraries Croatoan and Tooter for their help when I started to develop this program.
2020-05-09 13:53:09 +02:00
.PP
2024-09-01 10:48:44 +02:00
There are more people i borrowed code and data from, they are mentioned in the file LICENSES.org
2020-05-09 21:58:12 +02:00
.PP
2023-07-30 15:08:21 +02:00
This program was born also with the help of CCCP: "Collettivo Computer Club Palermo".
2020-05-16 14:57:48 +02:00
.PP
Also thanks to "barbar" for testing of the installation scripts.