1
0
mirror of https://github.com/weechat/weechat.git synced 2026-07-07 02:03:13 +02:00

Xfer file resume (for DCC protocol) is back

This commit is contained in:
Sebastien Helleu
2008-05-07 13:34:04 +02:00
parent 3751d6565f
commit b0e88590b9
16 changed files with 709 additions and 270 deletions
+50 -31
View File
@@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: WeeChat 0.2.7-dev\n"
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
"POT-Creation-Date: 2008-05-06 16:47+0200\n"
"POT-Creation-Date: 2008-05-07 13:30+0200\n"
"PO-Revision-Date: 2007-09-06 12:44+0200\n"
"Last-Translator: Jiri Golembiovsky <golemj@gmail.com>\n"
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
@@ -4274,13 +4274,13 @@ msgid "%s: sending chat request to %s"
msgstr "Posílám požadavek DCC rozhovoru na %s%s\n"
#, fuzzy, c-format
msgid "%s: file %s (local filename: %s) will be resumed at position %u"
msgid "%s: file %s (local filename: %s) will be resumed at position %lu"
msgstr ""
"DCC: soubor %s%s%s (lokální jméno souboru: %s%s%s) bude obnoven na pozici %"
"u\n"
#, fuzzy, c-format
msgid "%s%s: missing arguments"
msgid "%s%s: missing arguments (%s)"
msgstr "%s chybí argument pro volbu \"%s\"\n"
#, fuzzy, c-format
@@ -4315,6 +4315,26 @@ msgstr "%s nemůžu najít dostupný port pro DCC\n"
msgid "%s%s: error creating xfer"
msgstr "%s nedostatek paměti pro infobar zprávu\n"
#, fuzzy, c-format
msgid ""
"%s%s: unable to resume file \"%s\" (port: %d, start position: %lu): xfer not "
"found or not ready for transfert"
msgstr ""
"%s nemohu obnovit soubor \"%s\" (port: %d, počáteční pozice: %u): DCC "
"nenalezeno nebo ukončeno\n"
#, fuzzy, c-format
msgid "%s: file %s resumed at position %lu"
msgstr "DCC: soubor %s%s%s bude obnoven na pozici %u\n"
#, fuzzy, c-format
msgid ""
"%s%s: unable to accept resume file \"%s\" (port: %d, start position: %lu): "
"xfer not found or not ready for transfert"
msgstr ""
"%s nemohu obnovit soubor \"%s\" (port: %d, počáteční pozice: %u): DCC "
"nenalezeno nebo ukončeno\n"
#, fuzzy, c-format
msgid "%s%s: aborting active xfer: \"%s\" from %s"
msgstr "Ruším aktivní DCC: \"%s\" od %s\n"
@@ -4331,6 +4351,26 @@ msgstr "MB"
msgid "GB"
msgstr "GB"
msgid "Actions (letter+enter):"
msgstr ""
msgid " [A] Accept"
msgstr " [A] Akceptovat"
msgid " [C] Cancel"
msgstr " [C] Storno"
msgid " [R] Remove"
msgstr " [R] Odebrat"
#, fuzzy
msgid " [P] Purge finished"
msgstr " [P] Pročistit staré DCC"
#, fuzzy
msgid " [Q] Close xfer list"
msgstr " [Q] Zavřít DCC pohled"
msgid "ETA"
msgstr "ETA"
@@ -4353,7 +4393,7 @@ msgstr ""
msgid "Open buffer with xfer list"
msgstr "Otevřené buffery:\n"
msgid "auto open xfer buffer and switch to it when a new xfer is added to list"
msgid "auto open xfer buffer when a new xfer is added to list"
msgstr ""
msgid "size of progress bar, in chars (if 0, progress bar is disabled)"
@@ -4368,8 +4408,8 @@ msgid "background color"
msgstr "pozadí přezdívek"
#, fuzzy
msgid "background color for selected line"
msgstr "barva pro vstupní text"
msgid "text color of selected xfer line"
msgstr "barva pro jeméno serveru"
#, fuzzy
msgid "text color for \"waiting\" status"
@@ -4498,6 +4538,10 @@ msgstr "%s DCC: nemohu nastavit 'neblokovaci' volbu na soket\n"
msgid "%s%s: timeout for \"%s\" with %s"
msgstr "%s chybí argument pro volbu \"%s\"\n"
#, fuzzy
#~ msgid "background color for selected line"
#~ msgstr "barva pro vstupní text"
#, fuzzy
#~ msgid "%s%s: filename missing for type \"%s\""
#~ msgstr "%s %s, řádek %d: nevalidní volba \"%s\"\n"
@@ -4528,16 +4572,6 @@ msgstr "%s chybí argument pro volbu \"%s\"\n"
#~ "%s nemohu přiřadit DCC rozhovor k soukromému bufferu (možná má "
#~ "soukromýbuffer již DCC CHAT?)\n"
#~ msgid "DCC: file %s%s%s resumed at position %u\n"
#~ msgstr "DCC: soubor %s%s%s bude obnoven na pozici %u\n"
#~ msgid ""
#~ "%s can't resume file \"%s\" (port: %d, start position: %u): DCC not found "
#~ "or ended\n"
#~ msgstr ""
#~ "%s nemohu obnovit soubor \"%s\" (port: %d, počáteční pozice: %u): DCC "
#~ "nenalezeno nebo ukončeno\n"
#~ msgid "DCC chat"
#~ msgstr "DCC rozhovor"
@@ -5866,21 +5900,6 @@ msgstr "%s chybí argument pro volbu \"%s\"\n"
#~ msgid "%s server/channel (%s/%s) not found for plugin exec command\n"
#~ msgstr "%s server/kanál (%s/%s) nenaleyen pro exec příkaz pluginu\n"
#~ msgid " [A] Accept"
#~ msgstr " [A] Akceptovat"
#~ msgid " [C] Cancel"
#~ msgstr " [C] Storno"
#~ msgid " [R] Remove"
#~ msgstr " [R] Odebrat"
#~ msgid " [P] Purge old DCC"
#~ msgstr " [P] Pročistit staré DCC"
#~ msgid " [Q] Close DCC view"
#~ msgstr " [Q] Zavřít DCC pohled"
#~ msgid " [Q] Close raw data view"
#~ msgstr " [Q] Zavřít čistý pohled na data"
+50 -31
View File
@@ -9,7 +9,7 @@ msgid ""
msgstr ""
"Project-Id-Version: WeeChat 0.2.7-dev\n"
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
"POT-Creation-Date: 2008-05-06 16:47+0200\n"
"POT-Creation-Date: 2008-05-07 13:30+0200\n"
"PO-Revision-Date: 2007-09-06 12:44+0200\n"
"Last-Translator: Thomas Schuetz <i18n@internet-villa.de>\n"
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
@@ -4258,13 +4258,13 @@ msgid "%s: sending chat request to %s"
msgstr "Sende DCC-Chatanforderung an %s%s\n"
#, fuzzy, c-format
msgid "%s: file %s (local filename: %s) will be resumed at position %u"
msgid "%s: file %s (local filename: %s) will be resumed at position %lu"
msgstr ""
"DCC: Datei %s%s%s (lokaler Dateiname: %s%s%s) wird an der Position %u "
"fortgesetzt\n"
#, fuzzy, c-format
msgid "%s%s: missing arguments"
msgid "%s%s: missing arguments (%s)"
msgstr "%s fehlende Argumente für die \"--dir\"-Option\n"
#, fuzzy, c-format
@@ -4300,6 +4300,26 @@ msgstr "%s kann keinen freien Port für DCC ermitteln\n"
msgid "%s%s: error creating xfer"
msgstr "%s nicht genügend Speicher für Infobar-Nachricht\n"
#, fuzzy, c-format
msgid ""
"%s%s: unable to resume file \"%s\" (port: %d, start position: %lu): xfer not "
"found or not ready for transfert"
msgstr ""
"%s kann die Datei \"%s\" nicht fortsetzen (Port: %d, Startposition: %u): DCC "
"nicht gefunden oder bereits fertig\n"
#, fuzzy, c-format
msgid "%s: file %s resumed at position %lu"
msgstr "DCC: Datei %s%s%s wird an Position %u fortgesetzt\n"
#, fuzzy, c-format
msgid ""
"%s%s: unable to accept resume file \"%s\" (port: %d, start position: %lu): "
"xfer not found or not ready for transfert"
msgstr ""
"%s kann die Datei \"%s\" nicht fortsetzen (Port: %d, Startposition: %u): DCC "
"nicht gefunden oder bereits fertig\n"
#, fuzzy, c-format
msgid "%s%s: aborting active xfer: \"%s\" from %s"
msgstr "Aktiver DCC wird abgebrochen: \"%s\" von %s\n"
@@ -4316,6 +4336,26 @@ msgstr "MB"
msgid "GB"
msgstr "GB"
msgid "Actions (letter+enter):"
msgstr ""
msgid " [A] Accept"
msgstr " [A] annehmen"
msgid " [C] Cancel"
msgstr " [C] abbrechen"
msgid " [R] Remove"
msgstr " [R] entfernen"
#, fuzzy
msgid " [P] Purge finished"
msgstr " [P] alte DCCs entfernen"
#, fuzzy
msgid " [Q] Close xfer list"
msgstr " [Q] DCC-Ansicht schließen"
msgid "ETA"
msgstr "ETA"
@@ -4338,7 +4378,7 @@ msgstr ""
msgid "Open buffer with xfer list"
msgstr "Offene Puffer:\n"
msgid "auto open xfer buffer and switch to it when a new xfer is added to list"
msgid "auto open xfer buffer when a new xfer is added to list"
msgstr ""
msgid "size of progress bar, in chars (if 0, progress bar is disabled)"
@@ -4353,8 +4393,8 @@ msgid "background color"
msgstr "Hintergrundfarbe der Nicknames"
#, fuzzy
msgid "background color for selected line"
msgstr "Farbe der Eingabezeile"
msgid "text color of selected xfer line"
msgstr "Farbe des Servernamens"
#, fuzzy
msgid "text color for \"waiting\" status"
@@ -4487,6 +4527,10 @@ msgstr "%s DCC: kann die 'nonblock'-Option für den Socket nicht festlegen\n"
msgid "%s%s: timeout for \"%s\" with %s"
msgstr "%s fehlende Argumente für die \"--dir\"-Option\n"
#, fuzzy
#~ msgid "background color for selected line"
#~ msgstr "Farbe der Eingabezeile"
#, fuzzy
#~ msgid "%s%s: filename missing for type \"%s\""
#~ msgstr "%s %s, Zeile %d: ungültige Option \"%s\"\n"
@@ -4517,16 +4561,6 @@ msgstr "%s fehlende Argumente für die \"--dir\"-Option\n"
#~ "%s kann keinen DCC Chat mit privatem Puffer assoziieren (ist er bereits "
#~ "ein DCC CHAT?)\n"
#~ msgid "DCC: file %s%s%s resumed at position %u\n"
#~ msgstr "DCC: Datei %s%s%s wird an Position %u fortgesetzt\n"
#~ msgid ""
#~ "%s can't resume file \"%s\" (port: %d, start position: %u): DCC not found "
#~ "or ended\n"
#~ msgstr ""
#~ "%s kann die Datei \"%s\" nicht fortsetzen (Port: %d, Startposition: %u): "
#~ "DCC nicht gefunden oder bereits fertig\n"
#~ msgid "DCC chat"
#~ msgstr "DCC Chat"
@@ -5866,21 +5900,6 @@ msgstr "%s fehlende Argumente für die \"--dir\"-Option\n"
#~ msgstr ""
#~ "%s Server/Channel (%s/%s) für den Plugin-Exec-Befehl nicht gefunden\n"
#~ msgid " [A] Accept"
#~ msgstr " [A] annehmen"
#~ msgid " [C] Cancel"
#~ msgstr " [C] abbrechen"
#~ msgid " [R] Remove"
#~ msgstr " [R] entfernen"
#~ msgid " [P] Purge old DCC"
#~ msgstr " [P] alte DCCs entfernen"
#~ msgid " [Q] Close DCC view"
#~ msgstr " [Q] DCC-Ansicht schließen"
#~ msgid " [Q] Close raw data view"
#~ msgstr " [Q] Rohdatenansicht schließen"
+50 -31
View File
@@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: WeeChat 0.2.7-dev\n"
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
"POT-Creation-Date: 2008-05-06 16:47+0200\n"
"POT-Creation-Date: 2008-05-07 13:30+0200\n"
"PO-Revision-Date: 2007-09-19 12:09+0200\n"
"Last-Translator: Roberto González Cardenete <robert.glez@gmail.com>\n"
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
@@ -4263,13 +4263,13 @@ msgid "%s: sending chat request to %s"
msgstr "Envío de petición de charla DCC a %s%s\n"
#, fuzzy, c-format
msgid "%s: file %s (local filename: %s) will be resumed at position %u"
msgid "%s: file %s (local filename: %s) will be resumed at position %lu"
msgstr ""
"DCC: el archivo %s%s%s (nombre de archivo local: %s%s%s) será reanudado en "
"la posición %u\n"
#, fuzzy, c-format
msgid "%s%s: missing arguments"
msgid "%s%s: missing arguments (%s)"
msgstr "%s falta un argumento para la opción --dir\n"
#, fuzzy, c-format
@@ -4306,6 +4306,26 @@ msgid "%s%s: error creating xfer"
msgstr ""
"No hay suficiente memoria para el mensaje de la barra de información\n"
#, fuzzy, c-format
msgid ""
"%s%s: unable to resume file \"%s\" (port: %d, start position: %lu): xfer not "
"found or not ready for transfert"
msgstr ""
"%s no puede reanudar el archivo \"%s\" (puerto: %d, posición de inicio: %"
"u): DCC no encontrado o terminado\n"
#, fuzzy, c-format
msgid "%s: file %s resumed at position %lu"
msgstr "DCC: archivo %s%s%s reanudado en la posición %u\n"
#, fuzzy, c-format
msgid ""
"%s%s: unable to accept resume file \"%s\" (port: %d, start position: %lu): "
"xfer not found or not ready for transfert"
msgstr ""
"%s no puede reanudar el archivo \"%s\" (puerto: %d, posición de inicio: %"
"u): DCC no encontrado o terminado\n"
#, fuzzy, c-format
msgid "%s%s: aborting active xfer: \"%s\" from %s"
msgstr "Abandonar el DCC activo: \"%s\" de %s\n"
@@ -4322,6 +4342,26 @@ msgstr ""
msgid "GB"
msgstr ""
msgid "Actions (letter+enter):"
msgstr ""
msgid " [A] Accept"
msgstr " [A] Aceptar"
msgid " [C] Cancel"
msgstr " [C] Cancelar"
msgid " [R] Remove"
msgstr " [R] Eliminar"
#, fuzzy
msgid " [P] Purge finished"
msgstr " [P] Purgar los viejos DCC"
#, fuzzy
msgid " [Q] Close xfer list"
msgstr " [Q] Cerrar la vista DCC"
msgid "ETA"
msgstr "Tiempo estimado de llegada"
@@ -4344,7 +4384,7 @@ msgstr ""
msgid "Open buffer with xfer list"
msgstr "Búfers abiertos:\n"
msgid "auto open xfer buffer and switch to it when a new xfer is added to list"
msgid "auto open xfer buffer when a new xfer is added to list"
msgstr ""
msgid "size of progress bar, in chars (if 0, progress bar is disabled)"
@@ -4359,8 +4399,8 @@ msgid "background color"
msgstr "color de fondo para los nombres de usuario"
#, fuzzy
msgid "background color for selected line"
msgstr "color para el texto de entrada"
msgid "text color of selected xfer line"
msgstr "color para el nombre del servidor"
#, fuzzy
msgid "text color for \"waiting\" status"
@@ -4496,6 +4536,10 @@ msgstr "%s no es posible crear el servidor\n"
msgid "%s%s: timeout for \"%s\" with %s"
msgstr "%s falta un argumento para la opción --dir\n"
#, fuzzy
#~ msgid "background color for selected line"
#~ msgstr "color para el texto de entrada"
#, fuzzy
#~ msgid "%s%s: filename missing for type \"%s\""
#~ msgstr "%s %s, línea %d: opción \"%s\" inválida\n"
@@ -4526,16 +4570,6 @@ msgstr "%s falta un argumento para la opción --dir\n"
#~ "%s no se puede asociar la conversación DCC con el búfer privado (quizá "
#~ "el búfer privado ya tiene DCC CHAT)\n"
#~ msgid "DCC: file %s%s%s resumed at position %u\n"
#~ msgstr "DCC: archivo %s%s%s reanudado en la posición %u\n"
#~ msgid ""
#~ "%s can't resume file \"%s\" (port: %d, start position: %u): DCC not found "
#~ "or ended\n"
#~ msgstr ""
#~ "%s no puede reanudar el archivo \"%s\" (puerto: %d, posición de inicio: %"
#~ "u): DCC no encontrado o terminado\n"
#~ msgid "DCC chat"
#~ msgstr "Charla DCC"
@@ -5893,21 +5927,6 @@ msgstr "%s falta un argumento para la opción --dir\n"
#~ msgstr ""
#~ "%s servidor/canal (%s/%s) no encontrado para el plugin de comando exec\n"
#~ msgid " [A] Accept"
#~ msgstr " [A] Aceptar"
#~ msgid " [C] Cancel"
#~ msgstr " [C] Cancelar"
#~ msgid " [R] Remove"
#~ msgstr " [R] Eliminar"
#~ msgid " [P] Purge old DCC"
#~ msgstr " [P] Purgar los viejos DCC"
#~ msgid " [Q] Close DCC view"
#~ msgstr " [Q] Cerrar la vista DCC"
#~ msgid " [Q] Close raw data view"
#~ msgstr " [Q] Cerrar vista de datos basura"
+53 -14
View File
@@ -6,8 +6,8 @@ msgid ""
msgstr ""
"Project-Id-Version: WeeChat 0.2.7-dev\n"
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
"POT-Creation-Date: 2008-05-06 16:47+0200\n"
"PO-Revision-Date: 2008-05-06 16:46+0200\n"
"POT-Creation-Date: 2008-05-07 13:30+0200\n"
"PO-Revision-Date: 2008-05-07 13:30+0200\n"
"Last-Translator: FlashCode <flashcode@flashtux.org>\n"
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
"MIME-Version: 1.0\n"
@@ -2232,14 +2232,12 @@ msgstr "démarre le DCC (fichier ou discussion)"
msgid "action [nickname [file]]"
msgstr "action [pseudo [fichier]]"
#, fuzzy
msgid ""
" action: 'send' (file) or 'chat'\n"
"nickname: nickname to send file or chat\n"
" file: filename (on local host)"
msgstr ""
" action: 'send' (envoi de fichier) ou 'chat' (discussion) ou "
"'close' (fermeture discussion)\n"
" action: 'send' (envoi de fichier) ou 'chat' (discussion)\n"
" pseudo: pseudo pour envoyer le fichier ou discuter\n"
"fichier: nom du fichier (sur la machine locale)"
@@ -4212,12 +4210,12 @@ msgid "%s: sending chat request to %s"
msgstr "%s: envoi d'une demande de discussion à %s"
#, c-format
msgid "%s: file %s (local filename: %s) will be resumed at position %u"
msgstr "%s: fichier %s (nom local: %s) sera recommencé en position %u"
msgid "%s: file %s (local filename: %s) will be resumed at position %lu"
msgstr "%s: fichier %s (nom local: %s) sera recommencé en position %lu"
#, c-format
msgid "%s%s: missing arguments"
msgstr "%s%s: paramètres manquants"
msgid "%s%s: missing arguments (%s)"
msgstr "%s%s: paramètres manquants (%s)"
#, c-format
msgid "%s%s: unknown xfer type \"%s\""
@@ -4253,6 +4251,26 @@ msgstr "%s%s: impossible de trouver un port disponible pour le xfer"
msgid "%s%s: error creating xfer"
msgstr "%s%s: erreur de création du xfer"
#, c-format
msgid ""
"%s%s: unable to resume file \"%s\" (port: %d, start position: %lu): xfer not "
"found or not ready for transfert"
msgstr ""
"%s%s: impossible de continuer le fichier \"%s\" (port: %d, position de "
"départ: %lu): xfer non trouvé ou non prêt pour le transfert"
#, c-format
msgid "%s: file %s resumed at position %lu"
msgstr "%s: fichier %s sera recommencé en position %lu"
#, c-format
msgid ""
"%s%s: unable to accept resume file \"%s\" (port: %d, start position: %lu): "
"xfer not found or not ready for transfert"
msgstr ""
"%s%s: impossible d'accepter de continuer le fichier \"%s\" (port: %d, "
"position de départ: %lu): xfer non trouvé ou non prêt pour le transfert"
#, c-format
msgid "%s%s: aborting active xfer: \"%s\" from %s"
msgstr "%s%s: abandon du xfer actif: \"%s\" de %s"
@@ -4269,6 +4287,24 @@ msgstr "Mo"
msgid "GB"
msgstr "Go"
msgid "Actions (letter+enter):"
msgstr "Actions (lettre+entrée):"
msgid " [A] Accept"
msgstr " [A] Accepter"
msgid " [C] Cancel"
msgstr " [C] Annuler"
msgid " [R] Remove"
msgstr " [R] Retirer"
msgid " [P] Purge finished"
msgstr " [P] Purger terminés"
msgid " [Q] Close xfer list"
msgstr " [Q] Fermer la liste xfer"
msgid "ETA"
msgstr "ETA"
@@ -4289,10 +4325,10 @@ msgstr "contrôle xfer"
msgid "Open buffer with xfer list"
msgstr "Ouverture du tampon avec la liste des xfers"
msgid "auto open xfer buffer and switch to it when a new xfer is added to list"
msgid "auto open xfer buffer when a new xfer is added to list"
msgstr ""
"ouvrir automatiquement le tampon xfer et basculer vers celui-ci lorsqu'un "
"nouveau xfer est ajouté à la liste"
"ouvrir automatiquement le tampon xfer lorsqu'un nouveau xfer est ajouté à la "
"liste"
msgid "size of progress bar, in chars (if 0, progress bar is disabled)"
msgstr ""
@@ -4305,8 +4341,8 @@ msgstr "couleur du texte"
msgid "background color"
msgstr "couleur du fond"
msgid "background color for selected line"
msgstr "couleur du fond pour la ligne sélectionnée"
msgid "text color of selected xfer line"
msgstr "couleur du texte pour la ligne xfer sélectionnée"
msgid "text color for \"waiting\" status"
msgstr "couleur du texte pour le statut \"en attente\""
@@ -4426,3 +4462,6 @@ msgstr "%s%s: impossible de positionner l'option \"nonblock\" pour la socket"
#, c-format
msgid "%s%s: timeout for \"%s\" with %s"
msgstr "%s%s: délai d'attente dépassé pour \"%s\" avec %s"
#~ msgid "background color for selected line"
#~ msgstr "couleur du fond pour la ligne sélectionnée"
+50 -31
View File
@@ -12,7 +12,7 @@ msgid ""
msgstr ""
"Project-Id-Version: WeeChat 0.2.7-dev\n"
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
"POT-Creation-Date: 2008-05-06 16:47+0200\n"
"POT-Creation-Date: 2008-05-07 13:30+0200\n"
"PO-Revision-Date: 2007-10-10 18:07+0200\n"
"Last-Translator: Andras Voroskoi <voroskoi@frugalware.org>\n"
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
@@ -4277,12 +4277,12 @@ msgid "%s: sending chat request to %s"
msgstr "DCC beszélgetésre felkérés küldése a következőnek: %s%s\n"
#, fuzzy, c-format
msgid "%s: file %s (local filename: %s) will be resumed at position %u"
msgid "%s: file %s (local filename: %s) will be resumed at position %lu"
msgstr ""
"DCC: a %s%s%s fájl (helyi fájlnév: %s%s%s) a(z) %u pozíción fog visszatérni\n"
#, fuzzy, c-format
msgid "%s%s: missing arguments"
msgid "%s%s: missing arguments (%s)"
msgstr "%s hiányzó argumentum a(z) \"%s\" opciónak\n"
#, fuzzy, c-format
@@ -4318,6 +4318,26 @@ msgstr "%s nem sikerült elérhető portot találni a DCC-hez\n"
msgid "%s%s: error creating xfer"
msgstr "%s nincs elég memória az információs pult üzenethez\n"
#, fuzzy, c-format
msgid ""
"%s%s: unable to resume file \"%s\" (port: %d, start position: %lu): xfer not "
"found or not ready for transfert"
msgstr ""
"%s nem sikerült a(z) \"%s\" fájlra visszatérni (port: %d, indulási pozíció: %"
"u): DCC nem található vagy véget ért\n"
#, fuzzy, c-format
msgid "%s: file %s resumed at position %lu"
msgstr "DCC: a(z) %s%s%s fájl visszatért a(z) %u pozíción\n"
#, fuzzy, c-format
msgid ""
"%s%s: unable to accept resume file \"%s\" (port: %d, start position: %lu): "
"xfer not found or not ready for transfert"
msgstr ""
"%s nem sikerült a(z) \"%s\" fájlra visszatérni (port: %d, indulási pozíció: %"
"u): DCC nem található vagy véget ért\n"
#, fuzzy, c-format
msgid "%s%s: aborting active xfer: \"%s\" from %s"
msgstr "\"%s\" aktív DCC megszakítása a következővel: %s\n"
@@ -4334,6 +4354,26 @@ msgstr "MB"
msgid "GB"
msgstr "GB"
msgid "Actions (letter+enter):"
msgstr ""
msgid " [A] Accept"
msgstr " [A] Elfogadás"
msgid " [C] Cancel"
msgstr " [C] Mégsem"
msgid " [R] Remove"
msgstr " [R] Eltávolítás"
#, fuzzy
msgid " [P] Purge finished"
msgstr " [P] Régi DCC törlése"
#, fuzzy
msgid " [Q] Close xfer list"
msgstr " [Q] DCC nézet bezárása"
msgid "ETA"
msgstr "ETA"
@@ -4358,7 +4398,7 @@ msgstr ""
msgid "Open buffer with xfer list"
msgstr "Nyitott pufferek:\n"
msgid "auto open xfer buffer and switch to it when a new xfer is added to list"
msgid "auto open xfer buffer when a new xfer is added to list"
msgstr ""
msgid "size of progress bar, in chars (if 0, progress bar is disabled)"
@@ -4373,8 +4413,8 @@ msgid "background color"
msgstr "nevek háttere"
#, fuzzy
msgid "background color for selected line"
msgstr "szövegbeviteli mező színe"
msgid "text color of selected xfer line"
msgstr "szerver nevének színe"
#, fuzzy
msgid "text color for \"waiting\" status"
@@ -4502,6 +4542,10 @@ msgstr "%s DCC: nem sikerült 'nonblock' opciót beállítani a csatornán\n"
msgid "%s%s: timeout for \"%s\" with %s"
msgstr "%s hiányzó argumentum a(z) \"%s\" opciónak\n"
#, fuzzy
#~ msgid "background color for selected line"
#~ msgstr "szövegbeviteli mező színe"
#, fuzzy
#~ msgid "%s%s: filename missing for type \"%s\""
#~ msgstr "%s %s, %d. sor: érvénytelen opció: \"%s\"\n"
@@ -4532,16 +4576,6 @@ msgstr "%s hiányzó argumentum a(z) \"%s\" opciónak\n"
#~ "%s nem sikerült a DCC beszégetést a privát pufferhez kapcsolni (talán már "
#~ "lett DCC CHAT hozzárendelve?)\n"
#~ msgid "DCC: file %s%s%s resumed at position %u\n"
#~ msgstr "DCC: a(z) %s%s%s fájl visszatért a(z) %u pozíción\n"
#~ msgid ""
#~ "%s can't resume file \"%s\" (port: %d, start position: %u): DCC not found "
#~ "or ended\n"
#~ msgstr ""
#~ "%s nem sikerült a(z) \"%s\" fájlra visszatérni (port: %d, indulási "
#~ "pozíció: %u): DCC nem található vagy véget ért\n"
#~ msgid "DCC chat"
#~ msgstr "DCC beszélgetés"
@@ -5862,21 +5896,6 @@ msgstr "%s hiányzó argumentum a(z) \"%s\" opciónak\n"
#~ msgstr ""
#~ "%s (%s/%s) szerver/szoba nem található a modul futtatása parancshoz\n"
#~ msgid " [A] Accept"
#~ msgstr " [A] Elfogadás"
#~ msgid " [C] Cancel"
#~ msgstr " [C] Mégsem"
#~ msgid " [R] Remove"
#~ msgstr " [R] Eltávolítás"
#~ msgid " [P] Purge old DCC"
#~ msgstr " [P] Régi DCC törlése"
#~ msgid " [Q] Close DCC view"
#~ msgstr " [Q] DCC nézet bezárása"
#~ msgid " [Q] Close raw data view"
#~ msgstr " [Q] Nyers adat nézet bezárása"
+50 -31
View File
@@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: WeeChat 0.2.7-dev\n"
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
"POT-Creation-Date: 2008-05-06 16:47+0200\n"
"POT-Creation-Date: 2008-05-07 13:30+0200\n"
"PO-Revision-Date: 2007-09-06 12:44+0200\n"
"Last-Translator: Pavel Shevchuk <stlwrt@gmail.com>\n"
"Language-Team: weechat-dev <weechat-dev@nongnu.org>\n"
@@ -4263,12 +4263,12 @@ msgid "%s: sending chat request to %s"
msgstr "Отправляю запрос на DCC-чат %s%s\n"
#, fuzzy, c-format
msgid "%s: file %s (local filename: %s) will be resumed at position %u"
msgid "%s: file %s (local filename: %s) will be resumed at position %lu"
msgstr ""
"DCC: файл %s%s%s (локальное имя файла: %s%s%s) будет продолжен с позиции %u\n"
#, fuzzy, c-format
msgid "%s%s: missing arguments"
msgid "%s%s: missing arguments (%s)"
msgstr "%s нет аргумента для параметра \"%s\"\n"
#, fuzzy, c-format
@@ -4303,6 +4303,26 @@ msgstr "%s не могу найти свободный порт для DCC\n"
msgid "%s%s: error creating xfer"
msgstr "%s недостаточно памяти для сообщения в строке информации\n"
#, fuzzy, c-format
msgid ""
"%s%s: unable to resume file \"%s\" (port: %d, start position: %lu): xfer not "
"found or not ready for transfert"
msgstr ""
"%s не могу продолжить файл \"%s\" (порт: %d, начальная позиция: %u): DCC не "
"найден или завершён\n"
#, fuzzy, c-format
msgid "%s: file %s resumed at position %lu"
msgstr "DCC: файл %s%s%s продолжается с позиции %u\n"
#, fuzzy, c-format
msgid ""
"%s%s: unable to accept resume file \"%s\" (port: %d, start position: %lu): "
"xfer not found or not ready for transfert"
msgstr ""
"%s не могу продолжить файл \"%s\" (порт: %d, начальная позиция: %u): DCC не "
"найден или завершён\n"
#, fuzzy, c-format
msgid "%s%s: aborting active xfer: \"%s\" from %s"
msgstr "Отменяю активное DCC-сединение: \"%s\" от %s\n"
@@ -4319,6 +4339,26 @@ msgstr "МБ"
msgid "GB"
msgstr "ГБ"
msgid "Actions (letter+enter):"
msgstr ""
msgid " [A] Accept"
msgstr " [A] Принять"
msgid " [C] Cancel"
msgstr " [C] Отменить"
msgid " [R] Remove"
msgstr " [R] Удалить"
#, fuzzy
msgid " [P] Purge finished"
msgstr " [P] Очистить список"
#, fuzzy
msgid " [Q] Close xfer list"
msgstr " [Q] Закрыть окно"
msgid "ETA"
msgstr "осталось"
@@ -4341,7 +4381,7 @@ msgstr ""
msgid "Open buffer with xfer list"
msgstr "Открытые буферы:\n"
msgid "auto open xfer buffer and switch to it when a new xfer is added to list"
msgid "auto open xfer buffer when a new xfer is added to list"
msgstr ""
msgid "size of progress bar, in chars (if 0, progress bar is disabled)"
@@ -4356,8 +4396,8 @@ msgid "background color"
msgstr "фон ников"
#, fuzzy
msgid "background color for selected line"
msgstr "цвет вводимого текста"
msgid "text color of selected xfer line"
msgstr "цвет названия сервера"
#, fuzzy
msgid "text color for \"waiting\" status"
@@ -4487,6 +4527,10 @@ msgstr "%s DCC: не могу установить неблокирующий р
msgid "%s%s: timeout for \"%s\" with %s"
msgstr "%s нет аргумента для параметра \"%s\"\n"
#, fuzzy
#~ msgid "background color for selected line"
#~ msgstr "цвет вводимого текста"
#, fuzzy
#~ msgid "%s%s: filename missing for type \"%s\""
#~ msgstr "%s %s, строка %d: некорректный параметр \"%s\"\n"
@@ -4517,16 +4561,6 @@ msgstr "%s нет аргумента для параметра \"%s\"\n"
#~ "%s не могу ассоциировать DCC-чат с буфером (возможно буфер уже имеет DCC-"
#~ "чат)\n"
#~ msgid "DCC: file %s%s%s resumed at position %u\n"
#~ msgstr "DCC: файл %s%s%s продолжается с позиции %u\n"
#~ msgid ""
#~ "%s can't resume file \"%s\" (port: %d, start position: %u): DCC not found "
#~ "or ended\n"
#~ msgstr ""
#~ "%s не могу продолжить файл \"%s\" (порт: %d, начальная позиция: %u): DCC "
#~ "не найден или завершён\n"
#~ msgid "DCC chat"
#~ msgstr "DCC чат"
@@ -5867,21 +5901,6 @@ msgstr "%s нет аргумента для параметра \"%s\"\n"
#~ msgid "%s server/channel (%s/%s) not found for plugin exec command\n"
#~ msgstr "%s сервер/канал (%s/%s) не найден для команды plug-inа\n"
#~ msgid " [A] Accept"
#~ msgstr " [A] Принять"
#~ msgid " [C] Cancel"
#~ msgstr " [C] Отменить"
#~ msgid " [R] Remove"
#~ msgstr " [R] Удалить"
#~ msgid " [P] Purge old DCC"
#~ msgstr " [P] Очистить список"
#~ msgid " [Q] Close DCC view"
#~ msgstr " [Q] Закрыть окно"
#~ msgid " [Q] Close raw data view"
#~ msgstr " [Q] Закрыть окно сырых данных"
+39 -5
View File
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: flashcode@flashtux.org\n"
"POT-Creation-Date: 2008-05-06 16:47+0200\n"
"POT-Creation-Date: 2008-05-07 13:30+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"
@@ -3700,11 +3700,11 @@ msgid "%s: sending chat request to %s"
msgstr ""
#, c-format
msgid "%s: file %s (local filename: %s) will be resumed at position %u"
msgid "%s: file %s (local filename: %s) will be resumed at position %lu"
msgstr ""
#, c-format
msgid "%s%s: missing arguments"
msgid "%s%s: missing arguments (%s)"
msgstr ""
#, c-format
@@ -3739,6 +3739,22 @@ msgstr ""
msgid "%s%s: error creating xfer"
msgstr ""
#, c-format
msgid ""
"%s%s: unable to resume file \"%s\" (port: %d, start position: %lu): xfer not "
"found or not ready for transfert"
msgstr ""
#, c-format
msgid "%s: file %s resumed at position %lu"
msgstr ""
#, c-format
msgid ""
"%s%s: unable to accept resume file \"%s\" (port: %d, start position: %lu): "
"xfer not found or not ready for transfert"
msgstr ""
#, c-format
msgid "%s%s: aborting active xfer: \"%s\" from %s"
msgstr ""
@@ -3755,6 +3771,24 @@ msgstr ""
msgid "GB"
msgstr ""
msgid "Actions (letter+enter):"
msgstr ""
msgid " [A] Accept"
msgstr ""
msgid " [C] Cancel"
msgstr ""
msgid " [R] Remove"
msgstr ""
msgid " [P] Purge finished"
msgstr ""
msgid " [Q] Close xfer list"
msgstr ""
msgid "ETA"
msgstr ""
@@ -3775,7 +3809,7 @@ msgstr ""
msgid "Open buffer with xfer list"
msgstr ""
msgid "auto open xfer buffer and switch to it when a new xfer is added to list"
msgid "auto open xfer buffer when a new xfer is added to list"
msgstr ""
msgid "size of progress bar, in chars (if 0, progress bar is disabled)"
@@ -3787,7 +3821,7 @@ msgstr ""
msgid "background color"
msgstr ""
msgid "background color for selected line"
msgid "text color of selected xfer line"
msgstr ""
msgid "text color for \"waiting\" status"
-47
View File
@@ -46,25 +46,6 @@ struct t_irc_dcc *irc_last_dcc = NULL; /* last DCC in list */
/*
* irc_dcc_chat_remove_channel: remove a buffer for DCC chat
*/
/*
void
irc_dcc_chat_remove_channel (struct t_irc_channel *channel)
{
struct t_irc_dcc *ptr_dcc;
if (!channel)
return;
for (ptr_dcc = irc_dcc_list; ptr_dcc; ptr_dcc = ptr_dcc->next_dcc)
{
if (ptr_dcc->channel == channel)
ptr_dcc->channel = NULL;
}
}
*/
/*
* irc_dcc_accept_resume: accepts a resume and inform the receiver
*/
@@ -105,31 +86,3 @@ irc_dcc_accept_resume (struct t_irc_server *server, char *filename, int port,
WEECHAT_ERROR, filename, port, pos_start);
}
*/
/*
* irc_dcc_start_resume: called when "DCC ACCEPT" is received
* (resume accepted by sender)
*/
/*
void
irc_dcc_start_resume (struct t_irc_server *server, char *filename, int port,
unsigned long pos_start)
{
struct t_irc_dcc *ptr_dcc;
ptr_dcc = irc_dcc_search (server, IRC_DCC_FILE_RECV, IRC_DCC_CONNECTING,
port);
if (ptr_dcc)
{
ptr_dcc->pos = pos_start;
ptr_dcc->ack = pos_start;
ptr_dcc->start_resume = pos_start;
ptr_dcc->last_check_pos = pos_start;
irc_dcc_recv_connect_init (ptr_dcc);
}
else
gui_chat_printf (server->buffer,
_("%s can't resume file \"%s\" (port: %d, start "
"position: %u): DCC not found or ended\n"),
WEECHAT_ERROR, filename, port, pos_start);
}
*/
+46 -16
View File
@@ -1742,12 +1742,6 @@ irc_protocol_cmd_privmsg (struct t_irc_server *server, char *command,
weechat_infolist_free (infolist);
}
/* TODO: add DCC file */
//irc_dcc_add (server, IRC_DCC_FILE_RECV,
// strtoul (pos_addr, NULL, 10),
// atoi (pos_port), nick, -1, pos_file, NULL,
// strtoul (pos_size, NULL, 10));
weechat_hook_signal_send ("irc_dcc",
WEECHAT_HOOK_SIGNAL_STRING,
argv_eol[0]);
@@ -1827,11 +1821,29 @@ irc_protocol_cmd_privmsg (struct t_irc_server *server, char *command,
pos--;
}
pos[1] = '\0';
/* TODO: accept DCC resume */
//irc_dcc_accept_resume (server, pos_file, atoi (pos_port),
// strtoul (pos_start_resume, NULL, 10));
/* accept resume via xfer plugin */
infolist = weechat_infolist_new ();
if (infolist)
{
item = weechat_infolist_new_item (infolist);
if (item)
{
weechat_infolist_new_var_string (item, "plugin_name", weechat_plugin->name);
snprintf (plugin_id, sizeof (plugin_id),
"%x", (unsigned int)server);
weechat_infolist_new_var_string (item, "plugin_id", plugin_id);
weechat_infolist_new_var_string (item, "type", "file_recv");
weechat_infolist_new_var_string (item, "filename", pos_file);
weechat_infolist_new_var_integer (item, "port", atoi (pos_port));
weechat_infolist_new_var_string (item, "start_resume", pos_start_resume);
weechat_hook_signal_send ("xfer_accept_resume",
WEECHAT_HOOK_SIGNAL_POINTER,
infolist);
}
weechat_infolist_free (infolist);
}
weechat_hook_signal_send ("irc_dcc",
WEECHAT_HOOK_SIGNAL_STRING,
argv_eol[0]);
@@ -1911,11 +1923,29 @@ irc_protocol_cmd_privmsg (struct t_irc_server *server, char *command,
pos--;
}
pos[1] = '\0';
/* TODO: resume DCC */
//irc_dcc_start_resume (server, pos_file, atoi (pos_port),
// strtoul (pos_start_resume, NULL, 10));
/* resume file via xfer plugin */
infolist = weechat_infolist_new ();
if (infolist)
{
item = weechat_infolist_new_item (infolist);
if (item)
{
weechat_infolist_new_var_string (item, "plugin_name", weechat_plugin->name);
snprintf (plugin_id, sizeof (plugin_id),
"%x", (unsigned int)server);
weechat_infolist_new_var_string (item, "plugin_id", plugin_id);
weechat_infolist_new_var_string (item, "type", "file_recv");
weechat_infolist_new_var_string (item, "filename", pos_file);
weechat_infolist_new_var_integer (item, "port", atoi (pos_port));
weechat_infolist_new_var_string (item, "start_resume", pos_start_resume);
weechat_hook_signal_send ("xfer_start_resume",
WEECHAT_HOOK_SIGNAL_POINTER,
infolist);
}
weechat_infolist_free (infolist);
}
weechat_hook_signal_send ("irc_dcc",
WEECHAT_HOOK_SIGNAL_STRING,
argv_eol[0]);
+112
View File
@@ -2862,6 +2862,118 @@ irc_server_xfer_send_ready_cb (void *data, char *signal, char *type_data,
return WEECHAT_RC_OK;
}
/*
* irc_server_xfer_resume_ready_cb: callback called when user receives a file
* and that resume is possible (file is partially
* received)
* in that case, irc plugin send message to
* remote nick with resume position
*/
int
irc_server_xfer_resume_ready_cb (void *data, char *signal, char *type_data,
void *signal_data)
{
struct t_plugin_infolist *infolist;
struct t_irc_server *server, *ptr_server;
char *plugin_name, *plugin_id, *filename;
int spaces_in_name;
/* make C compiler happy */
(void) data;
(void) signal;
(void) type_data;
infolist = (struct t_plugin_infolist *)signal_data;
if (weechat_infolist_next (infolist))
{
plugin_name = weechat_infolist_string (infolist, "plugin_name");
plugin_id = weechat_infolist_string (infolist, "plugin_id");
if (plugin_name && (strcmp (plugin_name, "irc") == 0) && plugin_id)
{
sscanf (plugin_id, "%x", (unsigned int *)&server);
for (ptr_server = irc_servers; ptr_server;
ptr_server = ptr_server->next_server)
{
if (ptr_server == server)
break;
}
if (ptr_server)
{
filename = weechat_infolist_string (infolist, "filename");
spaces_in_name = (strchr (filename, ' ') != NULL);
irc_server_sendf (server,
"PRIVMSG %s :\01DCC RESUME %s%s%s %d %s\01",
weechat_infolist_string (infolist, "remote_nick"),
(spaces_in_name) ? "\"" : "",
filename,
(spaces_in_name) ? "\"" : "",
weechat_infolist_integer (infolist, "port"),
weechat_infolist_string (infolist, "start_resume"));
}
}
}
return WEECHAT_RC_OK;
}
/*
* irc_server_xfer_send_accept_resume_cb: callback called when xfer plugin
* accepted resume request from receiver
* in that case, irc plugin send accept
* message to remote nick with resume
* position
*/
int
irc_server_xfer_send_accept_resume_cb (void *data, char *signal,
char *type_data, void *signal_data)
{
struct t_plugin_infolist *infolist;
struct t_irc_server *server, *ptr_server;
char *plugin_name, *plugin_id, *filename;
int spaces_in_name;
/* make C compiler happy */
(void) data;
(void) signal;
(void) type_data;
infolist = (struct t_plugin_infolist *)signal_data;
if (weechat_infolist_next (infolist))
{
plugin_name = weechat_infolist_string (infolist, "plugin_name");
plugin_id = weechat_infolist_string (infolist, "plugin_id");
if (plugin_name && (strcmp (plugin_name, "irc") == 0) && plugin_id)
{
sscanf (plugin_id, "%x", (unsigned int *)&server);
for (ptr_server = irc_servers; ptr_server;
ptr_server = ptr_server->next_server)
{
if (ptr_server == server)
break;
}
if (ptr_server)
{
filename = weechat_infolist_string (infolist, "filename");
spaces_in_name = (strchr (filename, ' ') != NULL);
irc_server_sendf (server,
"PRIVMSG %s :\01DCC ACCEPT %s%s%s %d %s\01",
weechat_infolist_string (infolist, "remote_nick"),
(spaces_in_name) ? "\"" : "",
filename,
(spaces_in_name) ? "\"" : "",
weechat_infolist_integer (infolist, "port"),
weechat_infolist_string (infolist, "start_resume"));
}
}
}
return WEECHAT_RC_OK;
}
/*
* irc_server_print_log: print server infos in log (usually for crash dump)
*/
+5
View File
@@ -188,6 +188,11 @@ extern void irc_server_free (struct t_irc_server *server);
extern void irc_server_free_data (struct t_irc_server *server);
extern int irc_server_xfer_send_ready_cb (void *data, char *signal,
char *type_data, void *signal_data);
extern int irc_server_xfer_resume_ready_cb (void *data, char *signal,
char *type_data, void *signal_data);
extern int irc_server_xfer_send_accept_resume_cb (void *data, char *signal,
char *type_data,
void *signal_data);
extern void irc_server_print_log ();
#endif /* irc-server.h */
+2
View File
@@ -106,6 +106,8 @@ weechat_plugin_init (struct t_weechat_plugin *plugin)
irc_debug_init ();
weechat_hook_signal ("quit", &irc_signal_quit_cb, NULL);
weechat_hook_signal ("xfer_send_ready", &irc_server_xfer_send_ready_cb, NULL);
weechat_hook_signal ("xfer_resume_ready", &irc_server_xfer_resume_ready_cb, NULL);
weechat_hook_signal ("xfer_send_accept_resume", &irc_server_xfer_send_accept_resume_cb, NULL);
/* hook completions */
irc_completion_init ();
+15 -6
View File
@@ -42,8 +42,8 @@ void
xfer_buffer_refresh (char *hotlist)
{
struct t_xfer *ptr_xfer, *xfer_selected;
char str_color[256], status[64], date[128], *progress_bar, format[128];
char format_per_sec[128], bytes_per_sec[256], eta[128];
char str_color[256], suffix[32], status[64], date[128], *progress_bar;
char format[128], format_per_sec[128], bytes_per_sec[256], eta[128];
int i, length, line, progress_bar_size, num_bars, num_unit;
int num_unit_per_sec;
unsigned long pct_complete;
@@ -60,8 +60,9 @@ xfer_buffer_refresh (char *hotlist)
if (xfer_selected)
{
weechat_printf_y (xfer_buffer, 0,
"%sActions (letter+enter):%s%s%s%s%s%s",
"%s%s%s%s%s%s%s%s",
weechat_color("green"),
_("Actions (letter+enter):"),
weechat_color("lightgreen"),
/* accept */
(XFER_IS_RECV(xfer_selected->type)
@@ -80,6 +81,13 @@ xfer_buffer_refresh (char *hotlist)
}
for (ptr_xfer = xfer_list; ptr_xfer; ptr_xfer = ptr_xfer->next_xfer)
{
suffix[0] = '\0';
if (ptr_xfer->filename_suffix >= 0)
{
snprintf (suffix, sizeof (suffix),
" (.%d)", ptr_xfer->filename_suffix);
}
snprintf (str_color, sizeof (str_color),
"%s,%s",
(line == xfer_buffer_selected_line) ?
@@ -89,7 +97,7 @@ xfer_buffer_refresh (char *hotlist)
/* display first line with remote nick and filename */
weechat_printf_y (xfer_buffer, (line * 2) + 2,
"%s%s%-24s %s%s%s",
"%s%s%-24s %s%s%s%s",
weechat_color(str_color),
(line == xfer_buffer_selected_line) ?
"*** " : " ",
@@ -97,8 +105,9 @@ xfer_buffer_refresh (char *hotlist)
(XFER_IS_FILE(ptr_xfer->type)) ? "\"" : "",
(XFER_IS_FILE(ptr_xfer->type)) ?
ptr_xfer->filename : _("xfer chat"),
(XFER_IS_FILE(ptr_xfer->type)) ? "\"" : "");
(XFER_IS_FILE(ptr_xfer->type)) ? "\"" : "",
suffix);
snprintf (status, sizeof (status),
"%s", _(xfer_status_string[ptr_xfer->status]));
length = weechat_utf8_strlen_screen (status);
+2 -2
View File
@@ -56,8 +56,8 @@ xfer_file_resume (struct t_xfer *xfer, char *filename)
if ((unsigned long) st.st_size < xfer->size)
{
xfer->start_resume = (unsigned long) st.st_size;
xfer->pos = st.st_size;
xfer->last_check_pos = st.st_size;
xfer->pos = xfer->start_resume;
xfer->last_check_pos = xfer->start_resume;
return 1;
}
}
+1 -9
View File
@@ -544,15 +544,7 @@ xfer_network_accept (struct t_xfer *xfer)
if (XFER_IS_FILE(xfer->type) && (xfer->start_resume > 0))
{
xfer->status = XFER_STATUS_CONNECTING;
xfer_send_signal (xfer, "xfer_accepted");
/*
irc_server_sendf (dcc->server,
(strchr (dcc->filename, ' ')) ?
"PRIVMSG %s :\01DCC RESUME \"%s\" %d %u\01\n" :
"PRIVMSG %s :\01DCC RESUME %s %d %u\01",
dcc->nick, dcc->filename,
dcc->port, dcc->start_resume);
*/
xfer_send_signal (xfer, "xfer_resume_ready");
xfer_buffer_refresh (WEECHAT_HOTLIST_MESSAGE);
}
else
+184 -16
View File
@@ -140,13 +140,16 @@ xfer_search_protocol (char *protocol)
*/
struct t_xfer *
xfer_search (enum t_xfer_type type, enum t_xfer_status status, int port)
xfer_search (char *plugin_name, char *plugin_id, enum t_xfer_type type,
enum t_xfer_status status, int port)
{
struct t_xfer *ptr_xfer;
for (ptr_xfer = xfer_list; ptr_xfer; ptr_xfer = ptr_xfer->next_xfer)
{
if ((ptr_xfer->type == type)
if ((weechat_strcasecmp (ptr_xfer->plugin_name, plugin_name) == 0)
&& (weechat_strcasecmp (ptr_xfer->plugin_id, plugin_id) == 0)
&& (ptr_xfer->type == type)
&& (ptr_xfer->status = status)
&& (ptr_xfer->port == port))
return ptr_xfer;
@@ -319,6 +322,9 @@ xfer_send_signal (struct t_xfer *xfer, char *signal)
snprintf (str_long, sizeof (str_long), "%lu", xfer->size);
weechat_infolist_new_var_string (item, "size",
str_long);
snprintf (str_long, sizeof (str_long), "%lu", xfer->start_resume);
weechat_infolist_new_var_string (item, "start_resume",
str_long);
snprintf (str_long, sizeof (str_long), "%lu", xfer->address);
weechat_infolist_new_var_string (item, "address",
str_long);
@@ -510,7 +516,7 @@ xfer_new (char *plugin_name, char *plugin_id, enum t_xfer_type type,
{
weechat_printf (NULL,
_("%s: file %s (local filename: %s) "
"will be resumed at position %u"),
"will be resumed at position %lu"),
"xfer",
new_xfer->filename,
new_xfer->local_filename,
@@ -620,15 +626,11 @@ xfer_add_cb (void *data, char *signal, char *type_data, void *signal_data)
(void) signal;
(void) type_data;
filename2 = NULL;
short_filename = NULL;
spaces = 0;
if (!signal_data)
{
weechat_printf (NULL,
_("%s%s: missing arguments"),
weechat_prefix ("error"), "xfer");
_("%s%s: missing arguments (%s)"),
weechat_prefix ("error"), "xfer", "xfer_add");
return WEECHAT_RC_ERROR;
}
@@ -637,10 +639,14 @@ xfer_add_cb (void *data, char *signal, char *type_data, void *signal_data)
if (!weechat_infolist_next (infolist))
{
weechat_printf (NULL,
_("%s%s: missing arguments"),
weechat_prefix ("error"), "xfer");
_("%s%s: missing arguments (%s)"),
weechat_prefix ("error"), "xfer", "xfer_add");
return WEECHAT_RC_ERROR;
}
filename2 = NULL;
short_filename = NULL;
spaces = 0;
plugin_name = weechat_infolist_string (infolist, "plugin_name");
plugin_id = weechat_infolist_string (infolist, "plugin_id");
@@ -654,8 +660,8 @@ xfer_add_cb (void *data, char *signal, char *type_data, void *signal_data)
if (!plugin_name || !plugin_id || !str_type || !remote_nick || !local_nick)
{
weechat_printf (NULL,
_("%s%s: missing arguments"),
weechat_prefix ("error"), "xfer");
_("%s%s: missing arguments (%s)"),
weechat_prefix ("error"), "xfer", "xfer_add");
return WEECHAT_RC_ERROR;
}
@@ -671,8 +677,8 @@ xfer_add_cb (void *data, char *signal, char *type_data, void *signal_data)
if (XFER_IS_FILE(type) && (!filename || !str_protocol))
{
weechat_printf (NULL,
_("%s%s: missing arguments"),
weechat_prefix ("error"), "xfer");
_("%s%s: missing arguments (%s)"),
weechat_prefix ("error"), "xfer", "xfer_add");
return WEECHAT_RC_ERROR;
}
@@ -930,7 +936,7 @@ xfer_add_cb (void *data, char *signal, char *type_data, void *signal_data)
}
/* send signal if type is file or chat "send" */
if (XFER_IS_SEND(ptr_xfer->type))
if (XFER_IS_SEND(ptr_xfer->type) && !XFER_HAS_ENDED(ptr_xfer->status))
xfer_send_signal (ptr_xfer, "xfer_send_ready");
if (short_filename)
@@ -941,6 +947,166 @@ xfer_add_cb (void *data, char *signal, char *type_data, void *signal_data)
return WEECHAT_RC_OK;
}
/*
* xfer_start_resume_cb: callback called when resume is accepted by sender
*/
int
xfer_start_resume_cb (void *data, char *signal, char *type_data,
void *signal_data)
{
struct t_plugin_infolist *infolist;
struct t_xfer *ptr_xfer;
char *plugin_name, *plugin_id, *filename, *str_start_resume;
int port;
unsigned long start_resume;
/* make C compiler happy */
(void) data;
(void) signal;
(void) type_data;
if (!signal_data)
{
weechat_printf (NULL,
_("%s%s: missing arguments (%s)"),
weechat_prefix ("error"), "xfer", "xfer_start_resume");
return WEECHAT_RC_ERROR;
}
infolist = (struct t_plugin_infolist *)signal_data;
if (!weechat_infolist_next (infolist))
{
weechat_printf (NULL,
_("%s%s: missing arguments (%s)"),
weechat_prefix ("error"), "xfer", "xfer_start_resume");
return WEECHAT_RC_ERROR;
}
plugin_name = weechat_infolist_string (infolist, "plugin_name");
plugin_id = weechat_infolist_string (infolist, "plugin_id");
filename = weechat_infolist_string (infolist, "filename");
port = weechat_infolist_integer (infolist, "port");
str_start_resume = weechat_infolist_string (infolist, "start_resume");
if (!plugin_name || !plugin_id || !filename || !str_start_resume)
{
weechat_printf (NULL,
_("%s%s: missing arguments (%s)"),
weechat_prefix ("error"), "xfer", "xfer_start_resume");
return WEECHAT_RC_ERROR;
}
sscanf (str_start_resume, "%lu", &start_resume);
ptr_xfer = xfer_search (plugin_name, plugin_id, XFER_TYPE_FILE_RECV,
XFER_STATUS_CONNECTING, port);
if (ptr_xfer)
{
ptr_xfer->pos = start_resume;
ptr_xfer->ack = start_resume;
ptr_xfer->start_resume = start_resume;
ptr_xfer->last_check_pos = start_resume;
xfer_network_connect_init (ptr_xfer);
}
else
{
weechat_printf (NULL,
_("%s%s: unable to resume file \"%s\" (port: %d, "
"start position: %lu): xfer not found or not ready "
"for transfert"),
weechat_prefix ("error"), "xfer", filename, port,
start_resume);
}
return WEECHAT_RC_OK;
}
/*
* xfer_accept_resume_cb: callback called when sender receives resume request
* from recever
*/
int
xfer_accept_resume_cb (void *data, char *signal, char *type_data,
void *signal_data)
{
struct t_plugin_infolist *infolist;
struct t_xfer *ptr_xfer;
char *plugin_name, *plugin_id, *filename, *str_start_resume;
int port;
unsigned long start_resume;
/* make C compiler happy */
(void) data;
(void) signal;
(void) type_data;
if (!signal_data)
{
weechat_printf (NULL,
_("%s%s: missing arguments (%s)"),
weechat_prefix ("error"), "xfer", "xfer_accept_resume");
return WEECHAT_RC_ERROR;
}
infolist = (struct t_plugin_infolist *)signal_data;
if (!weechat_infolist_next (infolist))
{
weechat_printf (NULL,
_("%s%s: missing arguments (%s)"),
weechat_prefix ("error"), "xfer", "xfer_accept_resume");
return WEECHAT_RC_ERROR;
}
plugin_name = weechat_infolist_string (infolist, "plugin_name");
plugin_id = weechat_infolist_string (infolist, "plugin_id");
filename = weechat_infolist_string (infolist, "filename");
port = weechat_infolist_integer (infolist, "port");
str_start_resume = weechat_infolist_string (infolist, "start_resume");
if (!plugin_name || !plugin_id || !filename || !str_start_resume)
{
weechat_printf (NULL,
_("%s%s: missing arguments (%s)"),
weechat_prefix ("error"), "xfer", "xfer_accept_resume");
return WEECHAT_RC_ERROR;
}
sscanf (str_start_resume, "%lu", &start_resume);
ptr_xfer = xfer_search (plugin_name, plugin_id, XFER_TYPE_FILE_SEND,
XFER_STATUS_CONNECTING, port);
if (ptr_xfer)
{
ptr_xfer->pos = start_resume;
ptr_xfer->ack = start_resume;
ptr_xfer->start_resume = start_resume;
ptr_xfer->last_check_pos = start_resume;
xfer_send_signal (ptr_xfer, "xfer_send_accept_resume");
weechat_printf (NULL,
_("%s: file %s resumed at position %lu"),
"xfer",
ptr_xfer->filename,
ptr_xfer->start_resume);
xfer_buffer_refresh (WEECHAT_HOTLIST_MESSAGE);
}
else
{
weechat_printf (NULL,
_("%s%s: unable to accept resume file \"%s\" (port: %d, "
"start position: %lu): xfer not found or not ready "
"for transfert"),
weechat_prefix ("error"), "xfer", filename, port,
start_resume);
}
return WEECHAT_RC_OK;
}
/*
* xfer_print_log: print DCC infos in log (usually for crash dump)
*/
@@ -1042,6 +1208,8 @@ weechat_plugin_init (struct t_weechat_plugin *plugin)
xfer_command_init ();
weechat_hook_signal ("xfer_add", &xfer_add_cb, NULL);
weechat_hook_signal ("xfer_start_resume", &xfer_start_resume_cb, NULL);
weechat_hook_signal ("xfer_accept_resume", &xfer_accept_resume_cb, NULL);
weechat_hook_signal ("debug_dump", &xfer_debug_dump_cb, NULL);
return WEECHAT_RC_OK;