An ASP.NET project I am working on will be adding localization in the next version. As we pull text from our ASPX pages into resource files and other data into database tables, what tools might we want to evaluate to assist this process?
Are there any tools to assist translators to create the localization files?
Resource Refactoring Tool
alt text http://i3.codeplex.com/Project/Download/FileDownload.aspx?ProjectName=ResourceRefactoring&DownloadId=3748
Microsoft "open source" Visual Studio tool that integrates with the IDE. You can easily replace every occurrence of a string with a resource reference with a few clicks.
http://www.codeplex.com/ResourceRefactoring
Zeta Resource Editor
alt text http://i3.codeplex.com/Project/Download/FileDownload.aspx?ProjectName=ZetaResourceEditor&DownloadId=40997
A side by side editor for multiple resource file.
http://www.codeplex.com/ZetaResourceEditor/
See Resharper for localization -http://www.jetbrains.com/resharper/webhelp/Resources__Index.html
Also check “Creating a Data Driven ASP.NET Localization Resource Provider and Editor”
http://www.west-wind.com/presentations/wwdbresourceprovider/
It also includes DbResourceControl, that shows controls with Localizable attribute
From http://guysmithferrier.com/Downloads/Top10TipsI18NASPNET.pdf and
http://www.guysmithferrier.com/post/2009/05/Localizing-ASPNET-MVC.aspx
To convert your HTML controls to equivalent ASP.NET server side controls, look at the I18NRefactorings (an add-in for VS) in the download at http://www.dotneti18n.com/Downloads.aspx (folder VS2010/ASPNETSpecifics/I18NRefactorings/I18NRefactorings in the 2010 zip)that will help automate this process.
One tool I've found is RESX Synchronizer.
This is a command-line tool that synchronizes all of the keys between two resource files. For example:
resxsync homepage.resx homepage.fr-CA.resx
will copy all keys from the default .resx file to the French Canadian localization file.
Once that is done, it is only a matter of plugging in the French text.
May want to take a look at spring.net for localization (http://www.springframework.net/docs/1.2.0/reference/html/web.html#web-localization)
From the site
'Spring.Web supports several different approaches to localization within a web application, which can be mixed and matched as appropriate. Both push and pull mechanisms are supported, as well as the fallback to globally defined resources when a local resource cannot be found. Spring.Web also provides support for user culture management and image localization, which are described in the later sections.'