mirror of
git://git.code.sf.net/p/cdesktopenv/code
synced 2025-02-15 04:32:24 +00:00
DtMail translations and improvements of vcal2xampia.awk
dtmail: messages of the 'Mail Retrieval' menu of dtmail were left untranslated. French, Italian, Spanish translations were added. vcal2xapia.awk: capacity to handle UTC+n timezones and TODO items added.
This commit is contained in:
parent
bf3ac1b969
commit
9b1f60a713
11 changed files with 150 additions and 81 deletions
|
@ -1,8 +1,8 @@
|
||||||
Hello,
|
The AWK script converts .vcs files into XAPIA format files that can then
|
||||||
|
be dragged and dropped on the Calendar icon of the front panel to
|
||||||
|
insert an appointment in the CDE calendar.
|
||||||
|
|
||||||
I have written a simple AWK program to convert .vcs files into
|
Initial version:
|
||||||
XAPIA format files that can then be dragged and dropped on the Calendar
|
|
||||||
icon of the front panel to insert an appointment in the CDE calendar.
|
|
||||||
|
|
||||||
The program has some limitations. For the moment, it ignores ToDo items
|
The program has some limitations. For the moment, it ignores ToDo items
|
||||||
and only converts appointment items. Also, it has to convert
|
and only converts appointment items. Also, it has to convert
|
||||||
|
@ -13,34 +13,31 @@ This is done by using an average duration of 30.44 days for a month
|
||||||
and 365.25 days for a year instead of using the correct duration for
|
and 365.25 days for a year instead of using the correct duration for
|
||||||
leap years and for months. So the duration of an appointment can
|
leap years and for months. So the duration of an appointment can
|
||||||
be sometimes calculated incorrectly.
|
be sometimes calculated incorrectly.
|
||||||
|
Appointments in the local time are not handled very well. The script
|
||||||
|
assumes that the local time is UTC+1.
|
||||||
|
|
||||||
If you wish to include it with the CDE sources or to post it on the Wiki
|
It is released under MIT license.
|
||||||
documentation, I agree to release it under MIT license.
|
|
||||||
http://opensource.org/licenses/MIT
|
http://opensource.org/licenses/MIT
|
||||||
|
|
||||||
Otherwise, there are better programs in Perl by Adam Stein at:
|
Better programs (in Perl) to interact with dtcm by Adam Stein are available at:
|
||||||
http://www.csh.rit.edu/~adam/Progs/programs.html
|
http://www.csh.rit.edu/~adam/Progs/programs.html
|
||||||
but they require to install some extra Perl libraries.
|
They require to install the Calendar-CSA-0.8.tar.gz Perl libraries from CPAN.
|
||||||
|
|
||||||
|
|
||||||
I would like to mention that Christian Pélissier (author of a popular
|
Christian Pélissier has posted a dtksh program in a french
|
||||||
textbook on Unix in French) has posted a dtksh program in a french
|
|
||||||
email list on Solaris x86 that also does the vcal to XAPIA
|
email list on Solaris x86 that also does the vcal to XAPIA
|
||||||
conversion. His message is archived here:
|
conversion. His message is archived here:
|
||||||
http://www.mail-archive.com/solaris_fr@x86.sun.com/msg02388.html
|
http://www.mail-archive.com/solaris_fr@x86.sun.com/msg02388.html
|
||||||
|
|
||||||
Please add in the comments at the top of my AWK program the links to
|
|
||||||
his dtksh program and to Adam Stein's Perl programs:
|
|
||||||
http://www.csh.rit.edu/~adam/Progs/programs.html
|
|
||||||
|
|
||||||
Version 2.2.4:
|
Version 2.2.4:
|
||||||
|
|
||||||
- improvements to the script to handle repeating appointments.
|
- improvements to the script to handle repeating appointments.
|
||||||
|
The script supports appointments that repeat every N week/month/days.
|
||||||
- easter.awk: script that creates appointments for (Roman Catholic)
|
- easter.awk: script that creates appointments for (Roman Catholic)
|
||||||
Easter, Ascencion Day and Whit Sunday.
|
Easter, Ascension Day and Whit Sunday.
|
||||||
|
|
||||||
Best wishes,
|
Current version:
|
||||||
|
|
||||||
Edmond Orignac
|
- added support for ToDo items.
|
||||||
|
- added support for numeric timezones (TZ:+NN or TZ:-NN).
|
||||||
|
|
||||||
|
|
|
@ -6,12 +6,16 @@
|
||||||
BEGIN {FS=":"}
|
BEGIN {FS=":"}
|
||||||
|
|
||||||
|
|
||||||
/^BEGIN/ {if ($2~"VEVENT") {appnt=1; rxtype=0; nxr=0; mxday=0; mxmonth=0; runtil=0; xinterval=0}
|
/^BEGIN/ {if ($2~"VEVENT") {appnt=1; rxtype=0; nxr=0; mxday=0; mxmonth=0; runtil=0; xinterval=0} else if ($2~"VTODO") {appnt=2 ; rxtype=0; nxr=0; mxday=0; mxmonth=0; runtil=0;xinterval=0}}
|
||||||
}
|
/^TZ/ {if ($2~"[+-][1-9]*") {timezone=$2} else {timezone=1}}
|
||||||
/^TZ/ {if ($2~"[+-][1-9]*") {timezone=$2} else {timezone=0}}
|
|
||||||
# Knowing the timezone, we can convert local time to UTC time.
|
# Knowing the timezone, we can convert local time to UTC time.
|
||||||
|
# Unfortunately, it is only working if the timezone is indicated by
|
||||||
|
# a number as in "TZ:+03" not in the case of TZ=Europe/Paris.
|
||||||
|
# If we fail to get a numeric value, we assume the timezone is UTC+1
|
||||||
/^DTSTART/ {sdate=$2}
|
/^DTSTART/ {sdate=$2}
|
||||||
/^DTEND/ {fdate=$2}
|
/^DTEND/ {fdate=$2}
|
||||||
|
/^DUE/ {ddate=$2; tsksts=2304}
|
||||||
|
/^COMPLETED/ {ddate=$2;tsksts=6}
|
||||||
/^DESCRIPTION/ {summary=summary" "substr($0,13)}
|
/^DESCRIPTION/ {summary=summary" "substr($0,13)}
|
||||||
/^SUMMARY/ {summary=summary" "substr($0,9)}
|
/^SUMMARY/ {summary=summary" "substr($0,9)}
|
||||||
/^LOCATION/ {summary=summary" in "substr($0,10)}
|
/^LOCATION/ {summary=summary" in "substr($0,10)}
|
||||||
|
@ -152,14 +156,14 @@ BEGIN {FS=":"}
|
||||||
printf("-//CDE_XAPIA_PRIVATE/CSA/ENTRYATTR//NONSGML Repeat Interval//EN:uinteger:%d\n",rinterval);
|
printf("-//CDE_XAPIA_PRIVATE/CSA/ENTRYATTR//NONSGML Repeat Interval//EN:uinteger:%d\n",rinterval);
|
||||||
print "-//CDE_XAPIA_PRIVATE/CSA/ENTRYATTR//NONSGML Entry Delimiter//EN:string:end";
|
print "-//CDE_XAPIA_PRIVATE/CSA/ENTRYATTR//NONSGML Entry Delimiter//EN:string:end";
|
||||||
printf("\tDate: %s/%s/%s\n",substr(sdate,5,2),substr(sdate,7,2),substr(sdate,1,4));
|
printf("\tDate: %s/%s/%s\n",substr(sdate,5,2),substr(sdate,7,2),substr(sdate,1,4));
|
||||||
# The start/end time are in UTC and have to be converted to local time. We assume the local time is UTC+1
|
# The start/end time are in UTC and have to be converted to local time. We assume the local time is UTC+1 unless we know the shift from UTC.
|
||||||
shour=substr(sdate,10,2);
|
shour=substr(sdate,10,2);
|
||||||
smin=substr(sdate,12,2);
|
smin=substr(sdate,12,2);
|
||||||
fhour=substr(fdate,10,2);
|
fhour=substr(fdate,10,2);
|
||||||
fmin=substr(fdate,12,2);
|
fmin=substr(fdate,12,2);
|
||||||
if ((fhour+fmin+shour+smin)==0) {fhour=01;fmin=42;shour=01;smin=41}
|
if ((fhour+fmin+shour+smin)==0) {fhour=01;fmin=42;shour=01;smin=41}
|
||||||
shour++;
|
shour+=timezone;
|
||||||
fhour++;
|
fhour+=timezone;
|
||||||
printf("\tStart: %.2d%.2d\n",shour,smin)
|
printf("\tStart: %.2d%.2d\n",shour,smin)
|
||||||
printf("\tEnd: %.2d%.2d\n",fhour,fmin)
|
printf("\tEnd: %.2d%.2d\n",fhour,fmin)
|
||||||
if (rxtype==0) {print "\tRepeat: One Time"};
|
if (rxtype==0) {print "\tRepeat: One Time"};
|
||||||
|
@ -183,6 +187,75 @@ BEGIN {FS=":"}
|
||||||
fdate="";
|
fdate="";
|
||||||
appnt=0;
|
appnt=0;
|
||||||
summary="";
|
summary="";
|
||||||
}
|
} else if ($2~"VTODO") {
|
||||||
|
|
||||||
|
# We are reproducing the code for repetition of an event above. This could be refactored as a function to make the program more elegant.
|
||||||
|
|
||||||
}
|
if (runtil==1) {
|
||||||
|
uyear=substr(xuntil,1,4)-substr(sdate,1,4);
|
||||||
|
umonth=substr(xuntil,5,2)-substr(sdate,5,2);
|
||||||
|
uday=substr(xuntil,7,2)-substr(sdate,7,2);
|
||||||
|
if (rxtype==1) nxr=int(365.25*uyear+30.44*umonth+uday)+1;
|
||||||
|
if (rxtype==2) nxr=int((365.25*uyear+30.44*umonth+uday)/7.0)+1;
|
||||||
|
if (rxtype==3) nxr=int((365.25*uyear+30.44*umonth+uday)/14.0)+1;
|
||||||
|
if ((rxtype==4)||(rxtype==5)) nxr=12*uyear+umonth+1;
|
||||||
|
if (rxtype==6) nxr=uyear+1;
|
||||||
|
if (rxtype==7) nxr=int((365.25*uyear+30.44*umonth+uday)/xinterval)+1;
|
||||||
|
if (rxtype==8) nxr=int((365.25*uyear+30.44*umonth+uday)/(7*xinterval))+1;
|
||||||
|
if (rxtype==9) nxr=int((12*uyear+umonth)/xinterval)+1;
|
||||||
|
if (rxtype==10) nxr=int(5.0*(365.25*uyear+30.44*umonth+uday)/7.0)+1;
|
||||||
|
if (rxtype==11) nxr=int(3.0*(365.25*uyear+30.44*umounth+uday)/7.0)+1;
|
||||||
|
if (rxtype==12) nxr=int(3.0*(365.25*uyear+30.44*umounth+uday)/7.0)+1;
|
||||||
|
if (nxr<0) nxr=0;
|
||||||
|
};
|
||||||
|
|
||||||
|
# Start hour and End hour have to be converted to UTC first if timezone is defined.
|
||||||
|
|
||||||
|
printf("\n\n")
|
||||||
|
print "\t** Calendar Appointment **"
|
||||||
|
print "-//CDE_XAPIA_PRIVATE/CSA/ENTRYATTR//NONSGML Entry Delimiter//EN:string:begin";
|
||||||
|
printf("-//XAPIA/CSA/ENTRYATTR//NONSGML Start Date//EN:datetime:%s\n",ddate);
|
||||||
|
print "-//XAPIA/CSA/ENTRYATTR//NONSGML Type//EN:uinteger:1";
|
||||||
|
print "-//XAPIA/CSA/ENTRYATTR//NONSGML Classification//EN:uinteger:0";
|
||||||
|
print "-//CDE_XAPIA_PRIVATE/CSA/ENTRYATTR//NONSGML Show Time//EN:sinteger:1"
|
||||||
|
print "-//CDE_XAPIA_PRIVATE/CSA/ENTRYATTR//NONSGML Show Time//EN:sinteger:1";
|
||||||
|
printf("-//XAPIA/CSA/ENTRYATTR//NONSGML Summary//EN:string:%s\n",summary);
|
||||||
|
printf ("-//XAPIA/CSA/ENTRYATTR//NONSGML Status//EN:uinteger:%d\n",tsksts);
|
||||||
|
printf("-//CDE_XAPIA_PRIVATE/CSA/ENTRYATTR//NONSGML Repeat Type//EN:sinteger:%d\n",rxtype);
|
||||||
|
printf("-//CDE_XAPIA_PRIVATE/CSA/ENTRYATTR//NONSGML Repeat Times//EN:uinteger:%d\n",nxr);
|
||||||
|
print "-//XAPIA/CSA/ENTRYATTR//NONSGML Audio Reminder//EN:reminder:300:";
|
||||||
|
print "-//XAPIA/CSA/ENTRYATTR//NONSGML Popup Reminder//EN:reminder:300:";
|
||||||
|
print "-//CDE_XAPIA_PRIVATE/CSA/ENTRYATTR//NONSGML Repeat Occurrence Number//EN:sinteger:-1";
|
||||||
|
printf("-//CDE_XAPIA_PRIVATE/CSA/ENTRYATTR//NONSGML Repeat Interval//EN:uinteger:%d\n",rinterval);
|
||||||
|
print "-//CDE_XAPIA_PRIVATE/CSA/ENTRYATTR//NONSGML Entry Delimiter//EN:string:end";
|
||||||
|
printf("\tDate: %s/%s/%s\n",substr(ddate,5,2),substr(ddate,7,2),substr(ddate,1,4));
|
||||||
|
# The start/end time are in UTC and have to be converted to local time. We assume the local time is UTC+1 unless we have a numeric value for timezone shift.
|
||||||
|
shour=substr(ddate,10,2);
|
||||||
|
smin=substr(ddate,12,2);
|
||||||
|
if ((shour+smin)==0) {shour=01;smin=41}
|
||||||
|
shour+=timezone;
|
||||||
|
printf("\tStart: %.2d%.2d\n",shour,smin)
|
||||||
|
if (rxtype==0) {print "\tRepeat: One Time"};
|
||||||
|
if (rxtype==1) {print "\tRepeat: Daily"};
|
||||||
|
if (rxtype==2) {print "\tRepeat: Weekly"};
|
||||||
|
if (rxtype==3) {print "\tRepeat: Every Two Weeks"};
|
||||||
|
if (rxtype==4) {print "\tRepeat: Monthly By Weekday"};
|
||||||
|
if (rxtype==5) {print "\tRepeat: Monthly By Date"};
|
||||||
|
if (rxtype==6) {print "\tRepeat: Yearly"}
|
||||||
|
if (rxtype==7) {printf("\t Repeat Every %d days\n",xinterval)}
|
||||||
|
if (rxtype==8) {printf("\t Repeat Every %d weeks\n",xinterval)}
|
||||||
|
if (rxtype==9) {printf("\t Repeat Every %d months\n",xinterval)}
|
||||||
|
if (rxtype==10) {print "\tRepeat: Monday thru Friday"};
|
||||||
|
if (rxtype==11) {print "\tRepeat: Mon, Wed, Fri"};
|
||||||
|
if (rxtype==12) {print "\tRepeat: Tuesday, Thursday"};
|
||||||
|
printf("\tFor: %d\n",nxr);
|
||||||
|
printf("\tWhat: %s\n",summary);
|
||||||
|
printf("\t\n");
|
||||||
|
sdate="";
|
||||||
|
fdate="";
|
||||||
|
appnt=0;
|
||||||
|
summary="";
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
}
|
|
@ -1413,20 +1413,20 @@ $set 27
|
||||||
4 "IMAP"
|
4 "IMAP"
|
||||||
5 "POP2"
|
5 "POP2"
|
||||||
|
|
||||||
6 "Automatic (system) delivery"
|
6 "Distribucion Automatica (sistemo)"
|
||||||
|
|
||||||
7 "Mail server retrieval"
|
7 "Recoger del servidor de correo"
|
||||||
8 "Server Protocol:"
|
8 "Protocolo del Servidor:"
|
||||||
9 "Server Name:"
|
9 "Nombre del Servidor:"
|
||||||
10 "User Name:"
|
10 "Nombre del Usuario:"
|
||||||
11 "Password:"
|
11 "Frase de Paso:"
|
||||||
12 "Remember password"
|
12 "Recordacion de la Frase de Paso"
|
||||||
13 "Delete from server after retrieval"
|
13 "Borrar del servidor despuès del recogimento"
|
||||||
14 "Retrieve old messages"
|
14 "Recoger viejos mensajes"
|
||||||
|
|
||||||
15 "Custom retrieval"
|
15 "Recogimento Personal"
|
||||||
16 "User Getmail command:"
|
16 "Mandamiento per recoger correo del usuario:"
|
||||||
|
|
||||||
17 "Null INBOX path."
|
17 "Ningun ruta por buzón."
|
||||||
18 "INBOX folder path:"
|
18 "ruta por buzón local:"
|
||||||
|
|
||||||
|
|
|
@ -191,13 +191,13 @@ $ Used to construct the label on the "Mail Retrieval" menu button in the
|
||||||
$ "Category" option menu in the "Mailer - Options" dialog.
|
$ "Category" option menu in the "Mailer - Options" dialog.
|
||||||
$ This menu button is used to select printing options pane.
|
$ This menu button is used to select printing options pane.
|
||||||
$ This message is in the same menu as messages 4 - 10 above.
|
$ This message is in the same menu as messages 4 - 10 above.
|
||||||
$ "NEW-"
|
$ "NEW-" (Recobrar is also possible)
|
||||||
93 "Mail Retrieval"
|
93 "Recoger el Correo"
|
||||||
|
|
||||||
$
|
$
|
||||||
$ Used to construct the label on the confirm attachment in the
|
$ Used to construct the label on the confirm attachment in the
|
||||||
$ compose pane.
|
$ compose pane.
|
||||||
$ "NEW-"
|
$ "NEW-"
|
||||||
94 "Confirm attachments over:"
|
94 "Confirmar archivos adjuntos despuès:"
|
||||||
$ "NEW-"
|
$ "NEW-"
|
||||||
95 "kilobytes"
|
95 "kilobytes"
|
||||||
|
|
|
@ -726,7 +726,7 @@ $ "-NEW"
|
||||||
262 "lettre morte message"
|
262 "lettre morte message"
|
||||||
|
|
||||||
$ "-NEW"
|
$ "-NEW"
|
||||||
263 "The attachment '%s' is %d kilobytes.\nAdd as attachment?"
|
263 "La pièce jointe '%s' prend %d kilooctets.\nAjouter la p.-j. ?"
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -1414,20 +1414,20 @@ $set 27
|
||||||
4 "IMAP"
|
4 "IMAP"
|
||||||
5 "POP2"
|
5 "POP2"
|
||||||
|
|
||||||
6 "Automatic (system) delivery"
|
6 "Distribution (système) automatique"
|
||||||
|
|
||||||
7 "Mail server retrieval"
|
7 "Récupération sur serveur distant"
|
||||||
8 "Server Protocol:"
|
8 "Protocole du serveur:"
|
||||||
9 "Server Name:"
|
9 "Nom du Serveur:"
|
||||||
10 "User Name:"
|
10 "Nom Utilisateur:"
|
||||||
11 "Password:"
|
11 "Mot de Passe:"
|
||||||
12 "Remember password"
|
12 "Retenir le mot de passe"
|
||||||
13 "Delete from server after retrieval"
|
13 "Effacer du serveur après récupération"
|
||||||
14 "Retrieve old messages"
|
14 "Récupérer les anciens messages"
|
||||||
|
|
||||||
15 "Custom retrieval"
|
15 "Récupération personnalisée"
|
||||||
16 "User Getmail command:"
|
16 "commande à éxécuter:"
|
||||||
|
|
||||||
17 "Null INBOX path."
|
17 "Pas de chemin pour la boîte aux lettres."
|
||||||
18 "INBOX folder path:"
|
18 "Chemin de la boîte aux lettres locale :"
|
||||||
|
|
||||||
|
|
|
@ -1251,7 +1251,7 @@ $
|
||||||
$ Message 465 - the square root key
|
$ Message 465 - the square root key
|
||||||
$
|
$
|
||||||
|
|
||||||
466 "a"
|
466 "w"
|
||||||
$
|
$
|
||||||
$ Message 467 - the Bsp (backspace) key.
|
$ Message 467 - the Bsp (backspace) key.
|
||||||
$ \010 is "Control h"
|
$ \010 is "Control h"
|
||||||
|
|
|
@ -22,7 +22,7 @@ $
|
||||||
1 Le processus de la session tt n'est pas lancé et le service ToolTalk\n\
|
1 Le processus de la session tt n'est pas lancé et le service ToolTalk\n\
|
||||||
ne peut pas le relancer.
|
ne peut pas le relancer.
|
||||||
2 L'identificateur courant du processus par défaut est périmé ou incorrect.
|
2 L'identificateur courant du processus par défaut est périmé ou incorrect.
|
||||||
3 La session ToolTalk sécifiée est périmée ou incorrecte.
|
3 La session ToolTalk spécifiée est périmée ou incorrecte.
|
||||||
|
|
||||||
$
|
$
|
||||||
$ Message 4: Do not localize the word DtInfo_Start.
|
$ Message 4: Do not localize the word DtInfo_Start.
|
||||||
|
|
|
@ -27,9 +27,9 @@ $ ** You can edit this comment and add comments below each message.
|
||||||
|
|
||||||
4 "Vue message"
|
4 "Vue message"
|
||||||
|
|
||||||
5 "Composition fenêtre"
|
5 "Fenêtre de composition"
|
||||||
|
|
||||||
6 "Archivage messages"
|
6 "Archivage des messages"
|
||||||
|
|
||||||
7 "Congés"
|
7 "Congés"
|
||||||
|
|
||||||
|
@ -192,12 +192,12 @@ $ "Category" option menu in the "Mailer - Options" dialog.
|
||||||
$ This menu button is used to select printing options pane.
|
$ This menu button is used to select printing options pane.
|
||||||
$ This message is in the same menu as messages 4 - 10 above.
|
$ This message is in the same menu as messages 4 - 10 above.
|
||||||
$ "NEW-"
|
$ "NEW-"
|
||||||
93 "Mail Retrieval"
|
93 "Récupération Courrier"
|
||||||
|
|
||||||
$
|
$
|
||||||
$ Used to construct the label on the confirm attachment in the
|
$ Used to construct the label on the confirm attachment in the
|
||||||
$ compose pane.
|
$ compose pane.
|
||||||
$ "NEW-"
|
$ "NEW-"
|
||||||
94 "Confirm attachments over:"
|
94 "Confirmer pièces-jointes après:"
|
||||||
$ "NEW-"
|
$ "NEW-"
|
||||||
95 "kilobytes"
|
95 "kilooctets"
|
||||||
|
|
|
@ -97,7 +97,7 @@ $ Do not Translate
|
||||||
32 "zone rec_info incorrecte dans l'option -w\n"
|
32 "zone rec_info incorrecte dans l'option -w\n"
|
||||||
$ do not translate "rec_info" or "-w"
|
$ do not translate "rec_info" or "-w"
|
||||||
|
|
||||||
33 "Option introuvabel dans -w ou -l\n"
|
33 "Option introuvable dans -w ou -l\n"
|
||||||
$ do not translate "-w" or "-l"
|
$ do not translate "-w" or "-l"
|
||||||
|
|
||||||
34 "Option inconnue\n"
|
34 "Option inconnue\n"
|
||||||
|
|
|
@ -1104,20 +1104,19 @@ $set 27
|
||||||
4 "IMAP"
|
4 "IMAP"
|
||||||
5 "POP2"
|
5 "POP2"
|
||||||
|
|
||||||
6 "Automatic (system) delivery"
|
6 "Distribuzione (sistemo) automatica"
|
||||||
|
|
||||||
7 "Mail server retrieval"
|
7 "ricupero dal Mailserver"
|
||||||
8 "Server Protocol:"
|
8 "Protocollo del Server:"
|
||||||
9 "Server Name:"
|
9 "Nome Server:"
|
||||||
10 "User Name:"
|
10 "Nome Utento:"
|
||||||
11 "Password:"
|
11 "Passaparola:"
|
||||||
12 "Remember password"
|
12 "Ricorda passaparola"
|
||||||
13 "Delete from server after retrieval"
|
13 "Cancellare dal server dopo ricupero"
|
||||||
14 "Retrieve old messages"
|
14 "Ricupera vecchi messagi"
|
||||||
|
|
||||||
15 "Custom retrieval"
|
15 "Ricupero personalizzato"
|
||||||
16 "User Getmail command:"
|
16 "Utento Getmail commanda:"
|
||||||
|
|
||||||
17 "Null INBOX path."
|
|
||||||
18 "INBOX folder path:"
|
|
||||||
|
|
||||||
|
17 "Nessun percorso per la casella postale."
|
||||||
|
18 "percorso della casella postale:"
|
||||||
|
|
|
@ -111,12 +111,12 @@ $ "Category" option menu in the "Mailer - Options" dialog.
|
||||||
$ This menu button is used to select printing options pane.
|
$ This menu button is used to select printing options pane.
|
||||||
$ This message is in the same menu as messages 4 - 10 above.
|
$ This message is in the same menu as messages 4 - 10 above.
|
||||||
$ "NEW-"
|
$ "NEW-"
|
||||||
93 "Mail Retrieval"
|
93 "Ricupero Posta"
|
||||||
|
|
||||||
$
|
$
|
||||||
$ Used to construct the label on the confirm attachment in the
|
$ Used to construct the label on the confirm attachment in the
|
||||||
$ compose pane.
|
$ compose pane.
|
||||||
$ "NEW-"
|
$ "NEW-"
|
||||||
94 "Confirm attachments over:"
|
94 "Conferma allegati dopo:"
|
||||||
$ "NEW-"
|
$ "NEW-"
|
||||||
95 "kilobytes"
|
95 "kilobytes"
|
||||||
|
|
Loading…
Reference in a new issue