revert between 56095 -> 55830 in arch
[AROS.git] / tools / flexcat / src / sd / RexCat.sd
blobdc64c1e21037618776d40b9dbe2b2d1401aa0067
1 ##rem $Id: RexCat.sd,v 2.1 2010/02/11 18:46:51 AmigaPhil $
2 ##stringtype None
3 /* - Locale support in ARexx (RexCat) - %b
4 REMOVE THE tls() AND gettlstext() FUNCTIONS FROM YOUR SCRIPT, IF ANY;
5 AND COPY/PASTE THE NEWER FUNCTIONS BELOW THIS LINE INSTEAD.
6 (Note: You need to replace these functions each time you update your
7        script and the Catalog Description is modified.)
8 --------------------------------------------------------------------- */
10 /* (RexCat) Function which translates the strings */
12 tls: PROCEDURE EXPOSE tlstext.
14   PARSE ARG instring
16   IF instring = '' THEN RETURN instring
17   IF LENGTH(instring) > 250 THEN instring = LEFT(instring,250)
18   XID = "XID_" || C2X(instring)
19   IF tlstext.XID == 'TLSTEXT.' || XID THEN RETURN instring
20   IF tlstext.XID = '' THEN RETURN instring
22   RETURN tlstext.XID
25 /* (RexCat) Function to load the translation file */
27 gettlstext: PROCEDURE EXPOSE tlstext.
29   IF ~SHOW('L',"locale.library") THEN
30     IF ~ADDLIB("locale.library",0,-30) THEN RETURN 0
32   cat = OPENCATALOG("%b.catalog","%l",%v)
33   IF cat = 0 THEN DO
34     CALL CLOSECATALOG(cat)
35     RETURN 0
36   END
38  tlstext.%i=GETCATALOGSTR(cat,%d,"")
40   RETURN 1