Alchemy CATALYST supports all versions of the Microsoft .NET framework. It can create optimized and unoptimized language assemblies, and can be configured to use various framework editions when parsing files and automatically signing language assemblies.

.NET Satellite Assemblies

Extract only modified resources to satellite assemblies: Select this option to create optimized language assemblies which only contain modified resources. If this option is deselected, Alchemy CATALYST will create verbose or unoptimized language assemblies which will contain all resources from the original language assembly.

Extract original assembly when extracting satellite assemblies: Select this option  to create the base language assembly when generating the variant language assembly.

Save Assembly linker parameters to text file: Select this option to create a text file containing all of the assembly linker parameters Alchemy CATALYST uses in building language assembly files. This file is stored is the same location as the language assemblies.

Signing Assemblies

No Signing: Select this option if language assemblies are to be created and not signed.

Auto detect public keys and delay sign satellites on creation: Select this option if you'd like Alchemy CATALYST to locate the public keys within the original base assembly and use these to sign any satellite assemblies created.

Use Key file (SNK): Use this option to specify a digital signature key file to be used when building language assembly files. The SNK file will be used by Alchemy CATALYST to delay-sign a language assembly.  

Delay/Fully Sign: Select the type of signing required for a .NET application.

User Messages

Show all Microsoft .NET/Resx messages: Select this option to show all .NET warning and information messages in the Results Toolbar during file insertion and extraction. This can be helpful when investigating what needs to be translated in a large .NET application.

Parse HTML Tags in localisable content: Parse all HTML tags as inline tags when inserting .NET assemblies.

Log .NET Exceptions and Debugging Information: While enabled, a log file to troubleshoot errors with parsing .NET assemblies is created in the public folder C:\Users\Public\Alchemy Software\Catalyst 2023\DotNetDebug

 

The log file dotnetdebug.txt can be reviewed after inserting files in your projects for additional debug information not listed in the Results window.

 

Press Open Log to open the above public folder in which the debug file is created.
Note that until at least one log file has been created through inserting .NET assemblies in your project, this button will not have any effect. This is because the DotNetDebug folder is not created until the Advanced Reporting is enabled and a log file is generated.

 

Press the Clear Log button to empty the log file's contents.

 

Promote BAML resource properties to String list


 

Some string found in BAML resources can have localisable properties found under the properties tab in the translator toolbar. Those properties are not counted in the wordcount as they are managed outside the string list and treated as optionally translatable. For example, FontFamily or FontSize.

Adding the property name is case sensitive

Once added to the promoted list, the properties will be part of the string list and no longer show in the properties tab. They are therefore treated like standard localisable strings and accounted for in the wordcount.

Promoting BAML resource properties not only allows to treat them as localisable strings but enables the localisation engineer to apply locks and keywords.

Promoting properties to the String list will only apply to newly created CATALYST projects (TTK) after the properties are added to the list.

Promoted BAML will not get Pseudo translated when using the Pseudo Translate Expert. Those properties generally need a specific translation/value and pseudo translating would only cause problem in your test build or environment.

 

Using Language Assemblies

Alchemy CATALYST supports two types of language assemblies. These can be used at any stage throughout the localization of .NET applications and each has certain benefits over the other.

Optimised assemblies: These are language assemblies containing only modified resources. Since they do not contain an applications complete resource set, optimized assemblies cannot be localized using standard visual tools. As such, optimized assemblies are typically built at the very end of a localization process only.

Unoptimised assemblies: These are language assemblies that contain an applications complete resource set. As such they can be localized using any of the visual tools that come with Alchemy CATALYST.

 

Since optimized language assemblies contain only a subset of an applications resources, they tend to be much smaller in size than unoptimized language assemblies. However they can be difficult to manage in a localization project , as not all the resources are present in the file itself.

This is why Alchemy CATALYST provides the ability to create unoptimised assembly files.  While these files may be larger in size, they do contain a complete set of application resources and consequently can be localized using visual tools.