Spellchecker in PASSOLO 2018 and customization

Hello community, 

My project is described in thread[1] and I tried to perform spellchecking in my mother tongue (German) with English resources on a German translation. Now I have several question and found some suggestions they don't work on my PASSOLO 2018 project. 

[1] https://community.sdl.com/product-groups/translationproductivity/sdl_passolo/f/forum/29824/several-questions-about-generated-json-files 

Options: 

[Content]
Options=260046847
[Options]
Version=18.0.157.0
[view]
SortResources=1
DispIDs=0
DispState=0
CtlColors=0
CtlCoord=0
SysSelColor=0
DynamicRows=1
DispEmptyTrn=0
SyncResTree=1
ShowWSpaceChars=0
ReloadDisplay=1
Color0=0
Color1=0
Color2=0
Color3=0
Color4=0
Color5=0
Color6=0
Color7=0
Color8=0
Color9=0
Color10=0
Color11=0
Color12=0
[Tags]
TagMode=0
PreserveCRLF=0
[ApplicationUpdating]
AutomaticUpdate=1
[Operations]
RecycleSrcStrings=1
RecycleTrnStrings=1
OnChangeSource=0
OnChangeComment=0
OnChangeCoord=0
WriteUntranslated=0
WriteForReview=1
[StringFilter]
Count=23
[StringFilter#1]
Name=Geänderte und neue Texte
Type=16
State=6
DateField=0
DateType=0
Days=0
DayFrom=
DayTo=
MinReplicates=2
MaxReplicates=0
CustomString=
Expression=
Sort1=-1
Sort2=-1
Reverse1=0
Reverse2=0
Group=-1
[StringFilter#2]
Name=Heute geändert
Type=32
State=0
DateField=1
DateType=0
Days=0
DayFrom=
DayTo=
MinReplicates=2
MaxReplicates=0
CustomString=
Expression=
Sort1=-1
Sort2=-1
Reverse1=0
Reverse2=0
Group=-1
[StringFilter#3]
Name=Zu prüfende Texte
Type=17
State=32
DateField=0
DateType=0
Days=0
DayFrom=
DayTo=
MinReplicates=2
MaxReplicates=0
CustomString=
Expression=
Sort1=-1
Sort2=-1
Reverse1=0
Reverse2=0
Group=-1
[StringFilter#4]
Name=Heute übersetzt
Type=33
State=0
DateField=2
DateType=0
Days=0
DayFrom=
DayTo=
MinReplicates=2
MaxReplicates=0
CustomString=
Expression=
Sort1=-1
Sort2=-1
Reverse1=0
Reverse2=0
Group=-1
[StringFilter#5]
Name=Ungeänderte Übersetzung
Type=145
State=40
DateField=0
DateType=0
Days=0
DayFrom=2007-07-15T
DayTo=2007-07-16T
MinReplicates=2
MaxReplicates=0
CustomString=
Expression=.SourceText = .Text
Sort1=-1
Sort2=-1
Reverse1=0
Reverse2=0
Group=-1
[StringFilter#6]
Name=Texte mit Lesezeichen
Type=145
State=40
DateField=0
DateType=0
Days=0
DayFrom=2007-07-16T
DayTo=2007-07-17T
MinReplicates=2
MaxReplicates=0
CustomString=
Expression=.State(pslStateBookmark)
Sort1=-1
Sort2=-1
Reverse1=0
Reverse2=0
Group=-1
[StringFilter#7]
Name=Wiederholungen
Type=4353
State=0
DateField=0
DateType=0
Days=0
DayFrom=2009-01-11T
DayTo=2009-01-12T
MinReplicates=2
MaxReplicates=0
CustomString=
Expression=
Sort1=4
Sort2=-1
Reverse1=0
Reverse2=0
Group=1
[StringFilter#8]
Name=Wiederholungen
Type=4352
State=0
DateField=0
DateType=0
Days=0
DayFrom=2009-01-11T
DayTo=2009-01-12T
MinReplicates=2
MaxReplicates=0
CustomString=
Expression=
Sort1=4
Sort2=-1
Reverse1=0
Reverse2=0
Group=1
[StringFilter#9]
Name=100%-Matches
Type=129
State=0
DateField=2
DateType=0
Days=0
DayFrom=2011-07-12T
DayTo=2011-07-13T
MinReplicates=2
MaxReplicates=0
CustomString=
Expression=.Property(pslPropMatchRate) = 100
Sort1=-1
Sort2=-1
Reverse1=0
Reverse2=0
Group=-1
[StringFilter#10]
Name=Fuzzy-Matches
Type=129
State=0
DateField=2
DateType=0
Days=0
DayFrom=
DayTo=
MinReplicates=2
MaxReplicates=0
CustomString=
Expression=.Property(pslPropMatchRate) < 100 and .Property(pslPropMatchRate) > 0
Sort1=-1
Sort2=-1
Reverse1=0
Reverse2=0
Group=-1
[StringFilter#11]
Name=Mit Kommentar
Type=128
State=0
DateField=2
DateType=0
Days=0
DayFrom=
DayTo=
MinReplicates=2
MaxReplicates=0
CustomString=
Expression=len(.Comment) > 0
Sort1=-1
Sort2=-1
Reverse1=0
Reverse2=0
Group=-1
[StringFilter#12]
Name=Mit Kommentar
Type=129
State=0
DateField=2
DateType=0
Days=0
DayFrom=
DayTo=
MinReplicates=2
MaxReplicates=0
CustomString=
Expression=len(.TransComment) > 0 or len(.Comment) > 0
Sort1=-1
Sort2=-1
Reverse1=0
Reverse2=0
Group=-1
[StringFilter#13]
Name=Unübersetzte Texte
Type=17
State=16
DateField=0
DateType=0
Days=0
DayFrom=2018-01-19T
DayTo=2018-01-20T
MinReplicates=2
MaxReplicates=0
CustomString=
Expression=
Sort1=-1
Sort2=-1
Reverse1=0
Reverse2=0
Group=-1
[StringFilter#14]
Name=GUI Modifications AS
Type=65
State=0
DateField=0
DateType=0
Days=0
DayFrom=2018-04-09T
DayTo=2018-04-10T
MinReplicates=2
MaxReplicates=0
CustomString=
Expression=
Sort1=-1
Sort2=-1
Reverse1=0
Reverse2=0
Group=-1
[StringFilter#15]
Name=RO
Type=128
State=0
DateField=0
DateType=0
Days=0
DayFrom=2018-07-10T
DayTo=2018-07-11T
MinReplicates=2
MaxReplicates=0
CustomString=
Expression=.State(pslStateReadOnly)
Sort1=-1
Sort2=-1
Reverse1=0
Reverse2=0
Group=-1
[StringFilter#16]
Name=DLGINIT nRO
Type=128
State=0
DateField=0
DateType=0
Days=0
DayFrom=2018-07-10T
DayTo=2018-07-11T
MinReplicates=2
MaxReplicates=0
CustomString=
Expression=.ResType = "DLGINIT"\r\nAnd NOT .State(pslStateReadOnly)
Sort1=-1
Sort2=-1
Reverse1=0
Reverse2=0
Group=-1
[StringFilter#17]
Name=DLGINIT nRO | nHidden
Type=128
State=0
DateField=0
DateType=0
Days=0
DayFrom=2018-07-10T
DayTo=2018-07-11T
MinReplicates=2
MaxReplicates=0
CustomString=
Expression=.ResType = "DLGINIT"\r\nAnd (NOT .State(pslStateReadOnly) \r\nOR NOT .State(pslStateHidden))
Sort1=-1
Sort2=-1
Reverse1=0
Reverse2=0
Group=-1
[StringFilter#18]
Name=DLGINIT (text)
Type=128
State=0
DateField=0
DateType=0
Days=0
DayFrom=2018-07-10T
DayTo=2018-07-11T
MinReplicates=2
MaxReplicates=0
CustomString=
Expression=.ResType = "DLGINIT"\r\nAnd \r\n(.Text = "wie Startstufe" OR .Text = "Winkel" OR .Text = "Zeit" OR .Text = "Moment Oben")
Sort1=-1
Sort2=-1
Reverse1=0
Reverse2=0
Group=-1
[StringFilter#19]
Name=RO DLGINIT
Type=128
State=0
DateField=0
DateType=0
Days=0
DayFrom=2018-07-10T
DayTo=2018-07-11T
MinReplicates=2
MaxReplicates=0
CustomString=
Expression=.State(pslStateReadOnly) AND .ResType = "DLGINIT"
Sort1=-1
Sort2=-1
Reverse1=0
Reverse2=0
Group=-1
[StringFilter#20]
Name=DLGINIT has comment
Type=128
State=0
DateField=0
DateType=0
Days=0
DayFrom=2018-07-10T
DayTo=2018-07-11T
MinReplicates=2
MaxReplicates=0
CustomString=
Expression=.ResType = "DLGINIT"\r\n\r\nAnd .Comment > ""
Sort1=-1
Sort2=-1
Reverse1=0
Reverse2=0
Group=-1
[StringFilter#21]
Name=DLGINIT ohne comment
Type=128
State=0
DateField=0
DateType=0
Days=0
DayFrom=2018-07-10T
DayTo=2018-07-11T
MinReplicates=2
MaxReplicates=0
CustomString=
Expression=.ResType = "DLGINIT" \r\nAnd .Comment = ""
Sort1=-1
Sort2=-1
Reverse1=0
Reverse2=0
Group=-1
[StringFilter#22]
Name=ID >
Type=129
State=16
DateField=0
DateType=0
Days=0
DayFrom=2018-08-10T
DayTo=2018-08-11T
MinReplicates=2
MaxReplicates=0
CustomString=
Expression=.ID >= 22000\r\nAnd .ID < -1
Sort1=-1
Sort2=-1
Reverse1=0
Reverse2=0
Group=-1
[StringFilter#23]
Name=Bookmarked
Type=129
State=0
DateField=0
DateType=0
Days=0
DayFrom=2018-09-03T
DayTo=2018-09-04T
MinReplicates=2
MaxReplicates=0
CustomString=
Expression=.State(pslStateBookmark)
Sort1=-1
Sort2=-1
Reverse1=0
Reverse2=0
Group=-1
[ProjectFilter]
Count=4
[ProjectFilter#1]
Name=Textliste benötigt Aktualisierung
Type=32
FileState=0
ListState=6
DateField=0
DateType=0
Days=0
DayFrom=2009-01-11T
DayTo=2009-01-12T
Expression=
Sort1=-1
Sort2=-1
Reverse1=0
Reverse2=0
Group=-1
[ProjectFilter#2]
Name=Zieldatei sollte erzeugt werden
Type=16
FileState=4
ListState=4
DateField=0
DateType=0
Days=0
DayFrom=2009-01-11T
DayTo=2009-01-12T
Expression=
Sort1=-1
Sort2=-1
Reverse1=0
Reverse2=0
Group=-1
[ProjectFilter#3]
Name=Benötigt Übersetzung
Type=128
FileState=4
ListState=4
DateField=0
DateType=0
Days=0
DayFrom=2009-01-11T
DayTo=2009-01-12T
Expression=.TransRate < 100
Sort1=-1
Sort2=-1
Reverse1=0
Reverse2=0
Group=-1
[ProjectFilter#4]
Name=Quelle heute geändert
Type=64
FileState=4
ListState=4
DateField=2
DateType=0
Days=0
DayFrom=2009-01-11T
DayTo=2009-01-12T
Expression=.TransRate < 100
Sort1=7
Sort2=-1
Reverse1=0
Reverse2=0
Group=1
[Edit]
KeepSpaces=0
ValidateOnEdit=0
DirectEdit=1
ShowTerminology=1
DirectCheck=1
SourceDiff=1
PropDlgFlags=5
ZoomEditFont=140
[StoreTrans]
SendOnValidate=0
[LanguageDefault]
Count=2
Lang1=2052
2052-CodePage=0
2052-RestrictMnemonics=1
2052-Mnemonics=a-z
2052-SepAccessKey=1
Lang2=17
17-CodePage=0
17-RestrictMnemonics=1
17-Mnemonics=a-z
17-SepAccessKey=1
[Leverage]
List=10
Ident=11
SrcData=15
TrnData=63
Flags=0
[AutoTranslation]
Match=3
Overwrite=0
Validate=0
Ampersand=0
KeepSpaces=1
Punctuation=.。,:!?
MultiOpt=0
UseFuzzy=0
UseAutomatic=0
MinMatch=98
BaseProviders=4,5,2,1,3,8,6,7,
DisabledAddInCount=0
[FuzzyMatching]
MinMatch=80
MaxCount=10
MaxDepth=200
BaseProviders=1,2,3,8,4,5,6,7,
DisabledAddInCount=0
ShowSourceDifferences=1
[Concordance]
MinMatch=80
MaxCount=10
MaxDepth=200
BaseProviders=1,2,3,8,4,5,7,
DisabledAddInCount=0
[Terminology]
MinMatch=80
MaxCount=10
MaxDepth=200
BaseProviders=1,2,3,8,4,5,7,
DisabledAddInCount=0
[Replicates]
Match=0
Overwrite=0
Validate=0
Ampersand=0
KeepSpaces=0
Punctuation=.。,:!?
Mode=1
NoPrompt=0
[Assistant]
On=0
Jump=1
SelUntrans=1
OnSelTrans=0
MinMatch=99
[QuickIndex]
ValidatedOnly=0
ShowComment=0
ShowTransComment=0
[Checks]
CommonChecks=524287
MenuChecks=65535
DialogChecks=65535
AccChecks=65535
StringTableChecks=65535
NumAddInChecks=3
AddIn0=TextRenderer3
AddIn1=PslInlinePatterns1
AddIn2=Microsoft .NET Parser3
[SpellChecking]
SpellCheckAsYouType=1
SpellCheckFlags=7
[BinEdit]
2=bmp|0|
14=ico|0|
12=cur|0|
22=ico|1|
21=ani|1|
23=htm|1|
234=dat|1|
0=dat|1|
[Simulation]
Type=0
Debug=0
PreText=
PostText=
Length=100
Length2=100
Length3=100
LengthDlg=100
SizeToMaxLength=0
ChangeCtlSize=1
Flags7=4
[Macro]
RunSystemMacro=1
SystemMacro=PslFilterModifiedGUI.bas
[Batch]
MessageBox=0
AllowDeletion=0
[Users]
RequireLogin=0
WindowsUser=0
[System]
ContextTips=1
Language=9
EmptyRsc=system\EmptyRsc.dll
InternalUpdateResource=0
AddinFolder2=
UseRichEditV2=0
[Proxy]
Use=0
Type=0
Address=
Port=0
UserName=
Password=
[Folders]
0=%PSLUserFilesCommon%\Glossary
1=%PSLUserFilesCommon%\Macros
2=%PSLUserFilesCommon%\MacroTemplates
3=%PSLUserFilesCommon%\Profiles
4=%PSLUserFilesCommon%\Stylesheets
5=%PSLUserFiles%\DebugLogging
[DebugLog]
DebugMode=0
GroupCount=3
Group0=app-11
Group1=app-01
Group2=app-91
StoreLogsinProjectFolder=1
[More]
CtrlF4=2

I created a directory structure for each target language to add a custom.dic to the project

and configured my project to use this file

Questions: 

  1. Is it possible to configure spellchecker for compound words? 

    I'd like to set the phrase "(Acknowledge)" as translated and correct in the Custom.dic. How could I do this? 

  2. Set formaters as correct in the spellchecker

    The sample views HTML formats or orders. I'm also interested in printf formats to suppress the display as an spelling error (%d, %s, %i, %02i, %2f, ...)

If you need more information don't hesitate to reply on this post. 

TIA 

Alexander Sailer

  • Without going into detail I would answer the question regarding the spellchecking as follows:

    #1: Passolo has an inbuilt spellchecker, based on a component that once was implemented by the development team. This component is just supporting 13 languages and doesn’t support compound words. I would always suggest to switch the spellchecker to MS Word which is also supported by Passolo. A license of MS Word and the corresponding Proofing Tools for the languages you want to check must be installed on your or on the translators system. Custom.dic files can be used with the inbuilt as well as with the MS Word spellchecker.

    #2: This will also go away when using the MS Word spellchecker as it is aware of such placeholders. Maybe not all, but I tested it with %s, {0}, <a>, etc.

  • It works much better, but compound words support would be a fine feature. THX