mirror of
https://github.com/rkd77/elinks.git
synced 2024-11-04 08:17:17 -05:00
Merge with git+ssh://pasky.or.cz/srv/git/elinks.git
This commit is contained in:
commit
13f4464151
200
po/fr.po
200
po/fr.po
@ -6,8 +6,8 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: ELinks 0.10.CVS\n"
|
"Project-Id-Version: ELinks 0.10.CVS\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2005-12-06 22:02+0100\n"
|
"POT-Creation-Date: 2005-12-13 17:20+0100\n"
|
||||||
"PO-Revision-Date: 2005-12-06 22:03+0100\n"
|
"PO-Revision-Date: 2005-12-13 17:21+0100\n"
|
||||||
"Last-Translator: Laurent Monin <zas@norz.org>\n"
|
"Last-Translator: Laurent Monin <zas@norz.org>\n"
|
||||||
"Language-Team: French <zas@norz.org>\n"
|
"Language-Team: French <zas@norz.org>\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
@ -35,7 +35,7 @@ msgstr "Pressez espace pour d
|
|||||||
#: src/dialogs/options.c:210 src/dialogs/options.c:290 src/mime/dialogs.c:129
|
#: src/dialogs/options.c:210 src/dialogs/options.c:290 src/mime/dialogs.c:129
|
||||||
#: src/protocol/auth/dialogs.c:110 src/protocol/protocol.c:231
|
#: src/protocol/auth/dialogs.c:110 src/protocol/protocol.c:231
|
||||||
#: src/scripting/lua/core.c:377 src/scripting/lua/core.c:457
|
#: src/scripting/lua/core.c:377 src/scripting/lua/core.c:457
|
||||||
#: src/session/session.c:799 src/viewer/text/search.c:1593
|
#: src/session/session.c:802 src/viewer/text/search.c:1593
|
||||||
msgid "~OK"
|
msgid "~OK"
|
||||||
msgstr "~OK"
|
msgstr "~OK"
|
||||||
|
|
||||||
@ -1784,7 +1784,7 @@ msgstr "Description"
|
|||||||
|
|
||||||
#: src/config/dialogs.c:320 src/protocol/bittorrent/dialogs.c:594
|
#: src/config/dialogs.c:320 src/protocol/bittorrent/dialogs.c:594
|
||||||
#: src/protocol/protocol.c:225 src/session/session.c:282
|
#: src/protocol/protocol.c:225 src/session/session.c:282
|
||||||
#: src/session/session.c:961 src/viewer/text/textarea.c:362
|
#: src/session/session.c:964 src/viewer/text/textarea.c:362
|
||||||
#: src/viewer/text/textarea.c:369
|
#: src/viewer/text/textarea.c:369
|
||||||
msgid "Error"
|
msgid "Error"
|
||||||
msgstr "Erreur"
|
msgstr "Erreur"
|
||||||
@ -3738,7 +3738,7 @@ msgstr "Texte"
|
|||||||
msgid "Dialog text colors."
|
msgid "Dialog text colors."
|
||||||
msgstr "Couleurs du texte des dialogues."
|
msgstr "Couleurs du texte des dialogues."
|
||||||
|
|
||||||
#: src/config/options.inc:978 src/viewer/text/form.c:1451
|
#: src/config/options.inc:978 src/viewer/text/form.c:1460
|
||||||
msgid "Checkbox"
|
msgid "Checkbox"
|
||||||
msgstr "Case à cocher"
|
msgstr "Case à cocher"
|
||||||
|
|
||||||
@ -3786,7 +3786,7 @@ msgstr "Raccourci du bouton"
|
|||||||
msgid "Selected button shortcut"
|
msgid "Selected button shortcut"
|
||||||
msgstr "Raccourci du bouton sélectionné"
|
msgstr "Raccourci du bouton sélectionné"
|
||||||
|
|
||||||
#: src/config/options.inc:1006 src/viewer/text/form.c:1455
|
#: src/config/options.inc:1006 src/viewer/text/form.c:1464
|
||||||
msgid "Text field"
|
msgid "Text field"
|
||||||
msgstr "Champ texte"
|
msgstr "Champ texte"
|
||||||
|
|
||||||
@ -4302,7 +4302,7 @@ msgid "Goto URL History"
|
|||||||
msgstr "Historique Aller à"
|
msgstr "Historique Aller à"
|
||||||
|
|
||||||
#. name:
|
#. name:
|
||||||
#: src/cookies/cookies.c:80 src/cookies/cookies.c:824
|
#: src/cookies/cookies.c:80 src/cookies/cookies.c:827
|
||||||
msgid "Cookies"
|
msgid "Cookies"
|
||||||
msgstr "Cookies"
|
msgstr "Cookies"
|
||||||
|
|
||||||
@ -6547,7 +6547,7 @@ msgstr "Gestionnaire d'authentification"
|
|||||||
|
|
||||||
#. name:
|
#. name:
|
||||||
#: src/protocol/bittorrent/bittorrent.c:26
|
#: src/protocol/bittorrent/bittorrent.c:26
|
||||||
#: src/protocol/bittorrent/bittorrent.c:327
|
#: src/protocol/bittorrent/bittorrent.c:335
|
||||||
msgid "BitTorrent"
|
msgid "BitTorrent"
|
||||||
msgstr "BitTorrent"
|
msgstr "BitTorrent"
|
||||||
|
|
||||||
@ -6636,10 +6636,28 @@ msgstr ""
|
|||||||
"l'adresse appropriée."
|
"l'adresse appropriée."
|
||||||
|
|
||||||
#: src/protocol/bittorrent/bittorrent.c:73
|
#: src/protocol/bittorrent/bittorrent.c:73
|
||||||
|
msgid "User identification string"
|
||||||
|
msgstr "Identification de l'utilisateur"
|
||||||
|
|
||||||
|
#: src/protocol/bittorrent/bittorrent.c:75
|
||||||
|
msgid ""
|
||||||
|
"An additional identification that is not shared with any users.\n"
|
||||||
|
"It is intended to allow a client to prove their identity should\n"
|
||||||
|
"their IP address change. It is an optional parameter, but some\n"
|
||||||
|
"trackers require this parameter. If set to \"\" no user key will\n"
|
||||||
|
"be sent to the tracker."
|
||||||
|
msgstr ""
|
||||||
|
"Une clé d'identification additionnelle qui n'est pas partagée avec\n"
|
||||||
|
"d'autres utilisateurs. L'objectif est de permette l'identification\n"
|
||||||
|
"d'un client même après un changement d'IP. Ce paramètre est optionnel,\n"
|
||||||
|
"mais certains trackers le demandent. Si mis à \"\" aucune clé ne sera\n"
|
||||||
|
"envoyée."
|
||||||
|
|
||||||
|
#: src/protocol/bittorrent/bittorrent.c:81
|
||||||
msgid "Maximum number of peers to request"
|
msgid "Maximum number of peers to request"
|
||||||
msgstr "Nombre maximum de postes à demander"
|
msgstr "Nombre maximum de postes à demander"
|
||||||
|
|
||||||
#: src/protocol/bittorrent/bittorrent.c:75
|
#: src/protocol/bittorrent/bittorrent.c:83
|
||||||
msgid ""
|
msgid ""
|
||||||
"The maximum number of peers to request from the tracker.\n"
|
"The maximum number of peers to request from the tracker.\n"
|
||||||
"Set to 0 to use the server default."
|
"Set to 0 to use the server default."
|
||||||
@ -6647,11 +6665,11 @@ msgstr ""
|
|||||||
"Nombre maximum de postes à demander au serveur.\n"
|
"Nombre maximum de postes à demander au serveur.\n"
|
||||||
"Mettre à 0 pour utiliser la valeur par défaut du serveur."
|
"Mettre à 0 pour utiliser la valeur par défaut du serveur."
|
||||||
|
|
||||||
#: src/protocol/bittorrent/bittorrent.c:78
|
#: src/protocol/bittorrent/bittorrent.c:86
|
||||||
msgid "Minimum peers to skip rerequesting"
|
msgid "Minimum peers to skip rerequesting"
|
||||||
msgstr "Nombre minimal de postes avant abandon de requêtes"
|
msgstr "Nombre minimal de postes avant abandon de requêtes"
|
||||||
|
|
||||||
#: src/protocol/bittorrent/bittorrent.c:80
|
#: src/protocol/bittorrent/bittorrent.c:88
|
||||||
msgid ""
|
msgid ""
|
||||||
"The minimum number of peers to have in the current peer info\n"
|
"The minimum number of peers to have in the current peer info\n"
|
||||||
"pool before skipping requesting of more peers. I.e. setting\n"
|
"pool before skipping requesting of more peers. I.e. setting\n"
|
||||||
@ -6665,19 +6683,19 @@ msgstr ""
|
|||||||
#. ******************************************************************
|
#. ******************************************************************
|
||||||
#. Lowlevel peer-wire options:
|
#. Lowlevel peer-wire options:
|
||||||
#. ******************************************************************
|
#. ******************************************************************
|
||||||
#: src/protocol/bittorrent/bittorrent.c:90
|
#: src/protocol/bittorrent/bittorrent.c:98
|
||||||
msgid "Peer-wire"
|
msgid "Peer-wire"
|
||||||
msgstr "Liens postes"
|
msgstr "Liens postes"
|
||||||
|
|
||||||
#: src/protocol/bittorrent/bittorrent.c:92
|
#: src/protocol/bittorrent/bittorrent.c:100
|
||||||
msgid "Lowlevel peer-wire options."
|
msgid "Lowlevel peer-wire options."
|
||||||
msgstr "Options de bas niveau pour les liens postes."
|
msgstr "Options de bas niveau pour les liens postes."
|
||||||
|
|
||||||
#: src/protocol/bittorrent/bittorrent.c:94
|
#: src/protocol/bittorrent/bittorrent.c:102
|
||||||
msgid "Maximum number of peer connections"
|
msgid "Maximum number of peer connections"
|
||||||
msgstr "Nombre maximum de connexions aux postes"
|
msgstr "Nombre maximum de connexions aux postes"
|
||||||
|
|
||||||
#: src/protocol/bittorrent/bittorrent.c:96
|
#: src/protocol/bittorrent/bittorrent.c:104
|
||||||
msgid ""
|
msgid ""
|
||||||
"The maximum number of allowed connections to both active and\n"
|
"The maximum number of allowed connections to both active and\n"
|
||||||
"non-active peers. By increasing the number of allowed connections,\n"
|
"non-active peers. By increasing the number of allowed connections,\n"
|
||||||
@ -6691,11 +6709,11 @@ msgstr ""
|
|||||||
"Toutefois, trop de connexions peuvent conduire à une congestion TCP.\n"
|
"Toutefois, trop de connexions peuvent conduire à une congestion TCP.\n"
|
||||||
"Si le maximum est atteint, toutes les nouvelles connexions seront fermées."
|
"Si le maximum est atteint, toutes les nouvelles connexions seront fermées."
|
||||||
|
|
||||||
#: src/protocol/bittorrent/bittorrent.c:102
|
#: src/protocol/bittorrent/bittorrent.c:110
|
||||||
msgid "Maximum peer message length"
|
msgid "Maximum peer message length"
|
||||||
msgstr "Longueur maximale des messages"
|
msgstr "Longueur maximale des messages"
|
||||||
|
|
||||||
#: src/protocol/bittorrent/bittorrent.c:104
|
#: src/protocol/bittorrent/bittorrent.c:112
|
||||||
msgid ""
|
msgid ""
|
||||||
"The maximum length of messages to accept over the wire.\n"
|
"The maximum length of messages to accept over the wire.\n"
|
||||||
"Larger values will cause the connection to be dropped."
|
"Larger values will cause the connection to be dropped."
|
||||||
@ -6703,11 +6721,11 @@ msgstr ""
|
|||||||
"Longueur maximale des messages à accepter sur le lien.\n"
|
"Longueur maximale des messages à accepter sur le lien.\n"
|
||||||
"De plus grande valeurs causeront une déconnexion."
|
"De plus grande valeurs causeront une déconnexion."
|
||||||
|
|
||||||
#: src/protocol/bittorrent/bittorrent.c:107
|
#: src/protocol/bittorrent/bittorrent.c:115
|
||||||
msgid "Maximum allowed request length"
|
msgid "Maximum allowed request length"
|
||||||
msgstr "Longueur maximale de requête autorisée"
|
msgstr "Longueur maximale de requête autorisée"
|
||||||
|
|
||||||
#: src/protocol/bittorrent/bittorrent.c:109
|
#: src/protocol/bittorrent/bittorrent.c:117
|
||||||
msgid ""
|
msgid ""
|
||||||
"The maximum length to allow for incoming requests.\n"
|
"The maximum length to allow for incoming requests.\n"
|
||||||
"Larger requests will cause the connection to be dropped."
|
"Larger requests will cause the connection to be dropped."
|
||||||
@ -6715,11 +6733,11 @@ msgstr ""
|
|||||||
"Longueur maximale autorisée pour les requêtes entrantes.\n"
|
"Longueur maximale autorisée pour les requêtes entrantes.\n"
|
||||||
"De plus grande valeurs causeront une déconnexion."
|
"De plus grande valeurs causeront une déconnexion."
|
||||||
|
|
||||||
#: src/protocol/bittorrent/bittorrent.c:112
|
#: src/protocol/bittorrent/bittorrent.c:120
|
||||||
msgid "Length of requests"
|
msgid "Length of requests"
|
||||||
msgstr "Longueur des requêtes"
|
msgstr "Longueur des requêtes"
|
||||||
|
|
||||||
#: src/protocol/bittorrent/bittorrent.c:114
|
#: src/protocol/bittorrent/bittorrent.c:122
|
||||||
msgid ""
|
msgid ""
|
||||||
"How many bytes to query for per request. This is complementary\n"
|
"How many bytes to query for per request. This is complementary\n"
|
||||||
"to the max_request_length option. If the configured length is\n"
|
"to the max_request_length option. If the configured length is\n"
|
||||||
@ -6729,11 +6747,11 @@ msgstr ""
|
|||||||
"l'option max_request_length. Si la valeur configurée est plus\n"
|
"l'option max_request_length. Si la valeur configurée est plus\n"
|
||||||
"grande que la longueur des morceaux celle-ci sera tronquée."
|
"grande que la longueur des morceaux celle-ci sera tronquée."
|
||||||
|
|
||||||
#: src/protocol/bittorrent/bittorrent.c:118
|
#: src/protocol/bittorrent/bittorrent.c:126
|
||||||
msgid "Peer inactivity timeout"
|
msgid "Peer inactivity timeout"
|
||||||
msgstr "Délai d'inactivité pour un poste"
|
msgstr "Délai d'inactivité pour un poste"
|
||||||
|
|
||||||
#: src/protocol/bittorrent/bittorrent.c:120
|
#: src/protocol/bittorrent/bittorrent.c:128
|
||||||
msgid ""
|
msgid ""
|
||||||
"The number of seconds to wait before closing a socket on\n"
|
"The number of seconds to wait before closing a socket on\n"
|
||||||
"which nothing has been received or sent."
|
"which nothing has been received or sent."
|
||||||
@ -6741,11 +6759,11 @@ msgstr ""
|
|||||||
"Le nombre de secondes à attendre avant de fermer une\n"
|
"Le nombre de secondes à attendre avant de fermer une\n"
|
||||||
"connexion sur laquelle rien n'a circulé."
|
"connexion sur laquelle rien n'a circulé."
|
||||||
|
|
||||||
#: src/protocol/bittorrent/bittorrent.c:123
|
#: src/protocol/bittorrent/bittorrent.c:131
|
||||||
msgid "Maximum peer pool size"
|
msgid "Maximum peer pool size"
|
||||||
msgstr "Taille maximale du groupe de postes"
|
msgstr "Taille maximale du groupe de postes"
|
||||||
|
|
||||||
#: src/protocol/bittorrent/bittorrent.c:125
|
#: src/protocol/bittorrent/bittorrent.c:133
|
||||||
msgid ""
|
msgid ""
|
||||||
"Maximum number of items in the peer pool. The peer pool\n"
|
"Maximum number of items in the peer pool. The peer pool\n"
|
||||||
"contains information used for establishing connections to\n"
|
"contains information used for establishing connections to\n"
|
||||||
@ -6760,11 +6778,11 @@ msgstr ""
|
|||||||
#. ******************************************************************
|
#. ******************************************************************
|
||||||
#. Piece management options:
|
#. Piece management options:
|
||||||
#. ******************************************************************
|
#. ******************************************************************
|
||||||
#: src/protocol/bittorrent/bittorrent.c:135
|
#: src/protocol/bittorrent/bittorrent.c:143
|
||||||
msgid "Maximum piece cache size"
|
msgid "Maximum piece cache size"
|
||||||
msgstr "Taille maximale du cache de morceaux"
|
msgstr "Taille maximale du cache de morceaux"
|
||||||
|
|
||||||
#: src/protocol/bittorrent/bittorrent.c:137
|
#: src/protocol/bittorrent/bittorrent.c:145
|
||||||
msgid ""
|
msgid ""
|
||||||
"The maximum amount of memory used to hold recently\n"
|
"The maximum amount of memory used to hold recently\n"
|
||||||
"downloaded pieces.\n"
|
"downloaded pieces.\n"
|
||||||
@ -6774,11 +6792,11 @@ msgstr ""
|
|||||||
"les morceaux récemment téléchargés.\n"
|
"les morceaux récemment téléchargés.\n"
|
||||||
"Mettre à 0 pour une taille illimitée."
|
"Mettre à 0 pour une taille illimitée."
|
||||||
|
|
||||||
#: src/protocol/bittorrent/bittorrent.c:146
|
#: src/protocol/bittorrent/bittorrent.c:154
|
||||||
msgid "Sharing rate"
|
msgid "Sharing rate"
|
||||||
msgstr "Ratio de partage"
|
msgstr "Ratio de partage"
|
||||||
|
|
||||||
#: src/protocol/bittorrent/bittorrent.c:148
|
#: src/protocol/bittorrent/bittorrent.c:156
|
||||||
msgid ""
|
msgid ""
|
||||||
"The minimum sharing rate to achieve before stop seeding.\n"
|
"The minimum sharing rate to achieve before stop seeding.\n"
|
||||||
"The sharing rate is computed as the number of uploaded bytes\n"
|
"The sharing rate is computed as the number of uploaded bytes\n"
|
||||||
@ -6794,22 +6812,22 @@ msgstr ""
|
|||||||
"Mettre à 1.0 pour uploader une copie complète des données et\n"
|
"Mettre à 1.0 pour uploader une copie complète des données et\n"
|
||||||
"à 0.0 pour avoir un ratio de partage sans limite."
|
"à 0.0 pour avoir un ratio de partage sans limite."
|
||||||
|
|
||||||
#: src/protocol/bittorrent/bittorrent.c:155
|
#: src/protocol/bittorrent/bittorrent.c:163
|
||||||
msgid "Maximum number of uploads"
|
msgid "Maximum number of uploads"
|
||||||
msgstr "Nombre maximal de téléchargements montants"
|
msgstr "Nombre maximal de téléchargements montants"
|
||||||
|
|
||||||
#: src/protocol/bittorrent/bittorrent.c:157
|
#: src/protocol/bittorrent/bittorrent.c:165
|
||||||
msgid "The maximum number of uploads to allow at once."
|
msgid "The maximum number of uploads to allow at once."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Nombre maximal de téléchargements montants autorisés\n"
|
"Nombre maximal de téléchargements montants autorisés\n"
|
||||||
"à un instant."
|
"à un instant."
|
||||||
|
|
||||||
#. The number of uploads to fill out to with extra optimistic unchokes
|
#. The number of uploads to fill out to with extra optimistic unchokes
|
||||||
#: src/protocol/bittorrent/bittorrent.c:160
|
#: src/protocol/bittorrent/bittorrent.c:168
|
||||||
msgid "Minimum number of uploads"
|
msgid "Minimum number of uploads"
|
||||||
msgstr "Nombre minimal de téléchargements montants"
|
msgstr "Nombre minimal de téléchargements montants"
|
||||||
|
|
||||||
#: src/protocol/bittorrent/bittorrent.c:162
|
#: src/protocol/bittorrent/bittorrent.c:170
|
||||||
msgid ""
|
msgid ""
|
||||||
"The minimum number of uploads which should at least\n"
|
"The minimum number of uploads which should at least\n"
|
||||||
"be used for new connections."
|
"be used for new connections."
|
||||||
@ -6817,11 +6835,11 @@ msgstr ""
|
|||||||
"Le nombre minimal de téléchargements montants qui devraient\n"
|
"Le nombre minimal de téléchargements montants qui devraient\n"
|
||||||
"être utilisés pour les nouvelles connexions."
|
"être utilisés pour les nouvelles connexions."
|
||||||
|
|
||||||
#: src/protocol/bittorrent/bittorrent.c:166
|
#: src/protocol/bittorrent/bittorrent.c:174
|
||||||
msgid "Keepalive interval"
|
msgid "Keepalive interval"
|
||||||
msgstr "Intervalle pour le maintien en vie des connexions"
|
msgstr "Intervalle pour le maintien en vie des connexions"
|
||||||
|
|
||||||
#: src/protocol/bittorrent/bittorrent.c:168
|
#: src/protocol/bittorrent/bittorrent.c:176
|
||||||
msgid ""
|
msgid ""
|
||||||
"The number of seconds to pause between sending keepalive\n"
|
"The number of seconds to pause between sending keepalive\n"
|
||||||
"messages."
|
"messages."
|
||||||
@ -6829,11 +6847,11 @@ msgstr ""
|
|||||||
"Nombre de secondes entre chaque envoi de messages de maintien\n"
|
"Nombre de secondes entre chaque envoi de messages de maintien\n"
|
||||||
"en vie."
|
"en vie."
|
||||||
|
|
||||||
#: src/protocol/bittorrent/bittorrent.c:171
|
#: src/protocol/bittorrent/bittorrent.c:179
|
||||||
msgid "Number of pending requests"
|
msgid "Number of pending requests"
|
||||||
msgstr "Nombre de requêtes en attente"
|
msgstr "Nombre de requêtes en attente"
|
||||||
|
|
||||||
#: src/protocol/bittorrent/bittorrent.c:173
|
#: src/protocol/bittorrent/bittorrent.c:181
|
||||||
msgid ""
|
msgid ""
|
||||||
"How many piece requests to continuously keep in queue. Pipelining\n"
|
"How many piece requests to continuously keep in queue. Pipelining\n"
|
||||||
"of requests is essential to saturate connections and get a good\n"
|
"of requests is essential to saturate connections and get a good\n"
|
||||||
@ -6850,11 +6868,11 @@ msgstr ""
|
|||||||
"demandés à de multiples postes."
|
"demandés à de multiples postes."
|
||||||
|
|
||||||
#. Bram uses 30 seconds here.
|
#. Bram uses 30 seconds here.
|
||||||
#: src/protocol/bittorrent/bittorrent.c:182
|
#: src/protocol/bittorrent/bittorrent.c:190
|
||||||
msgid "Peer snubbing interval"
|
msgid "Peer snubbing interval"
|
||||||
msgstr "Intervalle de subbing pour les postes"
|
msgstr "Intervalle de subbing pour les postes"
|
||||||
|
|
||||||
#: src/protocol/bittorrent/bittorrent.c:184
|
#: src/protocol/bittorrent/bittorrent.c:192
|
||||||
msgid ""
|
msgid ""
|
||||||
"The number of seconds to wait for file data before assuming\n"
|
"The number of seconds to wait for file data before assuming\n"
|
||||||
"the peer has been snubbed."
|
"the peer has been snubbed."
|
||||||
@ -6862,11 +6880,11 @@ msgstr ""
|
|||||||
"Nombre de secondes à attendre les données avant de supposer\n"
|
"Nombre de secondes à attendre les données avant de supposer\n"
|
||||||
"qu'un poste a été snubbé."
|
"qu'un poste a été snubbé."
|
||||||
|
|
||||||
#: src/protocol/bittorrent/bittorrent.c:187
|
#: src/protocol/bittorrent/bittorrent.c:195
|
||||||
msgid "Peer choke interval"
|
msgid "Peer choke interval"
|
||||||
msgstr "Intervalle de choke pour les postes"
|
msgstr "Intervalle de choke pour les postes"
|
||||||
|
|
||||||
#: src/protocol/bittorrent/bittorrent.c:189
|
#: src/protocol/bittorrent/bittorrent.c:197
|
||||||
msgid ""
|
msgid ""
|
||||||
"The number of seconds between updating the connection state\n"
|
"The number of seconds between updating the connection state\n"
|
||||||
"and most importantly choke and unchoke peer connections. The\n"
|
"and most importantly choke and unchoke peer connections. The\n"
|
||||||
@ -6880,11 +6898,11 @@ msgstr ""
|
|||||||
"connexions unchokées démarrent mais assez petite pour ne pas permettre\n"
|
"connexions unchokées démarrent mais assez petite pour ne pas permettre\n"
|
||||||
"à certains d'utiliser trop de bande passante."
|
"à certains d'utiliser trop de bande passante."
|
||||||
|
|
||||||
#: src/protocol/bittorrent/bittorrent.c:195
|
#: src/protocol/bittorrent/bittorrent.c:203
|
||||||
msgid "Rarest first piece selection cutoff"
|
msgid "Rarest first piece selection cutoff"
|
||||||
msgstr "Limite pour la sélection des morceaux par rareté"
|
msgstr "Limite pour la sélection des morceaux par rareté"
|
||||||
|
|
||||||
#: src/protocol/bittorrent/bittorrent.c:197
|
#: src/protocol/bittorrent/bittorrent.c:205
|
||||||
msgid ""
|
msgid ""
|
||||||
"The number of pieces to obtain before switching piece\n"
|
"The number of pieces to obtain before switching piece\n"
|
||||||
"selection strategy from random to rarest first."
|
"selection strategy from random to rarest first."
|
||||||
@ -6892,11 +6910,11 @@ msgstr ""
|
|||||||
"Nombre de morceaux à obtenir avant de modifier la stratégie\n"
|
"Nombre de morceaux à obtenir avant de modifier la stratégie\n"
|
||||||
"de sélection de morceaux du mode hasard au mode rareté."
|
"de sélection de morceaux du mode hasard au mode rareté."
|
||||||
|
|
||||||
#: src/protocol/bittorrent/bittorrent.c:200 src/protocol/http/http.c:106
|
#: src/protocol/bittorrent/bittorrent.c:208 src/protocol/http/http.c:106
|
||||||
msgid "Allow blacklisting"
|
msgid "Allow blacklisting"
|
||||||
msgstr "Autoriser la mise en liste noire"
|
msgstr "Autoriser la mise en liste noire"
|
||||||
|
|
||||||
#: src/protocol/bittorrent/bittorrent.c:202
|
#: src/protocol/bittorrent/bittorrent.c:210
|
||||||
msgid "Allow blacklisting of buggy peers."
|
msgid "Allow blacklisting of buggy peers."
|
||||||
msgstr "Autoriser la mise en liste noire des postes bogués."
|
msgstr "Autoriser la mise en liste noire des postes bogués."
|
||||||
|
|
||||||
@ -7904,11 +7922,11 @@ msgstr "Le fichier sera ouvert avec le programme '%s'."
|
|||||||
msgid "~Open"
|
msgid "~Open"
|
||||||
msgstr "~Ouvrir"
|
msgstr "~Ouvrir"
|
||||||
|
|
||||||
#: src/session/session.c:749 src/session/session.c:768 src/session/task.c:269
|
#: src/session/session.c:752 src/session/session.c:771 src/session/task.c:269
|
||||||
msgid "Warning"
|
msgid "Warning"
|
||||||
msgstr "Avertissement"
|
msgstr "Avertissement"
|
||||||
|
|
||||||
#: src/session/session.c:750
|
#: src/session/session.c:753
|
||||||
msgid ""
|
msgid ""
|
||||||
"You have empty string in protocol.http.user_agent - this was a default value "
|
"You have empty string in protocol.http.user_agent - this was a default value "
|
||||||
"in the past, substituted by default ELinks User-Agent string. However, "
|
"in the past, substituted by default ELinks User-Agent string. However, "
|
||||||
@ -7927,7 +7945,7 @@ msgstr ""
|
|||||||
"défaut sera utilisée. Si vous n'avez aucune idée de quoi nous parlons alors "
|
"défaut sera utilisée. Si vous n'avez aucune idée de quoi nous parlons alors "
|
||||||
"faites juste ça. Toutes nos excuses pour ce désagrément."
|
"faites juste ça. Toutes nos excuses pour ce désagrément."
|
||||||
|
|
||||||
#: src/session/session.c:769
|
#: src/session/session.c:772
|
||||||
msgid ""
|
msgid ""
|
||||||
"You have option config.saving_style set to a de facto obsolete value. The "
|
"You have option config.saving_style set to a de facto obsolete value. The "
|
||||||
"configuration saving algorithms of ELinks were changed from the last time "
|
"configuration saving algorithms of ELinks were changed from the last time "
|
||||||
@ -7948,11 +7966,11 @@ msgstr ""
|
|||||||
"l'option config.saving_style dans le but d'obtenir un fonctionnement "
|
"l'option config.saving_style dans le but d'obtenir un fonctionnement "
|
||||||
"correct. Toutes nos excuses pour l'éventuel désagrément causé."
|
"correct. Toutes nos excuses pour l'éventuel désagrément causé."
|
||||||
|
|
||||||
#: src/session/session.c:794
|
#: src/session/session.c:797
|
||||||
msgid "Welcome"
|
msgid "Welcome"
|
||||||
msgstr "Bienvenue"
|
msgstr "Bienvenue"
|
||||||
|
|
||||||
#: src/session/session.c:795
|
#: src/session/session.c:798
|
||||||
msgid ""
|
msgid ""
|
||||||
"Welcome to ELinks!\n"
|
"Welcome to ELinks!\n"
|
||||||
"\n"
|
"\n"
|
||||||
@ -8063,164 +8081,164 @@ msgstr "Ancre manquante"
|
|||||||
msgid "The requested fragment \"#%s\" doesn't exist."
|
msgid "The requested fragment \"#%s\" doesn't exist."
|
||||||
msgstr "L'ancre recherchée \"#%s\" n'existe pas."
|
msgstr "L'ancre recherchée \"#%s\" n'existe pas."
|
||||||
|
|
||||||
#: src/viewer/text/form.c:855
|
#: src/viewer/text/form.c:864
|
||||||
msgid "Error while posting form"
|
msgid "Error while posting form"
|
||||||
msgstr "Erreur lors de l'envoi du formulaire"
|
msgstr "Erreur lors de l'envoi du formulaire"
|
||||||
|
|
||||||
#: src/viewer/text/form.c:856
|
#: src/viewer/text/form.c:865
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "Could not load file %s: %s"
|
msgid "Could not load file %s: %s"
|
||||||
msgstr "Impossible de charger le fichier %s: %s"
|
msgstr "Impossible de charger le fichier %s: %s"
|
||||||
|
|
||||||
#: src/viewer/text/form.c:1436
|
#: src/viewer/text/form.c:1445
|
||||||
msgid "Reset form"
|
msgid "Reset form"
|
||||||
msgstr "Réinitialiser le formulaire"
|
msgstr "Réinitialiser le formulaire"
|
||||||
|
|
||||||
#: src/viewer/text/form.c:1438
|
#: src/viewer/text/form.c:1447
|
||||||
msgid "Harmless button"
|
msgid "Harmless button"
|
||||||
msgstr "Bouton sans impact"
|
msgstr "Bouton sans impact"
|
||||||
|
|
||||||
#: src/viewer/text/form.c:1446
|
#: src/viewer/text/form.c:1455
|
||||||
msgid "Submit form to"
|
msgid "Submit form to"
|
||||||
msgstr "Envoi du formulaire à"
|
msgstr "Envoi du formulaire à"
|
||||||
|
|
||||||
#: src/viewer/text/form.c:1447
|
#: src/viewer/text/form.c:1456
|
||||||
msgid "Post form to"
|
msgid "Post form to"
|
||||||
msgstr "Transfert du formulaire à"
|
msgstr "Transfert du formulaire à"
|
||||||
|
|
||||||
#: src/viewer/text/form.c:1449
|
#: src/viewer/text/form.c:1458
|
||||||
msgid "Radio button"
|
msgid "Radio button"
|
||||||
msgstr "Bouton radio"
|
msgstr "Bouton radio"
|
||||||
|
|
||||||
#: src/viewer/text/form.c:1453
|
#: src/viewer/text/form.c:1462
|
||||||
msgid "Select field"
|
msgid "Select field"
|
||||||
msgstr "Liste"
|
msgstr "Liste"
|
||||||
|
|
||||||
#: src/viewer/text/form.c:1457
|
#: src/viewer/text/form.c:1466
|
||||||
msgid "Text area"
|
msgid "Text area"
|
||||||
msgstr "Champ texte multiligne"
|
msgstr "Champ texte multiligne"
|
||||||
|
|
||||||
#: src/viewer/text/form.c:1459
|
#: src/viewer/text/form.c:1468
|
||||||
msgid "File upload"
|
msgid "File upload"
|
||||||
msgstr "Envoi de fichier"
|
msgstr "Envoi de fichier"
|
||||||
|
|
||||||
#: src/viewer/text/form.c:1461
|
#: src/viewer/text/form.c:1470
|
||||||
msgid "Password field"
|
msgid "Password field"
|
||||||
msgstr "Champ mot de passe"
|
msgstr "Champ mot de passe"
|
||||||
|
|
||||||
#: src/viewer/text/form.c:1499
|
#: src/viewer/text/form.c:1508
|
||||||
msgid "name"
|
msgid "name"
|
||||||
msgstr "Nom"
|
msgstr "Nom"
|
||||||
|
|
||||||
#: src/viewer/text/form.c:1511
|
#: src/viewer/text/form.c:1520
|
||||||
msgid "value"
|
msgid "value"
|
||||||
msgstr "Valeur"
|
msgstr "Valeur"
|
||||||
|
|
||||||
#: src/viewer/text/form.c:1524
|
#: src/viewer/text/form.c:1533
|
||||||
msgid "read only"
|
msgid "read only"
|
||||||
msgstr "lecture seule"
|
msgstr "lecture seule"
|
||||||
|
|
||||||
#: src/viewer/text/form.c:1535
|
#: src/viewer/text/form.c:1544
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "press %s to navigate"
|
msgid "press %s to navigate"
|
||||||
msgstr "pressez %s pour naviguer"
|
msgstr "pressez %s pour naviguer"
|
||||||
|
|
||||||
#: src/viewer/text/form.c:1537
|
#: src/viewer/text/form.c:1546
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "press %s to edit"
|
msgid "press %s to edit"
|
||||||
msgstr "pressez %s pour éditer"
|
msgstr "pressez %s pour éditer"
|
||||||
|
|
||||||
#: src/viewer/text/form.c:1573
|
#: src/viewer/text/form.c:1582
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "press %s to submit to %s"
|
msgid "press %s to submit to %s"
|
||||||
msgstr "pressez %s pour soumettre à %s"
|
msgstr "pressez %s pour soumettre à %s"
|
||||||
|
|
||||||
#: src/viewer/text/form.c:1575
|
#: src/viewer/text/form.c:1584
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "press %s to post to %s"
|
msgid "press %s to post to %s"
|
||||||
msgstr "pressez %s pour poster à %s"
|
msgstr "pressez %s pour poster à %s"
|
||||||
|
|
||||||
#: src/viewer/text/link.c:1145
|
#: src/viewer/text/link.c:1148
|
||||||
msgid "Display ~usemap"
|
msgid "Display ~usemap"
|
||||||
msgstr "Afficher ~usemap"
|
msgstr "Afficher ~usemap"
|
||||||
|
|
||||||
#: src/viewer/text/link.c:1148
|
#: src/viewer/text/link.c:1151
|
||||||
msgid "~Follow link"
|
msgid "~Follow link"
|
||||||
msgstr "~Suivre le lien"
|
msgstr "~Suivre le lien"
|
||||||
|
|
||||||
#: src/viewer/text/link.c:1150
|
#: src/viewer/text/link.c:1153
|
||||||
msgid "Follow link and r~eload"
|
msgid "Follow link and r~eload"
|
||||||
msgstr "Suivre le lien et ~recharger"
|
msgstr "Suivre le lien et ~recharger"
|
||||||
|
|
||||||
#: src/viewer/text/link.c:1154
|
#: src/viewer/text/link.c:1157
|
||||||
msgid "Open in new ~window"
|
msgid "Open in new ~window"
|
||||||
msgstr "Ouvrir dans une nouvelle ~fenêtre"
|
msgstr "Ouvrir dans une nouvelle ~fenêtre"
|
||||||
|
|
||||||
#: src/viewer/text/link.c:1156
|
#: src/viewer/text/link.c:1159
|
||||||
msgid "Open in new ~tab"
|
msgid "Open in new ~tab"
|
||||||
msgstr "Ouvrir dans un nouvel ongle~t"
|
msgstr "Ouvrir dans un nouvel ongle~t"
|
||||||
|
|
||||||
#: src/viewer/text/link.c:1158
|
#: src/viewer/text/link.c:1161
|
||||||
msgid "Open in new tab in ~background"
|
msgid "Open in new tab in ~background"
|
||||||
msgstr "Ouvrir dans un nouvel onglet en arrière-~plan"
|
msgstr "Ouvrir dans un nouvel onglet en arrière-~plan"
|
||||||
|
|
||||||
#: src/viewer/text/link.c:1163
|
#: src/viewer/text/link.c:1166
|
||||||
msgid "~Download link"
|
msgid "~Download link"
|
||||||
msgstr "~Enregistrer le lien"
|
msgstr "~Enregistrer le lien"
|
||||||
|
|
||||||
#: src/viewer/text/link.c:1166
|
#: src/viewer/text/link.c:1169
|
||||||
msgid "~Add link to bookmarks"
|
msgid "~Add link to bookmarks"
|
||||||
msgstr "~Ajouter ce lien aux signets"
|
msgstr "~Ajouter ce lien aux signets"
|
||||||
|
|
||||||
#: src/viewer/text/link.c:1178 src/viewer/text/link.c:1214
|
#: src/viewer/text/link.c:1181 src/viewer/text/link.c:1217
|
||||||
msgid "~Reset form"
|
msgid "~Reset form"
|
||||||
msgstr "Remettre à ~zéro le formulaire"
|
msgstr "Remettre à ~zéro le formulaire"
|
||||||
|
|
||||||
#: src/viewer/text/link.c:1191
|
#: src/viewer/text/link.c:1194
|
||||||
msgid "Open in ~external editor"
|
msgid "Open in ~external editor"
|
||||||
msgstr "Ouvrir dans un ~éditeur externe"
|
msgstr "Ouvrir dans un ~éditeur externe"
|
||||||
|
|
||||||
#: src/viewer/text/link.c:1197
|
#: src/viewer/text/link.c:1200
|
||||||
msgid "~Submit form"
|
msgid "~Submit form"
|
||||||
msgstr "~Envoyer le formulaire"
|
msgstr "~Envoyer le formulaire"
|
||||||
|
|
||||||
#: src/viewer/text/link.c:1198
|
#: src/viewer/text/link.c:1201
|
||||||
msgid "Submit form and rel~oad"
|
msgid "Submit form and rel~oad"
|
||||||
msgstr "Envoyer le formulaire et ~recharger"
|
msgstr "Envoyer le formulaire et ~recharger"
|
||||||
|
|
||||||
#: src/viewer/text/link.c:1202
|
#: src/viewer/text/link.c:1205
|
||||||
msgid "Submit form and open in new ~window"
|
msgid "Submit form and open in new ~window"
|
||||||
msgstr "Envoyer le formulaire et ouvrir dans une nouvelle ~fenêtre"
|
msgstr "Envoyer le formulaire et ouvrir dans une nouvelle ~fenêtre"
|
||||||
|
|
||||||
#: src/viewer/text/link.c:1204
|
#: src/viewer/text/link.c:1207
|
||||||
msgid "Submit form and open in new ~tab"
|
msgid "Submit form and open in new ~tab"
|
||||||
msgstr "Envoyer le formulaire et ouvrir un ~onglet"
|
msgstr "Envoyer le formulaire et ouvrir un ~onglet"
|
||||||
|
|
||||||
#: src/viewer/text/link.c:1207
|
#: src/viewer/text/link.c:1210
|
||||||
msgid "Submit form and open in new tab in ~background"
|
msgid "Submit form and open in new tab in ~background"
|
||||||
msgstr "Envoyer le formulaire et ouvrir un onglet en ~arrière-plan"
|
msgstr "Envoyer le formulaire et ouvrir un onglet en ~arrière-plan"
|
||||||
|
|
||||||
#: src/viewer/text/link.c:1212
|
#: src/viewer/text/link.c:1215
|
||||||
msgid "Submit form and ~download"
|
msgid "Submit form and ~download"
|
||||||
msgstr "Envoyer le formulaire et ~télécharger"
|
msgstr "Envoyer le formulaire et ~télécharger"
|
||||||
|
|
||||||
#: src/viewer/text/link.c:1219
|
#: src/viewer/text/link.c:1222
|
||||||
msgid "V~iew image"
|
msgid "V~iew image"
|
||||||
msgstr "~Voir l'image"
|
msgstr "~Voir l'image"
|
||||||
|
|
||||||
#: src/viewer/text/link.c:1221
|
#: src/viewer/text/link.c:1224
|
||||||
msgid "Download ima~ge"
|
msgid "Download ima~ge"
|
||||||
msgstr "Enregistrer l'~image"
|
msgstr "Enregistrer l'~image"
|
||||||
|
|
||||||
#: src/viewer/text/link.c:1229
|
#: src/viewer/text/link.c:1232
|
||||||
msgid "No link selected"
|
msgid "No link selected"
|
||||||
msgstr "Aucun lien sélectionné"
|
msgstr "Aucun lien sélectionné"
|
||||||
|
|
||||||
#: src/viewer/text/link.c:1281
|
#: src/viewer/text/link.c:1280
|
||||||
msgid "Image"
|
msgid "Image"
|
||||||
msgstr "Image"
|
msgstr "Image"
|
||||||
|
|
||||||
#: src/viewer/text/link.c:1286
|
#: src/viewer/text/link.c:1285
|
||||||
msgid "Usemap"
|
msgid "Usemap"
|
||||||
msgstr "Usemap"
|
msgstr "Usemap"
|
||||||
|
|
||||||
@ -8308,10 +8326,10 @@ msgstr "Aller au lien"
|
|||||||
msgid "Enter link number"
|
msgid "Enter link number"
|
||||||
msgstr "Entrez un numéro de lien"
|
msgstr "Entrez un numéro de lien"
|
||||||
|
|
||||||
#: src/viewer/text/view.c:1287
|
#: src/viewer/text/view.c:1288
|
||||||
msgid "Save error"
|
msgid "Save error"
|
||||||
msgstr "Erreur lors de la sauvegarde"
|
msgstr "Erreur lors de la sauvegarde"
|
||||||
|
|
||||||
#: src/viewer/text/view.c:1288
|
#: src/viewer/text/view.c:1289
|
||||||
msgid "Error writing to file"
|
msgid "Error writing to file"
|
||||||
msgstr "Erreur lors de l'écriture du fichier"
|
msgstr "Erreur lors de l'écriture du fichier"
|
||||||
|
@ -43,12 +43,12 @@ static const struct scan_table_info css_scan_table_info[] = {
|
|||||||
SCAN_TABLE_STRING(" \f\n\r\t\v\000", CSS_CHAR_WHITESPACE),
|
SCAN_TABLE_STRING(" \f\n\r\t\v\000", CSS_CHAR_WHITESPACE),
|
||||||
SCAN_TABLE_STRING("\f\n\r", CSS_CHAR_NEWLINE),
|
SCAN_TABLE_STRING("\f\n\r", CSS_CHAR_NEWLINE),
|
||||||
SCAN_TABLE_STRING("-", CSS_CHAR_IDENT),
|
SCAN_TABLE_STRING("-", CSS_CHAR_IDENT),
|
||||||
SCAN_TABLE_STRING(".#@!\"'<-/", CSS_CHAR_TOKEN_START),
|
SCAN_TABLE_STRING(".#@!\"'<-/|^$*", CSS_CHAR_TOKEN_START),
|
||||||
/* Unicode escape (that we do not handle yet) + other special chars */
|
/* Unicode escape (that we do not handle yet) + other special chars */
|
||||||
SCAN_TABLE_STRING("\\_*", CSS_CHAR_IDENT | CSS_CHAR_IDENT_START),
|
SCAN_TABLE_STRING("\\_", CSS_CHAR_IDENT | CSS_CHAR_IDENT_START),
|
||||||
/* This should contain mostly used char tokens like ':' and maybe a few
|
/* This should contain mostly used char tokens like ':' and maybe a few
|
||||||
* garbage chars that people might put in their CSS code */
|
* garbage chars that people might put in their CSS code */
|
||||||
SCAN_TABLE_STRING("({});:,.>", CSS_CHAR_TOKEN),
|
SCAN_TABLE_STRING("[({})];:,.>+~", CSS_CHAR_TOKEN),
|
||||||
SCAN_TABLE_STRING("<![CDATA]->", CSS_CHAR_SGML_MARKUP),
|
SCAN_TABLE_STRING("<![CDATA]->", CSS_CHAR_SGML_MARKUP),
|
||||||
|
|
||||||
SCAN_TABLE_END,
|
SCAN_TABLE_END,
|
||||||
@ -259,6 +259,32 @@ scan_css_token(struct scanner *scanner, struct scanner_token *token)
|
|||||||
CSS_TOKEN_AT_KEYWORD);
|
CSS_TOKEN_AT_KEYWORD);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
} else if (first_char == '*') {
|
||||||
|
if (*string == '=') {
|
||||||
|
type = CSS_TOKEN_SELECT_CONTAINS;
|
||||||
|
string++;
|
||||||
|
} else {
|
||||||
|
type = CSS_TOKEN_IDENT;
|
||||||
|
}
|
||||||
|
|
||||||
|
} else if (first_char == '^') {
|
||||||
|
if (*string == '=') {
|
||||||
|
type = CSS_TOKEN_SELECT_BEGIN;
|
||||||
|
string++;
|
||||||
|
}
|
||||||
|
|
||||||
|
} else if (first_char == '$') {
|
||||||
|
if (*string == '=') {
|
||||||
|
type = CSS_TOKEN_SELECT_END;
|
||||||
|
string++;
|
||||||
|
}
|
||||||
|
|
||||||
|
} else if (first_char == '|') {
|
||||||
|
if (*string == '=') {
|
||||||
|
type = CSS_TOKEN_SELECT_HYPHEN_LIST;
|
||||||
|
string++;
|
||||||
|
}
|
||||||
|
|
||||||
} else if (first_char == '!') {
|
} else if (first_char == '!') {
|
||||||
scan_css(scanner, string, CSS_CHAR_WHITESPACE);
|
scan_css(scanner, string, CSS_CHAR_WHITESPACE);
|
||||||
if (!strncasecmp(string, "important", 9)) {
|
if (!strncasecmp(string, "important", 9)) {
|
||||||
|
@ -69,7 +69,12 @@ enum css_token_type {
|
|||||||
|
|
||||||
CSS_TOKEN_IMPORTANT, /* !<whitespace>important */
|
CSS_TOKEN_IMPORTANT, /* !<whitespace>important */
|
||||||
|
|
||||||
/* TODO: Selector stuff like "|=" and "~=" */
|
/* TODO: Selector stuff: */
|
||||||
|
CSS_TOKEN_SELECT_SPACE_LIST, /* ~= */
|
||||||
|
CSS_TOKEN_SELECT_HYPHEN_LIST, /* |= */
|
||||||
|
CSS_TOKEN_SELECT_BEGIN, /* ^= */
|
||||||
|
CSS_TOKEN_SELECT_END, /* $= */
|
||||||
|
CSS_TOKEN_SELECT_CONTAINS, /* *= */
|
||||||
|
|
||||||
/* Special tokens: */
|
/* Special tokens: */
|
||||||
|
|
||||||
|
@ -236,7 +236,7 @@ init_dom_node_(unsigned char *file, int line,
|
|||||||
int sort = (type == DOM_NODE_ATTRIBUTE);
|
int sort = (type == DOM_NODE_ATTRIBUTE);
|
||||||
int index;
|
int index;
|
||||||
|
|
||||||
assertm(list, "Adding %s to bad parent %s",
|
assertm(list, "Adding node to bad parent",
|
||||||
get_dom_node_type_name(node->type),
|
get_dom_node_type_name(node->type),
|
||||||
get_dom_node_type_name(parent->type));
|
get_dom_node_type_name(parent->type));
|
||||||
|
|
||||||
|
@ -8,6 +8,8 @@
|
|||||||
struct dom_node_list;
|
struct dom_node_list;
|
||||||
|
|
||||||
enum dom_node_type {
|
enum dom_node_type {
|
||||||
|
DOM_NODE_UNKNOWN = 0, /* for internal purpose only */
|
||||||
|
|
||||||
DOM_NODE_ELEMENT = 1,
|
DOM_NODE_ELEMENT = 1,
|
||||||
DOM_NODE_ATTRIBUTE = 2,
|
DOM_NODE_ATTRIBUTE = 2,
|
||||||
DOM_NODE_TEXT = 3,
|
DOM_NODE_TEXT = 3,
|
||||||
|
@ -662,12 +662,10 @@ abort_all_keepalive_connections(void)
|
|||||||
static void
|
static void
|
||||||
sort_queue(void)
|
sort_queue(void)
|
||||||
{
|
{
|
||||||
int swp;
|
while (1) {
|
||||||
|
|
||||||
do {
|
|
||||||
struct connection *conn;
|
struct connection *conn;
|
||||||
|
int swp = 0;
|
||||||
|
|
||||||
swp = 0;
|
|
||||||
foreach (conn, connection_queue) {
|
foreach (conn, connection_queue) {
|
||||||
if (!list_has_next(connection_queue, conn)) break;
|
if (!list_has_next(connection_queue, conn)) break;
|
||||||
|
|
||||||
@ -679,7 +677,9 @@ sort_queue(void)
|
|||||||
swp = 1;
|
swp = 1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} while (swp);
|
|
||||||
|
if (!swp) break;
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
|
@ -70,6 +70,14 @@ static struct option_info bittorrent_protocol_options[] = {
|
|||||||
"no IP address will be sent and the tracker will automatically\n"
|
"no IP address will be sent and the tracker will automatically\n"
|
||||||
"determine an appropriate IP address.")),
|
"determine an appropriate IP address.")),
|
||||||
|
|
||||||
|
INIT_OPT_STRING("protocol.bittorrent.tracker", N_("User identification string"),
|
||||||
|
"key", 0, "",
|
||||||
|
N_("An additional identification that is not shared with any users.\n"
|
||||||
|
"It is intended to allow a client to prove their identity should\n"
|
||||||
|
"their IP address change. It is an optional parameter, but some\n"
|
||||||
|
"trackers require this parameter. If set to \"\" no user key will\n"
|
||||||
|
"be sent to the tracker.")),
|
||||||
|
|
||||||
INIT_OPT_INT("protocol.bittorrent.tracker", N_("Maximum number of peers to request"),
|
INIT_OPT_INT("protocol.bittorrent.tracker", N_("Maximum number of peers to request"),
|
||||||
"numwant", 0, 0, INT_MAX, 50,
|
"numwant", 0, 0, INT_MAX, 50,
|
||||||
N_("The maximum number of peers to request from the tracker.\n"
|
N_("The maximum number of peers to request from the tracker.\n"
|
||||||
|
@ -54,13 +54,12 @@ static void
|
|||||||
sort_bittorrent_peer_connections(struct bittorrent_connection *bittorrent)
|
sort_bittorrent_peer_connections(struct bittorrent_connection *bittorrent)
|
||||||
{
|
{
|
||||||
struct bittorrent_peer_connection *peer, *prev;
|
struct bittorrent_peer_connection *peer, *prev;
|
||||||
|
|
||||||
|
while (1) {
|
||||||
|
struct bittorrent_peer_connection *next;
|
||||||
int resort = 0;
|
int resort = 0;
|
||||||
|
|
||||||
do {
|
|
||||||
struct bittorrent_peer_connection *next;
|
|
||||||
|
|
||||||
prev = NULL;
|
prev = NULL;
|
||||||
resort = 0;
|
|
||||||
|
|
||||||
foreachsafe (peer, next, bittorrent->peers) {
|
foreachsafe (peer, next, bittorrent->peers) {
|
||||||
if (prev && prev->stats.download_rate < peer->stats.download_rate) {
|
if (prev && prev->stats.download_rate < peer->stats.download_rate) {
|
||||||
@ -72,7 +71,8 @@ sort_bittorrent_peer_connections(struct bittorrent_connection *bittorrent)
|
|||||||
prev = peer;
|
prev = peer;
|
||||||
}
|
}
|
||||||
|
|
||||||
} while (resort);
|
if (!resort) break;
|
||||||
|
};
|
||||||
|
|
||||||
#ifdef CONFIG_DEBUG
|
#ifdef CONFIG_DEBUG
|
||||||
prev = NULL;
|
prev = NULL;
|
||||||
|
@ -140,7 +140,7 @@ do_send_bittorrent_tracker_request(struct connection *conn)
|
|||||||
{
|
{
|
||||||
struct bittorrent_connection *bittorrent = conn->info;
|
struct bittorrent_connection *bittorrent = conn->info;
|
||||||
int stopped = (bittorrent->tracker.event == BITTORRENT_EVENT_STOPPED);
|
int stopped = (bittorrent->tracker.event == BITTORRENT_EVENT_STOPPED);
|
||||||
unsigned char *ip;
|
unsigned char *ip, *key;
|
||||||
struct string request;
|
struct string request;
|
||||||
struct uri *uri = NULL;
|
struct uri *uri = NULL;
|
||||||
int numwant, index, min_size;
|
int numwant, index, min_size;
|
||||||
@ -193,6 +193,12 @@ do_send_bittorrent_tracker_request(struct connection *conn)
|
|||||||
/* This one is required for each request. */
|
/* This one is required for each request. */
|
||||||
add_format_to_string(&request, "&port=%u", bittorrent->port);
|
add_format_to_string(&request, "&port=%u", bittorrent->port);
|
||||||
|
|
||||||
|
key = get_opt_str("protocol.bittorrent.tracker.key");
|
||||||
|
if (*key) {
|
||||||
|
add_to_string(&request, "&key=");
|
||||||
|
encode_uri_string(&request, key, strlen(key), 1);
|
||||||
|
}
|
||||||
|
|
||||||
if (bittorrent->tracker.event != BITTORRENT_EVENT_REGULAR) {
|
if (bittorrent->tracker.event != BITTORRENT_EVENT_REGULAR) {
|
||||||
unsigned char *event;
|
unsigned char *event;
|
||||||
|
|
||||||
|
@ -1183,8 +1183,9 @@ setup_download_handler(struct session *ses, struct download *loading,
|
|||||||
if (type_query) {
|
if (type_query) {
|
||||||
ret = 1;
|
ret = 1;
|
||||||
#ifdef CONFIG_BITTORRENT
|
#ifdef CONFIG_BITTORRENT
|
||||||
if (!handler
|
/* A terrible waste of a good MIME handler here, but we want
|
||||||
&& (!strcasecmp(ctype, "application/x-bittorrent")
|
* to use the type_query this is easier. */
|
||||||
|
if ((!strcasecmp(ctype, "application/x-bittorrent")
|
||||||
|| !strcasecmp(ctype, "application/x-torrent"))
|
|| !strcasecmp(ctype, "application/x-torrent"))
|
||||||
&& !get_cmd_opt_bool("anonymous"))
|
&& !get_cmd_opt_bool("anonymous"))
|
||||||
query_bittorrent_dialog(type_query);
|
query_bittorrent_dialog(type_query);
|
||||||
|
@ -288,11 +288,10 @@ print_error_dialog(struct session *ses, enum connection_state state,
|
|||||||
static void
|
static void
|
||||||
abort_files_load(struct session *ses, int interrupt)
|
abort_files_load(struct session *ses, int interrupt)
|
||||||
{
|
{
|
||||||
|
while (1) {
|
||||||
struct file_to_load *ftl;
|
struct file_to_load *ftl;
|
||||||
int more;
|
int more = 0;
|
||||||
|
|
||||||
do {
|
|
||||||
more = 0;
|
|
||||||
foreach (ftl, ses->more_files) {
|
foreach (ftl, ses->more_files) {
|
||||||
if (!file_to_load_is_active(ftl))
|
if (!file_to_load_is_active(ftl))
|
||||||
continue;
|
continue;
|
||||||
@ -300,7 +299,9 @@ abort_files_load(struct session *ses, int interrupt)
|
|||||||
more = 1;
|
more = 1;
|
||||||
change_connection(&ftl->download, NULL, PRI_CANCEL, interrupt);
|
change_connection(&ftl->download, NULL, PRI_CANCEL, interrupt);
|
||||||
}
|
}
|
||||||
} while (more);
|
|
||||||
|
if (!more) break;
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
@ -706,16 +707,16 @@ load_additional_file(struct file_to_load *ftl, struct document_view *doc_view,
|
|||||||
void
|
void
|
||||||
process_file_requests(struct session *ses)
|
process_file_requests(struct session *ses)
|
||||||
{
|
{
|
||||||
struct file_to_load *ftl;
|
|
||||||
struct document_view *doc_view = NULL;
|
|
||||||
int more;
|
|
||||||
|
|
||||||
if (ses->status.processing_file_requests) return;
|
if (ses->status.processing_file_requests) return;
|
||||||
ses->status.processing_file_requests = 1;
|
ses->status.processing_file_requests = 1;
|
||||||
|
|
||||||
do {
|
while (1) {
|
||||||
more = 0;
|
struct file_to_load *ftl;
|
||||||
|
int more = 0;
|
||||||
|
|
||||||
foreach (ftl, ses->more_files) {
|
foreach (ftl, ses->more_files) {
|
||||||
|
struct document_view *doc_view;
|
||||||
|
|
||||||
if (ftl->req_sent)
|
if (ftl->req_sent)
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
@ -725,7 +726,9 @@ process_file_requests(struct session *ses)
|
|||||||
load_additional_file(ftl, doc_view, CACHE_MODE_NORMAL);
|
load_additional_file(ftl, doc_view, CACHE_MODE_NORMAL);
|
||||||
more = 1;
|
more = 1;
|
||||||
}
|
}
|
||||||
} while (more);
|
|
||||||
|
if (!more) break;
|
||||||
|
};
|
||||||
|
|
||||||
ses->status.processing_file_requests = 0;
|
ses->status.processing_file_requests = 0;
|
||||||
}
|
}
|
||||||
|
@ -291,7 +291,7 @@ draw_frames(struct session *ses)
|
|||||||
{
|
{
|
||||||
struct document_view *doc_view, *current_doc_view;
|
struct document_view *doc_view, *current_doc_view;
|
||||||
int *l;
|
int *l;
|
||||||
int n, d, more;
|
int n, d;
|
||||||
|
|
||||||
assert(ses && ses->doc_view && ses->doc_view->document);
|
assert(ses && ses->doc_view && ses->doc_view->document);
|
||||||
if_assert_failed return;
|
if_assert_failed return;
|
||||||
@ -308,16 +308,19 @@ draw_frames(struct session *ses)
|
|||||||
|
|
||||||
current_doc_view = current_frame(ses);
|
current_doc_view = current_frame(ses);
|
||||||
d = 0;
|
d = 0;
|
||||||
do {
|
while (1) {
|
||||||
more = 0;
|
int more = 0;
|
||||||
|
|
||||||
foreach (doc_view, ses->scrn_frames) {
|
foreach (doc_view, ses->scrn_frames) {
|
||||||
if (doc_view->depth == d)
|
if (doc_view->depth == d)
|
||||||
draw_doc(ses, doc_view, doc_view == current_doc_view);
|
draw_doc(ses, doc_view, doc_view == current_doc_view);
|
||||||
else if (doc_view->depth > d)
|
else if (doc_view->depth > d)
|
||||||
more = 1;
|
more = 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (!more) break;
|
||||||
d++;
|
d++;
|
||||||
} while (more);
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
/* @rerender is ridiciously wound-up. */
|
/* @rerender is ridiciously wound-up. */
|
||||||
|
@ -518,29 +518,32 @@ add_submitted_value_to_list(struct form_control *fc,
|
|||||||
static void
|
static void
|
||||||
sort_submitted_values(struct list_head *list)
|
sort_submitted_values(struct list_head *list)
|
||||||
{
|
{
|
||||||
int changed;
|
while (1) {
|
||||||
|
struct submitted_value *sub;
|
||||||
|
int changed = 0;
|
||||||
|
|
||||||
do {
|
|
||||||
struct submitted_value *sub, *next;
|
|
||||||
|
|
||||||
changed = 0;
|
|
||||||
foreach (sub, *list) if (list_has_next(*list, sub))
|
foreach (sub, *list) if (list_has_next(*list, sub))
|
||||||
if (sub->next->position < sub->position) {
|
if (sub->next->position < sub->position) {
|
||||||
next = sub->next;
|
struct submitted_value *next = sub->next;
|
||||||
|
|
||||||
del_from_list(sub);
|
del_from_list(sub);
|
||||||
add_at_pos(next, sub);
|
add_at_pos(next, sub);
|
||||||
sub = next;
|
sub = next;
|
||||||
changed = 1;
|
changed = 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
foreachback (sub, *list) if (list_has_next(*list, sub))
|
foreachback (sub, *list) if (list_has_next(*list, sub))
|
||||||
if (sub->next->position < sub->position) {
|
if (sub->next->position < sub->position) {
|
||||||
next = sub->next;
|
struct submitted_value *next = sub->next;
|
||||||
|
|
||||||
del_from_list(sub);
|
del_from_list(sub);
|
||||||
add_at_pos(next, sub);
|
add_at_pos(next, sub);
|
||||||
sub = next;
|
sub = next;
|
||||||
changed = 1;
|
changed = 1;
|
||||||
}
|
}
|
||||||
} while (changed);
|
|
||||||
|
if (!changed) break;
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
@ -781,7 +784,6 @@ encode_multipart(struct session *ses, struct list_head *l, struct string *data,
|
|||||||
|
|
||||||
if (*sv->value) {
|
if (*sv->value) {
|
||||||
unsigned char *filename;
|
unsigned char *filename;
|
||||||
ssize_t rd;
|
|
||||||
|
|
||||||
if (get_cmd_opt_bool("anonymous")) {
|
if (get_cmd_opt_bool("anonymous")) {
|
||||||
errno = EPERM;
|
errno = EPERM;
|
||||||
@ -797,14 +799,21 @@ encode_multipart(struct session *ses, struct list_head *l, struct string *data,
|
|||||||
|
|
||||||
if (fh == -1) goto encode_error;
|
if (fh == -1) goto encode_error;
|
||||||
set_bin(fh);
|
set_bin(fh);
|
||||||
do {
|
while (1) {
|
||||||
rd = safe_read(fh, buffer, F_BUFLEN);
|
ssize_t rd = safe_read(fh, buffer, F_BUFLEN);
|
||||||
|
|
||||||
|
if (rd) {
|
||||||
if (rd == -1) {
|
if (rd == -1) {
|
||||||
close(fh);
|
close(fh);
|
||||||
goto encode_error;
|
goto encode_error;
|
||||||
}
|
}
|
||||||
if (rd) add_bytes_to_string(data, buffer, rd);
|
|
||||||
} while (rd);
|
add_bytes_to_string(data, buffer, rd);
|
||||||
|
|
||||||
|
} else {
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
};
|
||||||
close(fh);
|
close(fh);
|
||||||
}
|
}
|
||||||
#undef F_BUFLEN
|
#undef F_BUFLEN
|
||||||
|
Loading…
Reference in New Issue
Block a user