1
0
Fork 0

Compare commits

...

2 Commits

Author SHA1 Message Date
cage 34d639e094 - updated italian translation. 2024-08-24 21:20:37 +02:00
cage 4ca4f2312e - [gemini] added a notice when connecting with an host that provided an expired certificate;
- added more information on license file.
2024-08-24 21:14:03 +02:00
20 changed files with 1061 additions and 800 deletions

View File

@ -1,3 +1,5 @@
* code
- src/os-utils.lisp
uses code from osicat
@ -608,6 +610,32 @@
use or other dealings in these Data Files or Software without prior
written authorization of the copyright holder.
- src/db-utils.lisp
src/db-utils.lisp
src/text-utils.lisp
src/misc-utils.lisp
src/db.lisp
uses code from:
niccolo': a chemicals inventory
Copyright (C) 2016 Universita' degli Studi di Palermo
This program is free software: you can redistribute it and/or
modify it under the terms of the GNU General Public License as
published by the Free Software Foundation, version 3 of the
License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
* data
- data/icons/fmw_*.png
FatCow Web Hosting
[CC BY 3.0 us (https://creativecommons.org/licenses/by/3.0/us/deed.en)],

212
po/ca.po
View File

@ -5,7 +5,7 @@ msgid ""
msgstr ""
"Project-Id-Version: tinmop 0.9.9.1414213562-rc1\n"
"Report-Msgid-Bugs-To: https://codeberg.org/cage/tinmop/\n"
"POT-Creation-Date: 2024-08-04 11:54+0200\n"
"POT-Creation-Date: 2024-08-24 21:18+0200\n"
"PO-Revision-Date: 2024-05-25 13:29+0200\n"
"Last-Translator: Eloitor <Eloitor@users.noreply.translate.codeberg.org>\n"
"Language-Team: Catalan <https://translate.codeberg.org/projects/tinmop/"
@ -58,7 +58,7 @@ msgid "Open address"
msgstr "Obre l'adreça"
#: src/api-client.lisp:219 src/gui/client/certificates-window.lisp:234
#: src/gui/client/titan-window.lisp:212 src/ui-goodies.lisp:214
#: src/gui/client/titan-window.lisp:218 src/ui-goodies.lisp:214
#: src/ui-goodies.lisp:219 src/windows.lisp:635 src/windows.lisp:692
msgid "Cancel"
msgstr "Cancel·la"
@ -85,17 +85,17 @@ msgid ""
"Error: was not able to create server socket to listen for authorization code"
msgstr ""
#: src/api-client.lisp:881
#: src/api-client.lisp:880
#, lisp-format
msgid "type: ~a from ~a"
msgstr ""
#: src/api-client.lisp:888
#: src/api-client.lisp:887
#, lisp-format
msgid " post: ~a"
msgstr ""
#: src/api-client.lisp:1011
#: src/api-client.lisp:1010
#, lisp-format
msgid "Initializing empty credentials file in ~a"
msgstr ""
@ -334,46 +334,51 @@ msgstr ""
msgid "Gemini document downloading completed"
msgstr ""
#: src/gemini-viewer.lisp:714
#: src/gemini-viewer.lisp:717
#, lisp-format
msgid "Server ~s asks: ~s "
msgstr ""
#: src/gemini-viewer.lisp:735
#: src/gemini-viewer.lisp:739
#, lisp-format
msgid "Redirects to ~s, follows redirect? [y/N] "
msgstr ""
#: src/gemini-viewer.lisp:785 src/ui-goodies.lisp:3138
#: src/gemini-viewer.lisp:792 src/ui-goodies.lisp:3138
#, lisp-format
msgid "a password to unlock certificate for ~a is needed: "
msgstr ""
#: src/gemini-viewer.lisp:852 src/tui-utils.lisp:534 src/tui-utils.lisp:546
#: src/gemini-viewer.lisp:853 src/gemini/subscription.lisp:95
#, lisp-format
msgid "Warning: ~a"
msgstr ""
#: src/gemini-viewer.lisp:872 src/tui-utils.lisp:534 src/tui-utils.lisp:546
#: src/ui-goodies.lisp:3085
#, lisp-format
msgid "Error: ~a"
msgstr ""
#: src/gemini-viewer.lisp:859 src/gemini-viewer.lisp:863
#: src/gui/server/public-api-gemini-stream.lisp:311
#: src/gui/server/public-api-gemini-stream.lisp:323
#: src/gui/server/public-api-gemini-stream.lisp:327
#: src/gemini-viewer.lisp:879 src/gemini-viewer.lisp:883
#: src/gui/server/public-api-gemini-stream.lisp:325
#: src/gui/server/public-api-gemini-stream.lisp:337
#: src/gui/server/public-api-gemini-stream.lisp:341
#, lisp-format
msgid "Error getting ~s: ~a"
msgstr ""
#: src/gemini-viewer.lisp:871
#: src/gemini-viewer.lisp:891
#, lisp-format
msgid "Going back to: ~a"
msgstr ""
#: src/gemini-viewer.lisp:883
#: src/gemini-viewer.lisp:903
#, lisp-format
msgid "Viewing source of: ~a"
msgstr ""
#: src/gemini-viewer.lisp:939
#: src/gemini-viewer.lisp:959
msgid "Current gemini streams"
msgstr ""
@ -384,10 +389,15 @@ msgstr ""
#: src/gemini/client.lisp:249
#, lisp-format
msgid "The certificate of host ~a has changed from your latest visit"
msgid "The certificate provided by host ~a has changed from your latest visit"
msgstr ""
#: src/gemini/titan.lisp:189
#: src/gemini/client.lisp:259
#, lisp-format
msgid "The certificate provided by host ~a has expired"
msgstr ""
#: src/gemini/titan.lisp:200
#, lisp-format
msgid "Connection prematurely closed from the server: ~a"
msgstr ""
@ -435,7 +445,7 @@ msgstr ""
msgid "~s is not a valid gemini address"
msgstr ""
#: src/gui/client/bookmark-window.lisp:28 src/gui/client/main-window.lisp:251
#: src/gui/client/bookmark-window.lisp:28 src/gui/client/main-window.lisp:260
msgid "Streams"
msgstr ""
@ -465,7 +475,7 @@ msgid_plural "~a elements deleted"
msgstr[0] ""
msgstr[1] ""
#: src/gui/client/bookmark-window.lisp:112 src/gui/client/main-window.lisp:239
#: src/gui/client/bookmark-window.lisp:112 src/gui/client/main-window.lisp:248
msgid "Bookmarks"
msgstr ""
@ -528,7 +538,7 @@ msgid "Gemini address"
msgstr ""
#: src/gui/client/certificates-window.lisp:229
#: src/gui/client/gui-goodies.lisp:100 src/gui/client/main-window.lisp:1480
#: src/gui/client/gui-goodies.lisp:100 src/gui/client/main-window.lisp:1516
#: src/windows.lisp:642 src/windows.lisp:698
msgid "OK"
msgstr ""
@ -538,7 +548,7 @@ msgid "Import certificates"
msgstr ""
#: src/gui/client/certificates-window.lisp:261
#: src/gui/client/main-window.lisp:243
#: src/gui/client/main-window.lisp:252
msgid "Certificates"
msgstr ""
@ -598,7 +608,7 @@ msgstr ""
msgid "Copy selected gemlog links to the clipboard"
msgstr ""
#: src/gui/client/gemlog-window.lisp:181 src/gui/client/main-window.lisp:240
#: src/gui/client/gemlog-window.lisp:181 src/gui/client/main-window.lisp:249
msgid "Gemlogs"
msgstr ""
@ -629,12 +639,12 @@ msgstr ""
msgid "information"
msgstr ""
#: src/gui/client/gui-goodies.lisp:52 src/line-oriented-window.lisp:505
#: src/gui/client/gui-goodies.lisp:52 src/line-oriented-window.lisp:506
#: src/ui-goodies.lisp:153 src/ui-goodies.lisp:170
msgid "Information"
msgstr ""
#: src/gui/client/gui-goodies.lisp:55 src/gui/client/main-window.lisp:1009
#: src/gui/client/gui-goodies.lisp:55 src/gui/client/main-window.lisp:1022
#: src/ui-goodies.lisp:160 src/ui-goodies.lisp:182
msgid "Error"
msgstr ""
@ -649,256 +659,256 @@ msgstr ""
msgid "Unable to create server process"
msgstr ""
#: src/gui/client/main-window.lisp:147
#: src/gui/client/main-window.lisp:153
msgid "Stream finished"
msgstr ""
#: src/gui/client/main-window.lisp:221
#: src/gui/client/main-window.lisp:228
msgid "Stream started"
msgstr ""
#: src/gui/client/main-window.lisp:236
#: src/gui/client/main-window.lisp:245
msgid "File"
msgstr ""
#: src/gui/client/main-window.lisp:237
#: src/gui/client/main-window.lisp:246
msgid "Tools"
msgstr ""
#: src/gui/client/main-window.lisp:238 src/gui/client/tour-window.lisp:69
#: src/gui/client/main-window.lisp:247 src/gui/client/tour-window.lisp:69
msgid "Tour"
msgstr ""
#: src/gui/client/main-window.lisp:241
#: src/gui/client/main-window.lisp:250
msgid "Help"
msgstr ""
#: src/gui/client/main-window.lisp:247
#: src/gui/client/main-window.lisp:256
msgid "Search"
msgstr ""
#: src/gui/client/main-window.lisp:255
#: src/gui/client/main-window.lisp:264
msgid "View source"
msgstr ""
#: src/gui/client/main-window.lisp:259
#: src/gui/client/main-window.lisp:268
msgid "Quit"
msgstr ""
#: src/gui/client/main-window.lisp:263 src/gui/client/menu-command.lisp:5
#: src/gui/client/main-window.lisp:272 src/gui/client/menu-command.lisp:5
msgid "About"
msgstr ""
#: src/gui/client/main-window.lisp:267 src/gui/client/main-window.lisp:288
#: src/gui/client/main-window.lisp:276 src/gui/client/main-window.lisp:297
msgid "Show"
msgstr ""
#: src/gui/client/main-window.lisp:271
#: src/gui/client/main-window.lisp:280
msgid "Export"
msgstr ""
#: src/gui/client/main-window.lisp:275
#: src/gui/client/main-window.lisp:284
msgid "Import"
msgstr ""
#: src/gui/client/main-window.lisp:278 src/gui/client/main-window.lisp:280
#: src/gui/client/main-window.lisp:287 src/gui/client/main-window.lisp:289
msgid "Manage"
msgstr ""
#: src/gui/client/main-window.lisp:284
#: src/gui/client/main-window.lisp:293
msgid "Shuffle"
msgstr ""
#: src/gui/client/main-window.lisp:408
#: src/gui/client/main-window.lisp:417
#, lisp-format
msgid "file ~a not found"
msgstr ""
#: src/gui/client/main-window.lisp:436 src/gui/client/main-window.lisp:1261
#: src/gui/client/titan-window.lisp:106
#: src/gui/client/main-window.lisp:449 src/gui/client/main-window.lisp:1289
#: src/gui/client/titan-window.lisp:112
msgid "Server certificate error"
msgstr ""
#: src/gui/client/main-window.lisp:447 src/gui/client/main-window.lisp:1285
#: src/gui/client/titan-window.lisp:123
#: src/gui/client/main-window.lisp:460 src/gui/client/main-window.lisp:1315
#: src/gui/client/titan-window.lisp:129
#, lisp-format
msgid "Provide the password to unlock certificate for ~a"
msgstr ""
#: src/gui/client/main-window.lisp:450 src/gui/client/main-window.lisp:1288
#: src/gui/client/titan-window.lisp:126
#: src/gui/client/main-window.lisp:463 src/gui/client/main-window.lisp:1318
#: src/gui/client/titan-window.lisp:132
msgid "Unlock certificate"
msgstr ""
#: src/gui/client/main-window.lisp:463 src/gui/client/main-window.lisp:1300
#: src/gui/client/main-window.lisp:476 src/gui/client/main-window.lisp:1332
#, lisp-format
msgid "Follow redirection to ~a?"
msgstr ""
#: src/gui/client/main-window.lisp:464 src/gui/client/main-window.lisp:1301
#: src/gui/client/main-window.lisp:477 src/gui/client/main-window.lisp:1333
msgid "Redirection"
msgstr ""
#: src/gui/client/main-window.lisp:584
#: src/gui/client/main-window.lisp:597
#, lisp-format
msgid "~a added to tour"
msgstr ""
#: src/gui/client/main-window.lisp:611
#: src/gui/client/main-window.lisp:624
msgid "gemtext window menu"
msgstr ""
#: src/gui/client/main-window.lisp:614
#: src/gui/client/main-window.lisp:627
msgid "Add all links to tour"
msgstr ""
#: src/gui/client/main-window.lisp:625
#: src/gui/client/main-window.lisp:638
#, lisp-format
msgid "~s has been copied to the clipboard"
msgstr ""
#: src/gui/client/main-window.lisp:634
#: src/gui/client/main-window.lisp:647
#, lisp-format
msgid "~s already bookmarked"
msgstr ""
#: src/gui/client/main-window.lisp:650
#: src/gui/client/main-window.lisp:663
#, lisp-format
msgid "Files ~s"
msgstr ""
#: src/gui/client/main-window.lisp:660
#: src/gui/client/main-window.lisp:673
msgid "Choose a file for saving"
msgstr ""
#: src/gui/client/main-window.lisp:666
#: src/gui/client/main-window.lisp:679
msgid "link menu"
msgstr ""
#: src/gui/client/main-window.lisp:674
#: src/gui/client/main-window.lisp:687
msgid "Inline"
msgstr ""
#: src/gui/client/main-window.lisp:676
#: src/gui/client/main-window.lisp:689
msgid "Add link to tour"
msgstr ""
#: src/gui/client/main-window.lisp:677
#: src/gui/client/main-window.lisp:690
msgid "Copy link to the clipboard"
msgstr ""
#: src/gui/client/main-window.lisp:678
#: src/gui/client/main-window.lisp:691
msgid "Add link to bookmarks"
msgstr ""
#: src/gui/client/main-window.lisp:681
#: src/gui/client/main-window.lisp:694
msgid "Save link as…"
msgstr ""
#: src/gui/client/main-window.lisp:683
#: src/gui/client/main-window.lisp:696
msgid "Open link in background"
msgstr ""
#: src/gui/client/main-window.lisp:1007
#: src/gui/client/main-window.lisp:1020
#, lisp-format
msgid "No such file or directory: ~s, search genspace instead?"
msgstr ""
#: src/gui/client/main-window.lisp:1131
#: src/gui/client/main-window.lisp:1146
msgid "Invalid address, perform a search using your input?"
msgstr ""
#: src/gui/client/main-window.lisp:1132
#: src/gui/client/main-window.lisp:1147
#, fuzzy
msgid "Invalid address"
msgstr "Desa l'adreça"
#: src/gui/client/main-window.lisp:1141
#: src/gui/client/main-window.lisp:1156
#, lisp-format
msgid "The server asks:~2%~a"
msgstr ""
#: src/gui/client/main-window.lisp:1143
#: src/gui/client/main-window.lisp:1158
msgid "Submit"
msgstr ""
#: src/gui/client/main-window.lisp:1144
#: src/gui/client/main-window.lisp:1159
msgid "Input query"
msgstr ""
#: src/gui/client/main-window.lisp:1260 src/gui/client/titan-window.lisp:105
#: src/gui/client/main-window.lisp:1288 src/gui/client/titan-window.lisp:111
msgid ""
"The certificate for this address has changed, replace the old with the one I "
"just received?"
msgstr ""
#: src/gui/client/main-window.lisp:1457 src/program-events.lisp:1590
#: src/gui/client/main-window.lisp:1493 src/program-events.lisp:1590
#, lisp-format
msgid "Unable to subscribe to ~s"
msgstr ""
#: src/gui/client/main-window.lisp:1468
#: src/gui/client/main-window.lisp:1504
msgid "Tour is terminated"
msgstr ""
#: src/gui/client/main-window.lisp:1474
#: src/gui/client/main-window.lisp:1510
msgid "Change password"
msgstr ""
#: src/gui/client/main-window.lisp:1475
#: src/gui/client/main-window.lisp:1511
msgid "Change the password of the certificate"
msgstr ""
#: src/gui/client/main-window.lisp:1476
#: src/gui/client/main-window.lisp:1512
msgid "Old password"
msgstr ""
#: src/gui/client/main-window.lisp:1477
#: src/gui/client/main-window.lisp:1513
msgid "New password"
msgstr ""
#: src/gui/client/main-window.lisp:1478
#: src/gui/client/main-window.lisp:1514
msgid "Repeat new password"
msgstr ""
#: src/gui/client/main-window.lisp:1479 src/ui-goodies.lisp:1877
#: src/gui/client/main-window.lisp:1515 src/ui-goodies.lisp:1877
msgid "password and confirmation does not match"
msgstr ""
#: src/gui/client/main-window.lisp:1489 src/ui-goodies.lisp:1876
#: src/gui/client/main-window.lisp:1525 src/ui-goodies.lisp:1876
#, lisp-format
msgid "Password changed for key ~a"
msgstr ""
#: src/gui/client/main-window.lisp:1572
#: src/gui/client/main-window.lisp:1608
msgid "go back"
msgstr ""
#: src/gui/client/main-window.lisp:1573
#: src/gui/client/main-window.lisp:1609
msgid "reload address"
msgstr ""
#: src/gui/client/main-window.lisp:1574
#: src/gui/client/main-window.lisp:1610
msgid "go to address"
msgstr ""
#: src/gui/client/main-window.lisp:1575
#: src/gui/client/main-window.lisp:1611
msgid "one level up"
msgstr ""
#: src/gui/client/main-window.lisp:1576
#: src/gui/client/main-window.lisp:1612
msgid "add or remove bookmark"
msgstr ""
#: src/gui/client/main-window.lisp:1577
#: src/gui/client/main-window.lisp:1613
msgid "go to the next link in tour"
msgstr ""
#: src/gui/client/main-window.lisp:1578
#: src/gui/client/main-window.lisp:1614
msgid "subscribe/unsubscribe to this gemlog"
msgstr ""
#: src/gui/client/main-window.lisp:1579
#: src/gui/client/main-window.lisp:1615
msgid "inline images"
msgstr ""
@ -987,31 +997,31 @@ msgid ""
"Neither a file to upload has been specified nor text data has been typed"
msgstr ""
#: src/gui/client/titan-window.lisp:140
#: src/gui/client/titan-window.lisp:146
msgid "Data uploaded"
msgstr ""
#: src/gui/client/titan-window.lisp:166
#: src/gui/client/titan-window.lisp:172
msgid "Titan address"
msgstr ""
#: src/gui/client/titan-window.lisp:169
#: src/gui/client/titan-window.lisp:175
msgid "Access token"
msgstr ""
#: src/gui/client/titan-window.lisp:172
#: src/gui/client/titan-window.lisp:178
msgid "Data to send"
msgstr ""
#: src/gui/client/titan-window.lisp:188
#: src/gui/client/titan-window.lisp:194
msgid "Upload file"
msgstr ""
#: src/gui/client/titan-window.lisp:196
#: src/gui/client/titan-window.lisp:202
msgid "Insert text"
msgstr ""
#: src/gui/client/titan-window.lisp:235
#: src/gui/client/titan-window.lisp:241
msgid "Titan request window"
msgstr ""
@ -1038,22 +1048,22 @@ msgstr ""
msgid "Error: ~a~%"
msgstr ""
#: src/gui/server/public-api-gemini-gemlog.lisp:65
#: src/gui/server/public-api-gemini-gemlog.lisp:66
#, lisp-format
msgid "Error getting posts from ~s: ~a"
msgstr ""
#: src/gui/server/public-api-gemini-gemlog.lisp:80
#: src/gui/server/public-api-gemini-gemlog.lisp:81
#, lisp-format
msgid "unable to connect to \"~a\": host not found"
msgstr ""
#: src/gui/server/public-api-gemini-stream.lisp:242
#: src/gui/server/public-api-gemini-stream.lisp:247
#, lisp-format
msgid "a password to unlock certificate for ~a is needed"
msgstr ""
#: src/gui/server/public-api-gemini-stream.lisp:393
#: src/gui/server/public-api-gemini-stream.lisp:408
#, lisp-format
msgid "no such stream ~s"
msgstr ""
@ -1187,7 +1197,11 @@ msgstr ""
msgid "Quick help"
msgstr ""
#: src/keybindings.lisp:711
#: src/keybindings.lisp:710
msgid "No help available"
msgstr ""
#: src/keybindings.lisp:714
#, lisp-format
msgid "invalid regular expression ~s ~a"
msgstr ""

214
po/de.po
View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: tinmop 0.9.9.1414\n"
"Report-Msgid-Bugs-To: https://codeberg.org/cage/tinmop/\n"
"POT-Creation-Date: 2024-08-04 11:54+0200\n"
"POT-Creation-Date: 2024-08-24 21:18+0200\n"
"PO-Revision-Date: 2024-05-29 19:39+0200\n"
"Last-Translator: Dirk <Dirk@users.noreply.translate.codeberg.org>\n"
"Language-Team: German <https://translate.codeberg.org/projects/tinmop/tinmop/"
@ -59,7 +59,7 @@ msgid "Open address"
msgstr "Adresse öffnen"
#: src/api-client.lisp:219 src/gui/client/certificates-window.lisp:234
#: src/gui/client/titan-window.lisp:212 src/ui-goodies.lisp:214
#: src/gui/client/titan-window.lisp:218 src/ui-goodies.lisp:214
#: src/ui-goodies.lisp:219 src/windows.lisp:635 src/windows.lisp:692
msgid "Cancel"
msgstr "Abbrechen"
@ -89,17 +89,17 @@ msgstr ""
"Fehler: Das Erstellen eines Server-Socket zum Abhören des Authentifizierungs-"
"Codes war nicht möglich"
#: src/api-client.lisp:881
#: src/api-client.lisp:880
#, lisp-format
msgid "type: ~a from ~a"
msgstr "Typ: ~a von ~a"
#: src/api-client.lisp:888
#: src/api-client.lisp:887
#, lisp-format
msgid " post: ~a"
msgstr " Post: ~a"
#: src/api-client.lisp:1011
#: src/api-client.lisp:1010
#, lisp-format
msgid "Initializing empty credentials file in ~a"
msgstr "Initialisieren von leeren Zugangsdaten in ~a"
@ -342,46 +342,51 @@ msgstr "Herunterladen des Gemini-Dokuments abgebrochen"
msgid "Gemini document downloading completed"
msgstr "Gemini-Dokument wurde vollständig heruntergeladen"
#: src/gemini-viewer.lisp:714
#: src/gemini-viewer.lisp:717
#, lisp-format
msgid "Server ~s asks: ~s "
msgstr "Server ~s fragt: ~s "
#: src/gemini-viewer.lisp:735
#: src/gemini-viewer.lisp:739
#, lisp-format
msgid "Redirects to ~s, follows redirect? [y/N] "
msgstr "Weiterleitung zu ~s, folgt Weiterleitung? [y/N] "
#: src/gemini-viewer.lisp:785 src/ui-goodies.lisp:3138
#: src/gemini-viewer.lisp:792 src/ui-goodies.lisp:3138
#, lisp-format
msgid "a password to unlock certificate for ~a is needed: "
msgstr "ein Passwort zum entsperren des Zertifikats für ~a wird benötigt: "
#: src/gemini-viewer.lisp:852 src/tui-utils.lisp:534 src/tui-utils.lisp:546
#: src/gemini-viewer.lisp:853 src/gemini/subscription.lisp:95
#, lisp-format
msgid "Warning: ~a"
msgstr ""
#: src/gemini-viewer.lisp:872 src/tui-utils.lisp:534 src/tui-utils.lisp:546
#: src/ui-goodies.lisp:3085
#, lisp-format
msgid "Error: ~a"
msgstr "Fehler: ~a"
#: src/gemini-viewer.lisp:859 src/gemini-viewer.lisp:863
#: src/gui/server/public-api-gemini-stream.lisp:311
#: src/gui/server/public-api-gemini-stream.lisp:323
#: src/gui/server/public-api-gemini-stream.lisp:327
#: src/gemini-viewer.lisp:879 src/gemini-viewer.lisp:883
#: src/gui/server/public-api-gemini-stream.lisp:325
#: src/gui/server/public-api-gemini-stream.lisp:337
#: src/gui/server/public-api-gemini-stream.lisp:341
#, lisp-format
msgid "Error getting ~s: ~a"
msgstr "Fehler beim Erhalten ~s: ~a"
#: src/gemini-viewer.lisp:871
#: src/gemini-viewer.lisp:891
#, lisp-format
msgid "Going back to: ~a"
msgstr "Gehe zurück zu: ~a"
#: src/gemini-viewer.lisp:883
#: src/gemini-viewer.lisp:903
#, lisp-format
msgid "Viewing source of: ~a"
msgstr "Zeige Quelle von: ~a"
#: src/gemini-viewer.lisp:939
#: src/gemini-viewer.lisp:959
msgid "Current gemini streams"
msgstr "Derzeitige Gemini-Streams"
@ -391,11 +396,16 @@ msgid "The server responded with the error ~a (~a): ~a"
msgstr "Der Server antwortete mit dem Fehler ~a (~a): ~a"
#: src/gemini/client.lisp:249
#, lisp-format
msgid "The certificate of host ~a has changed from your latest visit"
#, fuzzy, lisp-format
msgid "The certificate provided by host ~a has changed from your latest visit"
msgstr "Das Zertifikat vom Host ~a hat sich seit dem letzten Besuch verändert"
#: src/gemini/titan.lisp:189
#: src/gemini/client.lisp:259
#, fuzzy, lisp-format
msgid "The certificate provided by host ~a has expired"
msgstr "Das Zertifikat vom Host ~a hat sich seit dem letzten Besuch verändert"
#: src/gemini/titan.lisp:200
#, lisp-format
msgid "Connection prematurely closed from the server: ~a"
msgstr "Verbindung zum Server vorzeitig geschlossen: ~a"
@ -443,7 +453,7 @@ msgstr "Lesezeichen für Adresse ~a gesetzt"
msgid "~s is not a valid gemini address"
msgstr "~s ist keine gültige Gemini-Adresse"
#: src/gui/client/bookmark-window.lisp:28 src/gui/client/main-window.lisp:251
#: src/gui/client/bookmark-window.lisp:28 src/gui/client/main-window.lisp:260
msgid "Streams"
msgstr "Streams"
@ -473,7 +483,7 @@ msgid_plural "~a elements deleted"
msgstr[0] "~a Element gelöscht"
msgstr[1] "~a Elemente gelöscht"
#: src/gui/client/bookmark-window.lisp:112 src/gui/client/main-window.lisp:239
#: src/gui/client/bookmark-window.lisp:112 src/gui/client/main-window.lisp:248
msgid "Bookmarks"
msgstr "Lesezeichen"
@ -536,7 +546,7 @@ msgid "Gemini address"
msgstr "Gemini-Adresse"
#: src/gui/client/certificates-window.lisp:229
#: src/gui/client/gui-goodies.lisp:100 src/gui/client/main-window.lisp:1480
#: src/gui/client/gui-goodies.lisp:100 src/gui/client/main-window.lisp:1516
#: src/windows.lisp:642 src/windows.lisp:698
msgid "OK"
msgstr "OK"
@ -546,7 +556,7 @@ msgid "Import certificates"
msgstr "Zertifikate importieren"
#: src/gui/client/certificates-window.lisp:261
#: src/gui/client/main-window.lisp:243
#: src/gui/client/main-window.lisp:252
msgid "Certificates"
msgstr "Zertifikate"
@ -606,7 +616,7 @@ msgstr "Alle Posts der gewählten Gemlogs als gelesen markieren"
msgid "Copy selected gemlog links to the clipboard"
msgstr "Ausgewählte Gemlog-Links in die Zwischenablage kopieren"
#: src/gui/client/gemlog-window.lisp:181 src/gui/client/main-window.lisp:240
#: src/gui/client/gemlog-window.lisp:181 src/gui/client/main-window.lisp:249
msgid "Gemlogs"
msgstr "Gemlogs"
@ -637,12 +647,12 @@ msgstr "Operation abgeschlossen"
msgid "information"
msgstr "Information"
#: src/gui/client/gui-goodies.lisp:52 src/line-oriented-window.lisp:505
#: src/gui/client/gui-goodies.lisp:52 src/line-oriented-window.lisp:506
#: src/ui-goodies.lisp:153 src/ui-goodies.lisp:170
msgid "Information"
msgstr "Information"
#: src/gui/client/gui-goodies.lisp:55 src/gui/client/main-window.lisp:1009
#: src/gui/client/gui-goodies.lisp:55 src/gui/client/main-window.lisp:1022
#: src/ui-goodies.lisp:160 src/ui-goodies.lisp:182
msgid "Error"
msgstr "Fehler"
@ -657,186 +667,186 @@ msgstr "~a: ~a"
msgid "Unable to create server process"
msgstr "Kann Serverprozess nicht erstellen"
#: src/gui/client/main-window.lisp:147
#: src/gui/client/main-window.lisp:153
msgid "Stream finished"
msgstr "Stream abgeschlossen"
#: src/gui/client/main-window.lisp:221
#: src/gui/client/main-window.lisp:228
msgid "Stream started"
msgstr "Stream gestartet"
#: src/gui/client/main-window.lisp:236
#: src/gui/client/main-window.lisp:245
msgid "File"
msgstr "Datei"
#: src/gui/client/main-window.lisp:237
#: src/gui/client/main-window.lisp:246
msgid "Tools"
msgstr "Werkzeuge"
#: src/gui/client/main-window.lisp:238 src/gui/client/tour-window.lisp:69
#: src/gui/client/main-window.lisp:247 src/gui/client/tour-window.lisp:69
msgid "Tour"
msgstr "Tour"
#: src/gui/client/main-window.lisp:241
#: src/gui/client/main-window.lisp:250
msgid "Help"
msgstr "Hilfe"
#: src/gui/client/main-window.lisp:247
#: src/gui/client/main-window.lisp:256
msgid "Search"
msgstr "Suche"
#: src/gui/client/main-window.lisp:255
#: src/gui/client/main-window.lisp:264
msgid "View source"
msgstr "Quelle anzeigen"
#: src/gui/client/main-window.lisp:259
#: src/gui/client/main-window.lisp:268
msgid "Quit"
msgstr "Verlassen"
#: src/gui/client/main-window.lisp:263 src/gui/client/menu-command.lisp:5
#: src/gui/client/main-window.lisp:272 src/gui/client/menu-command.lisp:5
msgid "About"
msgstr "Über"
#: src/gui/client/main-window.lisp:267 src/gui/client/main-window.lisp:288
#: src/gui/client/main-window.lisp:276 src/gui/client/main-window.lisp:297
msgid "Show"
msgstr "Anzeigen"
#: src/gui/client/main-window.lisp:271
#: src/gui/client/main-window.lisp:280
msgid "Export"
msgstr "Exportieren"
#: src/gui/client/main-window.lisp:275
#: src/gui/client/main-window.lisp:284
msgid "Import"
msgstr "Importieren"
#: src/gui/client/main-window.lisp:278 src/gui/client/main-window.lisp:280
#: src/gui/client/main-window.lisp:287 src/gui/client/main-window.lisp:289
msgid "Manage"
msgstr "Verwalten"
#: src/gui/client/main-window.lisp:284
#: src/gui/client/main-window.lisp:293
msgid "Shuffle"
msgstr "Durchmischen"
#: src/gui/client/main-window.lisp:408
#: src/gui/client/main-window.lisp:417
#, lisp-format
msgid "file ~a not found"
msgstr "Datei ~a nicht gefunden"
#: src/gui/client/main-window.lisp:436 src/gui/client/main-window.lisp:1261
#: src/gui/client/titan-window.lisp:106
#: src/gui/client/main-window.lisp:449 src/gui/client/main-window.lisp:1289
#: src/gui/client/titan-window.lisp:112
msgid "Server certificate error"
msgstr "Serverzertifikatsfehler"
#: src/gui/client/main-window.lisp:447 src/gui/client/main-window.lisp:1285
#: src/gui/client/titan-window.lisp:123
#: src/gui/client/main-window.lisp:460 src/gui/client/main-window.lisp:1315
#: src/gui/client/titan-window.lisp:129
#, lisp-format
msgid "Provide the password to unlock certificate for ~a"
msgstr "Passwort zum Entsperren des Zertifikats für ~a angeben"
#: src/gui/client/main-window.lisp:450 src/gui/client/main-window.lisp:1288
#: src/gui/client/titan-window.lisp:126
#: src/gui/client/main-window.lisp:463 src/gui/client/main-window.lisp:1318
#: src/gui/client/titan-window.lisp:132
msgid "Unlock certificate"
msgstr "Zertifikat entsperren"
#: src/gui/client/main-window.lisp:463 src/gui/client/main-window.lisp:1300
#: src/gui/client/main-window.lisp:476 src/gui/client/main-window.lisp:1332
#, lisp-format
msgid "Follow redirection to ~a?"
msgstr "Weiterleitung nach ~a folgen?"
#: src/gui/client/main-window.lisp:464 src/gui/client/main-window.lisp:1301
#: src/gui/client/main-window.lisp:477 src/gui/client/main-window.lisp:1333
msgid "Redirection"
msgstr "Umleitung"
#: src/gui/client/main-window.lisp:584
#: src/gui/client/main-window.lisp:597
#, lisp-format
msgid "~a added to tour"
msgstr "~a zur Tour hinzugefügt"
#: src/gui/client/main-window.lisp:611
#: src/gui/client/main-window.lisp:624
#, fuzzy
msgid "gemtext window menu"
msgstr "Gemlog-Menü"
#: src/gui/client/main-window.lisp:614
#: src/gui/client/main-window.lisp:627
#, fuzzy
msgid "Add all links to tour"
msgstr "Link zur Tour hinzufügen"
#: src/gui/client/main-window.lisp:625
#: src/gui/client/main-window.lisp:638
#, lisp-format
msgid "~s has been copied to the clipboard"
msgstr "~s wurde in die Zwischenablage kopiert"
#: src/gui/client/main-window.lisp:634
#: src/gui/client/main-window.lisp:647
#, lisp-format
msgid "~s already bookmarked"
msgstr "~s ist bereits ein Lesezeichen"
#: src/gui/client/main-window.lisp:650
#: src/gui/client/main-window.lisp:663
#, lisp-format
msgid "Files ~s"
msgstr "Dateien ~s"
#: src/gui/client/main-window.lisp:660
#: src/gui/client/main-window.lisp:673
msgid "Choose a file for saving"
msgstr "Datei zum speichern auswählen"
#: src/gui/client/main-window.lisp:666
#: src/gui/client/main-window.lisp:679
msgid "link menu"
msgstr "Link-Menü"
#: src/gui/client/main-window.lisp:674
#: src/gui/client/main-window.lisp:687
msgid "Inline"
msgstr "Eingebettet"
#: src/gui/client/main-window.lisp:676
#: src/gui/client/main-window.lisp:689
msgid "Add link to tour"
msgstr "Link zur Tour hinzufügen"
#: src/gui/client/main-window.lisp:677
#: src/gui/client/main-window.lisp:690
msgid "Copy link to the clipboard"
msgstr "Link in die Zwischenablage kopieren"
#: src/gui/client/main-window.lisp:678
#: src/gui/client/main-window.lisp:691
msgid "Add link to bookmarks"
msgstr "Link zu den Lesezeichen hinzufügen"
#: src/gui/client/main-window.lisp:681
#: src/gui/client/main-window.lisp:694
msgid "Save link as…"
msgstr "Link speichern als …"
#: src/gui/client/main-window.lisp:683
#: src/gui/client/main-window.lisp:696
msgid "Open link in background"
msgstr "Link im Hintergrund öffnen"
#: src/gui/client/main-window.lisp:1007
#: src/gui/client/main-window.lisp:1020
#, fuzzy, lisp-format
msgid "No such file or directory: ~s, search genspace instead?"
msgstr "Datei oder Verzeichnis nicht gefunden: ~a"
#: src/gui/client/main-window.lisp:1131
#: src/gui/client/main-window.lisp:1146
msgid "Invalid address, perform a search using your input?"
msgstr ""
#: src/gui/client/main-window.lisp:1132
#: src/gui/client/main-window.lisp:1147
#, fuzzy
msgid "Invalid address"
msgstr "Ungültiger Wert: ~a"
#: src/gui/client/main-window.lisp:1141
#: src/gui/client/main-window.lisp:1156
#, lisp-format
msgid "The server asks:~2%~a"
msgstr "Der Server fragt:~2%~a"
#: src/gui/client/main-window.lisp:1143
#: src/gui/client/main-window.lisp:1158
msgid "Submit"
msgstr "Absenden"
#: src/gui/client/main-window.lisp:1144
#: src/gui/client/main-window.lisp:1159
msgid "Input query"
msgstr "Eingabefrage"
#: src/gui/client/main-window.lisp:1260 src/gui/client/titan-window.lisp:105
#: src/gui/client/main-window.lisp:1288 src/gui/client/titan-window.lisp:111
msgid ""
"The certificate for this address has changed, replace the old with the one I "
"just received?"
@ -844,73 +854,73 @@ msgstr ""
"Das Zertifikat für diese Adresse hat sich geändert, altes Zertifikat durch "
"das soeben neu empfangene ersetzen?"
#: src/gui/client/main-window.lisp:1457 src/program-events.lisp:1590
#: src/gui/client/main-window.lisp:1493 src/program-events.lisp:1590
#, lisp-format
msgid "Unable to subscribe to ~s"
msgstr "Kann ~s nicht abonnieren"
#: src/gui/client/main-window.lisp:1468
#: src/gui/client/main-window.lisp:1504
msgid "Tour is terminated"
msgstr "Tour wurde beendet"
#: src/gui/client/main-window.lisp:1474
#: src/gui/client/main-window.lisp:1510
msgid "Change password"
msgstr "Passwort ändern"
#: src/gui/client/main-window.lisp:1475
#: src/gui/client/main-window.lisp:1511
msgid "Change the password of the certificate"
msgstr "Passwort des Zertifikats ändern"
#: src/gui/client/main-window.lisp:1476
#: src/gui/client/main-window.lisp:1512
msgid "Old password"
msgstr "Altes Passwort"
#: src/gui/client/main-window.lisp:1477
#: src/gui/client/main-window.lisp:1513
msgid "New password"
msgstr "Neues Passwort"
#: src/gui/client/main-window.lisp:1478
#: src/gui/client/main-window.lisp:1514
msgid "Repeat new password"
msgstr "Neues Passwort wiederholen"
#: src/gui/client/main-window.lisp:1479 src/ui-goodies.lisp:1877
#: src/gui/client/main-window.lisp:1515 src/ui-goodies.lisp:1877
msgid "password and confirmation does not match"
msgstr "Passwort und Passwortwiederholung stimmen nicht überein"
#: src/gui/client/main-window.lisp:1489 src/ui-goodies.lisp:1876
#: src/gui/client/main-window.lisp:1525 src/ui-goodies.lisp:1876
#, lisp-format
msgid "Password changed for key ~a"
msgstr "Passwort für Schlüssel ~a geändert"
#: src/gui/client/main-window.lisp:1572
#: src/gui/client/main-window.lisp:1608
msgid "go back"
msgstr "zurück"
#: src/gui/client/main-window.lisp:1573
#: src/gui/client/main-window.lisp:1609
msgid "reload address"
msgstr "Adresse neu laden"
#: src/gui/client/main-window.lisp:1574
#: src/gui/client/main-window.lisp:1610
msgid "go to address"
msgstr "zu Adresse gehen"
#: src/gui/client/main-window.lisp:1575
#: src/gui/client/main-window.lisp:1611
msgid "one level up"
msgstr "eine Ebene rauf"
#: src/gui/client/main-window.lisp:1576
#: src/gui/client/main-window.lisp:1612
msgid "add or remove bookmark"
msgstr "Lesezeichen hinzufügen oder entfernen"
#: src/gui/client/main-window.lisp:1577
#: src/gui/client/main-window.lisp:1613
msgid "go to the next link in tour"
msgstr "zum nächsten Link in der Tour gehen"
#: src/gui/client/main-window.lisp:1578
#: src/gui/client/main-window.lisp:1614
msgid "subscribe/unsubscribe to this gemlog"
msgstr "Dieses Gemlog abonnieren/deabonnieren"
#: src/gui/client/main-window.lisp:1579
#: src/gui/client/main-window.lisp:1615
msgid "inline images"
msgstr "eingebettete Bilder"
@ -1002,31 +1012,31 @@ msgid ""
msgstr ""
"Es wurde weder eine Datei zum Hochladen ausgewählt, noch Daten eingegeben"
#: src/gui/client/titan-window.lisp:140
#: src/gui/client/titan-window.lisp:146
msgid "Data uploaded"
msgstr "Daten hochgeladen"
#: src/gui/client/titan-window.lisp:166
#: src/gui/client/titan-window.lisp:172
msgid "Titan address"
msgstr "Titan-Adresse"
#: src/gui/client/titan-window.lisp:169
#: src/gui/client/titan-window.lisp:175
msgid "Access token"
msgstr "Zugriffstoken"
#: src/gui/client/titan-window.lisp:172
#: src/gui/client/titan-window.lisp:178
msgid "Data to send"
msgstr "Daten zum senden"
#: src/gui/client/titan-window.lisp:188
#: src/gui/client/titan-window.lisp:194
msgid "Upload file"
msgstr "Datei hochladen"
#: src/gui/client/titan-window.lisp:196
#: src/gui/client/titan-window.lisp:202
msgid "Insert text"
msgstr "Text einfügen"
#: src/gui/client/titan-window.lisp:235
#: src/gui/client/titan-window.lisp:241
msgid "Titan request window"
msgstr "Titan-Anfragefenster"
@ -1053,22 +1063,22 @@ msgstr "Lesefehler: ~a~%"
msgid "Error: ~a~%"
msgstr "Fehler: ~a~%"
#: src/gui/server/public-api-gemini-gemlog.lisp:65
#: src/gui/server/public-api-gemini-gemlog.lisp:66
#, lisp-format
msgid "Error getting posts from ~s: ~a"
msgstr "Fehler beim laden von Posts von ~s: ~a"
#: src/gui/server/public-api-gemini-gemlog.lisp:80
#: src/gui/server/public-api-gemini-gemlog.lisp:81
#, lisp-format
msgid "unable to connect to \"~a\": host not found"
msgstr "kann nicht nach „~a“ verbinden: Host nicht gefunden"
#: src/gui/server/public-api-gemini-stream.lisp:242
#: src/gui/server/public-api-gemini-stream.lisp:247
#, lisp-format
msgid "a password to unlock certificate for ~a is needed"
msgstr "für das Entsperren des Zertifikats von ~a wird ein Passwort benötigt"
#: src/gui/server/public-api-gemini-stream.lisp:393
#: src/gui/server/public-api-gemini-stream.lisp:408
#, lisp-format
msgid "no such stream ~s"
msgstr "kein solcher Stream ~s"
@ -1202,7 +1212,11 @@ msgstr "Kein Befehl der deinen Kriterien entspricht gefunden"
msgid "Quick help"
msgstr "Schnellhilfe"
#: src/keybindings.lisp:711
#: src/keybindings.lisp:710
msgid "No help available"
msgstr ""
#: src/keybindings.lisp:714
#, lisp-format
msgid "invalid regular expression ~s ~a"
msgstr "ungültiger regulärer Ausdruck ~s ~a"

212
po/es.po
View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: tinmop 0.9.9.1414\n"
"Report-Msgid-Bugs-To: https://codeberg.org/cage/tinmop/\n"
"POT-Creation-Date: 2024-08-04 11:54+0200\n"
"POT-Creation-Date: 2024-08-24 21:18+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: Automatically generated\n"
"Language-Team: none\n"
@ -54,7 +54,7 @@ msgid "Open address"
msgstr "Abrir dirección"
#: src/api-client.lisp:219 src/gui/client/certificates-window.lisp:234
#: src/gui/client/titan-window.lisp:212 src/ui-goodies.lisp:214
#: src/gui/client/titan-window.lisp:218 src/ui-goodies.lisp:214
#: src/ui-goodies.lisp:219 src/windows.lisp:635 src/windows.lisp:692
msgid "Cancel"
msgstr "Cancelar"
@ -84,17 +84,17 @@ msgstr ""
"Error: no se pudo crear un zócalo de servidor en el que escuchar el código "
"de autorización"
#: src/api-client.lisp:881
#: src/api-client.lisp:880
#, lisp-format
msgid "type: ~a from ~a"
msgstr ""
#: src/api-client.lisp:888
#: src/api-client.lisp:887
#, fuzzy, lisp-format
msgid " post: ~a"
msgstr "Estado"
#: src/api-client.lisp:1011
#: src/api-client.lisp:1010
#, lisp-format
msgid "Initializing empty credentials file in ~a"
msgstr ""
@ -333,46 +333,51 @@ msgstr ""
msgid "Gemini document downloading completed"
msgstr ""
#: src/gemini-viewer.lisp:714
#: src/gemini-viewer.lisp:717
#, lisp-format
msgid "Server ~s asks: ~s "
msgstr ""
#: src/gemini-viewer.lisp:735
#: src/gemini-viewer.lisp:739
#, lisp-format
msgid "Redirects to ~s, follows redirect? [y/N] "
msgstr ""
#: src/gemini-viewer.lisp:785 src/ui-goodies.lisp:3138
#: src/gemini-viewer.lisp:792 src/ui-goodies.lisp:3138
#, lisp-format
msgid "a password to unlock certificate for ~a is needed: "
msgstr ""
#: src/gemini-viewer.lisp:852 src/tui-utils.lisp:534 src/tui-utils.lisp:546
#: src/gemini-viewer.lisp:853 src/gemini/subscription.lisp:95
#, lisp-format
msgid "Warning: ~a"
msgstr ""
#: src/gemini-viewer.lisp:872 src/tui-utils.lisp:534 src/tui-utils.lisp:546
#: src/ui-goodies.lisp:3085
#, lisp-format
msgid "Error: ~a"
msgstr ""
#: src/gemini-viewer.lisp:859 src/gemini-viewer.lisp:863
#: src/gui/server/public-api-gemini-stream.lisp:311
#: src/gui/server/public-api-gemini-stream.lisp:323
#: src/gui/server/public-api-gemini-stream.lisp:327
#: src/gemini-viewer.lisp:879 src/gemini-viewer.lisp:883
#: src/gui/server/public-api-gemini-stream.lisp:325
#: src/gui/server/public-api-gemini-stream.lisp:337
#: src/gui/server/public-api-gemini-stream.lisp:341
#, lisp-format
msgid "Error getting ~s: ~a"
msgstr ""
#: src/gemini-viewer.lisp:871
#: src/gemini-viewer.lisp:891
#, lisp-format
msgid "Going back to: ~a"
msgstr ""
#: src/gemini-viewer.lisp:883
#: src/gemini-viewer.lisp:903
#, lisp-format
msgid "Viewing source of: ~a"
msgstr ""
#: src/gemini-viewer.lisp:939
#: src/gemini-viewer.lisp:959
msgid "Current gemini streams"
msgstr ""
@ -383,10 +388,15 @@ msgstr ""
#: src/gemini/client.lisp:249
#, lisp-format
msgid "The certificate of host ~a has changed from your latest visit"
msgid "The certificate provided by host ~a has changed from your latest visit"
msgstr ""
#: src/gemini/titan.lisp:189
#: src/gemini/client.lisp:259
#, lisp-format
msgid "The certificate provided by host ~a has expired"
msgstr ""
#: src/gemini/titan.lisp:200
#, lisp-format
msgid "Connection prematurely closed from the server: ~a"
msgstr ""
@ -434,7 +444,7 @@ msgstr ""
msgid "~s is not a valid gemini address"
msgstr ""
#: src/gui/client/bookmark-window.lisp:28 src/gui/client/main-window.lisp:251
#: src/gui/client/bookmark-window.lisp:28 src/gui/client/main-window.lisp:260
msgid "Streams"
msgstr ""
@ -464,7 +474,7 @@ msgid_plural "~a elements deleted"
msgstr[0] ""
msgstr[1] ""
#: src/gui/client/bookmark-window.lisp:112 src/gui/client/main-window.lisp:239
#: src/gui/client/bookmark-window.lisp:112 src/gui/client/main-window.lisp:248
msgid "Bookmarks"
msgstr "Marcadores"
@ -531,7 +541,7 @@ msgid "Gemini address"
msgstr "Dirección de Gemini"
#: src/gui/client/certificates-window.lisp:229
#: src/gui/client/gui-goodies.lisp:100 src/gui/client/main-window.lisp:1480
#: src/gui/client/gui-goodies.lisp:100 src/gui/client/main-window.lisp:1516
#: src/windows.lisp:642 src/windows.lisp:698
msgid "OK"
msgstr ""
@ -541,7 +551,7 @@ msgid "Import certificates"
msgstr "Importar certificados"
#: src/gui/client/certificates-window.lisp:261
#: src/gui/client/main-window.lisp:243
#: src/gui/client/main-window.lisp:252
msgid "Certificates"
msgstr "Certificados"
@ -603,7 +613,7 @@ msgstr ""
msgid "Copy selected gemlog links to the clipboard"
msgstr "Copiar enlace en portapapeles"
#: src/gui/client/gemlog-window.lisp:181 src/gui/client/main-window.lisp:240
#: src/gui/client/gemlog-window.lisp:181 src/gui/client/main-window.lisp:249
msgid "Gemlogs"
msgstr ""
@ -634,12 +644,12 @@ msgstr "Se completó la operación"
msgid "information"
msgstr "información"
#: src/gui/client/gui-goodies.lisp:52 src/line-oriented-window.lisp:505
#: src/gui/client/gui-goodies.lisp:52 src/line-oriented-window.lisp:506
#: src/ui-goodies.lisp:153 src/ui-goodies.lisp:170
msgid "Information"
msgstr "Información"
#: src/gui/client/gui-goodies.lisp:55 src/gui/client/main-window.lisp:1009
#: src/gui/client/gui-goodies.lisp:55 src/gui/client/main-window.lisp:1022
#: src/ui-goodies.lisp:160 src/ui-goodies.lisp:182
msgid "Error"
msgstr "Error"
@ -654,258 +664,258 @@ msgstr ""
msgid "Unable to create server process"
msgstr ""
#: src/gui/client/main-window.lisp:147
#: src/gui/client/main-window.lisp:153
msgid "Stream finished"
msgstr ""
#: src/gui/client/main-window.lisp:221
#: src/gui/client/main-window.lisp:228
msgid "Stream started"
msgstr ""
#: src/gui/client/main-window.lisp:236
#: src/gui/client/main-window.lisp:245
msgid "File"
msgstr "Archivo"
#: src/gui/client/main-window.lisp:237
#: src/gui/client/main-window.lisp:246
msgid "Tools"
msgstr "Herramientas"
#: src/gui/client/main-window.lisp:238 src/gui/client/tour-window.lisp:69
#: src/gui/client/main-window.lisp:247 src/gui/client/tour-window.lisp:69
msgid "Tour"
msgstr "Recorrido"
#: src/gui/client/main-window.lisp:241
#: src/gui/client/main-window.lisp:250
msgid "Help"
msgstr "Ayuda"
#: src/gui/client/main-window.lisp:247
#: src/gui/client/main-window.lisp:256
msgid "Search"
msgstr "Buscar"
#: src/gui/client/main-window.lisp:255
#: src/gui/client/main-window.lisp:264
msgid "View source"
msgstr ""
#: src/gui/client/main-window.lisp:259
#: src/gui/client/main-window.lisp:268
msgid "Quit"
msgstr "Salir"
#: src/gui/client/main-window.lisp:263 src/gui/client/menu-command.lisp:5
#: src/gui/client/main-window.lisp:272 src/gui/client/menu-command.lisp:5
msgid "About"
msgstr "Acerca de"
#: src/gui/client/main-window.lisp:267 src/gui/client/main-window.lisp:288
#: src/gui/client/main-window.lisp:276 src/gui/client/main-window.lisp:297
msgid "Show"
msgstr "Mostrar"
#: src/gui/client/main-window.lisp:271
#: src/gui/client/main-window.lisp:280
msgid "Export"
msgstr ""
#: src/gui/client/main-window.lisp:275
#: src/gui/client/main-window.lisp:284
msgid "Import"
msgstr ""
#: src/gui/client/main-window.lisp:278 src/gui/client/main-window.lisp:280
#: src/gui/client/main-window.lisp:287 src/gui/client/main-window.lisp:289
msgid "Manage"
msgstr "Gestionar"
#: src/gui/client/main-window.lisp:284
#: src/gui/client/main-window.lisp:293
msgid "Shuffle"
msgstr ""
#: src/gui/client/main-window.lisp:408
#: src/gui/client/main-window.lisp:417
#, lisp-format
msgid "file ~a not found"
msgstr ""
#: src/gui/client/main-window.lisp:436 src/gui/client/main-window.lisp:1261
#: src/gui/client/titan-window.lisp:106
#: src/gui/client/main-window.lisp:449 src/gui/client/main-window.lisp:1289
#: src/gui/client/titan-window.lisp:112
msgid "Server certificate error"
msgstr ""
#: src/gui/client/main-window.lisp:447 src/gui/client/main-window.lisp:1285
#: src/gui/client/titan-window.lisp:123
#: src/gui/client/main-window.lisp:460 src/gui/client/main-window.lisp:1315
#: src/gui/client/titan-window.lisp:129
#, lisp-format
msgid "Provide the password to unlock certificate for ~a"
msgstr ""
#: src/gui/client/main-window.lisp:450 src/gui/client/main-window.lisp:1288
#: src/gui/client/titan-window.lisp:126
#: src/gui/client/main-window.lisp:463 src/gui/client/main-window.lisp:1318
#: src/gui/client/titan-window.lisp:132
#, fuzzy
msgid "Unlock certificate"
msgstr "Importar certificados"
#: src/gui/client/main-window.lisp:463 src/gui/client/main-window.lisp:1300
#: src/gui/client/main-window.lisp:476 src/gui/client/main-window.lisp:1332
#, lisp-format
msgid "Follow redirection to ~a?"
msgstr ""
#: src/gui/client/main-window.lisp:464 src/gui/client/main-window.lisp:1301
#: src/gui/client/main-window.lisp:477 src/gui/client/main-window.lisp:1333
msgid "Redirection"
msgstr "Redirección"
#: src/gui/client/main-window.lisp:584
#: src/gui/client/main-window.lisp:597
#, lisp-format
msgid "~a added to tour"
msgstr ""
#: src/gui/client/main-window.lisp:611
#: src/gui/client/main-window.lisp:624
msgid "gemtext window menu"
msgstr ""
#: src/gui/client/main-window.lisp:614
#: src/gui/client/main-window.lisp:627
#, fuzzy
msgid "Add all links to tour"
msgstr "Añadir enlace a Marcadores"
#: src/gui/client/main-window.lisp:625
#: src/gui/client/main-window.lisp:638
#, lisp-format
msgid "~s has been copied to the clipboard"
msgstr ""
#: src/gui/client/main-window.lisp:634
#: src/gui/client/main-window.lisp:647
#, lisp-format
msgid "~s already bookmarked"
msgstr ""
#: src/gui/client/main-window.lisp:650
#: src/gui/client/main-window.lisp:663
#, lisp-format
msgid "Files ~s"
msgstr ""
#: src/gui/client/main-window.lisp:660
#: src/gui/client/main-window.lisp:673
msgid "Choose a file for saving"
msgstr ""
#: src/gui/client/main-window.lisp:666
#: src/gui/client/main-window.lisp:679
msgid "link menu"
msgstr ""
#: src/gui/client/main-window.lisp:674
#: src/gui/client/main-window.lisp:687
msgid "Inline"
msgstr ""
#: src/gui/client/main-window.lisp:676
#: src/gui/client/main-window.lisp:689
msgid "Add link to tour"
msgstr ""
#: src/gui/client/main-window.lisp:677
#: src/gui/client/main-window.lisp:690
msgid "Copy link to the clipboard"
msgstr "Copiar enlace en portapapeles"
#: src/gui/client/main-window.lisp:678
#: src/gui/client/main-window.lisp:691
msgid "Add link to bookmarks"
msgstr "Añadir enlace a Marcadores"
#: src/gui/client/main-window.lisp:681
#: src/gui/client/main-window.lisp:694
msgid "Save link as…"
msgstr ""
#: src/gui/client/main-window.lisp:683
#: src/gui/client/main-window.lisp:696
msgid "Open link in background"
msgstr "Abrir enlace en segundo plano"
#: src/gui/client/main-window.lisp:1007
#: src/gui/client/main-window.lisp:1020
#, lisp-format
msgid "No such file or directory: ~s, search genspace instead?"
msgstr ""
#: src/gui/client/main-window.lisp:1131
#: src/gui/client/main-window.lisp:1146
msgid "Invalid address, perform a search using your input?"
msgstr ""
#: src/gui/client/main-window.lisp:1132
#: src/gui/client/main-window.lisp:1147
#, fuzzy
msgid "Invalid address"
msgstr "el valor no es válido: ~a"
#: src/gui/client/main-window.lisp:1141
#: src/gui/client/main-window.lisp:1156
#, lisp-format
msgid "The server asks:~2%~a"
msgstr ""
#: src/gui/client/main-window.lisp:1143
#: src/gui/client/main-window.lisp:1158
msgid "Submit"
msgstr "Enviar"
#: src/gui/client/main-window.lisp:1144
#: src/gui/client/main-window.lisp:1159
msgid "Input query"
msgstr ""
#: src/gui/client/main-window.lisp:1260 src/gui/client/titan-window.lisp:105
#: src/gui/client/main-window.lisp:1288 src/gui/client/titan-window.lisp:111
msgid ""
"The certificate for this address has changed, replace the old with the one I "
"just received?"
msgstr ""
#: src/gui/client/main-window.lisp:1457 src/program-events.lisp:1590
#: src/gui/client/main-window.lisp:1493 src/program-events.lisp:1590
#, lisp-format
msgid "Unable to subscribe to ~s"
msgstr ""
#: src/gui/client/main-window.lisp:1468
#: src/gui/client/main-window.lisp:1504
msgid "Tour is terminated"
msgstr ""
#: src/gui/client/main-window.lisp:1474
#: src/gui/client/main-window.lisp:1510
msgid "Change password"
msgstr ""
#: src/gui/client/main-window.lisp:1475
#: src/gui/client/main-window.lisp:1511
msgid "Change the password of the certificate"
msgstr ""
#: src/gui/client/main-window.lisp:1476
#: src/gui/client/main-window.lisp:1512
msgid "Old password"
msgstr ""
#: src/gui/client/main-window.lisp:1477
#: src/gui/client/main-window.lisp:1513
msgid "New password"
msgstr ""
#: src/gui/client/main-window.lisp:1478
#: src/gui/client/main-window.lisp:1514
msgid "Repeat new password"
msgstr ""
#: src/gui/client/main-window.lisp:1479 src/ui-goodies.lisp:1877
#: src/gui/client/main-window.lisp:1515 src/ui-goodies.lisp:1877
msgid "password and confirmation does not match"
msgstr ""
#: src/gui/client/main-window.lisp:1489 src/ui-goodies.lisp:1876
#: src/gui/client/main-window.lisp:1525 src/ui-goodies.lisp:1876
#, lisp-format
msgid "Password changed for key ~a"
msgstr ""
#: src/gui/client/main-window.lisp:1572
#: src/gui/client/main-window.lisp:1608
msgid "go back"
msgstr "volver"
#: src/gui/client/main-window.lisp:1573
#: src/gui/client/main-window.lisp:1609
msgid "reload address"
msgstr "dirección de recarga"
#: src/gui/client/main-window.lisp:1574
#: src/gui/client/main-window.lisp:1610
msgid "go to address"
msgstr "ir a dirección"
#: src/gui/client/main-window.lisp:1575
#: src/gui/client/main-window.lisp:1611
msgid "one level up"
msgstr "un nivel hacia arriba"
#: src/gui/client/main-window.lisp:1576
#: src/gui/client/main-window.lisp:1612
msgid "add or remove bookmark"
msgstr "añadir o quitar marcador"
#: src/gui/client/main-window.lisp:1577
#: src/gui/client/main-window.lisp:1613
msgid "go to the next link in tour"
msgstr "ir al enlace siguiente del recorrido"
#: src/gui/client/main-window.lisp:1578
#: src/gui/client/main-window.lisp:1614
msgid "subscribe/unsubscribe to this gemlog"
msgstr ""
#: src/gui/client/main-window.lisp:1579
#: src/gui/client/main-window.lisp:1615
msgid "inline images"
msgstr ""
@ -994,31 +1004,31 @@ msgid ""
"Neither a file to upload has been specified nor text data has been typed"
msgstr ""
#: src/gui/client/titan-window.lisp:140
#: src/gui/client/titan-window.lisp:146
msgid "Data uploaded"
msgstr ""
#: src/gui/client/titan-window.lisp:166
#: src/gui/client/titan-window.lisp:172
msgid "Titan address"
msgstr ""
#: src/gui/client/titan-window.lisp:169
#: src/gui/client/titan-window.lisp:175
msgid "Access token"
msgstr "Ficha de acceso"
#: src/gui/client/titan-window.lisp:172
#: src/gui/client/titan-window.lisp:178
msgid "Data to send"
msgstr "Datos que enviar"
#: src/gui/client/titan-window.lisp:188
#: src/gui/client/titan-window.lisp:194
msgid "Upload file"
msgstr "Cargar archivo"
#: src/gui/client/titan-window.lisp:196
#: src/gui/client/titan-window.lisp:202
msgid "Insert text"
msgstr "Insertar texto"
#: src/gui/client/titan-window.lisp:235
#: src/gui/client/titan-window.lisp:241
msgid "Titan request window"
msgstr ""
@ -1045,22 +1055,22 @@ msgstr ""
msgid "Error: ~a~%"
msgstr ""
#: src/gui/server/public-api-gemini-gemlog.lisp:65
#: src/gui/server/public-api-gemini-gemlog.lisp:66
#, lisp-format
msgid "Error getting posts from ~s: ~a"
msgstr ""
#: src/gui/server/public-api-gemini-gemlog.lisp:80
#: src/gui/server/public-api-gemini-gemlog.lisp:81
#, lisp-format
msgid "unable to connect to \"~a\": host not found"
msgstr ""
#: src/gui/server/public-api-gemini-stream.lisp:242
#: src/gui/server/public-api-gemini-stream.lisp:247
#, lisp-format
msgid "a password to unlock certificate for ~a is needed"
msgstr ""
#: src/gui/server/public-api-gemini-stream.lisp:393
#: src/gui/server/public-api-gemini-stream.lisp:408
#, lisp-format
msgid "no such stream ~s"
msgstr ""
@ -1194,7 +1204,11 @@ msgstr "No se encontró ninguna orden que se aproximara a sus criterios"
msgid "Quick help"
msgstr "Ayuda rápida"
#: src/keybindings.lisp:711
#: src/keybindings.lisp:710
msgid "No help available"
msgstr ""
#: src/keybindings.lisp:714
#, lisp-format
msgid "invalid regular expression ~s ~a"
msgstr ""

214
po/fr.po
View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: tinmop 0.9.9.1414\n"
"Report-Msgid-Bugs-To: https://codeberg.org/cage/tinmop/\n"
"POT-Creation-Date: 2024-08-04 11:54+0200\n"
"POT-Creation-Date: 2024-08-24 21:18+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: Automatically generated\n"
"Language-Team: none\n"
@ -56,7 +56,7 @@ msgid "Open address"
msgstr "Ouvrir ladresse"
#: src/api-client.lisp:219 src/gui/client/certificates-window.lisp:234
#: src/gui/client/titan-window.lisp:212 src/ui-goodies.lisp:214
#: src/gui/client/titan-window.lisp:218 src/ui-goodies.lisp:214
#: src/ui-goodies.lisp:219 src/windows.lisp:635 src/windows.lisp:692
msgid "Cancel"
msgstr "Annuler"
@ -85,17 +85,17 @@ msgstr ""
"Erreur : Impossible de créer le socket serveur pour attente du code "
"dautorisation"
#: src/api-client.lisp:881
#: src/api-client.lisp:880
#, lisp-format
msgid "type: ~a from ~a"
msgstr "type : ~a de ~a"
#: src/api-client.lisp:888
#: src/api-client.lisp:887
#, lisp-format
msgid " post: ~a"
msgstr ""
#: src/api-client.lisp:1011
#: src/api-client.lisp:1010
#, lisp-format
msgid "Initializing empty credentials file in ~a"
msgstr "Initialisation dun fichier vide didentifiants dans ~a"
@ -338,46 +338,51 @@ msgstr "Téléchargement de document Gemini interrompu"
msgid "Gemini document downloading completed"
msgstr "Téléchargement de document Gemini complété"
#: src/gemini-viewer.lisp:714
#: src/gemini-viewer.lisp:717
#, lisp-format
msgid "Server ~s asks: ~s "
msgstr "Demande du serveur ~s : ~s "
#: src/gemini-viewer.lisp:735
#: src/gemini-viewer.lisp:739
#, lisp-format
msgid "Redirects to ~s, follows redirect? [y/N] "
msgstr "Suivre la redirection vers ~s? [y/N] "
#: src/gemini-viewer.lisp:785 src/ui-goodies.lisp:3138
#: src/gemini-viewer.lisp:792 src/ui-goodies.lisp:3138
#, lisp-format
msgid "a password to unlock certificate for ~a is needed: "
msgstr ""
#: src/gemini-viewer.lisp:852 src/tui-utils.lisp:534 src/tui-utils.lisp:546
#: src/gemini-viewer.lisp:853 src/gemini/subscription.lisp:95
#, lisp-format
msgid "Warning: ~a"
msgstr ""
#: src/gemini-viewer.lisp:872 src/tui-utils.lisp:534 src/tui-utils.lisp:546
#: src/ui-goodies.lisp:3085
#, lisp-format
msgid "Error: ~a"
msgstr "Erreur : ~a"
#: src/gemini-viewer.lisp:859 src/gemini-viewer.lisp:863
#: src/gui/server/public-api-gemini-stream.lisp:311
#: src/gui/server/public-api-gemini-stream.lisp:323
#: src/gui/server/public-api-gemini-stream.lisp:327
#: src/gemini-viewer.lisp:879 src/gemini-viewer.lisp:883
#: src/gui/server/public-api-gemini-stream.lisp:325
#: src/gui/server/public-api-gemini-stream.lisp:337
#: src/gui/server/public-api-gemini-stream.lisp:341
#, lisp-format
msgid "Error getting ~s: ~a"
msgstr "Erreur de communication ~s : ~a"
#: src/gemini-viewer.lisp:871
#: src/gemini-viewer.lisp:891
#, lisp-format
msgid "Going back to: ~a"
msgstr "Retour vers : ~a"
#: src/gemini-viewer.lisp:883
#: src/gemini-viewer.lisp:903
#, lisp-format
msgid "Viewing source of: ~a"
msgstr "Affichage source : ~a"
#: src/gemini-viewer.lisp:939
#: src/gemini-viewer.lisp:959
msgid "Current gemini streams"
msgstr "Flux Gemini actuels"
@ -387,11 +392,16 @@ msgid "The server responded with the error ~a (~a): ~a"
msgstr "Erreur dans la réponse serveur ~a (~a) : ~a"
#: src/gemini/client.lisp:249
#, lisp-format
msgid "The certificate of host ~a has changed from your latest visit"
#, fuzzy, lisp-format
msgid "The certificate provided by host ~a has changed from your latest visit"
msgstr "Le certificat de lhôte ~a a changé depuis la dernière visite"
#: src/gemini/titan.lisp:189
#: src/gemini/client.lisp:259
#, fuzzy, lisp-format
msgid "The certificate provided by host ~a has expired"
msgstr "Le certificat de lhôte ~a a changé depuis la dernière visite"
#: src/gemini/titan.lisp:200
#, lisp-format
msgid "Connection prematurely closed from the server: ~a"
msgstr "Connexion interrompue depuis le serveur : ~a"
@ -439,7 +449,7 @@ msgstr "Ladresse ~a a été enregistrée"
msgid "~s is not a valid gemini address"
msgstr "~s nest pas une adresse Gemini valide"
#: src/gui/client/bookmark-window.lisp:28 src/gui/client/main-window.lisp:251
#: src/gui/client/bookmark-window.lisp:28 src/gui/client/main-window.lisp:260
msgid "Streams"
msgstr "Flux"
@ -469,7 +479,7 @@ msgid_plural "~a elements deleted"
msgstr[0] "~aélement supprimé"
msgstr[1] "~aéléments supprimés"
#: src/gui/client/bookmark-window.lisp:112 src/gui/client/main-window.lisp:239
#: src/gui/client/bookmark-window.lisp:112 src/gui/client/main-window.lisp:248
msgid "Bookmarks"
msgstr "Favoris"
@ -535,7 +545,7 @@ msgid "Gemini address"
msgstr "Adresse Gemini"
#: src/gui/client/certificates-window.lisp:229
#: src/gui/client/gui-goodies.lisp:100 src/gui/client/main-window.lisp:1480
#: src/gui/client/gui-goodies.lisp:100 src/gui/client/main-window.lisp:1516
#: src/windows.lisp:642 src/windows.lisp:698
msgid "OK"
msgstr "Ok"
@ -545,7 +555,7 @@ msgid "Import certificates"
msgstr "Importer les certificats"
#: src/gui/client/certificates-window.lisp:261
#: src/gui/client/main-window.lisp:243
#: src/gui/client/main-window.lisp:252
msgid "Certificates"
msgstr "Certificats"
@ -605,7 +615,7 @@ msgstr ""
msgid "Copy selected gemlog links to the clipboard"
msgstr ""
#: src/gui/client/gemlog-window.lisp:181 src/gui/client/main-window.lisp:240
#: src/gui/client/gemlog-window.lisp:181 src/gui/client/main-window.lisp:249
msgid "Gemlogs"
msgstr "Gemlogs"
@ -636,12 +646,12 @@ msgstr "Opération réussie"
msgid "information"
msgstr "information"
#: src/gui/client/gui-goodies.lisp:52 src/line-oriented-window.lisp:505
#: src/gui/client/gui-goodies.lisp:52 src/line-oriented-window.lisp:506
#: src/ui-goodies.lisp:153 src/ui-goodies.lisp:170
msgid "Information"
msgstr "Information"
#: src/gui/client/gui-goodies.lisp:55 src/gui/client/main-window.lisp:1009
#: src/gui/client/gui-goodies.lisp:55 src/gui/client/main-window.lisp:1022
#: src/ui-goodies.lisp:160 src/ui-goodies.lisp:182
msgid "Error"
msgstr "Erreur"
@ -656,260 +666,260 @@ msgstr "~a : ~a"
msgid "Unable to create server process"
msgstr "Impossible de créer le processus serveur"
#: src/gui/client/main-window.lisp:147
#: src/gui/client/main-window.lisp:153
msgid "Stream finished"
msgstr "Flux terminé"
#: src/gui/client/main-window.lisp:221
#: src/gui/client/main-window.lisp:228
msgid "Stream started"
msgstr "Flux débuté"
#: src/gui/client/main-window.lisp:236
#: src/gui/client/main-window.lisp:245
msgid "File"
msgstr "Fichier"
#: src/gui/client/main-window.lisp:237
#: src/gui/client/main-window.lisp:246
msgid "Tools"
msgstr "Outils"
#: src/gui/client/main-window.lisp:238 src/gui/client/tour-window.lisp:69
#: src/gui/client/main-window.lisp:247 src/gui/client/tour-window.lisp:69
msgid "Tour"
msgstr "Visite"
#: src/gui/client/main-window.lisp:241
#: src/gui/client/main-window.lisp:250
msgid "Help"
msgstr "Aide"
#: src/gui/client/main-window.lisp:247
#: src/gui/client/main-window.lisp:256
msgid "Search"
msgstr "Recherche"
#: src/gui/client/main-window.lisp:255
#: src/gui/client/main-window.lisp:264
#, fuzzy
msgid "View source"
msgstr "Affichage source : ~a"
#: src/gui/client/main-window.lisp:259
#: src/gui/client/main-window.lisp:268
msgid "Quit"
msgstr "Quitter"
#: src/gui/client/main-window.lisp:263 src/gui/client/menu-command.lisp:5
#: src/gui/client/main-window.lisp:272 src/gui/client/menu-command.lisp:5
msgid "About"
msgstr "À propos"
#: src/gui/client/main-window.lisp:267 src/gui/client/main-window.lisp:288
#: src/gui/client/main-window.lisp:276 src/gui/client/main-window.lisp:297
msgid "Show"
msgstr "Afficher"
#: src/gui/client/main-window.lisp:271
#: src/gui/client/main-window.lisp:280
msgid "Export"
msgstr ""
#: src/gui/client/main-window.lisp:275
#: src/gui/client/main-window.lisp:284
msgid "Import"
msgstr ""
#: src/gui/client/main-window.lisp:278 src/gui/client/main-window.lisp:280
#: src/gui/client/main-window.lisp:287 src/gui/client/main-window.lisp:289
msgid "Manage"
msgstr "Gestion"
#: src/gui/client/main-window.lisp:284
#: src/gui/client/main-window.lisp:293
msgid "Shuffle"
msgstr "Mélanger"
#: src/gui/client/main-window.lisp:408
#: src/gui/client/main-window.lisp:417
#, lisp-format
msgid "file ~a not found"
msgstr "fichier ~a introuvable"
#: src/gui/client/main-window.lisp:436 src/gui/client/main-window.lisp:1261
#: src/gui/client/titan-window.lisp:106
#: src/gui/client/main-window.lisp:449 src/gui/client/main-window.lisp:1289
#: src/gui/client/titan-window.lisp:112
msgid "Server certificate error"
msgstr "Erreur de certificat serveur"
#: src/gui/client/main-window.lisp:447 src/gui/client/main-window.lisp:1285
#: src/gui/client/titan-window.lisp:123
#: src/gui/client/main-window.lisp:460 src/gui/client/main-window.lisp:1315
#: src/gui/client/titan-window.lisp:129
#, lisp-format
msgid "Provide the password to unlock certificate for ~a"
msgstr ""
#: src/gui/client/main-window.lisp:450 src/gui/client/main-window.lisp:1288
#: src/gui/client/titan-window.lisp:126
#: src/gui/client/main-window.lisp:463 src/gui/client/main-window.lisp:1318
#: src/gui/client/titan-window.lisp:132
#, fuzzy
msgid "Unlock certificate"
msgstr "Importer les certificats"
#: src/gui/client/main-window.lisp:463 src/gui/client/main-window.lisp:1300
#: src/gui/client/main-window.lisp:476 src/gui/client/main-window.lisp:1332
#, lisp-format
msgid "Follow redirection to ~a?"
msgstr "Suivre la redirection vers ~a?"
#: src/gui/client/main-window.lisp:464 src/gui/client/main-window.lisp:1301
#: src/gui/client/main-window.lisp:477 src/gui/client/main-window.lisp:1333
msgid "Redirection"
msgstr "Redirection"
#: src/gui/client/main-window.lisp:584
#: src/gui/client/main-window.lisp:597
#, lisp-format
msgid "~a added to tour"
msgstr "~a ajouté à la visite"
#: src/gui/client/main-window.lisp:611
#: src/gui/client/main-window.lisp:624
msgid "gemtext window menu"
msgstr ""
#: src/gui/client/main-window.lisp:614
#: src/gui/client/main-window.lisp:627
#, fuzzy
msgid "Add all links to tour"
msgstr "Ajouter un lien à la visite"
#: src/gui/client/main-window.lisp:625
#: src/gui/client/main-window.lisp:638
#, lisp-format
msgid "~s has been copied to the clipboard"
msgstr "~s a été copié au presse-papiers"
#: src/gui/client/main-window.lisp:634
#: src/gui/client/main-window.lisp:647
#, lisp-format
msgid "~s already bookmarked"
msgstr "~s déjà dans les favoris"
#: src/gui/client/main-window.lisp:650
#: src/gui/client/main-window.lisp:663
#, lisp-format
msgid "Files ~s"
msgstr "Fichiers ~s"
#: src/gui/client/main-window.lisp:660
#: src/gui/client/main-window.lisp:673
msgid "Choose a file for saving"
msgstr "Choisir un fichier denregistrement"
#: src/gui/client/main-window.lisp:666
#: src/gui/client/main-window.lisp:679
msgid "link menu"
msgstr ""
#: src/gui/client/main-window.lisp:674
#: src/gui/client/main-window.lisp:687
msgid "Inline"
msgstr ""
#: src/gui/client/main-window.lisp:676
#: src/gui/client/main-window.lisp:689
msgid "Add link to tour"
msgstr "Ajouter un lien à la visite"
#: src/gui/client/main-window.lisp:677
#: src/gui/client/main-window.lisp:690
msgid "Copy link to the clipboard"
msgstr "Copier le lien vers le presse-papiers"
#: src/gui/client/main-window.lisp:678
#: src/gui/client/main-window.lisp:691
msgid "Add link to bookmarks"
msgstr "Ajouter le lien aux favories"
#: src/gui/client/main-window.lisp:681
#: src/gui/client/main-window.lisp:694
msgid "Save link as…"
msgstr "Enregistrer le lien sous…"
#: src/gui/client/main-window.lisp:683
#: src/gui/client/main-window.lisp:696
msgid "Open link in background"
msgstr "Ouvrir le lien en arrière-plan"
#: src/gui/client/main-window.lisp:1007
#: src/gui/client/main-window.lisp:1020
#, fuzzy, lisp-format
msgid "No such file or directory: ~s, search genspace instead?"
msgstr "Fichier ou dossier introuvable : ~a"
#: src/gui/client/main-window.lisp:1131
#: src/gui/client/main-window.lisp:1146
msgid "Invalid address, perform a search using your input?"
msgstr ""
#: src/gui/client/main-window.lisp:1132
#: src/gui/client/main-window.lisp:1147
#, fuzzy
msgid "Invalid address"
msgstr "valeur invalide : ~a"
#: src/gui/client/main-window.lisp:1141
#: src/gui/client/main-window.lisp:1156
#, lisp-format
msgid "The server asks:~2%~a"
msgstr "Le serveur demande : ~2%~a"
#: src/gui/client/main-window.lisp:1143
#: src/gui/client/main-window.lisp:1158
msgid "Submit"
msgstr "Envoyer"
#: src/gui/client/main-window.lisp:1144
#: src/gui/client/main-window.lisp:1159
msgid "Input query"
msgstr "Requête"
#: src/gui/client/main-window.lisp:1260 src/gui/client/titan-window.lisp:105
#: src/gui/client/main-window.lisp:1288 src/gui/client/titan-window.lisp:111
msgid ""
"The certificate for this address has changed, replace the old with the one I "
"just received?"
msgstr ""
"Le certificat de cette adresse a été modifié, remplacer avec le plus récent?"
#: src/gui/client/main-window.lisp:1457 src/program-events.lisp:1590
#: src/gui/client/main-window.lisp:1493 src/program-events.lisp:1590
#, lisp-format
msgid "Unable to subscribe to ~s"
msgstr ""
#: src/gui/client/main-window.lisp:1468
#: src/gui/client/main-window.lisp:1504
msgid "Tour is terminated"
msgstr "Visite terminée"
#: src/gui/client/main-window.lisp:1474
#: src/gui/client/main-window.lisp:1510
msgid "Change password"
msgstr ""
#: src/gui/client/main-window.lisp:1475
#: src/gui/client/main-window.lisp:1511
msgid "Change the password of the certificate"
msgstr ""
#: src/gui/client/main-window.lisp:1476
#: src/gui/client/main-window.lisp:1512
msgid "Old password"
msgstr ""
#: src/gui/client/main-window.lisp:1477
#: src/gui/client/main-window.lisp:1513
msgid "New password"
msgstr ""
#: src/gui/client/main-window.lisp:1478
#: src/gui/client/main-window.lisp:1514
msgid "Repeat new password"
msgstr ""
#: src/gui/client/main-window.lisp:1479 src/ui-goodies.lisp:1877
#: src/gui/client/main-window.lisp:1515 src/ui-goodies.lisp:1877
msgid "password and confirmation does not match"
msgstr ""
#: src/gui/client/main-window.lisp:1489 src/ui-goodies.lisp:1876
#: src/gui/client/main-window.lisp:1525 src/ui-goodies.lisp:1876
#, lisp-format
msgid "Password changed for key ~a"
msgstr ""
#: src/gui/client/main-window.lisp:1572
#: src/gui/client/main-window.lisp:1608
msgid "go back"
msgstr "retour"
#: src/gui/client/main-window.lisp:1573
#: src/gui/client/main-window.lisp:1609
msgid "reload address"
msgstr "recharger ladresse"
#: src/gui/client/main-window.lisp:1574
#: src/gui/client/main-window.lisp:1610
msgid "go to address"
msgstr "aller à ladresse"
#: src/gui/client/main-window.lisp:1575
#: src/gui/client/main-window.lisp:1611
msgid "one level up"
msgstr "niveau supérieur"
#: src/gui/client/main-window.lisp:1576
#: src/gui/client/main-window.lisp:1612
msgid "add or remove bookmark"
msgstr "ajouter ou supprimer un favori"
#: src/gui/client/main-window.lisp:1577
#: src/gui/client/main-window.lisp:1613
msgid "go to the next link in tour"
msgstr "se rendre au prochain lien de visite"
#: src/gui/client/main-window.lisp:1578
#: src/gui/client/main-window.lisp:1614
msgid "subscribe/unsubscribe to this gemlog"
msgstr "inscription/désinscription à ce gemlog"
#: src/gui/client/main-window.lisp:1579
#: src/gui/client/main-window.lisp:1615
msgid "inline images"
msgstr ""
@ -1002,31 +1012,31 @@ msgid ""
"Neither a file to upload has been specified nor text data has been typed"
msgstr ""
#: src/gui/client/titan-window.lisp:140
#: src/gui/client/titan-window.lisp:146
msgid "Data uploaded"
msgstr ""
#: src/gui/client/titan-window.lisp:166
#: src/gui/client/titan-window.lisp:172
msgid "Titan address"
msgstr ""
#: src/gui/client/titan-window.lisp:169
#: src/gui/client/titan-window.lisp:175
msgid "Access token"
msgstr ""
#: src/gui/client/titan-window.lisp:172
#: src/gui/client/titan-window.lisp:178
msgid "Data to send"
msgstr ""
#: src/gui/client/titan-window.lisp:188
#: src/gui/client/titan-window.lisp:194
msgid "Upload file"
msgstr ""
#: src/gui/client/titan-window.lisp:196
#: src/gui/client/titan-window.lisp:202
msgid "Insert text"
msgstr ""
#: src/gui/client/titan-window.lisp:235
#: src/gui/client/titan-window.lisp:241
msgid "Titan request window"
msgstr ""
@ -1053,22 +1063,22 @@ msgstr ""
msgid "Error: ~a~%"
msgstr ""
#: src/gui/server/public-api-gemini-gemlog.lisp:65
#: src/gui/server/public-api-gemini-gemlog.lisp:66
#, fuzzy, lisp-format
msgid "Error getting posts from ~s: ~a"
msgstr "Erreur de communication ~s : ~a"
#: src/gui/server/public-api-gemini-gemlog.lisp:80
#: src/gui/server/public-api-gemini-gemlog.lisp:81
#, lisp-format
msgid "unable to connect to \"~a\": host not found"
msgstr ""
#: src/gui/server/public-api-gemini-stream.lisp:242
#: src/gui/server/public-api-gemini-stream.lisp:247
#, lisp-format
msgid "a password to unlock certificate for ~a is needed"
msgstr ""
#: src/gui/server/public-api-gemini-stream.lisp:393
#: src/gui/server/public-api-gemini-stream.lisp:408
#, lisp-format
msgid "no such stream ~s"
msgstr ""
@ -1202,7 +1212,11 @@ msgstr ""
msgid "Quick help"
msgstr ""
#: src/keybindings.lisp:711
#: src/keybindings.lisp:710
msgid "No help available"
msgstr ""
#: src/keybindings.lisp:714
#, lisp-format
msgid "invalid regular expression ~s ~a"
msgstr ""

216
po/it.po
View File

@ -8,8 +8,8 @@ msgid ""
msgstr ""
"Project-Id-Version: tinmop 0.0.1\n"
"Report-Msgid-Bugs-To: https://codeberg.org/cage/tinmop/\n"
"POT-Creation-Date: 2024-08-04 11:54+0200\n"
"PO-Revision-Date: 2024-08-04 11:54+0200\n"
"POT-Creation-Date: 2024-08-24 21:18+0200\n"
"PO-Revision-Date: 2024-08-24 21:19+0200\n"
"Last-Translator: cage <cage-dev@twistfold.it>\n"
"Language-Team: Italian <https://translate.codeberg.org/projects/tinmop/"
"tinmop/it/>\n"
@ -59,7 +59,7 @@ msgid "Open address"
msgstr "Apri l'indirizzo"
#: src/api-client.lisp:219 src/gui/client/certificates-window.lisp:234
#: src/gui/client/titan-window.lisp:212 src/ui-goodies.lisp:214
#: src/gui/client/titan-window.lisp:218 src/ui-goodies.lisp:214
#: src/ui-goodies.lisp:219 src/windows.lisp:635 src/windows.lisp:692
msgid "Cancel"
msgstr "Annulla"
@ -88,17 +88,17 @@ msgstr ""
"Errore: non sono stato in grado di creare il socket per la cattura del "
"codice di autorizzazione"
#: src/api-client.lisp:881
#: src/api-client.lisp:880
#, lisp-format
msgid "type: ~a from ~a"
msgstr "tipo ~a da ~a"
#: src/api-client.lisp:888
#: src/api-client.lisp:887
#, lisp-format
msgid " post: ~a"
msgstr " messaggio: ~a"
#: src/api-client.lisp:1011
#: src/api-client.lisp:1010
#, lisp-format
msgid "Initializing empty credentials file in ~a"
msgstr "Inizializzo credenziali vuote (segnaposto) nel file ~a"
@ -344,46 +344,51 @@ msgstr "Scaricamento del documento in formato gemini interrotto"
msgid "Gemini document downloading completed"
msgstr "Scaricamento del documento in formato gemini completato"
#: src/gemini-viewer.lisp:714
#: src/gemini-viewer.lisp:717
#, lisp-format
msgid "Server ~s asks: ~s "
msgstr "Il server ~s chiede: ~s "
#: src/gemini-viewer.lisp:735
#: src/gemini-viewer.lisp:739
#, lisp-format
msgid "Redirects to ~s, follows redirect? [y/N] "
msgstr "Seguire la redirezione a ~s? [s/N] "
#: src/gemini-viewer.lisp:785 src/ui-goodies.lisp:3138
#: src/gemini-viewer.lisp:792 src/ui-goodies.lisp:3138
#, lisp-format
msgid "a password to unlock certificate for ~a is needed: "
msgstr "È necessaria una password per sbloccare il certificato ~a: "
#: src/gemini-viewer.lisp:852 src/tui-utils.lisp:534 src/tui-utils.lisp:546
#: src/gemini-viewer.lisp:853 src/gemini/subscription.lisp:95
#, lisp-format
msgid "Warning: ~a"
msgstr "Attenzione: ~a"
#: src/gemini-viewer.lisp:872 src/tui-utils.lisp:534 src/tui-utils.lisp:546
#: src/ui-goodies.lisp:3085
#, lisp-format
msgid "Error: ~a"
msgstr "Errore: ~a"
#: src/gemini-viewer.lisp:859 src/gemini-viewer.lisp:863
#: src/gui/server/public-api-gemini-stream.lisp:311
#: src/gui/server/public-api-gemini-stream.lisp:323
#: src/gui/server/public-api-gemini-stream.lisp:327
#: src/gemini-viewer.lisp:879 src/gemini-viewer.lisp:883
#: src/gui/server/public-api-gemini-stream.lisp:325
#: src/gui/server/public-api-gemini-stream.lisp:337
#: src/gui/server/public-api-gemini-stream.lisp:341
#, lisp-format
msgid "Error getting ~s: ~a"
msgstr "Errore connettendomi a ~s: ~a"
#: src/gemini-viewer.lisp:871
#: src/gemini-viewer.lisp:891
#, lisp-format
msgid "Going back to: ~a"
msgstr "Ritorno a: ~a"
#: src/gemini-viewer.lisp:883
#: src/gemini-viewer.lisp:903
#, lisp-format
msgid "Viewing source of: ~a"
msgstr "Visualizzo il sorgente di: ~a"
#: src/gemini-viewer.lisp:939
#: src/gemini-viewer.lisp:959
msgid "Current gemini streams"
msgstr "Flussi di dati gemini attuali"
@ -394,10 +399,15 @@ msgstr "Il server ha risposto con l'errore ~a (~a): ~a"
#: src/gemini/client.lisp:249
#, lisp-format
msgid "The certificate of host ~a has changed from your latest visit"
msgstr "Il certificato dell'host ~a è cambiato dall'ultima visita"
msgid "The certificate provided by host ~a has changed from your latest visit"
msgstr "Il certificato fornito dall'host ~a è cambiato dall'ultima visita"
#: src/gemini/titan.lisp:189
#: src/gemini/client.lisp:259
#, lisp-format
msgid "The certificate provided by host ~a has expired"
msgstr "Il certificato fornito dall'host ~a è scaduto"
#: src/gemini/titan.lisp:200
#, lisp-format
msgid "Connection prematurely closed from the server: ~a"
msgstr "Connessione interrotta prematuramente da parte del server: ~a"
@ -445,7 +455,7 @@ msgstr "Aggiunto ~a come segnalibro"
msgid "~s is not a valid gemini address"
msgstr "~s non è un indirizzo gemini valido"
#: src/gui/client/bookmark-window.lisp:28 src/gui/client/main-window.lisp:251
#: src/gui/client/bookmark-window.lisp:28 src/gui/client/main-window.lisp:260
msgid "Streams"
msgstr "Flussi"
@ -475,7 +485,7 @@ msgid_plural "~a elements deleted"
msgstr[0] "~a elemento cancellato"
msgstr[1] "~a elementi cancellati"
#: src/gui/client/bookmark-window.lisp:112 src/gui/client/main-window.lisp:239
#: src/gui/client/bookmark-window.lisp:112 src/gui/client/main-window.lisp:248
msgid "Bookmarks"
msgstr "Segnalibri"
@ -538,7 +548,7 @@ msgid "Gemini address"
msgstr "Indirizzo gemini"
#: src/gui/client/certificates-window.lisp:229
#: src/gui/client/gui-goodies.lisp:100 src/gui/client/main-window.lisp:1480
#: src/gui/client/gui-goodies.lisp:100 src/gui/client/main-window.lisp:1516
#: src/windows.lisp:642 src/windows.lisp:698
msgid "OK"
msgstr "OK"
@ -548,7 +558,7 @@ msgid "Import certificates"
msgstr "Importa certificati"
#: src/gui/client/certificates-window.lisp:261
#: src/gui/client/main-window.lisp:243
#: src/gui/client/main-window.lisp:252
msgid "Certificates"
msgstr "Certificati"
@ -608,7 +618,7 @@ msgstr "Segna tutti gli articoli dei gemlog selezionati come già letti"
msgid "Copy selected gemlog links to the clipboard"
msgstr "Copia il link al gemlog negli appunti"
#: src/gui/client/gemlog-window.lisp:181 src/gui/client/main-window.lisp:240
#: src/gui/client/gemlog-window.lisp:181 src/gui/client/main-window.lisp:249
msgid "Gemlogs"
msgstr "Gemlog"
@ -639,12 +649,12 @@ msgstr "Operazione completata"
msgid "information"
msgstr "informazione"
#: src/gui/client/gui-goodies.lisp:52 src/line-oriented-window.lisp:505
#: src/gui/client/gui-goodies.lisp:52 src/line-oriented-window.lisp:506
#: src/ui-goodies.lisp:153 src/ui-goodies.lisp:170
msgid "Information"
msgstr "Informazione"
#: src/gui/client/gui-goodies.lisp:55 src/gui/client/main-window.lisp:1009
#: src/gui/client/gui-goodies.lisp:55 src/gui/client/main-window.lisp:1022
#: src/ui-goodies.lisp:160 src/ui-goodies.lisp:182
msgid "Error"
msgstr "Errore"
@ -659,185 +669,185 @@ msgstr "~a: ~a"
msgid "Unable to create server process"
msgstr "Non riesco a creare il processo server"
#: src/gui/client/main-window.lisp:147
#: src/gui/client/main-window.lisp:153
msgid "Stream finished"
msgstr "Flusso terminato"
#: src/gui/client/main-window.lisp:221
#: src/gui/client/main-window.lisp:228
msgid "Stream started"
msgstr "Flusso avviato"
#: src/gui/client/main-window.lisp:236
#: src/gui/client/main-window.lisp:245
msgid "File"
msgstr "File"
#: src/gui/client/main-window.lisp:237
#: src/gui/client/main-window.lisp:246
msgid "Tools"
msgstr "Strumenti"
#: src/gui/client/main-window.lisp:238 src/gui/client/tour-window.lisp:69
#: src/gui/client/main-window.lisp:247 src/gui/client/tour-window.lisp:69
msgid "Tour"
msgstr "Tour"
#: src/gui/client/main-window.lisp:241
#: src/gui/client/main-window.lisp:250
msgid "Help"
msgstr "Aiuto"
#: src/gui/client/main-window.lisp:247
#: src/gui/client/main-window.lisp:256
msgid "Search"
msgstr "Cerca"
#: src/gui/client/main-window.lisp:255
#: src/gui/client/main-window.lisp:264
msgid "View source"
msgstr "Visualizza il sorgente"
#: src/gui/client/main-window.lisp:259
#: src/gui/client/main-window.lisp:268
msgid "Quit"
msgstr "Esci"
#: src/gui/client/main-window.lisp:263 src/gui/client/menu-command.lisp:5
#: src/gui/client/main-window.lisp:272 src/gui/client/menu-command.lisp:5
msgid "About"
msgstr "Sul programma…"
#: src/gui/client/main-window.lisp:267 src/gui/client/main-window.lisp:288
#: src/gui/client/main-window.lisp:276 src/gui/client/main-window.lisp:297
msgid "Show"
msgstr "Mostra"
#: src/gui/client/main-window.lisp:271
#: src/gui/client/main-window.lisp:280
msgid "Export"
msgstr "Esporta"
#: src/gui/client/main-window.lisp:275
#: src/gui/client/main-window.lisp:284
msgid "Import"
msgstr "Importa"
#: src/gui/client/main-window.lisp:278 src/gui/client/main-window.lisp:280
#: src/gui/client/main-window.lisp:287 src/gui/client/main-window.lisp:289
msgid "Manage"
msgstr "Gestisci"
#: src/gui/client/main-window.lisp:284
#: src/gui/client/main-window.lisp:293
msgid "Shuffle"
msgstr "Rimescola"
#: src/gui/client/main-window.lisp:408
#: src/gui/client/main-window.lisp:417
#, lisp-format
msgid "file ~a not found"
msgstr "file ~a non trovato"
#: src/gui/client/main-window.lisp:436 src/gui/client/main-window.lisp:1261
#: src/gui/client/titan-window.lisp:106
#: src/gui/client/main-window.lisp:449 src/gui/client/main-window.lisp:1289
#: src/gui/client/titan-window.lisp:112
msgid "Server certificate error"
msgstr "Errore sul certificato del server"
#: src/gui/client/main-window.lisp:447 src/gui/client/main-window.lisp:1285
#: src/gui/client/titan-window.lisp:123
#: src/gui/client/main-window.lisp:460 src/gui/client/main-window.lisp:1315
#: src/gui/client/titan-window.lisp:129
#, lisp-format
msgid "Provide the password to unlock certificate for ~a"
msgstr "Fornire la password per sbloccare il certificato in ~a"
#: src/gui/client/main-window.lisp:450 src/gui/client/main-window.lisp:1288
#: src/gui/client/titan-window.lisp:126
#: src/gui/client/main-window.lisp:463 src/gui/client/main-window.lisp:1318
#: src/gui/client/titan-window.lisp:132
msgid "Unlock certificate"
msgstr "Sblocca il certificato"
#: src/gui/client/main-window.lisp:463 src/gui/client/main-window.lisp:1300
#: src/gui/client/main-window.lisp:476 src/gui/client/main-window.lisp:1332
#, lisp-format
msgid "Follow redirection to ~a?"
msgstr "Seguire la redirezione a ~a?"
#: src/gui/client/main-window.lisp:464 src/gui/client/main-window.lisp:1301
#: src/gui/client/main-window.lisp:477 src/gui/client/main-window.lisp:1333
msgid "Redirection"
msgstr "Redirezione"
#: src/gui/client/main-window.lisp:584
#: src/gui/client/main-window.lisp:597
#, lisp-format
msgid "~a added to tour"
msgstr "~a salvato nel tour"
#: src/gui/client/main-window.lisp:611
#: src/gui/client/main-window.lisp:624
msgid "gemtext window menu"
msgstr "menu della finestra gemtext"
#: src/gui/client/main-window.lisp:614
#: src/gui/client/main-window.lisp:627
msgid "Add all links to tour"
msgstr "Aggiungi tutti i link al tour"
#: src/gui/client/main-window.lisp:625
#: src/gui/client/main-window.lisp:638
#, lisp-format
msgid "~s has been copied to the clipboard"
msgstr "l' indirizzo ~s è stato copiato negli appunti"
#: src/gui/client/main-window.lisp:634
#: src/gui/client/main-window.lisp:647
#, lisp-format
msgid "~s already bookmarked"
msgstr "l'indirizzo ~s è già tra i segnalibri"
#: src/gui/client/main-window.lisp:650
#: src/gui/client/main-window.lisp:663
#, lisp-format
msgid "Files ~s"
msgstr "File ~s"
#: src/gui/client/main-window.lisp:660
#: src/gui/client/main-window.lisp:673
msgid "Choose a file for saving"
msgstr "Scegli il nome del file da salvare"
#: src/gui/client/main-window.lisp:666
#: src/gui/client/main-window.lisp:679
msgid "link menu"
msgstr "link menu"
#: src/gui/client/main-window.lisp:674
#: src/gui/client/main-window.lisp:687
msgid "Inline"
msgstr "Includi nel flusso del testo"
#: src/gui/client/main-window.lisp:676
#: src/gui/client/main-window.lisp:689
msgid "Add link to tour"
msgstr "Aggiungi indirizzo al tour"
#: src/gui/client/main-window.lisp:677
#: src/gui/client/main-window.lisp:690
msgid "Copy link to the clipboard"
msgstr "Copia l'indirizzo negli appunti"
#: src/gui/client/main-window.lisp:678
#: src/gui/client/main-window.lisp:691
msgid "Add link to bookmarks"
msgstr "Aggiungi indirizzo tra i segnalibri"
#: src/gui/client/main-window.lisp:681
#: src/gui/client/main-window.lisp:694
msgid "Save link as…"
msgstr "Salva link con nome"
#: src/gui/client/main-window.lisp:683
#: src/gui/client/main-window.lisp:696
msgid "Open link in background"
msgstr "Apri collegamento in backgroud"
#: src/gui/client/main-window.lisp:1007
#: src/gui/client/main-window.lisp:1020
#, lisp-format
msgid "No such file or directory: ~s, search genspace instead?"
msgstr ""
"Non esiste il file o la directory ~s, effettuare una ricerca sul gemspace?"
#: src/gui/client/main-window.lisp:1131
#: src/gui/client/main-window.lisp:1146
msgid "Invalid address, perform a search using your input?"
msgstr ""
"Indirizzo non valido, effettuare una ricerca usando i dati che hai inserito?"
#: src/gui/client/main-window.lisp:1132
#: src/gui/client/main-window.lisp:1147
msgid "Invalid address"
msgstr "Indirizzo non valido"
#: src/gui/client/main-window.lisp:1141
#: src/gui/client/main-window.lisp:1156
#, lisp-format
msgid "The server asks:~2%~a"
msgstr "Il server chiede:~2%~a"
#: src/gui/client/main-window.lisp:1143
#: src/gui/client/main-window.lisp:1158
msgid "Submit"
msgstr "Inoltra"
#: src/gui/client/main-window.lisp:1144
#: src/gui/client/main-window.lisp:1159
msgid "Input query"
msgstr "Input"
#: src/gui/client/main-window.lisp:1260 src/gui/client/titan-window.lisp:105
#: src/gui/client/main-window.lisp:1288 src/gui/client/titan-window.lisp:111
msgid ""
"The certificate for this address has changed, replace the old with the one I "
"just received?"
@ -845,73 +855,73 @@ msgstr ""
"Il certificato relativo a questo indirizzo è cambiato dall'ultima visita, lo "
"rimpiazzo con quello appena ottenuto?"
#: src/gui/client/main-window.lisp:1457 src/program-events.lisp:1590
#: src/gui/client/main-window.lisp:1493 src/program-events.lisp:1590
#, lisp-format
msgid "Unable to subscribe to ~s"
msgstr "Non posso abbonarmi a ~s"
#: src/gui/client/main-window.lisp:1468
#: src/gui/client/main-window.lisp:1504
msgid "Tour is terminated"
msgstr "Il tour è terminato"
#: src/gui/client/main-window.lisp:1474
#: src/gui/client/main-window.lisp:1510
msgid "Change password"
msgstr "Cabbia password"
#: src/gui/client/main-window.lisp:1475
#: src/gui/client/main-window.lisp:1511
msgid "Change the password of the certificate"
msgstr "Chambia la password del certificato"
#: src/gui/client/main-window.lisp:1476
#: src/gui/client/main-window.lisp:1512
msgid "Old password"
msgstr "Vecchia password"
#: src/gui/client/main-window.lisp:1477
#: src/gui/client/main-window.lisp:1513
msgid "New password"
msgstr "Nuova password"
#: src/gui/client/main-window.lisp:1478
#: src/gui/client/main-window.lisp:1514
msgid "Repeat new password"
msgstr "Conferma la nuova password"
#: src/gui/client/main-window.lisp:1479 src/ui-goodies.lisp:1877
#: src/gui/client/main-window.lisp:1515 src/ui-goodies.lisp:1877
msgid "password and confirmation does not match"
msgstr "la password e la conferma non combaciano"
#: src/gui/client/main-window.lisp:1489 src/ui-goodies.lisp:1876
#: src/gui/client/main-window.lisp:1525 src/ui-goodies.lisp:1876
#, lisp-format
msgid "Password changed for key ~a"
msgstr "password cambiata per la chiava ~a"
#: src/gui/client/main-window.lisp:1572
#: src/gui/client/main-window.lisp:1608
msgid "go back"
msgstr "indietro"
#: src/gui/client/main-window.lisp:1573
#: src/gui/client/main-window.lisp:1609
msgid "reload address"
msgstr "ricarica l'indirizzo"
#: src/gui/client/main-window.lisp:1574
#: src/gui/client/main-window.lisp:1610
msgid "go to address"
msgstr "vai all'indirizzo"
#: src/gui/client/main-window.lisp:1575
#: src/gui/client/main-window.lisp:1611
msgid "one level up"
msgstr "un livello in alto"
#: src/gui/client/main-window.lisp:1576
#: src/gui/client/main-window.lisp:1612
msgid "add or remove bookmark"
msgstr "Aggiungi o rimuovi segnalibro"
#: src/gui/client/main-window.lisp:1577
#: src/gui/client/main-window.lisp:1613
msgid "go to the next link in tour"
msgstr "vai al prossimo indirizzo del tour"
#: src/gui/client/main-window.lisp:1578
#: src/gui/client/main-window.lisp:1614
msgid "subscribe/unsubscribe to this gemlog"
msgstr "Abbonati/disdici l'abbonamento a questo gemlog"
#: src/gui/client/main-window.lisp:1579
#: src/gui/client/main-window.lisp:1615
msgid "inline images"
msgstr "includi nella pagina le immagini"
@ -1002,31 +1012,31 @@ msgid ""
"Neither a file to upload has been specified nor text data has been typed"
msgstr "Non è stato specificato né un file da caricare né del testo"
#: src/gui/client/titan-window.lisp:140
#: src/gui/client/titan-window.lisp:146
msgid "Data uploaded"
msgstr "Dati caricati"
#: src/gui/client/titan-window.lisp:166
#: src/gui/client/titan-window.lisp:172
msgid "Titan address"
msgstr "Indirizzo titan"
#: src/gui/client/titan-window.lisp:169
#: src/gui/client/titan-window.lisp:175
msgid "Access token"
msgstr "Chiave di accesso"
#: src/gui/client/titan-window.lisp:172
#: src/gui/client/titan-window.lisp:178
msgid "Data to send"
msgstr "Dati da spedire"
#: src/gui/client/titan-window.lisp:188
#: src/gui/client/titan-window.lisp:194
msgid "Upload file"
msgstr "Carica un file"
#: src/gui/client/titan-window.lisp:196
#: src/gui/client/titan-window.lisp:202
msgid "Insert text"
msgstr "Inserisci il testo"
#: src/gui/client/titan-window.lisp:235
#: src/gui/client/titan-window.lisp:241
msgid "Titan request window"
msgstr "Finestra delle richieste titan"
@ -1053,22 +1063,22 @@ msgstr "Errore in lettura: ~a~%"
msgid "Error: ~a~%"
msgstr "Errore: ~a~%"
#: src/gui/server/public-api-gemini-gemlog.lisp:65
#: src/gui/server/public-api-gemini-gemlog.lisp:66
#, lisp-format
msgid "Error getting posts from ~s: ~a"
msgstr "Errore nel tentativo di prelevare i post da ~s: ~a"
#: src/gui/server/public-api-gemini-gemlog.lisp:80
#: src/gui/server/public-api-gemini-gemlog.lisp:81
#, lisp-format
msgid "unable to connect to \"~a\": host not found"
msgstr "impossibile connettermi a \\\"~a\\\": host non trovato"
#: src/gui/server/public-api-gemini-stream.lisp:242
#: src/gui/server/public-api-gemini-stream.lisp:247
#, lisp-format
msgid "a password to unlock certificate for ~a is needed"
msgstr "È necessaria una password per sbloccare il certificato ~a"
#: src/gui/server/public-api-gemini-stream.lisp:393
#: src/gui/server/public-api-gemini-stream.lisp:408
#, lisp-format
msgid "no such stream ~s"
msgstr "il flusso ~s non esiste"
@ -1202,7 +1212,11 @@ msgstr "Nessun comando che corrisponda alla tua ricerca è stato trovato"
msgid "Quick help"
msgstr "Aiuto rapido"
#: src/keybindings.lisp:711
#: src/keybindings.lisp:710
msgid "No help available"
msgstr "Nessun aiuto disponibile"
#: src/keybindings.lisp:714
#, lisp-format
msgid "invalid regular expression ~s ~a"
msgstr "Espressione regolare non valida ~s ~a"

212
po/pl.po
View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: tinmop 0.9.9.1414\n"
"Report-Msgid-Bugs-To: https://codeberg.org/cage/tinmop/\n"
"POT-Creation-Date: 2024-08-04 11:54+0200\n"
"POT-Creation-Date: 2024-08-24 21:18+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: Automatically generated\n"
"Language-Team: none\n"
@ -53,7 +53,7 @@ msgid "Open address"
msgstr ""
#: src/api-client.lisp:219 src/gui/client/certificates-window.lisp:234
#: src/gui/client/titan-window.lisp:212 src/ui-goodies.lisp:214
#: src/gui/client/titan-window.lisp:218 src/ui-goodies.lisp:214
#: src/ui-goodies.lisp:219 src/windows.lisp:635 src/windows.lisp:692
msgid "Cancel"
msgstr ""
@ -80,17 +80,17 @@ msgid ""
"Error: was not able to create server socket to listen for authorization code"
msgstr ""
#: src/api-client.lisp:881
#: src/api-client.lisp:880
#, lisp-format
msgid "type: ~a from ~a"
msgstr ""
#: src/api-client.lisp:888
#: src/api-client.lisp:887
#, lisp-format
msgid " post: ~a"
msgstr ""
#: src/api-client.lisp:1011
#: src/api-client.lisp:1010
#, lisp-format
msgid "Initializing empty credentials file in ~a"
msgstr ""
@ -329,46 +329,51 @@ msgstr ""
msgid "Gemini document downloading completed"
msgstr ""
#: src/gemini-viewer.lisp:714
#: src/gemini-viewer.lisp:717
#, lisp-format
msgid "Server ~s asks: ~s "
msgstr ""
#: src/gemini-viewer.lisp:735
#: src/gemini-viewer.lisp:739
#, lisp-format
msgid "Redirects to ~s, follows redirect? [y/N] "
msgstr ""
#: src/gemini-viewer.lisp:785 src/ui-goodies.lisp:3138
#: src/gemini-viewer.lisp:792 src/ui-goodies.lisp:3138
#, lisp-format
msgid "a password to unlock certificate for ~a is needed: "
msgstr ""
#: src/gemini-viewer.lisp:852 src/tui-utils.lisp:534 src/tui-utils.lisp:546
#: src/gemini-viewer.lisp:853 src/gemini/subscription.lisp:95
#, lisp-format
msgid "Warning: ~a"
msgstr ""
#: src/gemini-viewer.lisp:872 src/tui-utils.lisp:534 src/tui-utils.lisp:546
#: src/ui-goodies.lisp:3085
#, lisp-format
msgid "Error: ~a"
msgstr ""
#: src/gemini-viewer.lisp:859 src/gemini-viewer.lisp:863
#: src/gui/server/public-api-gemini-stream.lisp:311
#: src/gui/server/public-api-gemini-stream.lisp:323
#: src/gui/server/public-api-gemini-stream.lisp:327
#: src/gemini-viewer.lisp:879 src/gemini-viewer.lisp:883
#: src/gui/server/public-api-gemini-stream.lisp:325
#: src/gui/server/public-api-gemini-stream.lisp:337
#: src/gui/server/public-api-gemini-stream.lisp:341
#, lisp-format
msgid "Error getting ~s: ~a"
msgstr ""
#: src/gemini-viewer.lisp:871
#: src/gemini-viewer.lisp:891
#, lisp-format
msgid "Going back to: ~a"
msgstr ""
#: src/gemini-viewer.lisp:883
#: src/gemini-viewer.lisp:903
#, lisp-format
msgid "Viewing source of: ~a"
msgstr ""
#: src/gemini-viewer.lisp:939
#: src/gemini-viewer.lisp:959
msgid "Current gemini streams"
msgstr ""
@ -379,10 +384,15 @@ msgstr ""
#: src/gemini/client.lisp:249
#, lisp-format
msgid "The certificate of host ~a has changed from your latest visit"
msgid "The certificate provided by host ~a has changed from your latest visit"
msgstr ""
#: src/gemini/titan.lisp:189
#: src/gemini/client.lisp:259
#, lisp-format
msgid "The certificate provided by host ~a has expired"
msgstr ""
#: src/gemini/titan.lisp:200
#, lisp-format
msgid "Connection prematurely closed from the server: ~a"
msgstr ""
@ -430,7 +440,7 @@ msgstr ""
msgid "~s is not a valid gemini address"
msgstr ""
#: src/gui/client/bookmark-window.lisp:28 src/gui/client/main-window.lisp:251
#: src/gui/client/bookmark-window.lisp:28 src/gui/client/main-window.lisp:260
msgid "Streams"
msgstr ""
@ -460,7 +470,7 @@ msgid_plural "~a elements deleted"
msgstr[0] ""
msgstr[1] ""
#: src/gui/client/bookmark-window.lisp:112 src/gui/client/main-window.lisp:239
#: src/gui/client/bookmark-window.lisp:112 src/gui/client/main-window.lisp:248
msgid "Bookmarks"
msgstr ""
@ -523,7 +533,7 @@ msgid "Gemini address"
msgstr ""
#: src/gui/client/certificates-window.lisp:229
#: src/gui/client/gui-goodies.lisp:100 src/gui/client/main-window.lisp:1480
#: src/gui/client/gui-goodies.lisp:100 src/gui/client/main-window.lisp:1516
#: src/windows.lisp:642 src/windows.lisp:698
msgid "OK"
msgstr ""
@ -533,7 +543,7 @@ msgid "Import certificates"
msgstr ""
#: src/gui/client/certificates-window.lisp:261
#: src/gui/client/main-window.lisp:243
#: src/gui/client/main-window.lisp:252
msgid "Certificates"
msgstr ""
@ -594,7 +604,7 @@ msgstr ""
msgid "Copy selected gemlog links to the clipboard"
msgstr ""
#: src/gui/client/gemlog-window.lisp:181 src/gui/client/main-window.lisp:240
#: src/gui/client/gemlog-window.lisp:181 src/gui/client/main-window.lisp:249
msgid "Gemlogs"
msgstr ""
@ -625,12 +635,12 @@ msgstr ""
msgid "information"
msgstr ""
#: src/gui/client/gui-goodies.lisp:52 src/line-oriented-window.lisp:505
#: src/gui/client/gui-goodies.lisp:52 src/line-oriented-window.lisp:506
#: src/ui-goodies.lisp:153 src/ui-goodies.lisp:170
msgid "Information"
msgstr ""
#: src/gui/client/gui-goodies.lisp:55 src/gui/client/main-window.lisp:1009
#: src/gui/client/gui-goodies.lisp:55 src/gui/client/main-window.lisp:1022
#: src/ui-goodies.lisp:160 src/ui-goodies.lisp:182
msgid "Error"
msgstr ""
@ -645,255 +655,255 @@ msgstr ""
msgid "Unable to create server process"
msgstr ""
#: src/gui/client/main-window.lisp:147
#: src/gui/client/main-window.lisp:153
msgid "Stream finished"
msgstr ""
#: src/gui/client/main-window.lisp:221
#: src/gui/client/main-window.lisp:228
msgid "Stream started"
msgstr ""
#: src/gui/client/main-window.lisp:236
#: src/gui/client/main-window.lisp:245
msgid "File"
msgstr ""
#: src/gui/client/main-window.lisp:237
#: src/gui/client/main-window.lisp:246
msgid "Tools"
msgstr ""
#: src/gui/client/main-window.lisp:238 src/gui/client/tour-window.lisp:69
#: src/gui/client/main-window.lisp:247 src/gui/client/tour-window.lisp:69
msgid "Tour"
msgstr ""
#: src/gui/client/main-window.lisp:241
#: src/gui/client/main-window.lisp:250
msgid "Help"
msgstr ""
#: src/gui/client/main-window.lisp:247
#: src/gui/client/main-window.lisp:256
msgid "Search"
msgstr ""
#: src/gui/client/main-window.lisp:255
#: src/gui/client/main-window.lisp:264
msgid "View source"
msgstr ""
#: src/gui/client/main-window.lisp:259
#: src/gui/client/main-window.lisp:268
msgid "Quit"
msgstr ""
#: src/gui/client/main-window.lisp:263 src/gui/client/menu-command.lisp:5
#: src/gui/client/main-window.lisp:272 src/gui/client/menu-command.lisp:5
msgid "About"
msgstr ""
#: src/gui/client/main-window.lisp:267 src/gui/client/main-window.lisp:288
#: src/gui/client/main-window.lisp:276 src/gui/client/main-window.lisp:297
msgid "Show"
msgstr ""
#: src/gui/client/main-window.lisp:271
#: src/gui/client/main-window.lisp:280
msgid "Export"
msgstr ""
#: src/gui/client/main-window.lisp:275
#: src/gui/client/main-window.lisp:284
msgid "Import"
msgstr ""
#: src/gui/client/main-window.lisp:278 src/gui/client/main-window.lisp:280
#: src/gui/client/main-window.lisp:287 src/gui/client/main-window.lisp:289
msgid "Manage"
msgstr ""
#: src/gui/client/main-window.lisp:284
#: src/gui/client/main-window.lisp:293
msgid "Shuffle"
msgstr ""
#: src/gui/client/main-window.lisp:408
#: src/gui/client/main-window.lisp:417
#, lisp-format
msgid "file ~a not found"
msgstr ""
#: src/gui/client/main-window.lisp:436 src/gui/client/main-window.lisp:1261
#: src/gui/client/titan-window.lisp:106
#: src/gui/client/main-window.lisp:449 src/gui/client/main-window.lisp:1289
#: src/gui/client/titan-window.lisp:112
msgid "Server certificate error"
msgstr ""
#: src/gui/client/main-window.lisp:447 src/gui/client/main-window.lisp:1285
#: src/gui/client/titan-window.lisp:123
#: src/gui/client/main-window.lisp:460 src/gui/client/main-window.lisp:1315
#: src/gui/client/titan-window.lisp:129
#, lisp-format
msgid "Provide the password to unlock certificate for ~a"
msgstr ""
#: src/gui/client/main-window.lisp:450 src/gui/client/main-window.lisp:1288
#: src/gui/client/titan-window.lisp:126
#: src/gui/client/main-window.lisp:463 src/gui/client/main-window.lisp:1318
#: src/gui/client/titan-window.lisp:132
msgid "Unlock certificate"
msgstr ""
#: src/gui/client/main-window.lisp:463 src/gui/client/main-window.lisp:1300
#: src/gui/client/main-window.lisp:476 src/gui/client/main-window.lisp:1332
#, lisp-format
msgid "Follow redirection to ~a?"
msgstr ""
#: src/gui/client/main-window.lisp:464 src/gui/client/main-window.lisp:1301
#: src/gui/client/main-window.lisp:477 src/gui/client/main-window.lisp:1333
msgid "Redirection"
msgstr ""
#: src/gui/client/main-window.lisp:584
#: src/gui/client/main-window.lisp:597
#, lisp-format
msgid "~a added to tour"
msgstr ""
#: src/gui/client/main-window.lisp:611
#: src/gui/client/main-window.lisp:624
msgid "gemtext window menu"
msgstr ""
#: src/gui/client/main-window.lisp:614
#: src/gui/client/main-window.lisp:627
msgid "Add all links to tour"
msgstr ""
#: src/gui/client/main-window.lisp:625
#: src/gui/client/main-window.lisp:638
#, lisp-format
msgid "~s has been copied to the clipboard"
msgstr ""
#: src/gui/client/main-window.lisp:634
#: src/gui/client/main-window.lisp:647
#, lisp-format
msgid "~s already bookmarked"
msgstr ""
#: src/gui/client/main-window.lisp:650
#: src/gui/client/main-window.lisp:663
#, lisp-format
msgid "Files ~s"
msgstr ""
#: src/gui/client/main-window.lisp:660
#: src/gui/client/main-window.lisp:673
msgid "Choose a file for saving"
msgstr ""
#: src/gui/client/main-window.lisp:666
#: src/gui/client/main-window.lisp:679
msgid "link menu"
msgstr ""
#: src/gui/client/main-window.lisp:674
#: src/gui/client/main-window.lisp:687
msgid "Inline"
msgstr ""
#: src/gui/client/main-window.lisp:676
#: src/gui/client/main-window.lisp:689
msgid "Add link to tour"
msgstr ""
#: src/gui/client/main-window.lisp:677
#: src/gui/client/main-window.lisp:690
msgid "Copy link to the clipboard"
msgstr ""
#: src/gui/client/main-window.lisp:678
#: src/gui/client/main-window.lisp:691
msgid "Add link to bookmarks"
msgstr ""
#: src/gui/client/main-window.lisp:681
#: src/gui/client/main-window.lisp:694
msgid "Save link as…"
msgstr ""
#: src/gui/client/main-window.lisp:683
#: src/gui/client/main-window.lisp:696
msgid "Open link in background"
msgstr ""
#: src/gui/client/main-window.lisp:1007
#: src/gui/client/main-window.lisp:1020
#, lisp-format
msgid "No such file or directory: ~s, search genspace instead?"
msgstr ""
#: src/gui/client/main-window.lisp:1131
#: src/gui/client/main-window.lisp:1146
msgid "Invalid address, perform a search using your input?"
msgstr ""
#: src/gui/client/main-window.lisp:1132
#: src/gui/client/main-window.lisp:1147
msgid "Invalid address"
msgstr ""
#: src/gui/client/main-window.lisp:1141
#: src/gui/client/main-window.lisp:1156
#, lisp-format
msgid "The server asks:~2%~a"
msgstr ""
#: src/gui/client/main-window.lisp:1143
#: src/gui/client/main-window.lisp:1158
msgid "Submit"
msgstr ""
#: src/gui/client/main-window.lisp:1144
#: src/gui/client/main-window.lisp:1159
msgid "Input query"
msgstr ""
#: src/gui/client/main-window.lisp:1260 src/gui/client/titan-window.lisp:105
#: src/gui/client/main-window.lisp:1288 src/gui/client/titan-window.lisp:111
msgid ""
"The certificate for this address has changed, replace the old with the one I "
"just received?"
msgstr ""
#: src/gui/client/main-window.lisp:1457 src/program-events.lisp:1590
#: src/gui/client/main-window.lisp:1493 src/program-events.lisp:1590
#, lisp-format
msgid "Unable to subscribe to ~s"
msgstr ""
#: src/gui/client/main-window.lisp:1468
#: src/gui/client/main-window.lisp:1504
msgid "Tour is terminated"
msgstr ""
#: src/gui/client/main-window.lisp:1474
#: src/gui/client/main-window.lisp:1510
msgid "Change password"
msgstr ""
#: src/gui/client/main-window.lisp:1475
#: src/gui/client/main-window.lisp:1511
msgid "Change the password of the certificate"
msgstr ""
#: src/gui/client/main-window.lisp:1476
#: src/gui/client/main-window.lisp:1512
msgid "Old password"
msgstr ""
#: src/gui/client/main-window.lisp:1477
#: src/gui/client/main-window.lisp:1513
msgid "New password"
msgstr ""
#: src/gui/client/main-window.lisp:1478
#: src/gui/client/main-window.lisp:1514
msgid "Repeat new password"
msgstr ""
#: src/gui/client/main-window.lisp:1479 src/ui-goodies.lisp:1877
#: src/gui/client/main-window.lisp:1515 src/ui-goodies.lisp:1877
msgid "password and confirmation does not match"
msgstr ""
#: src/gui/client/main-window.lisp:1489 src/ui-goodies.lisp:1876
#: src/gui/client/main-window.lisp:1525 src/ui-goodies.lisp:1876
#, lisp-format
msgid "Password changed for key ~a"
msgstr ""
#: src/gui/client/main-window.lisp:1572
#: src/gui/client/main-window.lisp:1608
msgid "go back"
msgstr ""
#: src/gui/client/main-window.lisp:1573
#: src/gui/client/main-window.lisp:1609
msgid "reload address"
msgstr ""
#: src/gui/client/main-window.lisp:1574
#: src/gui/client/main-window.lisp:1610
msgid "go to address"
msgstr ""
#: src/gui/client/main-window.lisp:1575
#: src/gui/client/main-window.lisp:1611
msgid "one level up"
msgstr ""
#: src/gui/client/main-window.lisp:1576
#: src/gui/client/main-window.lisp:1612
msgid "add or remove bookmark"
msgstr ""
#: src/gui/client/main-window.lisp:1577
#: src/gui/client/main-window.lisp:1613
msgid "go to the next link in tour"
msgstr ""
#: src/gui/client/main-window.lisp:1578
#: src/gui/client/main-window.lisp:1614
msgid "subscribe/unsubscribe to this gemlog"
msgstr ""
#: src/gui/client/main-window.lisp:1579
#: src/gui/client/main-window.lisp:1615
msgid "inline images"
msgstr ""
@ -982,31 +992,31 @@ msgid ""
"Neither a file to upload has been specified nor text data has been typed"
msgstr ""
#: src/gui/client/titan-window.lisp:140
#: src/gui/client/titan-window.lisp:146
msgid "Data uploaded"
msgstr ""
#: src/gui/client/titan-window.lisp:166
#: src/gui/client/titan-window.lisp:172
msgid "Titan address"
msgstr ""
#: src/gui/client/titan-window.lisp:169
#: src/gui/client/titan-window.lisp:175
msgid "Access token"
msgstr ""
#: src/gui/client/titan-window.lisp:172
#: src/gui/client/titan-window.lisp:178
msgid "Data to send"
msgstr ""
#: src/gui/client/titan-window.lisp:188
#: src/gui/client/titan-window.lisp:194
msgid "Upload file"
msgstr ""
#: src/gui/client/titan-window.lisp:196
#: src/gui/client/titan-window.lisp:202
msgid "Insert text"
msgstr ""
#: src/gui/client/titan-window.lisp:235
#: src/gui/client/titan-window.lisp:241
msgid "Titan request window"
msgstr ""
@ -1033,22 +1043,22 @@ msgstr ""
msgid "Error: ~a~%"
msgstr ""
#: src/gui/server/public-api-gemini-gemlog.lisp:65
#: src/gui/server/public-api-gemini-gemlog.lisp:66
#, lisp-format
msgid "Error getting posts from ~s: ~a"
msgstr ""
#: src/gui/server/public-api-gemini-gemlog.lisp:80
#: src/gui/server/public-api-gemini-gemlog.lisp:81
#, lisp-format
msgid "unable to connect to \"~a\": host not found"
msgstr ""
#: src/gui/server/public-api-gemini-stream.lisp:242
#: src/gui/server/public-api-gemini-stream.lisp:247
#, lisp-format
msgid "a password to unlock certificate for ~a is needed"
msgstr ""
#: src/gui/server/public-api-gemini-stream.lisp:393
#: src/gui/server/public-api-gemini-stream.lisp:408
#, lisp-format
msgid "no such stream ~s"
msgstr ""
@ -1182,7 +1192,11 @@ msgstr ""
msgid "Quick help"
msgstr ""
#: src/keybindings.lisp:711
#: src/keybindings.lisp:710
msgid "No help available"
msgstr ""
#: src/keybindings.lisp:714
#, lisp-format
msgid "invalid regular expression ~s ~a"
msgstr ""

View File

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: tinmop 0.9.9.14142135623\n"
"Report-Msgid-Bugs-To: https://codeberg.org/cage/tinmop/\n"
"POT-Creation-Date: 2024-08-04 11:54+0200\n"
"POT-Creation-Date: 2024-08-24 21:18+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -53,7 +53,7 @@ msgid "Open address"
msgstr ""
#: src/api-client.lisp:219 src/gui/client/certificates-window.lisp:234
#: src/gui/client/titan-window.lisp:212 src/ui-goodies.lisp:214
#: src/gui/client/titan-window.lisp:218 src/ui-goodies.lisp:214
#: src/ui-goodies.lisp:219 src/windows.lisp:635 src/windows.lisp:692
msgid "Cancel"
msgstr ""
@ -80,17 +80,17 @@ msgid ""
"Error: was not able to create server socket to listen for authorization code"
msgstr ""
#: src/api-client.lisp:881
#: src/api-client.lisp:880
#, lisp-format
msgid "type: ~a from ~a"
msgstr ""
#: src/api-client.lisp:888
#: src/api-client.lisp:887
#, lisp-format
msgid " post: ~a"
msgstr ""
#: src/api-client.lisp:1011
#: src/api-client.lisp:1010
#, lisp-format
msgid "Initializing empty credentials file in ~a"
msgstr ""
@ -329,46 +329,51 @@ msgstr ""
msgid "Gemini document downloading completed"
msgstr ""
#: src/gemini-viewer.lisp:714
#: src/gemini-viewer.lisp:717
#, lisp-format
msgid "Server ~s asks: ~s "
msgstr ""
#: src/gemini-viewer.lisp:735
#: src/gemini-viewer.lisp:739
#, lisp-format
msgid "Redirects to ~s, follows redirect? [y/N] "
msgstr ""
#: src/gemini-viewer.lisp:785 src/ui-goodies.lisp:3138
#: src/gemini-viewer.lisp:792 src/ui-goodies.lisp:3138
#, lisp-format
msgid "a password to unlock certificate for ~a is needed: "
msgstr ""
#: src/gemini-viewer.lisp:852 src/tui-utils.lisp:534 src/tui-utils.lisp:546
#: src/gemini-viewer.lisp:853 src/gemini/subscription.lisp:95
#, lisp-format
msgid "Warning: ~a"
msgstr ""
#: src/gemini-viewer.lisp:872 src/tui-utils.lisp:534 src/tui-utils.lisp:546
#: src/ui-goodies.lisp:3085
#, lisp-format
msgid "Error: ~a"
msgstr ""
#: src/gemini-viewer.lisp:859 src/gemini-viewer.lisp:863
#: src/gui/server/public-api-gemini-stream.lisp:311
#: src/gui/server/public-api-gemini-stream.lisp:323
#: src/gui/server/public-api-gemini-stream.lisp:327
#: src/gemini-viewer.lisp:879 src/gemini-viewer.lisp:883
#: src/gui/server/public-api-gemini-stream.lisp:325
#: src/gui/server/public-api-gemini-stream.lisp:337
#: src/gui/server/public-api-gemini-stream.lisp:341
#, lisp-format
msgid "Error getting ~s: ~a"
msgstr ""
#: src/gemini-viewer.lisp:871
#: src/gemini-viewer.lisp:891
#, lisp-format
msgid "Going back to: ~a"
msgstr ""
#: src/gemini-viewer.lisp:883
#: src/gemini-viewer.lisp:903
#, lisp-format
msgid "Viewing source of: ~a"
msgstr ""
#: src/gemini-viewer.lisp:939
#: src/gemini-viewer.lisp:959
msgid "Current gemini streams"
msgstr ""
@ -379,10 +384,15 @@ msgstr ""
#: src/gemini/client.lisp:249
#, lisp-format
msgid "The certificate of host ~a has changed from your latest visit"
msgid "The certificate provided by host ~a has changed from your latest visit"
msgstr ""
#: src/gemini/titan.lisp:189
#: src/gemini/client.lisp:259
#, lisp-format
msgid "The certificate provided by host ~a has expired"
msgstr ""
#: src/gemini/titan.lisp:200
#, lisp-format
msgid "Connection prematurely closed from the server: ~a"
msgstr ""
@ -430,7 +440,7 @@ msgstr ""
msgid "~s is not a valid gemini address"
msgstr ""
#: src/gui/client/bookmark-window.lisp:28 src/gui/client/main-window.lisp:251
#: src/gui/client/bookmark-window.lisp:28 src/gui/client/main-window.lisp:260
msgid "Streams"
msgstr ""
@ -460,7 +470,7 @@ msgid_plural "~a elements deleted"
msgstr[0] ""
msgstr[1] ""
#: src/gui/client/bookmark-window.lisp:112 src/gui/client/main-window.lisp:239
#: src/gui/client/bookmark-window.lisp:112 src/gui/client/main-window.lisp:248
msgid "Bookmarks"
msgstr ""
@ -523,7 +533,7 @@ msgid "Gemini address"
msgstr ""
#: src/gui/client/certificates-window.lisp:229
#: src/gui/client/gui-goodies.lisp:100 src/gui/client/main-window.lisp:1480
#: src/gui/client/gui-goodies.lisp:100 src/gui/client/main-window.lisp:1516
#: src/windows.lisp:642 src/windows.lisp:698
msgid "OK"
msgstr ""
@ -533,7 +543,7 @@ msgid "Import certificates"
msgstr ""
#: src/gui/client/certificates-window.lisp:261
#: src/gui/client/main-window.lisp:243
#: src/gui/client/main-window.lisp:252
msgid "Certificates"
msgstr ""
@ -593,7 +603,7 @@ msgstr ""
msgid "Copy selected gemlog links to the clipboard"
msgstr ""
#: src/gui/client/gemlog-window.lisp:181 src/gui/client/main-window.lisp:240
#: src/gui/client/gemlog-window.lisp:181 src/gui/client/main-window.lisp:249
msgid "Gemlogs"
msgstr ""
@ -624,12 +634,12 @@ msgstr ""
msgid "information"
msgstr ""
#: src/gui/client/gui-goodies.lisp:52 src/line-oriented-window.lisp:505
#: src/gui/client/gui-goodies.lisp:52 src/line-oriented-window.lisp:506
#: src/ui-goodies.lisp:153 src/ui-goodies.lisp:170
msgid "Information"
msgstr ""
#: src/gui/client/gui-goodies.lisp:55 src/gui/client/main-window.lisp:1009
#: src/gui/client/gui-goodies.lisp:55 src/gui/client/main-window.lisp:1022
#: src/ui-goodies.lisp:160 src/ui-goodies.lisp:182
msgid "Error"
msgstr ""
@ -644,255 +654,255 @@ msgstr ""
msgid "Unable to create server process"
msgstr ""
#: src/gui/client/main-window.lisp:147
#: src/gui/client/main-window.lisp:153
msgid "Stream finished"
msgstr ""
#: src/gui/client/main-window.lisp:221
#: src/gui/client/main-window.lisp:228
msgid "Stream started"
msgstr ""
#: src/gui/client/main-window.lisp:236
#: src/gui/client/main-window.lisp:245
msgid "File"
msgstr ""
#: src/gui/client/main-window.lisp:237
#: src/gui/client/main-window.lisp:246
msgid "Tools"
msgstr ""
#: src/gui/client/main-window.lisp:238 src/gui/client/tour-window.lisp:69
#: src/gui/client/main-window.lisp:247 src/gui/client/tour-window.lisp:69
msgid "Tour"
msgstr ""
#: src/gui/client/main-window.lisp:241
#: src/gui/client/main-window.lisp:250
msgid "Help"
msgstr ""
#: src/gui/client/main-window.lisp:247
#: src/gui/client/main-window.lisp:256
msgid "Search"
msgstr ""
#: src/gui/client/main-window.lisp:255
#: src/gui/client/main-window.lisp:264
msgid "View source"
msgstr ""
#: src/gui/client/main-window.lisp:259
#: src/gui/client/main-window.lisp:268
msgid "Quit"
msgstr ""
#: src/gui/client/main-window.lisp:263 src/gui/client/menu-command.lisp:5
#: src/gui/client/main-window.lisp:272 src/gui/client/menu-command.lisp:5
msgid "About"
msgstr ""
#: src/gui/client/main-window.lisp:267 src/gui/client/main-window.lisp:288
#: src/gui/client/main-window.lisp:276 src/gui/client/main-window.lisp:297
msgid "Show"
msgstr ""
#: src/gui/client/main-window.lisp:271
#: src/gui/client/main-window.lisp:280
msgid "Export"
msgstr ""
#: src/gui/client/main-window.lisp:275
#: src/gui/client/main-window.lisp:284
msgid "Import"
msgstr ""
#: src/gui/client/main-window.lisp:278 src/gui/client/main-window.lisp:280
#: src/gui/client/main-window.lisp:287 src/gui/client/main-window.lisp:289
msgid "Manage"
msgstr ""
#: src/gui/client/main-window.lisp:284
#: src/gui/client/main-window.lisp:293
msgid "Shuffle"
msgstr ""
#: src/gui/client/main-window.lisp:408
#: src/gui/client/main-window.lisp:417
#, lisp-format
msgid "file ~a not found"
msgstr ""
#: src/gui/client/main-window.lisp:436 src/gui/client/main-window.lisp:1261
#: src/gui/client/titan-window.lisp:106
#: src/gui/client/main-window.lisp:449 src/gui/client/main-window.lisp:1289
#: src/gui/client/titan-window.lisp:112
msgid "Server certificate error"
msgstr ""
#: src/gui/client/main-window.lisp:447 src/gui/client/main-window.lisp:1285
#: src/gui/client/titan-window.lisp:123
#: src/gui/client/main-window.lisp:460 src/gui/client/main-window.lisp:1315
#: src/gui/client/titan-window.lisp:129
#, lisp-format
msgid "Provide the password to unlock certificate for ~a"
msgstr ""
#: src/gui/client/main-window.lisp:450 src/gui/client/main-window.lisp:1288
#: src/gui/client/titan-window.lisp:126
#: src/gui/client/main-window.lisp:463 src/gui/client/main-window.lisp:1318
#: src/gui/client/titan-window.lisp:132
msgid "Unlock certificate"
msgstr ""
#: src/gui/client/main-window.lisp:463 src/gui/client/main-window.lisp:1300
#: src/gui/client/main-window.lisp:476 src/gui/client/main-window.lisp:1332
#, lisp-format
msgid "Follow redirection to ~a?"
msgstr ""
#: src/gui/client/main-window.lisp:464 src/gui/client/main-window.lisp:1301
#: src/gui/client/main-window.lisp:477 src/gui/client/main-window.lisp:1333
msgid "Redirection"
msgstr ""
#: src/gui/client/main-window.lisp:584
#: src/gui/client/main-window.lisp:597
#, lisp-format
msgid "~a added to tour"
msgstr ""
#: src/gui/client/main-window.lisp:611
#: src/gui/client/main-window.lisp:624
msgid "gemtext window menu"
msgstr ""
#: src/gui/client/main-window.lisp:614
#: src/gui/client/main-window.lisp:627
msgid "Add all links to tour"
msgstr ""
#: src/gui/client/main-window.lisp:625
#: src/gui/client/main-window.lisp:638
#, lisp-format
msgid "~s has been copied to the clipboard"
msgstr ""
#: src/gui/client/main-window.lisp:634
#: src/gui/client/main-window.lisp:647
#, lisp-format
msgid "~s already bookmarked"
msgstr ""
#: src/gui/client/main-window.lisp:650
#: src/gui/client/main-window.lisp:663
#, lisp-format
msgid "Files ~s"
msgstr ""
#: src/gui/client/main-window.lisp:660
#: src/gui/client/main-window.lisp:673
msgid "Choose a file for saving"
msgstr ""
#: src/gui/client/main-window.lisp:666
#: src/gui/client/main-window.lisp:679
msgid "link menu"
msgstr ""
#: src/gui/client/main-window.lisp:674
#: src/gui/client/main-window.lisp:687
msgid "Inline"
msgstr ""
#: src/gui/client/main-window.lisp:676
#: src/gui/client/main-window.lisp:689
msgid "Add link to tour"
msgstr ""
#: src/gui/client/main-window.lisp:677
#: src/gui/client/main-window.lisp:690
msgid "Copy link to the clipboard"
msgstr ""
#: src/gui/client/main-window.lisp:678
#: src/gui/client/main-window.lisp:691
msgid "Add link to bookmarks"
msgstr ""
#: src/gui/client/main-window.lisp:681
#: src/gui/client/main-window.lisp:694
msgid "Save link as…"
msgstr ""
#: src/gui/client/main-window.lisp:683
#: src/gui/client/main-window.lisp:696
msgid "Open link in background"
msgstr ""
#: src/gui/client/main-window.lisp:1007
#: src/gui/client/main-window.lisp:1020
#, lisp-format
msgid "No such file or directory: ~s, search genspace instead?"
msgstr ""
#: src/gui/client/main-window.lisp:1131
#: src/gui/client/main-window.lisp:1146
msgid "Invalid address, perform a search using your input?"
msgstr ""
#: src/gui/client/main-window.lisp:1132
#: src/gui/client/main-window.lisp:1147
msgid "Invalid address"
msgstr ""
#: src/gui/client/main-window.lisp:1141
#: src/gui/client/main-window.lisp:1156
#, lisp-format
msgid "The server asks:~2%~a"
msgstr ""
#: src/gui/client/main-window.lisp:1143
#: src/gui/client/main-window.lisp:1158
msgid "Submit"
msgstr ""
#: src/gui/client/main-window.lisp:1144
#: src/gui/client/main-window.lisp:1159
msgid "Input query"
msgstr ""
#: src/gui/client/main-window.lisp:1260 src/gui/client/titan-window.lisp:105
#: src/gui/client/main-window.lisp:1288 src/gui/client/titan-window.lisp:111
msgid ""
"The certificate for this address has changed, replace the old with the one I "
"just received?"
msgstr ""
#: src/gui/client/main-window.lisp:1457 src/program-events.lisp:1590
#: src/gui/client/main-window.lisp:1493 src/program-events.lisp:1590
#, lisp-format
msgid "Unable to subscribe to ~s"
msgstr ""
#: src/gui/client/main-window.lisp:1468
#: src/gui/client/main-window.lisp:1504
msgid "Tour is terminated"
msgstr ""
#: src/gui/client/main-window.lisp:1474
#: src/gui/client/main-window.lisp:1510
msgid "Change password"
msgstr ""
#: src/gui/client/main-window.lisp:1475
#: src/gui/client/main-window.lisp:1511
msgid "Change the password of the certificate"
msgstr ""
#: src/gui/client/main-window.lisp:1476
#: src/gui/client/main-window.lisp:1512
msgid "Old password"
msgstr ""
#: src/gui/client/main-window.lisp:1477
#: src/gui/client/main-window.lisp:1513
msgid "New password"
msgstr ""
#: src/gui/client/main-window.lisp:1478
#: src/gui/client/main-window.lisp:1514
msgid "Repeat new password"
msgstr ""
#: src/gui/client/main-window.lisp:1479 src/ui-goodies.lisp:1877
#: src/gui/client/main-window.lisp:1515 src/ui-goodies.lisp:1877
msgid "password and confirmation does not match"
msgstr ""
#: src/gui/client/main-window.lisp:1489 src/ui-goodies.lisp:1876
#: src/gui/client/main-window.lisp:1525 src/ui-goodies.lisp:1876
#, lisp-format
msgid "Password changed for key ~a"
msgstr ""
#: src/gui/client/main-window.lisp:1572
#: src/gui/client/main-window.lisp:1608
msgid "go back"
msgstr ""
#: src/gui/client/main-window.lisp:1573
#: src/gui/client/main-window.lisp:1609
msgid "reload address"
msgstr ""
#: src/gui/client/main-window.lisp:1574
#: src/gui/client/main-window.lisp:1610
msgid "go to address"
msgstr ""
#: src/gui/client/main-window.lisp:1575
#: src/gui/client/main-window.lisp:1611
msgid "one level up"
msgstr ""
#: src/gui/client/main-window.lisp:1576
#: src/gui/client/main-window.lisp:1612
msgid "add or remove bookmark"
msgstr ""
#: src/gui/client/main-window.lisp:1577
#: src/gui/client/main-window.lisp:1613
msgid "go to the next link in tour"
msgstr ""
#: src/gui/client/main-window.lisp:1578
#: src/gui/client/main-window.lisp:1614
msgid "subscribe/unsubscribe to this gemlog"
msgstr ""
#: src/gui/client/main-window.lisp:1579
#: src/gui/client/main-window.lisp:1615
msgid "inline images"
msgstr ""
@ -981,31 +991,31 @@ msgid ""
"Neither a file to upload has been specified nor text data has been typed"
msgstr ""
#: src/gui/client/titan-window.lisp:140
#: src/gui/client/titan-window.lisp:146
msgid "Data uploaded"
msgstr ""
#: src/gui/client/titan-window.lisp:166
#: src/gui/client/titan-window.lisp:172
msgid "Titan address"
msgstr ""
#: src/gui/client/titan-window.lisp:169
#: src/gui/client/titan-window.lisp:175
msgid "Access token"
msgstr ""
#: src/gui/client/titan-window.lisp:172
#: src/gui/client/titan-window.lisp:178
msgid "Data to send"
msgstr ""
#: src/gui/client/titan-window.lisp:188
#: src/gui/client/titan-window.lisp:194
msgid "Upload file"
msgstr ""
#: src/gui/client/titan-window.lisp:196
#: src/gui/client/titan-window.lisp:202
msgid "Insert text"
msgstr ""
#: src/gui/client/titan-window.lisp:235
#: src/gui/client/titan-window.lisp:241
msgid "Titan request window"
msgstr ""
@ -1032,22 +1042,22 @@ msgstr ""
msgid "Error: ~a~%"
msgstr ""
#: src/gui/server/public-api-gemini-gemlog.lisp:65
#: src/gui/server/public-api-gemini-gemlog.lisp:66
#, lisp-format
msgid "Error getting posts from ~s: ~a"
msgstr ""
#: src/gui/server/public-api-gemini-gemlog.lisp:80
#: src/gui/server/public-api-gemini-gemlog.lisp:81
#, lisp-format
msgid "unable to connect to \"~a\": host not found"
msgstr ""
#: src/gui/server/public-api-gemini-stream.lisp:242
#: src/gui/server/public-api-gemini-stream.lisp:247
#, lisp-format
msgid "a password to unlock certificate for ~a is needed"
msgstr ""
#: src/gui/server/public-api-gemini-stream.lisp:393
#: src/gui/server/public-api-gemini-stream.lisp:408
#, lisp-format
msgid "no such stream ~s"
msgstr ""
@ -1181,7 +1191,11 @@ msgstr ""
msgid "Quick help"
msgstr ""
#: src/keybindings.lisp:711
#: src/keybindings.lisp:710
msgid "No help available"
msgstr ""
#: src/keybindings.lisp:714
#, lisp-format
msgid "invalid regular expression ~s ~a"
msgstr ""

View File

@ -678,16 +678,17 @@
fragment)))))))))
(defun request (url &key
(titan-data nil)
(titan-mime nil)
(titan-size nil)
(titan-token nil)
(enqueue nil)
(certificate nil)
(certificate-key nil)
(certificate-key-password nil)
(use-cached-file-if-exists nil)
(do-nothing-if-exists-in-db nil))
(titan-data nil)
(titan-mime nil)
(titan-size nil)
(titan-token nil)
(enqueue nil)
(certificate nil)
(certificate-key nil)
(certificate-key-password nil)
(use-cached-file-if-exists nil)
(do-nothing-if-exists-in-db nil)
(ignore-certificate-expiration nil))
(labels ((get-user-input (hide-input url prompt)
(multiple-value-bind (actual-iri host path query port fragment scheme)
(gemini-client:displace-iri (iri:iri-parse url))
@ -702,6 +703,8 @@
:query
encoded-input
:port port)
:ignore-certificate-expiration
ignore-certificate-expiration
:certificate-key certificate-key
:certificate-key-password certificate-key-password
:certificate certificate
@ -724,6 +727,7 @@
parsed-iri)))
(db-utils:with-ready-database (:connect nil)
(request new-url
:ignore-certificate-expiration ignore-certificate-expiration
:enqueue enqueue
:certificate-key certificate-key
:certificate-key-password certificate-key-password
@ -761,12 +765,14 @@
(os-utils:ssl-key-has-empty-password-p cached-key))
(gemini-client:substitute-cache-certificate-password cached-certificate "")
(request iri
:ignore-certificate-expiration ignore-certificate-expiration
:do-nothing-if-exists-in-db do-nothing-if-exists-in-db
:certificate-key cached-key
:certificate-key-password ""
:certificate cached-certificate))
(cached-key-password
(request iri
:ignore-certificate-expiration ignore-certificate-expiration
:do-nothing-if-exists-in-db do-nothing-if-exists-in-db
:certificate-key cached-key
:certificate-key-password cached-key-password
@ -777,6 +783,7 @@
(gemini-client:save-cache-certificate-password cached-certificate
password)
(request url
:ignore-certificate-expiration ignore-certificate-expiration
:enqueue enqueue
:certificate-key certificate-key
:certificate-key-password password
@ -823,6 +830,7 @@
(progn
(gemini-client:debug-gemini "caching *not* found for ~a" actual-iri)
(request actual-iri
:ignore-certificate-expiration ignore-certificate-expiration
:enqueue enqueue
:certificate-key certificate-key
:certificate certificate
@ -835,14 +843,26 @@
(ensure-just-one-stream-rendering))
(gemini-client:request-dispatch url
gemini-client::dispatch-table
:ignore-certificate-expiration
ignore-certificate-expiration
:certificate certificate
:certificate-key certificate-key
:certificate-key-password
certificate-key-password)))))
(gemini-client:gemini-certificate-expired (w)
(ui:notify (format nil (_ "Warning: ~a") w))
(request url
:ignore-certificate-expiration t
:enqueue enqueue
:certificate certificate
:certificate-key certificate-key
:do-nothing-if-exists-in-db do-nothing-if-exists-in-db))
(gemini-client:gemini-tofu-error (e)
(ui:ask-input-on-tofu-error e
(lambda ()
(request url
:ignore-certificate-expiration
ignore-certificate-expiration
:enqueue enqueue
:certificate certificate
:certificate-key certificate-key

View File

@ -246,10 +246,20 @@
:reader host))
(:report (lambda (condition stream)
(format stream
(_ "The certificate of host ~a has changed from your latest visit")
(_ "The certificate provided by host ~a has changed from your latest visit")
(host condition))))
(:documentation "The condition signalled when tofu failed"))
(define-condition gemini-certificate-expired (warning)
((host
:initarg :host
:reader host))
(:report (lambda (condition stream)
(format stream
(_ "The certificate provided by host ~a has expired")
(host condition))))
(:documentation "The condition signalled when the TLS certificate has expired"))
(defparameter *gemini-page-theme* nil)
(defun init-default-gemini-theme (viewport)
@ -447,7 +457,8 @@
(fragment nil)
(client-certificate nil)
(certificate-key nil)
(certificate-key-password nil))
(certificate-key-password nil)
(ignore-certificate-expiration nil))
(multiple-value-bind (proxy-host proxy-port)
(swconf:config-gemini-proxy)
(let* ((iri (make-gemini-iri (idn:host-unicode->ascii host)
@ -483,17 +494,23 @@
(request (format nil "~a~a~a" iri #\return #\newline))
(cert-hash (crypto-shortcuts:sha512 (x509:dump-certificate ssl-stream))))
(debug-gemini "sending request ~a" request)
(if (not (db:tofu-passes-p actual-host cert-hash))
(error 'gemini-tofu-error :host actual-host)
(progn
(write-sequence (string->octets request) ssl-stream)
(force-output ssl-stream)
(hooks:run-hooks 'hooks:*after-gemini-request-sent*)
(multiple-value-bind (status description meta response)
#+sbcl (sb-sys:with-deadline (:seconds +read-response-deadline+)
(parse-response ssl-stream))
#-sbcl (parse-response ssl-stream)
(values status description meta response socket))))))
(cond
((not (db:tofu-passes-p actual-host cert-hash))
(error 'gemini-tofu-error :host actual-host))
((and (not ignore-certificate-expiration)
(x509:certificate-expired-p ssl-stream))
(warn 'gemini-certificate-expired :host actual-host))
(t
(write-sequence (string->octets request) ssl-stream)
(force-output ssl-stream)
(hooks:run-hooks 'hooks:*after-gemini-request-sent*)
(multiple-value-bind (status description meta response)
#+sbcl (sb-sys:with-deadline (:seconds +read-response-deadline+)
(parse-response ssl-stream))
#-sbcl (parse-response ssl-stream)
(values status description meta response socket))))))
(warning (w)
(warn w))
(error (e)
(error e)))))))
@ -508,7 +525,8 @@
&key
(certificate nil)
(certificate-key nil)
(certificate-key-password))
(certificate-key-password)
(ignore-certificate-expiration nil))
(multiple-value-bind (actual-iri host path query port)
(displace-iri (iri:iri-parse url))
(declare (ignore actual-iri))
@ -521,6 +539,8 @@
size
token
data
:ignore-certificate-expiration
ignore-certificate-expiration
:query query
:port port
:certificate-key certificate-key
@ -537,7 +557,8 @@
&key
(certificate nil)
(certificate-key nil)
(certificate-key-password nil))
(certificate-key-password nil)
(ignore-certificate-expiration nil))
(flet ((make-titan-request ()
(multiple-value-bind (no-parameters-path titan-data size mime token)
(funcall (getf manage-functions :titan-upload
@ -554,6 +575,7 @@
mime
size
token
:ignore-certificate-expiration ignore-certificate-expiration
:certificate certificate
:certificate-key certificate-key
:certificate-key-password certificate-key-password))))
@ -566,6 +588,7 @@
(make-titan-request)
(gemini-client:request host
path
:ignore-certificate-expiration ignore-certificate-expiration
:scheme (or scheme
+gemini-scheme+)
:certificate-key certificate-key
@ -743,7 +766,9 @@
(define-constant +maximum-redirections+ 5 :test `=)
(defun slurp-gemini-url (url &optional (redirect-count 0))
(defun slurp-gemini-url (url &optional
(redirect-count 0)
(ignore-certificate-expiration t))
"Read 'full' data from gemini address `url'; note that specs says
that gemini flow is streamed by default so this function has limited
use as there is a chance that it would not returns. Anyway for gemlog
@ -769,7 +794,9 @@ TODO: Add client certificate."
(with-request-dispatch-table ((:success #'success-dispatch
:redirect #'redirect-dispatch)
:ignore-warning t)
(request-dispatch url dispatch-table))
(request-dispatch url
dispatch-table
:ignore-certificate-expiration ignore-certificate-expiration))
(fs:slurp-file url :convert-to-string nil))))
(defun url-needs-proxy-p (url)

View File

@ -161,6 +161,7 @@
:error-code
:error-description
:gemini-tofu-error
:gemini-certificate-expired
:*gemini-page-theme*
:make-gemini-file-response
:host

View File

@ -91,5 +91,7 @@ This function return the 'post-title' substring."
be subscribed before (see: 'gemini-subscription:subcribe'"
(handler-case
(refresh-subscription-low-level url)
(gemini-client:gemini-certificate-expired (w)
(ui:notify (format nil (_ "Warning: ~a") w)))
(gemini-client:gemini-tofu-error (e)
(ui:ask-input-on-tofu-error e (lambda () (refresh url))))))

View File

@ -63,8 +63,9 @@
(defgeneric titan-request (host path mime-type size token data
&key
query port fragment client-certificate certificate-key
certificate-key-password))
query port fragment client-certificate certificate-key
certificate-key-password
ignore-certificate-expiration))
(defmethod titan-request (host path mime-type (size integer) token (data string)
&key
@ -73,7 +74,8 @@
(fragment nil)
(client-certificate nil)
(certificate-key nil)
(certificate-key-password nil))
(certificate-key-password nil)
(ignore-certificate-expiration nil))
(flex:with-input-from-sequence (stream (text-utils:string->octets data))
(titan-request host
path
@ -81,6 +83,7 @@
size
token
stream
:ignore-certificate-expiration ignore-certificate-expiration
:query query
:port port
:fragment fragment
@ -95,7 +98,8 @@
(fragment nil)
(client-certificate nil)
(certificate-key nil)
(certificate-key-password nil))
(certificate-key-password nil)
(ignore-certificate-expiration nil))
(with-open-file (stream
data
:direction :input
@ -107,6 +111,7 @@
size
token
stream
:ignore-certificate-expiration ignore-certificate-expiration
:query query
:port port
:fragment fragment
@ -121,7 +126,8 @@
(fragment nil)
(client-certificate nil)
(certificate-key nil)
(certificate-key-password nil))
(certificate-key-password nil)
(ignore-certificate-expiration nil))
(let* ((iri (make-gemini-iri (idn:host-unicode->ascii host)
(strcat (percent-encode-path path)
(make-titan-parameters mime-type
@ -152,42 +158,47 @@
(request (format nil "~a~a~a" iri #\return #\newline))
(cert-hash (crypto-shortcuts:sha512 (x509:dump-certificate ssl-stream))))
(debug-gemini "sending titan request ~a" request)
(if (not (db:tofu-passes-p host cert-hash))
(error 'gemini-tofu-error :host host)
(handler-case
(progn
(write-sequence (string->octets request) ssl-stream)
(force-output ssl-stream)
(read-stream-chunks data
+chunk-buffer-size+
(lambda (buffer read-so-far)
(write-sequence (subseq buffer 0 read-so-far)
ssl-stream)
(force-output ssl-stream)))
(hooks:run-hooks 'hooks:*after-titan-request-sent*)
(multiple-value-bind (status description meta response)
(parse-response ssl-stream)
(close-ssl-socket socket)
(values status description meta response socket)))
(gemini-protocol-error (e)
(close-ssl-socket socket)
(values (error-code e)
(error-description e)
(meta e)
(meta e)
socket))
(error ()
(handler-case
(multiple-value-bind (status description meta response)
(parse-response ssl-stream)
(close-ssl-socket socket)
(values status description meta response socket))
(error (e)
(close-ssl-socket socket)
(values 50
(format nil
(_ "Connection prematurely closed from the server: ~a")
e)
nil
nil
socket)))))))))))
(cond
((not (db:tofu-passes-p host cert-hash))
(error 'gemini-tofu-error :host host))
((and (not ignore-certificate-expiration)
(x509:certificate-expired-p ssl-stream))
(warn 'gemini-certificate-expired :host host))
(t
(handler-case
(progn
(write-sequence (string->octets request) ssl-stream)
(force-output ssl-stream)
(read-stream-chunks data
+chunk-buffer-size+
(lambda (buffer read-so-far)
(write-sequence (subseq buffer 0 read-so-far)
ssl-stream)
(force-output ssl-stream)))
(hooks:run-hooks 'hooks:*after-titan-request-sent*)
(multiple-value-bind (status description meta response)
(parse-response ssl-stream)
(close-ssl-socket socket)
(values status description meta response socket)))
(gemini-protocol-error (e)
(close-ssl-socket socket)
(values (error-code e)
(error-description e)
(meta e)
(meta e)
socket))
(error ()
(handler-case
(multiple-value-bind (status description meta response)
(parse-response ssl-stream)
(close-ssl-socket socket)
(values status description meta response socket))
(error (e)
(close-ssl-socket socket)
(values 50
(format nil
(_ "Connection prematurely closed from the server: ~a")
e)
nil
nil
socket))))))))))))

View File

@ -132,10 +132,16 @@
&key
(use-cache t)
(process-function #'identity)
(aborting-function (constantly nil)))
(aborting-function (constantly nil))
(ignore-certificate-expiration nil))
(ev:with-enqueued-process-and-unblock ()
(set-focus-to-gemtext main-window))
(enqueue-request-notify-error :gemini-request 1 iri use-cache nil)
(enqueue-request-notify-error :gemini-request
1
iri
use-cache
nil
ignore-certificate-expiration)
(labels ((stream-exausted-p ()
(let ((status-completed (comm:make-request :gemini-stream-completed-p
1
@ -205,7 +211,8 @@
&key
(use-cache t)
(process-function #'identity)
(status +stream-status-streaming+))
(status +stream-status-streaming+)
(ignore-certificate-expiration nil))
(let ((existing-stream (find-db-stream-url iri)))
(when existing-stream
(stop-stream-thread existing-stream)
@ -227,7 +234,9 @@
:process-function
process-function
:aborting-function
#'aborting-function)))))
#'aborting-function
:ignore-certificate-expiration
ignore-certificate-expiration)))))
(setf (fetching-thread stream-wrapper) stream-thread)
stream-wrapper)))))
@ -401,7 +410,7 @@
path
query)))))
(defun slurp-iri (main-window iri)
(defun slurp-iri (main-window iri &key (ignore-certificate-expiration nil))
(if (not (iri:absolute-url-p iri))
(if (fs:file-exists-p iri)
iri
@ -411,7 +420,8 @@
ev:+maximum-event-priority+
iri
t
nil)))
nil
ignore-certificate-expiration)))
(multiple-value-bind (status-code
status-description
meta
@ -431,6 +441,9 @@
main-window
:sensitive t)))
(slurp-iri main-window actual-iri)))
((= status-code comm:+certificate-expired-status-code+)
(print-error-message status-description)
(slurp-iri main-window iri))
((= status-code comm:+tofu-error-status-code+)
(when (gui:ask-yesno meta
:title (_ "Server certificate error")
@ -1101,6 +1114,7 @@ local file paths."
(start-stream-iri (iri-ensure-path (to-s parsed-iri))
main-window
use-cache
:ignore-certificate-expiration nil
:status status
:process-iri-lines-function (collect-source-lines-clsr main-window)))
((iri:iri= actual-iri (internal-iri-bookmark))
@ -1116,6 +1130,7 @@ local file paths."
(start-stream-iri (iri-ensure-path actual-iri)
main-window
use-cache
:ignore-certificate-expiration nil
:status status)
(client-stream-frame::refresh-all-streams
(client-stream-frame::table stream-frame))))
@ -1232,7 +1247,8 @@ local file paths."
&key
(status +stream-status-streaming+)
(process-iri-lines-function (collect-iri-lines-clsr main-window
iri)))
iri))
(ignore-certificate-expiration nil))
(flet ((actually-use-cache-p ()
;; we need to use 't' or 'nil' as results from this
;; function because the json-rpc does not know how to
@ -1245,7 +1261,8 @@ local file paths."
ev:+maximum-event-priority+
iri
(actually-use-cache-p)
nil)))
nil
ignore-certificate-expiration)))
(multiple-value-bind (status-code
status-description
meta
@ -1256,10 +1273,17 @@ local file paths."
(cond
((gemini-client:header-input-p status-code)
(a:when-let ((actual-iri (get-user-request-query iri meta main-window)))
(start-stream-iri actual-iri main-window nil)))
(start-stream-iri actual-iri main-window nil
:ignore-certificate-expiration ignore-certificate-expiration)))
((gemini-client:header-sensitive-input-p status-code)
(a:when-let ((actual-iri (get-user-request-query iri meta main-window :sensitive t)))
(start-stream-iri actual-iri main-window nil)))
(start-stream-iri actual-iri main-window nil
)))
((= status-code comm:+certificate-expired-status-code+)
(print-error-message status-description)
(start-stream-iri iri main-window use-cache
:status status
:ignore-certificate-expiration t))
((= status-code comm:+tofu-error-status-code+)
(when (gui:ask-yesno (_ "The certificate for this address has changed, replace the old with the one I just received?")
:title (_ "Server certificate error")
@ -1268,7 +1292,9 @@ local file paths."
1
ev:+maximum-event-priority+
iri)
(start-stream-iri iri main-window use-cache :status status)))
(start-stream-iri iri main-window use-cache
:status status
:ignore-certificate-expiration ignore-certificate-expiration)))
((or (gemini-client:header-temporary-failure-p status-code)
(gemini-client:header-permanent-failure-p status-code)
(gemini-client:header-certificate-failure-p status-code))
@ -1299,7 +1325,9 @@ local file paths."
ev:+maximum-event-priority+
certificate-path
actual-password)
(start-stream-iri iri main-window use-cache :status status)))
(start-stream-iri iri main-window use-cache
:status status
:ignore-certificate-expiration ignore-certificate-expiration)))
((gemini-client:header-redirect-p status-code)
(when (gui:ask-yesno (format nil (_ "Follow redirection to ~a?") meta)
:title (_ "Redirection")
@ -1307,7 +1335,9 @@ local file paths."
(let ((redirect-iri (if (iri:absolute-url-p meta)
meta
(absolutize-link iri meta))))
(start-stream-iri redirect-iri main-window use-cache :status status))))
(start-stream-iri redirect-iri main-window use-cache
:status status
:ignore-certificate-expiration ignore-certificate-expiration))))
((gemini-client:header-success-p status-code)
(cond
((eq status +stream-status-streaming+)
@ -1320,6 +1350,8 @@ local file paths."
(initialize-ir-lines main-window)
(start-streaming-thread main-window
iri
:ignore-certificate-expiration
ignore-certificate-expiration
:use-cache t
:status status
:process-function process-iri-lines-function))

View File

@ -48,7 +48,7 @@
(setf (file-chosen titan-frame) new-file-path
(gui:text (file-choose-button titan-frame)) new-file-path)))))
(defun launch-titan-request-clsr (frame)
(defun launch-titan-request-clsr (frame &key (ignore-certificate-expiration nil))
(lambda ()
(with-accessors ((url-entry url-entry)
(token-entry token-entry)
@ -89,7 +89,8 @@
ev:+maximum-event-priority+
(to-s url)
nil
titan-data)))
titan-data
ignore-certificate-expiration)))
(multiple-value-bind (status-code
status-description
meta
@ -101,6 +102,11 @@
((or (gemini-client:header-input-p status-code)
(gemini-client:header-sensitive-input-p status-code))
(error "Server returned an invalid response ~a" status-code))
((= status-code comm:+certificate-expired-status-code+)
(client-main-window::print-error-message status-description)
(funcall (launch-titan-request-clsr frame
:ignore-certificate-expiration t)))
((= status-code comm:+tofu-error-status-code+)
(when (gui:ask-yesno (_ "The certificate for this address has changed, replace the old with the one I just received?")
:title (_ "Server certificate error")

View File

@ -60,7 +60,8 @@
(defun gemini-gemlog-refresh-subscription (gemlog-url)
(handler-case
(list (cons "url" gemlog-url)
(cons "new-posts" (gemini-subscription:refresh-subscription-low-level gemlog-url)))
(cons "new-posts"
(gemini-subscription:refresh-subscription-low-level gemlog-url)))
(error (e)
(error (format nil (_ "Error getting posts from ~s: ~a") gemlog-url e)))))

View File

@ -23,6 +23,8 @@
(a:define-constant +certificate-password-not-found-error-status-code+ -2 :test #'=)
(a:define-constant +certificate-expired-status-code+ -3 :test #'=)
(defun debug-gemini-gui (&rest data)
(apply #'gemini-client:debug-gemini
(strcat "[gui] " (first data))
@ -188,12 +190,13 @@
(cons "iri" iri)))
(defun %gemini-request (url &key
(titan-data nil)
(certificate nil)
(certificate-key nil)
(certificate-key-password nil)
(use-cached-file-if-exists nil)
(do-nothing-if-exists-in-db nil))
(titan-data nil)
(certificate nil)
(certificate-key nil)
(certificate-key-password nil)
(use-cached-file-if-exists nil)
(do-nothing-if-exists-in-db nil)
(ignore-certificate-expiration nil))
(labels ((redirect-dispatch (status code-description meta response socket iri parsed-iri)
(declare (ignore parsed-iri response socket))
(debug-gemini-gui "response redirect to: ~s" meta)
@ -225,6 +228,7 @@
(os-utils:ssl-key-has-empty-password-p cached-key))
(gemini-client:substitute-cache-certificate-password cached-certificate "")
(%gemini-request iri
:ignore-certificate-expiration ignore-certificate-expiration
:titan-data titan-data
:do-nothing-if-exists-in-db do-nothing-if-exists-in-db
:certificate-key cached-key
@ -232,6 +236,7 @@
:certificate cached-certificate))
(cached-key-password
(%gemini-request iri
:ignore-certificate-expiration ignore-certificate-expiration
:titan-data titan-data
:do-nothing-if-exists-in-db do-nothing-if-exists-in-db
:certificate-key cached-key
@ -284,6 +289,8 @@
(progn
(debug-gemini-gui "caching *not* found for ~a" actual-iri)
(%gemini-request actual-iri
:ignore-certificate-expiration
ignore-certificate-expiration
:titan-data titan-data
:certificate-key certificate-key
:certificate certificate
@ -298,10 +305,17 @@
(debug-gemini-gui "error removing stream: ~a" e)))
(gemini-client:request-dispatch url
gemini-client::dispatch-table
:ignore-certificate-expiration
ignore-certificate-expiration
:certificate certificate
:certificate-key-password
certificate-key-password
:certificate-key certificate-key)))))
(gemini-client:gemini-certificate-expired (w)
(make-gemini-response +certificate-expired-status-code+
(format nil "~a" w)
(format nil "~a" w)
url))
(gemini-client:gemini-tofu-error (e)
(make-gemini-response +tofu-error-status-code+
(format nil "~a" e)
@ -326,10 +340,11 @@
(gemini-client:remove-cached-certificate-password certificate))
(error (_ "Error getting ~s: ~a") url c)))))
(defun gemini-request (iri use-cache titan-data)
(defun gemini-request (iri use-cache titan-data ignore-certificate-expiration)
(%gemini-request iri
:titan-data titan-data
:use-cached-file-if-exists use-cache))
:ignore-certificate-expiration ignore-certificate-expiration
:titan-data titan-data
:use-cached-file-if-exists use-cache))
(defgeneric rearrange-for-encoding (object))

View File

@ -49,9 +49,10 @@
"iri" 0)
(gen-rpc "gemini-request"
'gemini-request
"iri" 0
"use-cache" 1
"titan-data" 2)
"iri" 0
"use-cache" 1
"titan-data" 2
"ignore-certificate-expiration" 3)
(gen-rpc "gemini-stream-info"
'gemini-stream-info
"iri" 0)

View File

@ -839,7 +839,8 @@
:alexandria)
(:export
:dump-certificate
:certificate-fingerprint))
:certificate-fingerprint
:certificate-expired-p))
(defpackage :db-utils
(:use
@ -3365,6 +3366,7 @@
(:export
:+tofu-error-status-code+
:+certificate-password-not-found-error-status-code+
:+certificate-expired-status-code+
:gemini-window
:metadata
:init-gemini-window

View File

@ -35,7 +35,6 @@
res))))
(cl+ssl:x509-free cert))))
(defun pem->der (pem-file)
(handler-case
(let* ((raw (fs:slurp-file pem-file))
@ -46,8 +45,6 @@
filesystem-utils::temp-file))
(error () pem-file)))
(defgeneric certificate-fingerprint (object &key hash-algorithm))
(defmacro decode-fingerprint (cert hash-algorithm)
(alexandria:with-gensyms (hash hash-string algo-string)
`(unwind-protect
@ -57,6 +54,8 @@
(text-utils:strcat ,algo-string ":" (string-downcase ,hash-string)))
(cl+ssl:x509-free ,cert))))
(defgeneric certificate-fingerprint (object &key hash-algorithm))
(defmethod certificate-fingerprint ((object cl+ssl::ssl-stream) &key (hash-algorithm :sha256))
(let ((cert (cl+ssl:ssl-stream-x509-certificate object)))
(when (not (cffi:null-pointer-p cert))
@ -66,3 +65,21 @@
(let ((cert (cl+ssl:decode-certificate-from-file (pem->der object) :format :der)))
(when (not (cffi:null-pointer-p cert))
(decode-fingerprint cert hash-algorithm))))
(defgeneric certificate-expiry-date (object))
(defmethod certificate-expiry-date ((object cl+ssl::ssl-stream))
(let ((certificate (cl+ssl:ssl-stream-x509-certificate object)))
(when (not (cffi:null-pointer-p certificate))
(cl+ssl:certificate-not-after-time certificate))))
(defmethod certificate-expiry-date ((object string))
(let ((certificate (cl+ssl:ssl-stream-x509-certificate object)))
(when (not (cffi:null-pointer-p certificate))
(cl+ssl:certificate-not-after-time certificate))))
(defun certificate-expired-p (ssl-stream)
(let ((expiration-time (certificate-expiry-date ssl-stream))
(now (get-universal-time)))
(< expiration-time
now)))