diff --git a/OSRMTextInstructions.xcodeproj/project.pbxproj b/OSRMTextInstructions.xcodeproj/project.pbxproj index cd0409b..4670f42 100644 --- a/OSRMTextInstructions.xcodeproj/project.pbxproj +++ b/OSRMTextInstructions.xcodeproj/project.pbxproj @@ -17,7 +17,7 @@ 358D145A1E5E355600ADE590 /* osrm-text-instructions.h in Headers */ = {isa = PBXBuildFile; fileRef = 358D14571E5E355600ADE590 /* osrm-text-instructions.h */; settings = {ATTRIBUTES = (Public, ); }; }; 358D145B1E5E355600ADE590 /* OSRMTextInstructions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 358D14581E5E355600ADE590 /* OSRMTextInstructions.swift */; }; C51B63E91E65FA04002F4634 /* TokenType.swift in Sources */ = {isa = PBXBuildFile; fileRef = C51B63E81E65FA04002F4634 /* TokenType.swift */; }; - DA0584D41E5E562A006F138F /* Instructions.plist in Resources */ = {isa = PBXBuildFile; fileRef = DA0584D31E5E562A006F138F /* Instructions.plist */; }; + DAEACB551E788D4300E481C6 /* Instructions.plist in Resources */ = {isa = PBXBuildFile; fileRef = DAEACB571E788D4300E481C6 /* Instructions.plist */; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ @@ -42,7 +42,8 @@ 358D14581E5E355600ADE590 /* OSRMTextInstructions.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = OSRMTextInstructions.swift; sourceTree = ""; }; 35EBDB5D1E5E1572006EB3CD /* OSRMTextInstructions.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = OSRMTextInstructions.framework; sourceTree = BUILT_PRODUCTS_DIR; }; C51B63E81E65FA04002F4634 /* TokenType.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = TokenType.swift; sourceTree = ""; }; - DA0584D31E5E562A006F138F /* Instructions.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Instructions.plist; sourceTree = ""; }; + DAEACB561E788D4300E481C6 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; name = en; path = en.lproj/Instructions.plist; sourceTree = ""; }; + DAEACB581E788D5100E481C6 /* zh-Hans */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; name = "zh-Hans"; path = "zh-Hans.lproj/Instructions.plist"; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -121,7 +122,7 @@ DA0584D21E5E561D006F138F /* Resources */ = { isa = PBXGroup; children = ( - DA0584D31E5E562A006F138F /* Instructions.plist */, + DAEACB571E788D4300E481C6 /* Instructions.plist */, ); name = Resources; sourceTree = ""; @@ -205,6 +206,7 @@ hasScannedForEncodings = 0; knownRegions = ( en, + "zh-Hans", ); mainGroup = 35EBDB531E5E1572006EB3CD; productRefGroup = 35EBDB5E1E5E1572006EB3CD /* Products */; @@ -230,7 +232,7 @@ isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( - DA0584D41E5E562A006F138F /* Instructions.plist in Resources */, + DAEACB551E788D4300E481C6 /* Instructions.plist in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -282,6 +284,18 @@ }; /* End PBXTargetDependency section */ +/* Begin PBXVariantGroup section */ + DAEACB571E788D4300E481C6 /* Instructions.plist */ = { + isa = PBXVariantGroup; + children = ( + DAEACB561E788D4300E481C6 /* en */, + DAEACB581E788D5100E481C6 /* zh-Hans */, + ); + name = Instructions.plist; + sourceTree = ""; + }; +/* End PBXVariantGroup section */ + /* Begin XCBuildConfiguration section */ 352BBC311E5E4D4200703DF1 /* Debug */ = { isa = XCBuildConfiguration; @@ -319,6 +333,7 @@ isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; CLANG_ANALYZER_NONNULL = YES; CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; CLANG_CXX_LIBRARY = "libc++"; @@ -372,6 +387,7 @@ isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; CLANG_ANALYZER_NONNULL = YES; CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; CLANG_CXX_LIBRARY = "libc++"; diff --git a/OSRMTextInstructions/Instructions.plist b/OSRMTextInstructions/en.lproj/Instructions.plist similarity index 100% rename from OSRMTextInstructions/Instructions.plist rename to OSRMTextInstructions/en.lproj/Instructions.plist diff --git a/OSRMTextInstructions/zh-Hans.lproj/Instructions.plist b/OSRMTextInstructions/zh-Hans.lproj/Instructions.plist new file mode 100644 index 0000000..55e8c24 --- /dev/null +++ b/OSRMTextInstructions/zh-Hans.lproj/Instructions.plist @@ -0,0 +1,506 @@ + + + + + meta + + capitalizeFirstLetter + + + v5 + + arrive + + default + + default + 您已经到达您的{nth}个目的地 + + left + + default + 您已经到达您的{nth}个目的地,在道路左侧 + + right + + default + 您已经到达您的{nth}个目的地,在道路右侧 + + sharp left + + default + 您已经到达您的{nth}个目的地,在道路左侧 + + sharp right + + default + 您已经到达您的{nth}个目的地,在道路右侧 + + slight left + + default + 您已经到达您的{nth}个目的地,在道路左侧 + + slight right + + default + 您已经到达您的{nth}个目的地,在道路右侧 + + straight + + default + 您已经到达您的{nth}个目的地,在您正前方 + + + constants + + direction + + east + + north + + northeast + 东北 + northwest + 西北 + south + + southeast + 东南 + southwest + 西南 + west + 西 + + lanes + + ox + 靠左直行 + oxo + 保持在道路两侧直行 + xo + 靠右直行 + xox + 保持在道路中间直行 + + modifier + + left + 向左 + right + 向右 + sharp left + 向左 + sharp right + 向右 + slight left + 向左 + slight right + 向右 + straight + 直行 + uturn + 调头 + + ordinalize + + 1 + 第一 + 10 + 第十 + 2 + 第二 + 3 + 第三 + 4 + 第四 + 5 + 第五 + 6 + 第六 + 7 + 第七 + 8 + 第八 + 9 + 第九 + + + continue + + default + + default + 继续{modifier} + destination + 继续{modifier}行驶,前往{destination} + name + 继续{modifier},上{way_name} + + uturn + + default + 调头 + destination + 调头后前往{destination} + name + 调头上{way_name} + + + depart + + default + + default + 出发向{direction} + name + 出发向{direction},上{way_name} + + + end of road + + default + + default + {modifier}行驶 + destination + {modifier}行驶,前往{destination} + name + {modifier}行驶,上{way_name} + + straight + + default + 继续直行 + destination + 继续直行,前往{destination} + name + 继续直行,上{way_name} + + uturn + + default + 在道路尽头调头 + destination + 在道路尽头调头,前往{destination} + name + 在道路尽头调头上{way_name} + + + fork + + default + + default + 在岔道保持{modifier} + destination + 在岔道保持{modifier},前往{destination} + name + 在岔道保持{modifier},上{way_name} + + uturn + + default + 调头 + destination + 调头,前往{destination} + name + 调头,上{way_name} + + + merge + + default + + default + {modifier}并道 + destination + {modifier}并道,前往{destination} + name + {modifier}并道,上{way_name} + + uturn + + default + 调头 + destination + 调头,前往{destination} + name + 调头,上{way_name} + + + modes + + ferry + + default + 乘坐轮渡 + destination + 乘坐开往{destination}的轮渡 + name + 乘坐{way_name}轮渡 + + + new name + + default + + default + 继续{modifier} + destination + 继续{modifier},前往{destination} + name + 继续{modifier},上{way_name} + + uturn + + default + 调头 + destination + 调头,前往{destination} + name + 调头,上{way_name} + + + notification + + default + + default + 继续{modifier} + destination + 继续{modifier},前往{destination} + name + 继续{modifier},上{way_name} + + uturn + + default + 调头 + destination + 调头,前往{destination} + name + 调头,上{way_name} + + + off ramp + + default + + default + 上匝道 + destination + 通过匝道前往{destination} + name + 通过匝道驶入{way_name} + + left + + default + 通过左边的匝道 + destination + 通过左边的匝道前往{destination} + name + 通过左边的匝道驶入{way_name} + + right + + default + 通过右边的匝道 + destination + 通过右边的匝道前往{destination} + name + 通过右边的匝道驶入{way_name} + + + on ramp + + default + + default + 通过匝道 + destination + 通过匝道前往{destination} + name + 通过匝道驶入{way_name} + + left + + default + 通过左边的匝道 + destination + 通过左边的匝道前往{destination} + name + 通过左边的匝道驶入{way_name} + + right + + default + 通过右边的匝道 + destination + 通过右边的匝道前往{destination} + name + 通过右边的匝道驶入{way_name} + + + rotary + + default + + default + + default + 进入环岛 + destination + 通过环岛前往{destination} + name + 通过环岛后驶入{way_name} + + exit + + default + 进入环岛并从{exit_number}出口驶出 + destination + 进入环岛后从{exit_number}出口驶出前往{destination} + name + 进入环岛后从{exit_number}出口驶出进入{way_name} + + name + + default + 进入{rotary_name}环岛 + destination + 通过{rotary_name}环岛后前往{destination} + name + 通过{rotary_name}环岛后驶入{way_name} + + name_exit + + default + 进入{rotary_name}环岛后从{exit_number}出口驶出 + destination + 进入{rotary_name}环岛后从{exit_number}出口驶出前往{destination} + name + 进入{rotary_name}环岛后从{exit_number}出口驶出进入{way_name} + + + + roundabout + + default + + default + + default + 进入环岛 + destination + 通过环岛后前往{destination} + name + 通过环岛后驶入{way_name} + + exit + + default + 进入环岛后从{exit_number}出口驶出 + destination + 进入环岛后从{exit_number}出口驶出前往{destination} + name + 进入环岛后从{exit_number}出口驶出前往{way_name} + + + + roundabout turn + + default + + default + 在环岛{modifier}行驶 + destination + 在环岛{modifier}行驶,前往{destination} + name + 在环岛{modifier}行驶,上{way_name} + + left + + default + 在环岛左转 + destination + 在环岛左转,前往{destination} + name + 在环岛左转,上{way_name} + + right + + default + 在环岛右转 + destination + 在环岛右转,前往{destination} + name + 在环岛右转,上{way_name} + + straight + + default + 在环岛继续直行 + destination + 在环岛继续直行,前往{destination} + name + 在环岛继续直行,上{way_name} + + + turn + + default + + default + {modifier}转弯 + destination + {modifier}转弯,前往{destination} + name + {modifier}转弯,上{way_name} + + left + + default + 左转 + destination + 左转,前往{destination} + name + 左转,上{way_name} + + right + + default + 右转 + destination + 右转,前往{destination} + name + 右转,上{way_name} + + straight + + default + 直行 + destination + 直行,前往{destination} + name + 直行,上{way_name} + + + use lane + + default + + default + {lane_instruction} + + no_lanes + + default + 继续直行 + + + + +