|
|||
| Moderated by: Renate.Reinartz, Markus.Kreisel, Jaakko.Salmenius, Ilkka.Salmenius | Page: 1 2 |
|
|||||||||||||||
| Detect ISM format - Wish list for software localization tool - Technical Support (You need to be registered at the forum to write) - .NET, Delphi, ... - Sisulizer Localization Tool Support | |||||||||||||||||
| Author | Post | ||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
|||||||||||||||||
|
Janusz Grzybek Super Moderator
|
Hello James, Thank you for email. Current version of Sisulizer use XML parser for ISM files. XML parser use tags for specify localizable items, while in ISM format, some <td> tag occurrences should be translated, other <td> tag occurrences shouldn’t be translated. It looks like for specifying of localizable items for ISM format we should to take into consideration sequence of <td> tags, and it needs lot of changes in parsing of ISM files, and for this reason I can’t promise quick implementation of your request. Anyway, I’ll be to continue my tests and I’ll forward results to our developers. Best regards, Janusz
____________________ http://www.sisulizer.com - Three simple steps to localize |
||||||||||||||||
| |||||||||||||||||
| |||||||||||||||||
|
Jaakko.Salmenius Administrator
|
Hi James, I have a sample sent by you. It contains the following rows: <row> <td>SETUPEXE.F7FC1C4B_F6DF_48BB_8AF3_F55791BA1806</td> <td>AdminMoveFiles.F7FC1C4B_F6DF_48BB_8AF3_F55791BA1806</td> <td>SourceDir</td> <td>TARGETDIR</td> <td>setup.exe</td> <td>setup.exe</td> <td>0</td> </row> <row> <td>ActionText</td> <td>Action</td> <td>N</td> <td/> <td/> <td/> <td/> <td>Text</td> <td/> <td>Name of action to be described.</td> </row> <row> <td>ID_STRING1</td> <td>1033</td> <td>Sample_File</td> <td>0</td> <td/> <td>421375530</td> </row> They do not seem to have a similar pattern. First of all the amount of td differns and also the data that is in each td element. Some data seems to be id/name. Some data seems to be a locale id (e.g. 1033). The point it that it is very difficult to difure out what is data that need to be localized and what is context and what is comment. Are there any specification about ISM format? Jaakko
____________________ http://www.sisulizer.com - Three simple steps to localize |
||||||||||||||||
| |||||||||||||||||
|
|||||||||||||||||
|
jlsymantec Member
|
hi, sorry for the late respond. ISM or Installshield puts all of the translatable strings in the following XML format (if any strings are not within the table name, ISString, they are consider as hard coded): ISString ISLanguage_ Value Encoded Comment TimeStamp COMPANY_NAME1033Symantec Corporation0-1667643253 IDS_ACTIONTEXT_AllocatingRegistry1033Allocating registry space0-2087162399 IDS_ACTIONTEXT_AppCommandLine1033Application: [1], Command line: [2]0-2087162399 IDS_ACTIONTEXT_AppId1033AppId: [1]{{, AppType: [2]}}0-2087162399 IDS_ACTIONTEXT_AppIdAppTypeRSN1033AppId: [1]{{, AppType: [2], Users: [3], RSN: [4]}}0-2087162399 IDS_ACTIONTEXT_Application1033Application: [1]0-2087162399 IDS_ACTIONTEXT_BindingExes1033Binding executables0-2087162399 IDS_ACTIONTEXT_ClassId1033Class ID: [1]0-2087162399 IDS_ACTIONTEXT_ClsID1033Class ID: [1]0-2087162399 IDS_ACTIONTEXT_ComponentIDQualifier1033Component ID: [1], Qualifier: [2]0-2087162399 IDS_ACTIONTEXT_ComponentIdQualifier21033Component ID: [1], Qualifier: [2]0-2087162399 IDS_ACTIONTEXT_ComputingSpace1033Computing space requirements0-2087162399 IDS_ACTIONTEXT_ComputingSpace21033Computing space requirements0-2087162399 IDS_ACTIONTEXT_ComputingSpace31033Computing space requirements0-2087162399 IDS_ACTIONTEXT_ContentTypeExtension1033MIME Content Type: [1], Extension: [2]0-2087162399 IDS_ACTIONTEXT_ContentTypeExtension21033MIME Content Type: [1], Extension: [2]0-2087162399 IDS_ACTIONTEXT_CopyingNetworkFiles1033Copying files to the network0-2087162399 IDS_ACTIONTEXT_CopyingNewFiles1033Copying new files0-2087162399 IDS_ACTIONTEXT_CreatingDuplicate1033Creating duplicate files0-2087162399 IDS_ACTIONTEXT_CreatingFolders1033Creating folders0-2087162399 IDS_ACTIONTEXT_CreatingIISRoots1033Creating IIS Virtual Roots...0-2087162399 IDS_ACTIONTEXT_CreatingShortcuts1033Creating shortcuts0-2087162399 IDS_ACTIONTEXT_DeletingServices1033Deleting services0-2087162399 IDS_ACTIONTEXT_EnvironmentStrings1033Updating environment strings0-2087162399 IDS_ACTIONTEXT_EvaluateLaunchConditions1033Evaluating launch conditions0-2087162399 IDS_ACTIONTEXT_Extension1033Extension: [1]0-2087162399 IDS_ACTIONTEXT_Extension21033Extension: [1]0-2087162399 IDS_ACTIONTEXT_Feature1033Feature: [1]0-2087162399 IDS_ACTIONTEXT_FeatureColon1033Feature: [1]0-2087162399 IDS_ACTIONTEXT_File1033File: [1]0-2087162399 IDS_ACTIONTEXT_File21033File: [1]0-2087162399 IDS_ACTIONTEXT_FileDependencies1033File: [1], Dependencies: [2]0-2087162399 IDS_ACTIONTEXT_FileDir1033File: [1], Directory: [9]0-2087162399 IDS_ACTIONTEXT_FileDir21033File: [1], Directory: [9]0-20 ... ... I guess based on exclude list
|
||||||||||||||||
| |||||||||||||||||
| |||||||||||||||||
|
jlsymantec Member
|
i did the excluded list you mentioned, seems like it might be the best workaround; however, it will take a long time to exclude all of the XML tables except the ISString table. thanks
|
||||||||||||||||
| |||||||||||||||||
|
|||||||||||||||||
|
jlsymantec Member
|
the row above you mentioned, they are not within ISString table, so they should be discarded.
|
||||||||||||||||
| |||||||||||||||||
| |||||||||||||||||
|
Jaakko.Salmenius Administrator
|
Can you send me a sample file that uses the standard ISString format. If there is a format specification it would be useful too. I have sample_file.ism that you sent but it contain many different <row> formats. It is impossible to me to parse it. Or do you mean that only table that is named "ISString" should be localized and all other tables should be ignored. <table name="ISString"> <col key="yes" def="s255">ISString</col> <col key="yes" def="s50">ISLanguage_</col> <col def="S0">Value</col> <col def="I2">Encoded</col> <col def="S0">Comment</col> <col def="I4">TimeStamp</col> <row><td>ID_STRING1</td><td>1033</td><td>Sample_File</td><td>0</td><td/><td>421375530</td></row> <row><td>ID_STRING10</td><td>1033</td><td>Shutting down ccApp</td><td>0</td><td/><td>-1558499634</td></row> <row><td>ID_STRING11</td><td>1033</td><td>Setting compressed folder data</td><td>0</td><td/><td>-929254000</td></row> <row><td>ID_STRING12</td><td>1033</td><td>Compressing folders</td><td>0</td><td/><td>-929272400</td></row> <row><td>ID_STRING2</td><td>1033</td><td>Testing only1</td><td>0</td><td/><td>421389866</td></row> <row><td>ID_STRING3</td><td>1033</td><td>Copying external files for administrative installation</td><td>0</td><td/><td>-2053446959</td></row> <row><td>ID_STRING4</td><td>1033</td><td>Reading data for external file copy</td><td>0</td><td/><td>-2053473551</td></row> <row><td>ID_STRING5</td><td>1033</td><td>Cleaning up temporary files</td><td>0</td><td/><td>-1180973587</td></row> <row><td>ID_STRING6</td><td>1033</td><td>Testing only2</td><td>0</td><td/><td>421387818</td></row> <row><td>ID_STRING7</td><td>1033</td><td>Copying temporary files</td><td>0</td><td/><td>-1180969459</td></row> <row><td>ID_STRING8</td><td>1033</td><td>Creating temporary directories</td><td>0</td><td/><td>-1180985811</td></row> <row><td>ID_STRING9</td><td>1033</td><td>0</td><td>0</td><td/><td>-1709459382</td></row> </table> <row> <td>ID_STRING1</td> <td>1033</td> <td>Sample_File</td> <td>0</td> <td/> <td>421375530</td> </row> 1. td is context 2. td is locale id 3. td is the value to be translated 4. td ? 5. td ? 6. td ? Am I right? Can you eplain what are 4, 5 and 6? Jaakko
____________________ http://www.sisulizer.com - Three simple steps to localize |
||||||||||||||||
| |||||||||||||||||
|
|||||||||||||||||
|
Jaakko.Salmenius Administrator
|
Forget my previous email. I got your point and I found the email your sent. I start implementing. Jaakko
____________________ http://www.sisulizer.com - Three simple steps to localize |
||||||||||||||||
| |||||||||||||||||
| |||||||||||||||||
|
jlsymantec Member
|
display mode : 1600x1200, 16 bit process id : $618 allocated memory : 61.95 MB executable : Sisulizer.exe exec. date/time : 2009-03-16 17:39 version : 2.0.281.0 compiled with : Delphi 7 contact name : jlsymantec madExcept version : 3.0h callstack crc : $68166b9f, $132bc615, $132bc615 exception number : 3 exception class : EAccessViolation exception message : Access violation at address 005C30BE in module 'Sisulizer.exe'. Read of address 00000030. main thread ($368): 005c30be +0006 Sisulizer.exe LaLanguage TLaLanguage.GetCode 00aaecd6 +0062 Sisulizer.exe Datas TTextData.DoJustify 00ac797a +002e Sisulizer.exe Project TData.Justify 00748aab +0053 Sisulizer.exe DataListBox TDataListItem.Justify 00748e67 +000f Sisulizer.exe DataListBox TDataListBox.GetItemHeights 0071d026 +002a Sisulizer.exe JuListControl TJuCustomListControl.GetYPageDown 0057c7a4 +0040 Sisulizer.exe JuControls TJuScrollControl.UpdateYPos 0057cbb7 +002b Sisulizer.exe JuControls TJuScrollControl.Resize 00748f23 +0007 Sisulizer.exe DataListBox TDataListBox.Resize 004c86d5 +0029 Sisulizer.exe Controls TWinControl.WMSize 004c4bcc +0188 Sisulizer.exe Controls TControl.WndProc 004c7c2b +0157 Sisulizer.exe Controls TWinControl.WndProc 00475c4c +0014 Sisulizer.exe Classes StdWndProc 004c78a8 +002c Sisulizer.exe Controls TWinControl.MainWndProc 00475c4c +0014 Sisulizer.exe Classes StdWndProc 7d61ea0b +002b ntdll.dll KiUserCallbackDispatcher 7d62a14c +4aab ntdll.dll bsearch 004c7199 +0121 Sisulizer.exe Controls TWinControl.CreateWnd 0057beb1 +0005 Sisulizer.exe JuControls TJuCustomControl.CreateWnd 0057c4cd +0005 Sisulizer.exe JuControls TJuScrollControl.CreateWnd 004c7576 +0016 Sisulizer.exe Controls TWinControl.CreateHandle 004ca198 +001c Sisulizer.exe Controls TWinControl.HandleNeeded 004ca1a5 +0005 Sisulizer.exe Controls TWinControl.GetHandle 004ca271 +0009 Sisulizer.exe Controls TWinControl.GetClientRect 004c319c +000c Sisulizer.exe Controls TControl.GetClientWidth 0071d47d +0005 Sisulizer.exe JuListControl TJuListControl.GetItemWidth 00748a72 +001a Sisulizer.exe DataListBox TDataListItem.Justify 00748e67 +000f Sisulizer.exe DataListBox TDataListBox.GetItemHeights 0071d026 +002a Sisulizer.exe JuListControl TJuCustomListControl.GetYPageDown 0057c7a4 +0040 Sisulizer.exe JuControls TJuScrollControl.UpdateYPos 0071ccf1 +0051 Sisulizer.exe JuListControl TJuCustomListControl.SetItemIndex 00748d22 +004a Sisulizer.exe DataListBox TDataListBox.SetList 00adc414 +007c Sisulizer.exe Project TProject.EditExcludedOriginals 009cf9c2 +0006 Sisulizer.exe MainFrm TMainForm.ProjectExcludedOriginalsMenuClick 004d649a +00a6 Sisulizer.exe Menus TMenuItem.Click 004d7737 +0013 Sisulizer.exe Menus TMenu.DispatchCommand 004e096f +001f Sisulizer.exe Forms TCustomForm.WMCommand 004c4bcc +0188 Sisulizer.exe Controls TControl.WndProc 004c7c2b +0157 Sisulizer.exe Controls TWinControl.WndProc 004de9cd +0421 Sisulizer.exe Forms TCustomForm.WndProc 00504b45 +0085 Sisulizer.exe TntControls TWinControlTrap.WindowProc 004c78a8 +002c Sisulizer.exe Controls TWinControl.MainWndProc 00475c4c +0014 Sisulizer.exe Classes StdWndProc 7d94af0a +0016 user32.dll CallWindowProcW 005047a8 +0048 Sisulizer.exe TntControls TWinControlTrap.Win32Proc 00475c4c +0014 Sisulizer.exe Classes StdWndProc 7d94ab81 +000a user32.dll DispatchMessageA 004e4e6f +0083 Sisulizer.exe Forms TApplication.ProcessMessage 004e4ea6 +000a Sisulizer.exe Forms TApplication.HandleMessage 004e50d6 +0096 Sisulizer.exe Forms TApplication.Run 00cd4733 +003b Sisulizer.exe Sisulizer initialization thread $5d4 (TDummyThread): 00734020 +f8 Sisulizer.exe GIFImage initialization thread $860: 7d4e2866 +00 kernel32.dll WaitForMultipleObjectsEx 7d94d293 +00 user32.dll MsgWaitForMultipleObjectsEx 7d94d322 +1a user32.dll MsgWaitForMultipleObjects 0044d2a5 +0d Sisulizer.exe madExcept CallThreadProcSafe 0044d31d +45 Sisulizer.exe madExcept ThreadExceptFrame >> created by main thread ($368) at: 4dd695ef +00 gdiplus.dll thread $a84: 7d5066ae +23 kernel32.dll GetQueuedCompletionStatus 0044d2a5 +0d Sisulizer.exe madExcept CallThreadProcSafe 0044d31d +45 Sisulizer.exe madExcept ThreadExceptFrame >> created by main thread ($368) at: 7da460d4 +00 RPCRT4.dll error details: Reproduciable step: Load ISM file into the sisulizer. click original string, right click and "Exclude" string then click "Project" -> "Exclude Original" then it crashed. Last edited on Wed Mar 18th, 2009 05:00 pm by jlsymantec |
||||||||||||||||
| |||||||||||||||||
|
|||||||||||||||||
|
jlsymantec Member
|
Hi, Sorry for the late reply. I guess i don't receive email when any of you reply my post forum. that is weird. ------------------------------------ From Jaakko.Salmenius ------------------------------ <table name="ISString"> <col key="yes" def="s255">ISString</col> <col key="yes" def="s50">ISLanguage_</col> <col def="S0">Value</col> <col def="I2">Encoded</col> <col def="S0">Comment</col> <col def="I4">TimeStamp</col> <row><td>ID_STRING1</td><td>1033</td><td>Sample_File</td><td>0</td><td/><td>421375530</td></row> <row><td>ID_STRING10</td><td>1033</td><td>Shutting down ccApp</td><td>0</td><td/><td>-1558499634</td></row> <row><td>ID_STRING11</td><td>1033</td><td>Setting compressed folder data</td><td>0</td><td/><td>-929254000</td></row> <row><td>ID_STRING12</td><td>1033</td><td>Compressing folders</td><td>0</td><td/><td>-929272400</td></row> <row><td>ID_STRING2</td><td>1033</td><td>Testing only1</td><td>0</td><td/><td>421389866</td></row> <row><td>ID_STRING3</td><td>1033</td><td>Copying external files for administrative installation</td><td>0</td><td/><td>-2053446959</td></row> <row><td>ID_STRING4</td><td>1033</td><td>Reading data for external file copy</td><td>0</td><td/><td>-2053473551</td></row> <row><td>ID_STRING5</td><td>1033</td><td>Cleaning up temporary files</td><td>0</td><td/><td>-1180973587</td></row> <row><td>ID_STRING6</td><td>1033</td><td>Testing only2</td><td>0</td><td/><td>421387818</td></row> <row><td>ID_STRING7</td><td>1033</td><td>Copying temporary files</td><td>0</td><td/><td>-1180969459</td></row> <row><td>ID_STRING8</td><td>1033</td><td>Creating temporary directories</td><td>0</td><td/><td>-1180985811</td></row> <row><td>ID_STRING9</td><td>1033</td><td>0</td><td>0</td><td/><td>-1709459382</td></row> </table> <row> <td>ID_STRING1</td> <td>1033</td> <td>Sample_File</td> <td>0</td> <td/> <td>421375530</td> </row> 1. td is context 2. td is locale id 3. td is the value to be translated 4. td ? 5. td ? 6. td ? ------------------------------------------------------------------ 4 is encoding value, usually for Japanese is 1041, but this can be ignored or "Do not translate list", but it should be carrying over when building a new Pseudo localized ISM file. 5 comment can be ignore as well. It will not display during the installation 6 time stamp can also be ignored. thanks!
|
||||||||||||||||
| |||||||||||||||||
| |||||||||||||||||
|
Janusz Grzybek Super Moderator
|
Hello James, jlsymantec wrote:
Thank you for bug report. I've reproduced issue. I'll forward it to our R&D. Best regards, Janusz
____________________ http://www.sisulizer.com - Three simple steps to localize |
||||||||||||||||
| |||||||||||||||||
| Current time is 02:06 am | Page: 1 2 |
| .NET, Delphi, ... - Sisulizer Localization Tool Support > Technical Support (You need to be registered at the forum to write) > Wish list for software localization tool > Detect ISM format | |
Sisulizer software localization tool - Three simple steps to localize