1+ using System . Text ;
12using System . Text . Json ;
23using System . Text . Json . Nodes ;
34
@@ -7,6 +8,9 @@ file static class Program
78{
89 public static void Main ( string [ ] args )
910 {
11+ Console . InputEncoding = Encoding . Unicode ;
12+ Console . OutputEncoding = Encoding . Unicode ;
13+
1014 string ? outputFilePath = null ;
1115 List < string > ? jsonFiles = null ;
1216
@@ -237,17 +241,22 @@ private static void ProcessFullNames(Dictionary<NameRecord, List<string>> nameTy
237241 List < ( NameRecord surnameRecord , NameRecord givenNameRecord ) > ? surnameAndNameRecords = GetSurnameAndNameRecords ( fullName , fullNameInRomaji ) ;
238242 bool oneWordName = surnameAndNameRecords is null ;
239243
240- string fullNameWithoutAnyWhiteSpace = oneWordName ? fullName : string . Join ( "" , fullName . Split ( ) ) ;
241244 if ( sex is not null )
242245 {
243- nameTypesDict . AddIfNotExists ( new NameRecord ( fullNameWithoutAnyWhiteSpace , fullNameInRomaji ) , sex ) ;
246+ nameTypesDict . AddIfNotExists ( new NameRecord ( fullName , fullNameInRomaji ) , sex ) ;
244247 }
245248
246249 bool addDefinitionAndSex = shouldAddDefinition && ( addDefinitionToOneWordNames || ! oneWordName ) ;
247- _ = convertedRecords . Add ( new ConvertedNameRecord ( fullNameWithoutAnyWhiteSpace , fullNameInRomaji , addDefinitionAndSex ? sex : null , addDefinitionAndSex ? definition : null ) ) ;
250+ _ = convertedRecords . Add ( new ConvertedNameRecord ( fullName , fullNameInRomaji , addDefinitionAndSex ? sex : null , addDefinitionAndSex ? definition : null ) ) ;
248251
249252 if ( ! oneWordName )
250253 {
254+ string fullNameWithoutAnyWhiteSpace = string . Join ( "" , fullName . Split ( ) ) ;
255+ if ( fullNameWithoutAnyWhiteSpace != fullName )
256+ {
257+ _ = convertedRecords . Add ( new ConvertedNameRecord ( fullNameWithoutAnyWhiteSpace , fullNameInRomaji , addDefinitionAndSex ? sex : null , addDefinitionAndSex ? definition : null ) ) ;
258+ }
259+
251260 foreach ( ( NameRecord surnameRecord , NameRecord givenNameRecord ) in surnameAndNameRecords ! )
252261 {
253262 nameTypesDict . AddIfNotExists ( surnameRecord , Utils . SurnameNameType ) ;
@@ -288,16 +297,22 @@ private static void ProcessAlias(Dictionary<NameRecord, List<string>> nameTypesD
288297 List < ( NameRecord surnameRecord , NameRecord givenNameRecord ) > ? aliasSurnameAndNameRecords = GetSurnameAndNameRecords ( aliasRecord . Name , aliasRecord . NameInRomaji ) ;
289298 bool oneWordName = aliasSurnameAndNameRecords is null ;
290299
291- string fullAliasWithoutAnyWhiteSpace = oneWordName ? aliasRecord . Name : string . Join ( "" , aliasRecord . Name . Split ( ) ) ;
292300 if ( sex is not null )
293301 {
294- nameTypesDict . AddIfNotExists ( new NameRecord ( fullAliasWithoutAnyWhiteSpace , aliasRecord . NameInRomaji ) , sex ) ;
302+ nameTypesDict . AddIfNotExists ( new NameRecord ( aliasRecord . Name , aliasRecord . NameInRomaji ) , sex ) ;
295303 }
296304
297305 bool addDefinitionAndSex = shouldAddDefinition && ( addDefinitionToOneWordNames || ! oneWordName ) ;
298- _ = convertedRecords . Add ( new ConvertedNameRecord ( fullAliasWithoutAnyWhiteSpace , aliasRecord . NameInRomaji , addDefinitionAndSex ? sex : null , addDefinitionAndSex ? definition : null ) ) ;
306+ _ = convertedRecords . Add ( new ConvertedNameRecord ( aliasRecord . Name , aliasRecord . NameInRomaji , addDefinitionAndSex ? sex : null , addDefinitionAndSex ? definition : null ) ) ;
307+
299308 if ( ! oneWordName )
300309 {
310+ string fullAliasWithoutAnyWhiteSpace = string . Join ( "" , aliasRecord . Name . Split ( ) ) ;
311+ if ( fullAliasWithoutAnyWhiteSpace != aliasRecord . Name )
312+ {
313+ _ = convertedRecords . Add ( new ConvertedNameRecord ( fullAliasWithoutAnyWhiteSpace , aliasRecord . NameInRomaji , addDefinitionAndSex ? sex : null , addDefinitionAndSex ? definition : null ) ) ;
314+ }
315+
301316 for ( int i = 0 ; i < aliasSurnameAndNameRecords ! . Count ; i ++ )
302317 {
303318 ( NameRecord aliasSurnameRecord , NameRecord aliasGivenNameRecord ) = aliasSurnameAndNameRecords [ i ] ;
0 commit comments