From 8b8a5401053fd8f707af3a48ef0344730d0e2897 Mon Sep 17 00:00:00 2001 From: xmflsct Date: Thu, 16 Feb 2023 23:44:28 +0100 Subject: [PATCH] Added Norwegian Would it be confused between `nb` and `nn`? --- README.md | 1 + ios/nb.lproj/InfoPlist.strings | 2 ++ ios/tooot.xcodeproj/project.pbxproj | 3 +++ src/i18n/index.ts | 6 ++++++ src/i18n/locales.ts | 1 + src/i18n/no/index.ts | 17 +++++++++++++++++ 6 files changed, 30 insertions(+) create mode 100644 ios/nb.lproj/InfoPlist.strings create mode 100644 src/i18n/no/index.ts diff --git a/README.md b/README.md index d88717bc..df4b242e 100644 --- a/README.md +++ b/README.md @@ -18,6 +18,7 @@ Please **do not** create a pull request to update translation. tooot's translati - [@Hikaru](https://github.com/Hikali-47041) and [@la_la](https://mstdn.jp/@la_la_la) for Japanese translation - [@hellojaccc](https://github.com/hellojaccc) for Korean translation - [@jan-vandenberg](https://crowdin.com/profile/jan-vandenberg) for Dutch translation +- [@gaute](https://gauteweb.net/) for Norwegian translation - [@luizpicolo](https://github.com/luizpicolo) for Brazilian Portuguese - [@janlindblom](https://github.com/janlindblom) for Swedish - [@ihoryan](https://crowdin.com/profile/ihoryan) for Ukrainian diff --git a/ios/nb.lproj/InfoPlist.strings b/ios/nb.lproj/InfoPlist.strings new file mode 100644 index 00000000..58304fef --- /dev/null +++ b/ios/nb.lproj/InfoPlist.strings @@ -0,0 +1,2 @@ +"NSPhotoLibraryAddUsageDescription" = "La tooot lagre bilder på kamerarullen"; +"NSPhotoLibraryUsageDescription" = "La tooot lagre bilder på kamerarullen"; diff --git a/ios/tooot.xcodeproj/project.pbxproj b/ios/tooot.xcodeproj/project.pbxproj index 03d723d0..c50b04c7 100644 --- a/ios/tooot.xcodeproj/project.pbxproj +++ b/ios/tooot.xcodeproj/project.pbxproj @@ -87,6 +87,7 @@ E6A4895D293C1F740047951A /* ca */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ca; path = ca.lproj/InfoPlist.strings; sourceTree = ""; }; E6C8B26628F5F9FC0062CF2E /* ja */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ja; path = ja.lproj/InfoPlist.strings; sourceTree = ""; }; E6D64C7A294A90840098F3AC /* uk */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = uk; path = uk.lproj/InfoPlist.strings; sourceTree = ""; }; + E6FD3AA7299EE8A900774C18 /* nb */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = nb; path = nb.lproj/InfoPlist.strings; sourceTree = ""; }; ED297162215061F000B7C4FE /* JavaScriptCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = JavaScriptCore.framework; path = System/Library/Frameworks/JavaScriptCore.framework; sourceTree = SDKROOT; }; ED2971642150620600B7C4FE /* JavaScriptCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = JavaScriptCore.framework; path = Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS12.0.sdk/System/Library/Frameworks/JavaScriptCore.framework; sourceTree = DEVELOPER_DIR; }; /* End PBXFileReference section */ @@ -300,6 +301,7 @@ nl, ca, uk, + nb, ); mainGroup = 83CBB9F61A601CBA00E9B192; productRefGroup = 83CBBA001A601CBA00E9B192 /* Products */; @@ -533,6 +535,7 @@ E6217B7E293C1EBF00B1755E /* nl */, E6A4895D293C1F740047951A /* ca */, E6D64C7A294A90840098F3AC /* uk */, + E6FD3AA7299EE8A900774C18 /* nb */, ); name = InfoPlist.strings; sourceTree = ""; diff --git a/src/i18n/index.ts b/src/i18n/index.ts index 3499410d..99112e5d 100644 --- a/src/i18n/index.ts +++ b/src/i18n/index.ts @@ -11,6 +11,7 @@ import it from './it' import ja from './ja' import ko from './ko' import nl from './nl' +import no from './no' import pt_BR from './pt_BR' import sv from './sv' import uk from './uk' @@ -31,6 +32,7 @@ import '@formatjs/intl-pluralrules/locale-data/it' import '@formatjs/intl-pluralrules/locale-data/ja' import '@formatjs/intl-pluralrules/locale-data/ko' import '@formatjs/intl-pluralrules/locale-data/nl' +import '@formatjs/intl-pluralrules/locale-data/no' import '@formatjs/intl-pluralrules/locale-data/pt' import '@formatjs/intl-pluralrules/locale-data/sv' import '@formatjs/intl-pluralrules/locale-data/uk' @@ -47,6 +49,7 @@ import '@formatjs/intl-numberformat/locale-data/it' import '@formatjs/intl-numberformat/locale-data/ja' import '@formatjs/intl-numberformat/locale-data/ko' import '@formatjs/intl-numberformat/locale-data/nl' +import '@formatjs/intl-numberformat/locale-data/no' import '@formatjs/intl-numberformat/locale-data/pt' import '@formatjs/intl-numberformat/locale-data/sv' import '@formatjs/intl-numberformat/locale-data/uk' @@ -65,6 +68,7 @@ import '@formatjs/intl-datetimeformat/locale-data/it' import '@formatjs/intl-datetimeformat/locale-data/ja' import '@formatjs/intl-datetimeformat/locale-data/ko' import '@formatjs/intl-datetimeformat/locale-data/nl' +import '@formatjs/intl-datetimeformat/locale-data/no' import '@formatjs/intl-datetimeformat/locale-data/pt' import '@formatjs/intl-datetimeformat/locale-data/sv' import '@formatjs/intl-datetimeformat/locale-data/uk' @@ -82,6 +86,7 @@ import '@formatjs/intl-relativetimeformat/locale-data/it' import '@formatjs/intl-relativetimeformat/locale-data/ja' import '@formatjs/intl-relativetimeformat/locale-data/ko' import '@formatjs/intl-relativetimeformat/locale-data/nl' +import '@formatjs/intl-relativetimeformat/locale-data/no' import '@formatjs/intl-relativetimeformat/locale-data/pt' import '@formatjs/intl-relativetimeformat/locale-data/sv' import '@formatjs/intl-relativetimeformat/locale-data/uk' @@ -106,6 +111,7 @@ i18n.use(initReactI18next).init({ ja, ko, nl, + no, 'pt-BR': pt_BR, sv, uk, diff --git a/src/i18n/locales.ts b/src/i18n/locales.ts index df5a7f33..153f9dc5 100644 --- a/src/i18n/locales.ts +++ b/src/i18n/locales.ts @@ -8,6 +8,7 @@ const LOCALES = { ja: '日本語', ko: '한국어', nl: 'Nederlands', + no: 'Norsk', 'pt-br': 'Português (Brasil)', sv: 'Svenska', uk: 'українська', diff --git a/src/i18n/no/index.ts b/src/i18n/no/index.ts new file mode 100644 index 00000000..61e0f840 --- /dev/null +++ b/src/i18n/no/index.ts @@ -0,0 +1,17 @@ +export default { + common: require('./common'), + + screens: require('./screens'), + screenAnnouncements: require('./screens/announcements'), + screenCompose: require('./screens/compose'), + screenImageViewer: require('./screens/imageViewer'), + screenTabs: require('./screens/tabs'), + + componentContextMenu: require('./components/contextMenu'), + componentEmojis: require('./components/emojis'), + componentInstance: require('./components/instance'), + componentMediaSelector: require('./components/mediaSelector'), + componentParse: require('./components/parse'), + componentRelationship: require('./components/relationship'), + componentTimeline: require('./components/timeline') +}