diff --git a/Lin/LNAlertAccessoryView.m b/Lin/LNAlertAccessoryView.m index 78b1c14..fe24998 100644 --- a/Lin/LNAlertAccessoryView.m +++ b/Lin/LNAlertAccessoryView.m @@ -92,7 +92,17 @@ - (void)updateTables [tableFileNames addObject:collection.fileName]; } - [self.tableButton addItemsWithTitles:[tableFileNames allObjects]]; + NSMutableArray * names = [[tableFileNames allObjects] mutableCopy]; + [names enumerateObjectsUsingBlock:^(NSString *name, NSUInteger idx, BOOL *stop) { + + if ([name isEqualToString:@"Localizable.strings"]) + { + [names exchangeObjectAtIndex:0 withObjectAtIndex:idx]; + *stop = YES; + } + }]; + + [self.tableButton addItemsWithTitles:names]; } - (void)updateLanguages diff --git a/Lin/LNDetector.m b/Lin/LNDetector.m index 76c213a..a28cff2 100644 --- a/Lin/LNDetector.m +++ b/Lin/LNDetector.m @@ -36,7 +36,8 @@ - (instancetype)init [LNRegularExpressionPattern patternWithType:LNEntityTypeLocalizedStringForKey], [LNRegularExpressionPattern patternWithType:LNEntityTypeLocalizedStringFromTable], [LNRegularExpressionPattern patternWithType:LNEntityTypeLocalizedStringFromTableInBundle], - [LNRegularExpressionPattern patternWithType:LNEntityTypeLocalizedStringWithDefaultValue] + [LNRegularExpressionPattern patternWithType:LNEntityTypeLocalizedStringWithDefaultValue], + [LNRegularExpressionPattern patternWithType:LNEntityTypeCustomLocalizedStringOnlyForKey] ]; } diff --git a/Lin/LNEntity.h b/Lin/LNEntity.h index 88c015d..f0b5276 100644 --- a/Lin/LNEntity.h +++ b/Lin/LNEntity.h @@ -13,7 +13,13 @@ typedef NS_ENUM(NSUInteger, LNEntityType) { LNEntityTypeLocalizedStringForKey, LNEntityTypeLocalizedStringFromTable, LNEntityTypeLocalizedStringFromTableInBundle, - LNEntityTypeLocalizedStringWithDefaultValue + LNEntityTypeLocalizedStringWithDefaultValue, + + /** + * Custom type just like XXLocalizedString(key) + * Add by Lings@Github + */ + LNEntityTypeCustomLocalizedStringOnlyForKey = 100 }; NS_INLINE NSString * NSStringFromEntityType(LNEntityType type) { @@ -35,6 +41,9 @@ NS_INLINE NSString * NSStringFromEntityType(LNEntityType type) { case LNEntityTypeLocalizedStringWithDefaultValue: string = @"LNEntityTypeLocalizedStringWithDefaultValue"; break; + case LNEntityTypeCustomLocalizedStringOnlyForKey: + string = @"LNEntityTypeCustomLocalizedStringOnlyForKey"; + break; } return string; diff --git a/Lin/LNRegularExpressionPattern+type.m b/Lin/LNRegularExpressionPattern+type.m index c1b6d79..2967340 100644 --- a/Lin/LNRegularExpressionPattern+type.m +++ b/Lin/LNRegularExpressionPattern+type.m @@ -63,6 +63,12 @@ + (instancetype)patternWithType:(LNEntityType)type numberOfRanges = 6; } break; + case LNEntityTypeCustomLocalizedStringOnlyForKey: + { + pettern = @"LocalizedString\\s*\\(\\s*@\"(.*?)\"\\s*\\)"; + numberOfRanges = 2; + } + break; } if (pettern) { diff --git a/Lin/Lin-Info.plist b/Lin/Lin-Info.plist index c105d9a..e858cf6 100644 --- a/Lin/Lin-Info.plist +++ b/Lin/Lin-Info.plist @@ -27,6 +27,7 @@ 37B30044-3B14-46BA-ABAA-F01000C27B63 640F884E-CE55-4B40-87C0-8869546CAB7A A2E4D43F-41F4-4FB9-BB94-7177011C9AED + C4A681B0-4A26-480E-93EC-1218098B9AA0 LSApplicationCategoryType