Difference between revisions of "TB/TB-2008-02-L18N"

From Scalix Wiki
Jump to: navigation, search
 
 
(21 intermediate revisions by 4 users not shown)
Line 1: Line 1:
 +
[[TB]] -> '''TB-2008-02-L18N'''
 +
== Important Note ==
 +
The procedures for SWA and Scalix Connect for Outlook localization have changed with the release of integrated localization kits in Scalix versions 11.4.1 and later. Please see below for notes.
 +
 
== Overview ==
 
== Overview ==
  
Using UTF8 character encoding, Scalix provides full multi-byte language support, coupled with an open-source localization kit for channel partners and customers tofacilitate international deployments.
+
Using UTF8 character encoding, Scalix provides full multi-byte language support, coupled with an open-source localization kit for channel partners and customers to facilitate international deployments.
  
 
== Localizing Outlook ==
 
== Localizing Outlook ==
Line 7: Line 11:
 
You can localize the MAPI Connector for any language that Outlook supports.
 
You can localize the MAPI Connector for any language that Outlook supports.
  
Tools
+
=== Scalix 11.4.5 or later ===
  
For this procedure, you need the following tools:
+
For this release, structure of documentation has changed. Please see full instructions including required tools found in the "readme.txt" file inside the Scalix Localization Kit for Scalix Connect. This is found in the "extras" subdirectory of the "scalix-enterprise-win" and "scalix-community-win" download files.
  
Microsoft resource compiler Visual Studio 6.0, including the compiler RC.EXE and  the linker LINK.EXE. For more on the compiler, see http://msdn.microsoft.com/library/default.asp?url=/library/en-us/tools/tools/resource_compiler.asp.
+
=== Scalix 11.4.4 or before ===
  
Procedures
+
'''Tools'''
 +
 
 +
For this procedure, you need the following:
 +
 
 +
* Microsoft resource compiler Visual Studio 6.0, including the compiler RC.EXE and  the linker LINK.EXE. (For more on the compiler, see [http://msdn.microsoft.com/library/default.asp?url=/library/en-us/tools/tools/resource_compiler.asp this page])
 +
* Source File template for Scalix MAPI Localization Files. These files are specific to the Scalix version in question. They are available from varying sources, depending on the Scalix version in use:
 +
** For Scalix 11.4.1 or later, the Scalix Connect for Outlook download files (ZIP files, both enterprise and community version) have a subdirectory called "extras" that contains the resource files specific to the respective version. Please follow the instructions below.
 +
** For Scalix 11.4.0 use the [http://downloads.scalix.com/wiki/mapi_localization_kit_11_4.zip Scalix Connect 11.4 Localization Kit]
 +
** For Scalix 11.3.x use the [http://downloads.scalix.com/wiki/mapi_localization_kit_11_3.zip Scalix Connect 11.3 Localization Kit]
 +
** For Scalix 11.0.x through 11.2 use [http://downloads.scalix.com/wiki/mapi_localization_kit.zip Scalix 11.0 Localization Kit]
 +
 
 +
'''Procedures'''
  
 
To localize the MAPI Connector:
 
To localize the MAPI Connector:
Line 20: Line 35:
 
   SCLXRES\RESEN.RC
 
   SCLXRES\RESEN.RC
 
and in all sub-files of the SCLXRES\EN subdirectory.
 
and in all sub-files of the SCLXRES\EN subdirectory.
 +
 
2. Make sure you can save the file with the proper font files.
 
2. Make sure you can save the file with the proper font files.
 +
 
3. From the directory SCLXRES, run the resource compiler. The command is:
 
3. From the directory SCLXRES, run the resource compiler. The command is:
 
   rc /l<LCID Culture ID> /fo "<file name>\sclxres.res" /i "..\shared\include" /i "..\common" /d "THIS_LANG_<NAME OF LANGUAGE>" sclxres.rc
 
   rc /l<LCID Culture ID> /fo "<file name>\sclxres.res" /i "..\shared\include" /i "..\common" /d "THIS_LANG_<NAME OF LANGUAGE>" sclxres.rc
Line 32: Line 49:
  
 
   Note that in this step, you are compiling the file SCLXRES.RC, which includes all subfiles and subfolders, and creates a new file named SCLXRES.RES to the same directory.
 
   Note that in this step, you are compiling the file SCLXRES.RC, which includes all subfiles and subfolders, and creates a new file named SCLXRES.RES to the same directory.
 +
 
4. When the compiler completes, you see a new file named sclxres.res in the directory SCLXRES.
 
4. When the compiler completes, you see a new file named sclxres.res in the directory SCLXRES.
 +
 
5 Using the resource compiler's LINK.EXE tool, link the .res file to produce a dll in the same directory that will be called SCLXRES.DLL. The command is:
 
5 Using the resource compiler's LINK.EXE tool, link the .res file to produce a dll in the same directory that will be called SCLXRES.DLL. The command is:
 
   link /nologo /dll /pdb:none /machine:I386 /nodefaultlib /implib:"sclxres.lib" /NOENTRY sclxres.res
 
   link /nologo /dll /pdb:none /machine:I386 /nodefaultlib /implib:"sclxres.lib" /NOENTRY sclxres.res
 +
 
6. Copy the new file, SCLXRES.DLL to the MAPI Connector's installation directory.
 
6. Copy the new file, SCLXRES.DLL to the MAPI Connector's installation directory.
 
   (The default installation directory is C:\Program Files\Scalix\Connect).  
 
   (The default installation directory is C:\Program Files\Scalix\Connect).  
  
   Note: For more on the link command, see http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vccore98/html/_core_linker_reference.asp.  
+
   Note: For more on the link command, see http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vccore98/html/_core_linker_reference.asp.
 
+
  
 
== Localizing SWA ==
 
== Localizing SWA ==
  
Localization involves translating two xml files, putting them in the appropriate location, and then restarting Tomcat.   
+
=== Scalix 11.4 and later ===
Note Unless your localization file is part of a Scalix distribution, you MUST do a backup before the next upgrade. If you do not, your file will be lost.  
+
The Scalix installation package - both community and enterprise version - contains a subdirectory called "extras" that includes the SWA localization kit. Full instructions on how to use these files can be found in the kit.
 +
 
 +
=== Scalix 11.3 and earlier ===
 +
 
 +
Localization of SWA involves translating two xml files, putting them in the appropriate location, and then restarting Tomcat.  
 +
   
 +
Note: Unless your localization file is part of a Scalix distribution, you MUST do a backup before the next upgrade. If you do not, your file will be lost.  
  
 
To add a new locale to SWA version 11.0:  
 
To add a new locale to SWA version 11.0:  
Translate the files strings_en.xml and strings_en_US.xml to create the files strings_xx.xml and strings_xx_XX.xml. Those strings are located at:
+
 
/opt/scalix-tomcat/webapps/webmail/WEB-INF/data
+
1. Translate the files strings_en.xml and strings_en_US.xml to create the files strings_xx.xml and strings_xx_XX.xml. Those strings are located at:
 +
  /opt/scalix-tomcat/webapps/webmail/WEB-INF/data
 
For example: For Nederlands Dutch, create files named string_nl.xml and strings_nl_NL.xml.
 
For example: For Nederlands Dutch, create files named string_nl.xml and strings_nl_NL.xml.
Stop Tomcat by running the shutdown script found at:
+
 
 +
2. Stop Tomcat by running the shutdown script found at:
 
  /etc/init.d/scalix-tomcat stop
 
  /etc/init.d/scalix-tomcat stop
If Tomcat has not already unpacked it, uncompress the war file.
+
 
Put the files strings_xx.xml and strings_xx_XX.xml in the WEB-INF/data directory.
+
3. If Tomcat has not already done so, unpack the war file.
Delete the Tomcat cache if needed by deleting the contents of the following directory.
+
 
/opt/scalix-tomcat/work/Catalina/ directory
+
4. Put the files strings_xx.xml and strings_xx_XX.xml in the WEB-INF/data directory.
Restart Tomcat by running the shutodwn script found at:
+
 
/etc/init.d/scalix-tomcat start
+
5. Delete the Tomcat cache if needed by deleting the contents of the following directory.
 +
  /opt/scalix-tomcat/work/Catalina/ directory
 +
 
 +
6. Restart Tomcat by running the start script found at:
 +
  /etc/init.d/scalix-tomcat start
 +
 
 +
=== List of translations ===
 +
{| border="1" cellspacing="0" cellpadding="5" align="center" valign="top" width="100%"
 +
!Language/Locale
 +
!width="100px"|Spellchecker
 +
!width="150px"|Maintainer
 +
!Download
 +
 
 +
|-
 +
|French (FR_fr)
 +
|No
 +
|[[User_talk:vlgm|Vincent LE GOUIC-MARTUN]]
 +
|
 +
https://forge.scalix.com/gf/project/scalix_french/
 +
 
 +
|-
 +
|Italiano (IT_it)
 +
|No
 +
|[[User_talk:isiweb|Andrea Lanfranchi]]
 +
|
 +
https://forge.scalix.com/gf/project/scalix_italian/
 +
 
 +
|-
 +
|Example (ex_pl)
 +
|No
 +
|&lt;link to your talkpage&gt;
 +
|&lt;dl links here&gt;
 +
 
 +
|}
  
 
== Localizing the Search and Index Service ==
 
== Localizing the Search and Index Service ==
  
 
The Scalix Search Index Service can be configured to process text for any language. To work with different languages, it uses stemming rules for that specific language, which break down words by removing suffixes and endings just as they do with the English language. For example, a search for the English word "singing" will match the word "sing".   
 
The Scalix Search Index Service can be configured to process text for any language. To work with different languages, it uses stemming rules for that specific language, which break down words by removing suffixes and endings just as they do with the English language. For example, a search for the English word "singing" will match the word "sing".   
 +
 
To change the language assumed by SIS when it indexes text or builds search queries:
 
To change the language assumed by SIS when it indexes text or builds search queries:
Stop Tomcat.
+
 
  /opt/scalix-tomcat/shutdown.sh
+
1. Stop Tomcat.
On the server where SIS is installed, open the following file:
+
  /opt/scalix-tomcat/shutdown.sh
 +
 
 +
2. On the server where SIS is installed, open the following file:
 
   /etc/opt/scalix/sis/sis.properties
 
   /etc/opt/scalix/sis/sis.properties
Edit the property, sis.language, to one of the following:
+
 
 +
3 Edit the property, sis.language, to one of the following:
 
   Danish
 
   Danish
 
   Dutch
 
   Dutch
Line 81: Line 145:
 
   Swedish
 
   Swedish
 
   (English is default)
 
   (English is default)
In the file /var/opt/scalix-sis, remove existing indexes and rebuild them using the command sxmkindex.
+
4. In the following file:
All subsequent index and search operations will use the stemming rules for the given language.  
+
  /var/opt/scalix-sis,  
Note This procedure uses the Snowball Analyzer written by Martin Porter. For more information, see the Lucene API at: http://lucene.apache.org/java/docs/api/net/sf/snowball/ext/package-summary.html.
+
remove existing indexes and rebuild them using the command  
 +
  sxmkindex
 +
 
 +
5. All subsequent index and search operations will use the stemming rules for the given language.  
 +
  Note: This procedure uses the Snowball Analyzer written by Martin Porter. For more information, see the Lucene API at: http://lucene.apache.org/java/docs/api/net/sf/snowball/ext/package-summary.html.
 +
 
 +
'''Using Custom Analyzers'''
 +
 
 +
For additional languages, you can use other analyzers, all of which have built-in stemmers. To use these additional stemmers:
  
Using Custom Analyzers
+
1. In the file sis.properties, specify a custom class of your own.  
For additional languages, you can use other analyzers, all of which have built-in stemmers.
+
  index.content.analyzer.class==com.scalix.index.message.MyRussianAnalyzer
To use these additional stemmers:
+
In the file sis.properties, specify a custom class of your own.  
+
index.content.analyzer.class==com.scalix.index.message.MyRussianAnalyzer
+
 
The list of potential analyzers includes:
 
The list of potential analyzers includes:
BrazilianAnalyzer
+
  BrazilianAnalyzer
ChineseAnalyzer
+
  ChineseAnalyzer
CJKAnalyzer
+
  CJKAnalyzer
CzechAnalyzer
+
  CzechAnalyzer
DutchAnalyzer
+
  DutchAnalyzer
FrenchAnalyzer
+
  FrenchAnalyzer
GermanAnalyzer
+
  GermanAnalyzer
GreekAnalyzer
+
  GreekAnalyzer
The class must be implemented like this:
+
2. The class must be implemented like this:
import org.apache.lucene.analysis.Analyzer;
+
  import org.apache.lucene.analysis.Analyzer;
import org.apache.lucene.analysis.ru.RussianAnalyzer;
+
  import org.apache.lucene.analysis.ru.RussianAnalyzer;
import com.scalix.index.message.MessageAnalyzer;
+
  import com.scalix.index.message.MessageAnalyzer;
public class MyRussianAnalyser extends MessageAnalyzer {
+
  public class MyRussianAnalyser extends MessageAnalyzer {
    public Analyzer getAnalyzer() {
+
      public Analyzer getAnalyzer() {
      return new RussianAnalyzer();
+
        return new RussianAnalyzer();
    }
+
      }
}
+
  }
Compile the class and put it in the  following directory so that it can be picked up by the Web Apps classloader.
+
3. Compile the class and put it in the  following directory so that it can be picked up by the Web Apps classloader.
/opt/scalix-tomcat/webapps/sis/WEB-INF/classes
+
  /opt/scalix-tomcat/webapps/sis/WEB-INF/classes

Latest revision as of 12:41, 17 August 2009

TB -> TB-2008-02-L18N

Important Note

The procedures for SWA and Scalix Connect for Outlook localization have changed with the release of integrated localization kits in Scalix versions 11.4.1 and later. Please see below for notes.

Overview

Using UTF8 character encoding, Scalix provides full multi-byte language support, coupled with an open-source localization kit for channel partners and customers to facilitate international deployments.

Localizing Outlook

You can localize the MAPI Connector for any language that Outlook supports.

Scalix 11.4.5 or later

For this release, structure of documentation has changed. Please see full instructions including required tools found in the "readme.txt" file inside the Scalix Localization Kit for Scalix Connect. This is found in the "extras" subdirectory of the "scalix-enterprise-win" and "scalix-community-win" download files.

Scalix 11.4.4 or before

Tools

For this procedure, you need the following:

  • Microsoft resource compiler Visual Studio 6.0, including the compiler RC.EXE and the linker LINK.EXE. (For more on the compiler, see this page)
  • Source File template for Scalix MAPI Localization Files. These files are specific to the Scalix version in question. They are available from varying sources, depending on the Scalix version in use:

Procedures

To localize the MAPI Connector:

1. Use your preferred editing and translation tools to localize the English strings in the following file.

 SCLXRES\RESEN.RC

and in all sub-files of the SCLXRES\EN subdirectory.

2. Make sure you can save the file with the proper font files.

3. From the directory SCLXRES, run the resource compiler. The command is:

 rc /l<LCID Culture ID> /fo "<file name>\sclxres.res" /i "..\shared\include" /i "..\common" /d "THIS_LANG_<NAME OF LANGUAGE>" sclxres.rc

Where:

 rc = The compiler command
 <LCID Culture ID> = Can be found at http://www.microsoft.co.ke/globaldev/nlsweb/default.mspx. This code number must be preceded by an “l” (a lower-case l, not an i) and must match the “THIS-LANG...” option
 l = Specifies default language for compilation. For example, -l409 is equivalent to including the following statement at the top of the   resource script file: LANGUAGE LANG_ENGLISH,SUBLANG_ENGLISH_US 
 fo = Renames the source file so that it comes out as a .res file
 i = The "include" command so takes a directory as its variable
 d = This variable changes according to the culture ID specified earlier
 Note that in this step, you are compiling the file SCLXRES.RC, which includes all subfiles and subfolders, and creates a new file named SCLXRES.RES to the same directory.

4. When the compiler completes, you see a new file named sclxres.res in the directory SCLXRES.

5 Using the resource compiler's LINK.EXE tool, link the .res file to produce a dll in the same directory that will be called SCLXRES.DLL. The command is:

  link /nologo /dll /pdb:none /machine:I386 /nodefaultlib /implib:"sclxres.lib" /NOENTRY sclxres.res

6. Copy the new file, SCLXRES.DLL to the MAPI Connector's installation directory.

 (The default installation directory is C:\Program Files\Scalix\Connect). 
 Note: For more on the link command, see http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vccore98/html/_core_linker_reference.asp.

Localizing SWA

Scalix 11.4 and later

The Scalix installation package - both community and enterprise version - contains a subdirectory called "extras" that includes the SWA localization kit. Full instructions on how to use these files can be found in the kit.

Scalix 11.3 and earlier

Localization of SWA involves translating two xml files, putting them in the appropriate location, and then restarting Tomcat.

Note: Unless your localization file is part of a Scalix distribution, you MUST do a backup before the next upgrade. If you do not, your file will be lost.

To add a new locale to SWA version 11.0:

1. Translate the files strings_en.xml and strings_en_US.xml to create the files strings_xx.xml and strings_xx_XX.xml. Those strings are located at:

  /opt/scalix-tomcat/webapps/webmail/WEB-INF/data

For example: For Nederlands Dutch, create files named string_nl.xml and strings_nl_NL.xml.

2. Stop Tomcat by running the shutdown script found at:

/etc/init.d/scalix-tomcat stop

3. If Tomcat has not already done so, unpack the war file.

4. Put the files strings_xx.xml and strings_xx_XX.xml in the WEB-INF/data directory.

5. Delete the Tomcat cache if needed by deleting the contents of the following directory.

  /opt/scalix-tomcat/work/Catalina/ directory

6. Restart Tomcat by running the start script found at:

  /etc/init.d/scalix-tomcat start

List of translations

Language/Locale Spellchecker Maintainer Download
French (FR_fr) No Vincent LE GOUIC-MARTUN

https://forge.scalix.com/gf/project/scalix_french/

Italiano (IT_it) No Andrea Lanfranchi

https://forge.scalix.com/gf/project/scalix_italian/

Example (ex_pl) No <link to your talkpage> <dl links here>

Localizing the Search and Index Service

The Scalix Search Index Service can be configured to process text for any language. To work with different languages, it uses stemming rules for that specific language, which break down words by removing suffixes and endings just as they do with the English language. For example, a search for the English word "singing" will match the word "sing".

To change the language assumed by SIS when it indexes text or builds search queries:

1. Stop Tomcat.

  /opt/scalix-tomcat/shutdown.sh

2. On the server where SIS is installed, open the following file:

 /etc/opt/scalix/sis/sis.properties

3 Edit the property, sis.language, to one of the following:

 Danish
 Dutch
 English
 Finnish
 French
 German
 Italian
 Norwegian
 Portuguese
 Russian
 Spanish
 Swedish
 (English is default)

4. In the following file:

 /var/opt/scalix-sis, 

remove existing indexes and rebuild them using the command

 sxmkindex

5. All subsequent index and search operations will use the stemming rules for the given language.

 Note: This procedure uses the Snowball Analyzer written by Martin Porter. For more information, see the Lucene API at: http://lucene.apache.org/java/docs/api/net/sf/snowball/ext/package-summary.html.

Using Custom Analyzers

For additional languages, you can use other analyzers, all of which have built-in stemmers. To use these additional stemmers:

1. In the file sis.properties, specify a custom class of your own.

  index.content.analyzer.class==com.scalix.index.message.MyRussianAnalyzer

The list of potential analyzers includes:

 BrazilianAnalyzer
 ChineseAnalyzer
 CJKAnalyzer
 CzechAnalyzer
 DutchAnalyzer
 FrenchAnalyzer
 GermanAnalyzer
 GreekAnalyzer

2. The class must be implemented like this:

 import org.apache.lucene.analysis.Analyzer;
 import org.apache.lucene.analysis.ru.RussianAnalyzer;
 import com.scalix.index.message.MessageAnalyzer;
 public class MyRussianAnalyser extends MessageAnalyzer {
     public Analyzer getAnalyzer() {
        return new RussianAnalyzer();
     }
 }

3. Compile the class and put it in the following directory so that it can be picked up by the Web Apps classloader.

 /opt/scalix-tomcat/webapps/sis/WEB-INF/classes