summaryrefslogtreecommitdiffstats
path: root/l10n-nn-NO/calendar
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-07 09:22:09 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-07 09:22:09 +0000
commit43a97878ce14b72f0981164f87f2e35e14151312 (patch)
tree620249daf56c0258faa40cbdcf9cfba06de2a846 /l10n-nn-NO/calendar
parentInitial commit. (diff)
downloadfirefox-43a97878ce14b72f0981164f87f2e35e14151312.tar.xz
firefox-43a97878ce14b72f0981164f87f2e35e14151312.zip
Adding upstream version 110.0.1.upstream/110.0.1upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to '')
-rw-r--r--l10n-nn-NO/calendar/README.txt2
-rw-r--r--l10n-nn-NO/calendar/calendar/calendar-context-menus.ftl7
-rw-r--r--l10n-nn-NO/calendar/calendar/calendar-delete-prompt.ftl35
-rw-r--r--l10n-nn-NO/calendar/calendar/calendar-editable-item.ftl30
-rw-r--r--l10n-nn-NO/calendar/calendar/calendar-event-dialog-reminder.ftl10
-rw-r--r--l10n-nn-NO/calendar/calendar/calendar-ics-file-dialog.ftl45
-rw-r--r--l10n-nn-NO/calendar/calendar/calendar-invitation-panel.ftl96
-rw-r--r--l10n-nn-NO/calendar/calendar/calendar-invitations-dialog.ftl10
-rw-r--r--l10n-nn-NO/calendar/calendar/calendar-itip-identity-dialog.ftl8
-rw-r--r--l10n-nn-NO/calendar/calendar/calendar-print.ftl17
-rw-r--r--l10n-nn-NO/calendar/calendar/calendar-summary-dialog.ftl15
-rw-r--r--l10n-nn-NO/calendar/calendar/calendar-uri-redirect-dialog.ftl11
-rw-r--r--l10n-nn-NO/calendar/calendar/calendar-widgets.ftl9
-rw-r--r--l10n-nn-NO/calendar/calendar/category-dialog.ftl7
-rw-r--r--l10n-nn-NO/calendar/calendar/preferences.ftl192
-rw-r--r--l10n-nn-NO/calendar/chrome/calendar/calendar-alarms.properties39
-rw-r--r--l10n-nn-NO/calendar/chrome/calendar/calendar-event-dialog-attendees.properties15
-rw-r--r--l10n-nn-NO/calendar/chrome/calendar/calendar-event-dialog.dtd419
-rw-r--r--l10n-nn-NO/calendar/chrome/calendar/calendar-event-dialog.properties541
-rw-r--r--l10n-nn-NO/calendar/chrome/calendar/calendar-extract.properties294
-rw-r--r--l10n-nn-NO/calendar/chrome/calendar/calendar-invitations-dialog.dtd19
-rw-r--r--l10n-nn-NO/calendar/chrome/calendar/calendar-invitations-dialog.properties10
-rw-r--r--l10n-nn-NO/calendar/chrome/calendar/calendar-occurrence-prompt.dtd7
-rw-r--r--l10n-nn-NO/calendar/chrome/calendar/calendar-occurrence-prompt.properties53
-rw-r--r--l10n-nn-NO/calendar/chrome/calendar/calendar.dtd411
-rw-r--r--l10n-nn-NO/calendar/chrome/calendar/calendar.properties696
-rw-r--r--l10n-nn-NO/calendar/chrome/calendar/calendarCreation.dtd51
-rw-r--r--l10n-nn-NO/calendar/chrome/calendar/calendarCreation.properties6
-rw-r--r--l10n-nn-NO/calendar/chrome/calendar/categories.properties7
-rw-r--r--l10n-nn-NO/calendar/chrome/calendar/dateFormat.properties146
-rw-r--r--l10n-nn-NO/calendar/chrome/calendar/dialogs/calendar-event-dialog-reminder.dtd19
-rw-r--r--l10n-nn-NO/calendar/chrome/calendar/global.dtd54
-rw-r--r--l10n-nn-NO/calendar/chrome/calendar/menuOverlay.dtd50
-rw-r--r--l10n-nn-NO/calendar/chrome/calendar/migration.dtd9
-rw-r--r--l10n-nn-NO/calendar/chrome/calendar/migration.properties13
-rw-r--r--l10n-nn-NO/calendar/chrome/calendar/provider-uninstall.dtd12
-rw-r--r--l10n-nn-NO/calendar/chrome/calendar/timezones.properties489
-rw-r--r--l10n-nn-NO/calendar/chrome/lightning/lightning-toolbar.dtd51
-rw-r--r--l10n-nn-NO/calendar/chrome/lightning/lightning.dtd112
-rw-r--r--l10n-nn-NO/calendar/chrome/lightning/lightning.properties165
-rw-r--r--l10n-nn-NO/calendar/lightning-l10n.js24
41 files changed, 4206 insertions, 0 deletions
diff --git a/l10n-nn-NO/calendar/README.txt b/l10n-nn-NO/calendar/README.txt
new file mode 100644
index 0000000000..c2ff904f72
--- /dev/null
+++ b/l10n-nn-NO/calendar/README.txt
@@ -0,0 +1,2 @@
+Du kan finne informasjon om installering, køyring og oppsett av Sunbird,
+samt ei liste over kjende problem og måtar desse kan løysast på, om du vitjar http://www.mozilla.org/projects/calendar/ \ No newline at end of file
diff --git a/l10n-nn-NO/calendar/calendar/calendar-context-menus.ftl b/l10n-nn-NO/calendar/calendar/calendar-context-menus.ftl
new file mode 100644
index 0000000000..f65e1ed6be
--- /dev/null
+++ b/l10n-nn-NO/calendar/calendar/calendar-context-menus.ftl
@@ -0,0 +1,7 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+calendar-item-context-menu-modify-menuitem =
+ .label = Rediger
+ .accesskey = R
diff --git a/l10n-nn-NO/calendar/calendar/calendar-delete-prompt.ftl b/l10n-nn-NO/calendar/calendar/calendar-delete-prompt.ftl
new file mode 100644
index 0000000000..9b0b6ed52f
--- /dev/null
+++ b/l10n-nn-NO/calendar/calendar/calendar-delete-prompt.ftl
@@ -0,0 +1,35 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+calendar-delete-event-prompt-title =
+ { $count ->
+ [one] Slett hending
+ *[other] Slett hendingar
+ }
+calendar-delete-event-prompt-message =
+ { $count ->
+ [one] Vil du verkeleg slette denne hendinga?
+ *[other] Vil du verkeleg slette disse { $count } hendingane?
+ }
+calendar-delete-task-prompt-title =
+ { $count ->
+ [one] Slett oppgåve
+ *[other] Slett oppgåver
+ }
+calendar-delete-task-prompt-message =
+ { $count ->
+ [one] Vil du verkeleg slette denne oppgåva?
+ *[other] Vil du verkeleg slette desse { $count } oppgåvene?
+ }
+calendar-delete-item-prompt-title =
+ { $count ->
+ [one] Slett element
+ *[other] Slett element
+ }
+calendar-delete-item-prompt-message =
+ { $count ->
+ [one] Vil du verkeleg slette dette elementet?
+ *[other] Vil du verkeleg slette desse { $count } elementa?
+ }
+calendar-delete-prompt-disable-message = Ikkje spør igjen.
diff --git a/l10n-nn-NO/calendar/calendar/calendar-editable-item.ftl b/l10n-nn-NO/calendar/calendar/calendar-editable-item.ftl
new file mode 100644
index 0000000000..89a31ba6f4
--- /dev/null
+++ b/l10n-nn-NO/calendar/calendar/calendar-editable-item.ftl
@@ -0,0 +1,30 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+calendar-editable-item-privacy-icon-private =
+ .alt = Personvern: Privat hending
+calendar-editable-item-privacy-icon-confidential =
+ .alt = Personvern: Vis berre tid og dato
+calendar-editable-item-recurrence =
+ .alt = Regelmessig
+calendar-editable-item-recurrence-exception =
+ .alt = Gjentakingsunntak
+calendar-editable-item-todo-icon-task =
+ .alt = Oppgåve
+calendar-editable-item-todo-icon-completed-task =
+ .alt = Fullført oppgåve
+calendar-editable-item-multiday-event-icon-start =
+ .alt = Fleirdagshending byrjar
+calendar-editable-item-multiday-event-icon-continue =
+ .alt = Fleirdagshending held fram
+calendar-editable-item-multiday-event-icon-end =
+ .alt = Fleirdagshending sluttar
+calendar-editable-item-reminder-icon-alarm =
+ .alt = Eit påminningsvarsel er planlagd
+calendar-editable-item-reminder-icon-suppressed-alarm =
+ .alt = Ein påminningsalarm er planlagd, men er for tida deaktivert
+calendar-editable-item-reminder-icon-email =
+ .alt = Ein påminnings e-post er planlagd
+calendar-editable-item-reminder-icon-audio =
+ .alt = Ei lydpåminning er planlagt
diff --git a/l10n-nn-NO/calendar/calendar/calendar-event-dialog-reminder.ftl b/l10n-nn-NO/calendar/calendar/calendar-event-dialog-reminder.ftl
new file mode 100644
index 0000000000..31debd9383
--- /dev/null
+++ b/l10n-nn-NO/calendar/calendar/calendar-event-dialog-reminder.ftl
@@ -0,0 +1,10 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+calendar-event-reminder-icon-display =
+ .alt = Vis eit varsel
+calendar-event-reminder-icon-email =
+ .alt = Send ein e-post
+calendar-event-reminder-icon-audio =
+ .alt = Spel av eit lydvarsel
diff --git a/l10n-nn-NO/calendar/calendar/calendar-ics-file-dialog.ftl b/l10n-nn-NO/calendar/calendar/calendar-ics-file-dialog.ftl
new file mode 100644
index 0000000000..0901a8906e
--- /dev/null
+++ b/l10n-nn-NO/calendar/calendar/calendar-ics-file-dialog.ftl
@@ -0,0 +1,45 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+calendar-ics-file-window-2 =
+ .title = IMporter kalenderhendingar og oppgåver
+calendar-ics-file-dialog-import-event-button-label = Importer hendingar
+calendar-ics-file-dialog-import-task-button-label = Importer oppgåver
+calendar-ics-file-dialog-2 =
+ .buttonlabelaccept = Importer alle
+calendar-ics-file-accept-button-ok-label = OK
+calendar-ics-file-cancel-button-close-label = Lat att
+calendar-ics-file-dialog-message-2 = Importer frå fil:
+calendar-ics-file-dialog-calendar-menu-label = Importer inn i kalender:
+calendar-ics-file-dialog-items-loading-message =
+ .value = Lastar inn element…
+calendar-ics-file-dialog-search-input =
+ .placeholder = Filtrer element…
+calendar-ics-file-dialog-sort-start-ascending =
+ .label = Sorter etter startdato (første til siste)
+calendar-ics-file-dialog-sort-start-descending =
+ .label = Sorter etter startdato (siste til første)
+# "A > Z" is used as a concise way to say "alphabetical order".
+# You may replace it with something appropriate to your language.
+calendar-ics-file-dialog-sort-title-ascending =
+ .label = Sorter etter tittel (A > Å)
+# "Z > A" is used as a concise way to say "reverse alphabetical order".
+# You may replace it with something appropriate to your language.
+calendar-ics-file-dialog-sort-title-descending =
+ .label = Sorter etter tittel (Å > A)
+calendar-ics-file-dialog-progress-message = Importerer…
+calendar-ics-file-import-success = Importert!
+calendar-ics-file-import-error = Mislykka import på grunn av ein feil.
+calendar-ics-file-import-complete = Import er fullført
+calendar-ics-file-import-duplicates =
+ { $duplicatesCount ->
+ [one] Eitt element vart ignorert sidan det allereie finst i destinasjonskalenderen.
+ *[other] { $duplicatesCount } element vart ignorerte sidan dei allereie finst i destinasjonskalenderen.
+ }
+calendar-ics-file-import-errors =
+ { $errorsCount ->
+ [one] Eitt element kunne ikkje importerast. Sjekk feilkonsollen for detaljar.
+ *[other] { $errorsCount } elemente kunne ikkje importerast. Sjekk feilkonsollen for detaljar.
+ }
+calendar-ics-file-dialog-no-calendars = Der er ingen kalendrar som kan importere hendingar og oppgåver.
diff --git a/l10n-nn-NO/calendar/calendar/calendar-invitation-panel.ftl b/l10n-nn-NO/calendar/calendar/calendar-invitation-panel.ftl
new file mode 100644
index 0000000000..85f1f833fa
--- /dev/null
+++ b/l10n-nn-NO/calendar/calendar/calendar-invitation-panel.ftl
@@ -0,0 +1,96 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# Variables:
+# $organizer (String) - The participant that created the original invitation.
+calendar-invitation-panel-intro = { $organizer } har invitert deg til:
+# Variables:
+# $organizer (String) - The participant that updated the original invitation.
+calendar-invitation-panel-intro-update = { $organizer } har oppdatert:
+# Variables:
+# $organizer (String) - The participant that cancelled the invitation.
+calendar-invitation-panel-intro-cancel = { $organizer } har avlyst:
+# Variables:
+# $summary (String) - A short summary or title of the event.
+calendar-invitation-panel-title = { $summary }
+calendar-invitation-panel-action-button = Lagre
+calendar-invitation-panel-save-button = Lagre
+calendar-invitation-panel-view-button = Vis
+calendar-invitation-panel-update-button = Oppdater
+calendar-invitation-panel-delete-button = Slett
+calendar-invitation-panel-accept-button = Ja
+calendar-invitation-panel-decline-button = Nei
+calendar-invitation-panel-tentative-button = Kanskje
+calendar-invitation-panel-reply-status = Du har ikkje bestemt deg eller svart enno
+calendar-invitation-panel-prop-title-when = Når:
+calendar-invitation-panel-prop-title-location = Plassering:
+# Variables:
+# $dayOfWeek (String) - The day of the week for a given date.
+# $date (String) - The date example: Tuesday, February 24, 2022.
+calendar-invitation-datetime-date = { $dayOfWeek }, { $date }
+# Variables:
+# $time (String) - The time part of a datetime using the "short" timeStyle.
+# $timezone (String) - The timezone info for the datetime.
+calendar-invitation-datetime-time = { $time } ({ $timezone })
+# Example: Friday, September 16, 2022
+# Variables:
+# $startDate (String) - The date (without time) the event starts on.
+calendar-invitation-interval-all-day = { $startDate }
+# Example: September 16, 2022 – September 16, 2023
+# $startMonth (String) - The month the interval starts.
+# $startDay (String) - The day of the month the interval starts.
+# $startYear (String) - The year the interval starts.
+# $endMonth (String) - The month the interval ends.
+# $endDay (String) - The day of the month the interval ends.
+# $endYear (String) - The year the interval ends.
+calendar-invitation-interval-all-day-between-years = { $startDay }. { $startMonth }, { $startYear } – { $endDay }. { $endMonth }, { $endYear }
+# Example: September 16 – 20, 2022
+# $month (String) - The month the interval is in.
+# $startDay (String) - The day of the month the interval starts.
+# $endDay (String) - The day of the month the interval ends.
+# $year (String) - The year the interval is in.
+calendar-invitation-interval-all-day-in-month = { $startDay }. – { $endDay }. { $month }, { $year }
+# Example: September 16 – October 20, 2022
+# $startMonth (String) - The month the interval starts.
+# $startDay (String) - The day of the month the interval starts.
+# $endDay (String) - The day of the month the interval ends.
+# $year (String) - The year the interval is in.
+calendar-invitation-interval-all-day-between-months = { $startDay }. { $startMonth } – { $endDay }. { $endMonth }, { $year }
+# Example: Friday, September 16, 2022 15:00 America/Port of Spain
+# $startDate (String) - The date the interval starts.
+# $startTime (String) - The time the interval starts.
+# $timezone (String) - The timezone the interval is in.
+calendar-invitation-interval-same-date-time = { $startDate } <b>{ $startTime }</b> { $timezone }
+# Example: Friday, September 16, 2022 14:00 – 16:00 America/Port of Spain
+# $startDate (String) - The date the interval starts.
+# $startTime (String) - The time the interval starts.
+# $endTime (String) - The time the interval ends.
+# $timezone (String) - The timezone the interval is in.
+calendar-invitation-interval-same-day = { $startDate } <b>{ $startTime }</b> – <b>{ $endTime }</b> { $timezone }
+# Example: Friday, September 16, 2022 14:00 – Tuesday, September 20, 2022 16:00 America/Port of Spain
+# $startDate (String) - The date the interval starts.
+# $startTime (String) - The time the interval starts.
+# $startDate (String) - The date the interval ends.
+# $endTime (String) - The time the interval ends.
+# $timezone (String) - The timezone the interval is in.
+calendar-invitation-interval-several-days = { $startDate } <b>{ $startTime }</b> – { $endDate } <b>{ $endTime }</b> { $timezone }
+calendar-invitation-panel-prop-title-recurrence = Repetisjonar:
+calendar-invitation-panel-prop-title-attendees = Deltakarar:
+calendar-invitation-panel-prop-title-description = Skildring:
+# Variables:
+# $count (Number) - The number of attendees with the "ACCEPTED" participation status.
+calendar-invitation-panel-partstat-accepted = { $count } ja
+# Variables:
+# $count (Number) - The number of attendees with the "DECLINED" participation status.
+calendar-invitation-panel-partstat-declined = { $count } nei
+# Variables:
+# $count (Number) - The number of attendees with the "TENTATIVE" participation status.
+calendar-invitation-panel-partstat-tentative = { $count } kanskje
+# Variables:
+# $count (Number) - The number of attendees with the "NEEDS-ACTION" participation status.
+calendar-invitation-panel-partstat-needs-action = { $count } ventande
+# Variables:
+# $count (Number) - The total number of attendees.
+calendar-invitation-panel-partstat-total = { $count } deltakarar
+calendar-invitation-panel-prop-title-attachments = Vedlegg:
diff --git a/l10n-nn-NO/calendar/calendar/calendar-invitations-dialog.ftl b/l10n-nn-NO/calendar/calendar/calendar-invitations-dialog.ftl
new file mode 100644
index 0000000000..05f618d611
--- /dev/null
+++ b/l10n-nn-NO/calendar/calendar/calendar-invitations-dialog.ftl
@@ -0,0 +1,10 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+calendar-invitation-current-participation-status-icon-accepted =
+ .alt = For tida godkjend
+calendar-invitation-current-participation-status-icon-declined =
+ .alt = For tida avvist
+calendar-invitation-current-participation-status-icon-needs-action =
+ .alt = For tida ubestemt
diff --git a/l10n-nn-NO/calendar/calendar/calendar-itip-identity-dialog.ftl b/l10n-nn-NO/calendar/calendar/calendar-itip-identity-dialog.ftl
new file mode 100644
index 0000000000..b55a240ebe
--- /dev/null
+++ b/l10n-nn-NO/calendar/calendar/calendar-itip-identity-dialog.ftl
@@ -0,0 +1,8 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+calendar-itip-identity-dialog-title = Ikkje innbydd?
+calendar-itip-identity-warning = Du er ikkje med på gjestelista enno.
+calendar-itip-identity-label = Svar som:
+calendar-itip-identity-label-none = Knyt denne hendinga til:
diff --git a/l10n-nn-NO/calendar/calendar/calendar-print.ftl b/l10n-nn-NO/calendar/calendar/calendar-print.ftl
new file mode 100644
index 0000000000..a884e15c73
--- /dev/null
+++ b/l10n-nn-NO/calendar/calendar/calendar-print.ftl
@@ -0,0 +1,17 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+calendar-print-layout-label = Utforming
+calendar-print-layout-list = Liste
+calendar-print-layout-month-grid = Månadsoversikt
+calendar-print-layout-week-planner = Vekeplanleggjar
+calendar-print-filter-label = Utskriftsområde
+calendar-print-filter-events = Hendingar
+calendar-print-filter-tasks = Oppgåver
+calendar-print-filter-completedtasks = Fullførte oppgåver
+calendar-print-filter-taskswithnoduedate = Oppgåver utan forfallsdato
+calendar-print-range-from = Frå
+calendar-print-range-to = Til
+calendar-print-back-button = Tilbake
+calendar-print-next-button = Neste
diff --git a/l10n-nn-NO/calendar/calendar/calendar-summary-dialog.ftl b/l10n-nn-NO/calendar/calendar/calendar-summary-dialog.ftl
new file mode 100644
index 0000000000..2cad801715
--- /dev/null
+++ b/l10n-nn-NO/calendar/calendar/calendar-summary-dialog.ftl
@@ -0,0 +1,15 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+calendar-summary-dialog-edit-button =
+ .label = Rediger
+ .accesskey = R
+calendar-summary-dialog-edit-menu-button =
+ .label = Rediger
+edit-button-context-menu-this-occurrence =
+ .label = Rediger berre denne førekomsten
+ .accesskey = e
+edit-button-context-menu-all-occurrences =
+ .label = Rediger alle førekomstar
+ .accesskey = a
diff --git a/l10n-nn-NO/calendar/calendar/calendar-uri-redirect-dialog.ftl b/l10n-nn-NO/calendar/calendar/calendar-uri-redirect-dialog.ftl
new file mode 100644
index 0000000000..32056f5939
--- /dev/null
+++ b/l10n-nn-NO/calendar/calendar/calendar-uri-redirect-dialog.ftl
@@ -0,0 +1,11 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+calendar-uri-redirect-window =
+ .title = Omdirigering av URI for kalender
+calendar-uri-redirect-description =
+ Serveren omdirigerer URI for kalenderen «{ $calendarName }».
+ Godta omdirigering og begynne å bruke den nye URI-en for denne kalenderen?
+calendar-uri-redirect-original-uri-label = Gjeldande URI:
+calendar-uri-redirect-target-uri-label = Omdirigerer til ny URI:
diff --git a/l10n-nn-NO/calendar/calendar/calendar-widgets.ftl b/l10n-nn-NO/calendar/calendar/calendar-widgets.ftl
new file mode 100644
index 0000000000..a137468ff0
--- /dev/null
+++ b/l10n-nn-NO/calendar/calendar/calendar-widgets.ftl
@@ -0,0 +1,9 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+calendar-deactivated-notification-events = Alle kalendrar er for tida deaktiverte. Aktiver ein eksisterande kalender, eller legg til ein ny for å opprette og redigere hendingar.
+calendar-deactivated-notification-tasks = Alle kalendrar er akkurat no deaktiverte. Aktiver ein eksisterande kalender, eller legg til ein ny for å opprette og redigere oppgåver.
+calendar-notifications-label = Vis varsel for komande hendingar
+calendar-add-notification-button =
+ .label = Legg til varsel
diff --git a/l10n-nn-NO/calendar/calendar/category-dialog.ftl b/l10n-nn-NO/calendar/calendar/category-dialog.ftl
new file mode 100644
index 0000000000..7bcdd2f018
--- /dev/null
+++ b/l10n-nn-NO/calendar/calendar/category-dialog.ftl
@@ -0,0 +1,7 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+category-name-label = Namn
+category-color-label =
+ .label = Bruk farge
diff --git a/l10n-nn-NO/calendar/calendar/preferences.ftl b/l10n-nn-NO/calendar/calendar/preferences.ftl
new file mode 100644
index 0000000000..e25e4fd133
--- /dev/null
+++ b/l10n-nn-NO/calendar/calendar/preferences.ftl
@@ -0,0 +1,192 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+calendar-title = Kalender
+calendar-title-reminder = Påminningar
+calendar-title-notification = Varsel
+calendar-title-category = Kategoriar
+dateformat-label =
+ .value = Datoformat:
+ .accesskey = D
+# $date (String) - the formatted example date
+dateformat-long =
+ .label = Lang: { $date }
+# $date (String) - the formatted example date
+dateformat-short =
+ .label = Kort: { $date }
+use-system-timezone-radio-button =
+ .label = Bruk tidssone til systemet
+set-timezone-manually-radio-button =
+ .label = Still inn tidssone automatisk
+timezone-label =
+ .value = Tidssone:
+weekstart-label =
+ .value = Veka startar på ein:
+ .accesskey = r
+day-1-name =
+ .label = Sundag
+day-2-name =
+ .label = Måndag
+day-3-name =
+ .label = Tysdag
+day-4-name =
+ .label = Onsdag
+day-5-name =
+ .label = Torsdag
+day-6-name =
+ .label = Fredag
+day-7-name =
+ .label = Laurdag
+show-weeknumber-label =
+ .label = Vis vekenummer i visingar og minimånad
+ .accesskey = n
+workdays-label =
+ .value = Arbeidsvekedagar:
+day-1-checkbox =
+ .label = Sun
+ .accesskey = S
+day-2-checkbox =
+ .label = Mån
+ .accesskey = M
+day-3-checkbox =
+ .label = Tys
+ .accesskey = T
+day-4-checkbox =
+ .label = Ons
+ .accesskey = O
+day-5-checkbox =
+ .label = Tor
+ .accesskey = r
+day-6-checkbox =
+ .label = Fre
+ .accesskey = F
+day-7-checkbox =
+ .label = Lau
+ .accesskey = L
+dayweek-legend = Dag- og vekevising
+visible-hours-label =
+ .value = Vis:
+ .accesskey = V
+visible-hours-end-label =
+ .value = timar om gongen
+day-start-label =
+ .value = Dagen startar klokka:
+ .accesskey = D
+day-end-label =
+ .value = Dagen sluttar klokka:
+ .accesskey = s
+midnight-label =
+ .label = 00:00
+noon-label =
+ .label = 12:00
+location-checkbox =
+ .label = Vis plassering
+ .accesskey = L
+multiweek-legend = Fleirveke-vising
+number-of-weeks-label =
+ .value = Standard tal på veker (inkludert tidlegare veker):
+ .accesskey = e
+week-0-label =
+ .label = ingen
+week-1-label =
+ .label = 1 veke
+week-2-label =
+ .label = 2 veker
+week-3-label =
+ .label = 3 veker
+week-4-label =
+ .label = 4 veker
+week-5-label =
+ .label = 5 veker
+week-6-label =
+ .label = 6 veker
+previous-weeks-label =
+ .value = Tidlegare veker som skal visast:
+ .accesskey = T
+todaypane-legend = I dag-ruta
+agenda-days =
+ .value = Agendaen viser:
+ .accesskey = g
+event-task-legend = Hendingar og oppgåver
+default-length-label =
+ .value = Standardlengde for hendingar og oppgåver:
+ .accesskey = h
+task-start-label =
+ .value = Startdato:
+task-start-1-label =
+ .label = Ingen
+task-start-2-label =
+ .label = Starten på dagen
+task-start-3-label =
+ .label = Slutten på dagen
+task-start-4-label =
+ .label = I morgon
+task-start-5-label =
+ .label = Neste veke
+task-start-6-label =
+ .label = I høve til gjeldande tid
+task-start-7-label =
+ .label = I høve til til start
+task-start-8-label =
+ .label = I høve til neste time
+task-due-label =
+ .value = Innan:
+edit-intab-label =
+ .label = Rediger hendingar og oppgåver i ei fane i staden for i eit dialovindauge.
+ .accesskey = f
+prompt-delete-label =
+ .label = Spør før du slettar hendingar og oppgåver.
+ .accesskey = p
+accessibility-legend = Tilgjenge
+accessibility-colors-label =
+ .label = Optimaliser fargar for tilgjenge
+ .accesskey = O
+reminder-legend = Ved forfall:
+reminder-play-checkbox =
+ .label = Spel av ein lyd
+ .accesskey = S
+reminder-play-alarm-button =
+ .label = Spel av
+ .accesskey = p
+reminder-default-sound-label =
+ .label = Bruk standardlyd
+ .accesskey = r
+reminder-custom-sound-label =
+ .label = Bruk følgjande lydfil
+ .accesskey = f
+reminder-browse-sound-label =
+ .label = Bla gjennom…
+ .accesskey = B
+reminder-dialog-label =
+ .label = Vis alarmboks
+ .accesskey = V
+missed-reminder-label =
+ .label = Vis tapte påminningar for skrivbare kalendrar
+ .accesskey = a
+reminder-default-legend = Standardalarmar
+default-snooze-label =
+ .value = Standard pauselengde:
+ .accesskey = S
+event-alarm-label =
+ .value = Standard alarminnstilling for hendingar:
+ .accesskey = e
+alarm-on-label =
+ .label = På
+alarm-off-label =
+ .label = Av
+task-alarm-label =
+ .value = Standard alarminnstilling for oppgåver:
+ .accesskey = a
+event-alarm-time-label =
+ .value = Standard varslingstid før ei hending:
+ .accesskey = v
+task-alarm-time-label =
+ .value = Standard varslingstid før ei oppgåve:
+ .accesskey = g
+calendar-notifications-customize-label = Varsel kan tilpassast for kvar kalender i innstillingane til kalenderen.
+category-new-label = Ny kategori
+category-edit-label = Rediger kategori
+category-overwrite-title = Åtvaring: Duplikatnamn
+category-overwrite = Det finst allereie ein kategori med dette namnet. Ønskjer du å overskrive han?
+category-blank-warning = Du må skrive inn namn på kategorien.
diff --git a/l10n-nn-NO/calendar/chrome/calendar/calendar-alarms.properties b/l10n-nn-NO/calendar/chrome/calendar/calendar-alarms.properties
new file mode 100644
index 0000000000..ba916596fe
--- /dev/null
+++ b/l10n-nn-NO/calendar/chrome/calendar/calendar-alarms.properties
@@ -0,0 +1,39 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE (reminderCustomTitle):
+# %1$S = unit, %2$S = reminderCustomOrigin
+# Example: "3 minutes" "before the task starts"
+reminderCustomTitle=%1$S %2$S
+reminderTitleAtStartEvent=Med det same hendinga startar
+reminderTitleAtStartTask=Med det same oppgåva startar
+reminderTitleAtEndEvent=Med det same hendinga sluttar
+reminderTitleAtEndTask=Med det same hendinga sluttar
+
+# LOCALIZATION NOTE (reminderSnoozeOkA11y)
+# This string is not seen in the UI, it is read by screen readers when the user
+# focuses the "OK" button in the "Snooze for..." popup of the alarm dialog.
+# %1$S = any of unit*
+reminderSnoozeOkA11y=Utsett påminninga i %1$S
+
+reminderCustomOriginBeginBeforeEvent=før hendinga startar
+reminderCustomOriginBeginAfterEvent=etter hendinga startar
+reminderCustomOriginEndBeforeEvent=før hendinga sluttar
+reminderCustomOriginEndAfterEvent=etter hendinga sluttar
+reminderCustomOriginBeginBeforeTask=før oppgåva startar
+reminderCustomOriginBeginAfterTask=etter oppgåva startar
+reminderCustomOriginEndBeforeTask=før oppgåva sluttar
+reminderCustomOriginEndAfterTask=etter oppgåva sluttar
+
+reminderErrorMaxCountReachedEvent=Den valde kalenderen har ei avgrensing på #1 påminning pr. hending.;Den valde kalenderen har ei avgrensing på #1 påminningar pr. hending.
+reminderErrorMaxCountReachedTask=Den valde kalenderen har ei avgrensing på #1 påminning pr. oppgåve.;Den valde kalenderen har ei avgrensing på #1 påminningar pr. oppgåve.
+
+# LOCALIZATION NOTE (reminderReadonlyNotification)
+# This notification will be presented in the alarm dialog if reminders for not
+# writable items/calendars are displayed.
+# %1$S - localized value of calendar.alarm.snoozeallfor.label (defined in calendar.dtd)
+reminderReadonlyNotification=Påminningar for skrivebeskytta kalendrar kan for tida ikkje slumrast, berre avvisast - knappen '%1$S' vil kun slumre påminningar for skrivbare kalendrar.
+# LOCALIZATION NOTE (reminderDisabledSnoozeButtonTooltip)
+# This tooltip is only displayed, if the button is disabled
+reminderDisabledSnoozeButtonTooltip=Slumring av ei påminning er ikkje støtta for skriveverna kalendrar
diff --git a/l10n-nn-NO/calendar/chrome/calendar/calendar-event-dialog-attendees.properties b/l10n-nn-NO/calendar/chrome/calendar/calendar-event-dialog-attendees.properties
new file mode 100644
index 0000000000..898fcc4720
--- /dev/null
+++ b/l10n-nn-NO/calendar/chrome/calendar/calendar-event-dialog-attendees.properties
@@ -0,0 +1,15 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+event.attendee.role.required = Obligatorisk deltaking
+event.attendee.role.optional = Valfri deltaking
+event.attendee.role.nonparticipant = Ikkje-deltakar
+event.attendee.role.chair = Møteleiar
+event.attendee.role.unknown = Ukjend deltakar (%1$S)
+
+event.attendee.usertype.individual = Individuell
+event.attendee.usertype.group = Gruppe
+event.attendee.usertype.resource = Ressurs
+event.attendee.usertype.room = Rom
+event.attendee.usertype.unknown = Ukjend type (%1$S)
diff --git a/l10n-nn-NO/calendar/chrome/calendar/calendar-event-dialog.dtd b/l10n-nn-NO/calendar/chrome/calendar/calendar-event-dialog.dtd
new file mode 100644
index 0000000000..4080bdf327
--- /dev/null
+++ b/l10n-nn-NO/calendar/chrome/calendar/calendar-event-dialog.dtd
@@ -0,0 +1,419 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY event.title.label "Rediger hending" >
+
+<!ENTITY event.dialog.keepDurationButton.tooltip "Behald tidslengd ved endring av sluttdato">
+<!ENTITY event.dialog.keepDurationButton.accesskey "B">
+
+<!ENTITY newevent.from.label "Frå" >
+<!ENTITY newevent.to.label "Til" >
+
+<!ENTITY newevent.status.label "Status" >
+<!ENTITY newevent.status.accesskey "S" >
+<!ENTITY newevent.eventStatus.none.label "Ikkje spesifisert" >
+<!ENTITY newevent.eventStatus.none.accesskey "k" >
+<!ENTITY newevent.todoStatus.none.label "Ikkje spesifisert" >
+<!ENTITY newevent.eventStatus.cancelled.label "Avlyst" >
+<!ENTITY newevent.eventStatus.cancelled.accesskey "A" >
+<!ENTITY newevent.todoStatus.cancelled.label "Avlyst" >
+<!ENTITY newevent.status.tentative.label "Med atterhald" >
+<!ENTITY newevent.status.tentative.accesskey "M" >
+<!ENTITY newevent.status.confirmed.label "Stadfesta" >
+<!ENTITY newevent.status.confirmed.accesskey "S" >
+<!ENTITY newevent.status.needsaction.label "Treng handling" >
+<!ENTITY newevent.status.inprogress.label "Under arbeid" >
+<!ENTITY newevent.status.completed.label "Fullført" >
+
+<!-- The following entity is for New Task dialog only -->
+<!ENTITY newtodo.percentcomplete.label "&#037; fullført">
+
+<!-- LOCALIZATON NOTE(event.attendees.notify.label,event.attendees.notifyundisclosed.label,
+ event.attendees.disallowcounter.label)
+ - These three labels are displayed side by side in the event dialog, make sure
+ - they still fit in. -->
+<!ENTITY event.attendees.notify.label "Varsle deltakarar">
+<!ENTITY event.attendees.notify.accesskey "V">
+<!ENTITY event.attendees.notifyundisclosed.label "Eigen invitasjon for kvar deltakar">
+<!ENTITY event.attendees.notifyundisclosed.accesskey "E">
+<!ENTITY event.attendees.notifyundisclosed.tooltip "Denne innstillinga sender ein e-postinvitasjon pr. deltakar. Kvar invitasjon inneheld berre informasjon om om den enkelte deltakaren, slik at andre deltakaridentitetar ikkje vert viste.">
+<!ENTITY event.attendees.disallowcounter.label "Forby teljar">
+<!ENTITY event.attendees.disallowcounter.accesskey "b">
+<!ENTITY event.attendees.disallowcounter.tooltip "Indikerer at du ikkje vil godkjenne motforslag">
+
+<!-- Keyboard Shortcuts -->
+<!ENTITY event.dialog.new.message.key2 "N">
+<!ENTITY event.dialog.close.key "W">
+<!ENTITY event.dialog.save.key "S">
+<!ENTITY event.dialog.saveandclose.key "L">
+<!ENTITY event.dialog.undo.key "Z">
+<!ENTITY event.dialog.redo.key "Y">
+<!ENTITY event.dialog.cut.key "X">
+<!ENTITY event.dialog.copy.key "C">
+<!ENTITY event.dialog.paste.key "V">
+<!ENTITY event.dialog.select.all.key "A">
+
+<!-- Menubar -->
+<!ENTITY event.menu.item.new.label "Ny">
+<!ENTITY event.menu.item.new.accesskey "N">
+<!ENTITY event.menu.item.new.event.label "Hending">
+<!ENTITY event.menu.item.new.event.accesskey "H">
+<!ENTITY event.menu.item.new.task.label "Oppgåve">
+<!ENTITY event.menu.item.new.task.accesskey "O">
+<!ENTITY event.menu.item.new.message.label "Melding">
+<!ENTITY event.menu.item.new.message.accesskey "M">
+<!ENTITY event.menu.item.new.contact.label "Adressekontakt">
+<!ENTITY event.menu.item.new.contact.accesskey "A">
+<!ENTITY event.menu.item.close.label "Lat att">
+<!ENTITY event.menu.item.close.accesskey "L">
+
+<!-- LOCALIZATION NOTE
+ - event.menu.item.save.accesskey is used for the "Save" menu item
+ - when editing events/tasks in a dialog window.
+ - event.menu.item.save.tab.accesskey is used for the "Save" menu item
+ - when editing events/tasks in a tab. -->
+<!ENTITY event.menu.item.save.label "Lagra">
+<!ENTITY event.menu.item.save.accesskey "a">
+<!ENTITY event.menu.item.save.tab.accesskey "a">
+
+<!-- LOCALIZATION NOTE
+ - event.menu.item.saveandclose.accesskey is used for "Save and Close"
+ - menu item when editing events/tasks in a dialog window.
+ - event.menu.item.saveandclose.tab.accesskey is used for "Save and Close"
+ - when editing events/tasks in a tab. -->
+<!ENTITY event.menu.item.saveandclose.label "Lagra og lat att">
+<!ENTITY event.menu.item.saveandclose.accesskey "r">
+<!ENTITY event.menu.item.saveandclose.tab.accesskey "z">
+
+<!ENTITY event.menu.item.delete.label "Slett…">
+<!ENTITY event.menu.item.delete.accesskey "S">
+
+<!ENTITY event.menu.edit.label "Rediger">
+<!ENTITY event.menu.edit.accesskey "R">
+<!ENTITY event.menu.edit.undo.label "Angre">
+<!ENTITY event.menu.edit.undo.accesskey "A">
+<!ENTITY event.menu.edit.redo.label "Gjenta">
+<!ENTITY event.menu.edit.redo.accesskey "G">
+<!ENTITY event.menu.edit.cut.label "Klipp ut">
+<!ENTITY event.menu.edit.cut.accesskey "u">
+<!ENTITY event.menu.edit.copy.label "Kopier">
+<!ENTITY event.menu.edit.copy.accesskey "K">
+<!ENTITY event.menu.edit.paste.label "Lim inn">
+<!ENTITY event.menu.edit.paste.accesskey "L">
+<!ENTITY event.menu.edit.select.all.label "Merk alt">
+<!ENTITY event.menu.edit.select.all.accesskey "M">
+
+<!ENTITY event.menu.view.label "Vis">
+<!ENTITY event.menu.view.accesskey "V">
+<!ENTITY event.menu.view.toolbars.label "Verktøylinjer">
+<!ENTITY event.menu.view.toolbars.accesskey "V">
+<!ENTITY event.menu.view.toolbars.event.label "Hendingsverktøylinje">
+<!ENTITY event.menu.view.toolbars.event.accesskey "H">
+<!ENTITY event.menu.view.toolbars.customize.label "Tilpass…">
+<!ENTITY event.menu.view.toolbars.customize.accesskey "T">
+
+<!ENTITY event.menu.options.label "Innstillingar">
+<!ENTITY event.menu.options.accesskey "I">
+<!ENTITY event.menu.options.attendees.label "Inviter deltakarar…">
+<!ENTITY event.menu.options.attendees.accesskey "I">
+<!ENTITY event.menu.options.timezone2.label "Vis tidssoner">
+<!ENTITY event.menu.options.timezone2.accesskey "s">
+<!ENTITY event.menu.options.priority2.label "Prioritet">
+<!ENTITY event.menu.options.priority2.accesskey "P">
+<!ENTITY event.menu.options.priority.notspecified.label "Ikkje spesifisert">
+<!ENTITY event.menu.options.priority.notspecified.accesskey "I">
+<!ENTITY event.menu.options.priority.low.label "Låg">
+<!ENTITY event.menu.options.priority.low.accesskey "L">
+<!ENTITY event.menu.options.priority.normal.label "Normal">
+<!ENTITY event.menu.options.priority.normal.accesskey "N">
+<!ENTITY event.menu.options.priority.high.label "Høg">
+<!ENTITY event.menu.options.priority.high.accesskey "H">
+<!ENTITY event.menu.options.privacy.label "Personvern">
+<!ENTITY event.menu.options.privacy.accesskey "e">
+<!ENTITY event.menu.options.privacy.public.label "Offentleg hending">
+<!ENTITY event.menu.options.privacy.public.accesskey "O">
+<!ENTITY event.menu.options.privacy.confidential.label "Vis berre tid og dato">
+<!ENTITY event.menu.options.privacy.confidential.accesskey "V">
+<!ENTITY event.menu.options.privacy.private.label "Privat hending">
+<!ENTITY event.menu.options.privacy.private.accesskey "P">
+<!ENTITY event.menu.options.show.time.label "Vis tid som">
+<!ENTITY event.menu.options.show.time.accesskey "V">
+<!ENTITY event.menu.options.show.time.busy.label "Oppteken">
+<!ENTITY event.menu.options.show.time.busy.accesskey "O">
+<!ENTITY event.menu.options.show.time.free.label "Ledig">
+<!ENTITY event.menu.options.show.time.free.accesskey "L">
+
+<!ENTITY event.invite.attendees.label "Inviter deltakarar…">
+<!ENTITY event.invite.attendees.accesskey "I">
+<!ENTITY event.email.attendees.label "Skriv e-post til alle deltakarar…">
+<!ENTITY event.email.attendees.accesskey "a">
+<!ENTITY event.email.tentative.attendees.label "Skriv e-post til uvisse deltakarar…">
+<!ENTITY event.email.tentative.attendees.accesskey "u">
+<!ENTITY event.remove.attendees.label2 "Fjern alle deltakarar">
+<!ENTITY event.remove.attendees.accesskey "F">
+<!ENTITY event.remove.attendee.label "Fjern deltakarar">
+<!ENTITY event.remove.attendee.accesskey "e">
+
+<!-- Toolbar -->
+<!ENTITY event.toolbar.save.label2 "Lagra">
+<!ENTITY event.toolbar.saveandclose.label "Lagra og lat att">
+<!ENTITY event.toolbar.delete.label "Slett">
+<!ENTITY event.toolbar.attendees.label "Inviter deltakarar">
+<!ENTITY event.toolbar.privacy.label "Personvern">
+
+<!ENTITY event.toolbar.save.tooltip2 "Lagra">
+<!ENTITY event.toolbar.saveandclose.tooltip "Lagra og lat att">
+<!ENTITY event.toolbar.delete.tooltip "Slett">
+<!ENTITY event.toolbar.attendees.tooltip "Inviter deltakarar">
+<!ENTITY event.toolbar.attachments.tooltip "Nytt vedlegg">
+<!ENTITY event.toolbar.privacy.tooltip "Endre personvern">
+<!ENTITY event.toolbar.priority.tooltip "Endre prioritet">
+<!ENTITY event.toolbar.status.tooltip "Endre status">
+<!ENTITY event.toolbar.freebusy.tooltip "Endre ledig/opptatt-tid">
+
+<!-- Counter box -->
+<!-- LOCALIZATON NOTE(counter.button.*)
+ - This is only visible in the UI if you have received a counterproposal before and are going to
+ - reschedule the event from the imipbar in the email view. Clicking on the buttons will only
+ - populate the form fields in the dialog, there's no other immediate action on clicking like with
+ - the imip bar. Rescheduling will happen after clicking on save&close as usual. This screenshot
+ - illustrates how it might look like: https://bugzilla.mozilla.org/attachment.cgi?id=8810121 -->
+<!ENTITY counter.button.proposal.label "Bruk forslag">
+<!ENTITY counter.button.proposal.accesskey "B">
+<!ENTITY counter.button.proposal.tooltip2 "Hendingsfelta vert utfylte med verdiane frå motforslaga. Berre lagring, med eller utan ytterlegare endringar, vil varsle alle deltakarane">
+<!ENTITY counter.button.original.label "Bruk originaldata">
+<!ENTITY counter.button.original.accesskey "r">
+<!ENTITY counter.button.original.tooltip2 "Felta vert sette til verdiane frå den opphavlege hendinga, før motforslaget kom">
+
+<!-- Main page -->
+<!ENTITY event.title.textbox.label "Tittel:" >
+<!ENTITY event.title.textbox.accesskey "T">
+<!ENTITY event.location.label "Stad:" >
+<!ENTITY event.location.accesskey "S">
+<!ENTITY event.categories.label "Kategori:">
+<!ENTITY event.categories.accesskey "K">
+<!ENTITY event.categories.textbox.label "Legg til ny kategori" >
+<!ENTITY event.calendar.label "Kalender:" >
+<!ENTITY event.calendar.accesskey "e">
+<!ENTITY event.attendees.label "Deltakarar:" >
+<!ENTITY event.attendees.accesskey "D">
+<!ENTITY event.alldayevent.label "Heildagshending" >
+<!ENTITY event.alldayevent.accesskey "d">
+<!ENTITY event.from.label "Start:" >
+<!ENTITY event.from.accesskey "a">
+<!ENTITY task.from.label "Start:" >
+<!ENTITY task.from.accesskey "a">
+<!ENTITY event.to.label "Slutt:" >
+<!ENTITY event.to.accesskey "l">
+<!ENTITY task.to.label "Forfallsdato:" >
+<!ENTITY task.to.accesskey "F">
+<!ENTITY task.status.label "Status:" >
+<!ENTITY task.status.accesskey "a">
+<!ENTITY event.repeat.label "Repeter:" >
+<!ENTITY event.repeat.accesskey "R">
+<!ENTITY event.until.label "Til:">
+<!ENTITY event.until.accesskey "T">
+<!ENTITY event.reminder.label "Påminning:" >
+<!ENTITY event.reminder.accesskey "m">
+<!ENTITY event.description.label "Skildring:" >
+<!ENTITY event.description.accesskey "S">
+<!ENTITY event.attachments.label "Vedlegg:" >
+<!ENTITY event.attachments.accesskey "V" >
+<!ENTITY event.attachments.menubutton.label "Legg ved">
+<!ENTITY event.attachments.menubutton.accesskey "L">
+<!ENTITY event.attachments.url.label "Nettside…">
+<!ENTITY event.attachments.url.accesskey "N">
+<!ENTITY event.attachments.popup.remove.label "Fjern" >
+<!ENTITY event.attachments.popup.remove.accesskey "F" >
+<!ENTITY event.attachments.popup.open.label "Opna" >
+<!ENTITY event.attachments.popup.open.accesskey "O" >
+<!ENTITY event.attachments.popup.removeAll.label "Fjern alle" >
+<!ENTITY event.attachments.popup.removeAll.accesskey "a" >
+<!ENTITY event.attachments.popup.attachPage.label "Legg ved nettside…" >
+<!ENTITY event.attachments.popup.attachPage.accesskey "v" >
+<!ENTITY event.url.label "Relatert lenke:" >
+<!ENTITY event.priority2.label "Prioritet:">
+
+<!ENTITY event.reminder.none.label "Inga påminning" >
+<!ENTITY event.reminder.0minutes.before.label "0 minutt før" >
+<!ENTITY event.reminder.5minutes.before.label "5 minutt før" >
+<!ENTITY event.reminder.15minutes.before.label "15 minutt før" >
+<!ENTITY event.reminder.30minutes.before.label "30 minutt før" >
+<!ENTITY event.reminder.1hour.before.label "1 time før" >
+<!ENTITY event.reminder.2hours.before.label "2 timar før" >
+<!ENTITY event.reminder.12hours.before.label "12 timar før" >
+<!ENTITY event.reminder.1day.before.label "1 dag før" >
+<!ENTITY event.reminder.2days.before.label "2 dagar før" >
+<!ENTITY event.reminder.1week.before.label "1 veke før" >
+<!ENTITY event.reminder.custom.label "Tilpassa…" >
+
+<!ENTITY event.reminder.multiple.label "Fleire påminningar…" >
+
+<!ENTITY event.statusbarpanel.freebusy.label "Tid som:">
+<!ENTITY event.statusbarpanel.privacy.label "Personvern:">
+
+<!-- Recurrence dialog -->
+<!ENTITY recurrence.title.label "Rediger oppattaking">
+
+<!ENTITY event.repeat.does.not.repeat.label "Vert ikkje repetert">
+<!ENTITY event.repeat.daily.label "Kvar dag">
+<!ENTITY event.repeat.weekly.label "Kvar veke">
+<!ENTITY event.repeat.every.weekday.label "Kvar vekedag">
+<!ENTITY event.repeat.bi.weekly.label "Annakvar veke">
+<!ENTITY event.repeat.monthly.label "Kvar månad">
+<!ENTITY event.repeat.yearly.label "Kvart år">
+<!ENTITY event.repeat.custom.label "Tilpassa…">
+
+<!ENTITY event.recurrence.pattern.label "Repeteringsmønster">
+<!ENTITY event.recurrence.occurs.label "Repeter" >
+<!ENTITY event.recurrence.day.label "dagleg" >
+<!ENTITY event.recurrence.week.label "kvar veke" >
+<!ENTITY event.recurrence.month.label "kvar månad" >
+<!ENTITY event.recurrence.year.label "kvart år" >
+
+<!ENTITY event.recurrence.pattern.every.label "Kvar" >
+<!ENTITY repeat.units.days.both "dag(ar)" >
+<!ENTITY event.recurrence.pattern.every.weekday.label "Kvar vekedag" >
+
+<!ENTITY event.recurrence.pattern.weekly.every.label "Kvar" >
+<!ENTITY repeat.units.weeks.both "veke(r)" >
+<!ENTITY event.recurrence.on.label "På:" >
+
+<!ENTITY event.recurrence.pattern.monthly.every.label "Kvar" >
+<!ENTITY repeat.units.months.both "månad(er)" >
+<!ENTITY event.recurrence.monthly.every.label "Kvar" >
+<!ENTITY event.recurrence.monthly.first.label "Den fyrste">
+<!ENTITY event.recurrence.monthly.second.label "Den andre">
+<!ENTITY event.recurrence.monthly.third.label "Den tredje">
+<!ENTITY event.recurrence.monthly.fourth.label "Den fjerde">
+<!ENTITY event.recurrence.monthly.fifth.label "Den femte">
+<!ENTITY event.recurrence.monthly.last.label "Den siste">
+<!ENTITY event.recurrence.pattern.monthly.week.1.label "sundag" >
+<!ENTITY event.recurrence.pattern.monthly.week.2.label "måndag" >
+<!ENTITY event.recurrence.pattern.monthly.week.3.label "tysdag" >
+<!ENTITY event.recurrence.pattern.monthly.week.4.label "onsdag" >
+<!ENTITY event.recurrence.pattern.monthly.week.5.label "torsdag" >
+<!ENTITY event.recurrence.pattern.monthly.week.6.label "fredag" >
+<!ENTITY event.recurrence.pattern.monthly.week.7.label "laurdag" >
+<!ENTITY event.recurrence.repeat.dayofmonth.label "Dag i månaden">
+<!ENTITY event.recurrence.repeat.recur.label "Repeter på dag(ar)">
+
+<!ENTITY event.recurrence.every.label "Kvar:" >
+<!ENTITY repeat.units.years.both "År" >
+<!ENTITY event.recurrence.pattern.yearly.every.month.label "Kvar" >
+
+<!-- LOCALIZATON NOTE
+ Some languages use a preposition when describing dates:
+ Portuguese: 6 de Setembro
+ English: 6 [of] September
+ event.recurrence.pattern.yearly.of.label is "of" in
+ Edit recurrence window -> Recurrence pattern -> Repeat yearly
+-->
+<!ENTITY event.recurrence.pattern.yearly.of.label "" >
+
+<!ENTITY event.recurrence.pattern.yearly.month.1.label "Januar" >
+<!ENTITY event.recurrence.pattern.yearly.month.2.label "Februar" >
+<!ENTITY event.recurrence.pattern.yearly.month.3.label "Mars" >
+<!ENTITY event.recurrence.pattern.yearly.month.4.label "April" >
+<!ENTITY event.recurrence.pattern.yearly.month.5.label "Mai" >
+<!ENTITY event.recurrence.pattern.yearly.month.6.label "Juni" >
+<!ENTITY event.recurrence.pattern.yearly.month.7.label "Juli" >
+<!ENTITY event.recurrence.pattern.yearly.month.8.label "August" >
+<!ENTITY event.recurrence.pattern.yearly.month.9.label "September" >
+<!ENTITY event.recurrence.pattern.yearly.month.10.label "Oktober" >
+<!ENTITY event.recurrence.pattern.yearly.month.11.label "November" >
+<!ENTITY event.recurrence.pattern.yearly.month.12.label "Desember" >
+<!ENTITY event.recurrence.yearly.every.label "Kvar">
+<!ENTITY event.recurrence.yearly.first.label "Den fyrste">
+<!ENTITY event.recurrence.yearly.second.label "Den andre">
+<!ENTITY event.recurrence.yearly.third.label "Den tredje">
+<!ENTITY event.recurrence.yearly.fourth.label "Den fjerde">
+<!ENTITY event.recurrence.yearly.fifth.label "Den femte">
+<!ENTITY event.recurrence.yearly.last.label "Den siste">
+<!ENTITY event.recurrence.pattern.yearly.week.1.label "sundag" >
+<!ENTITY event.recurrence.pattern.yearly.week.2.label "måndag" >
+<!ENTITY event.recurrence.pattern.yearly.week.3.label "tysdag" >
+<!ENTITY event.recurrence.pattern.yearly.week.4.label "onsdag" >
+<!ENTITY event.recurrence.pattern.yearly.week.5.label "torsdag" >
+<!ENTITY event.recurrence.pattern.yearly.week.6.label "fredag" >
+<!ENTITY event.recurrence.pattern.yearly.week.7.label "laurdag" >
+<!ENTITY event.recurrence.pattern.yearly.day.label "day" >
+<!ENTITY event.recurrence.of.label "av" >
+<!ENTITY event.recurrence.pattern.yearly.month2.1.label "januar" >
+<!ENTITY event.recurrence.pattern.yearly.month2.2.label "februar" >
+<!ENTITY event.recurrence.pattern.yearly.month2.3.label "mars" >
+<!ENTITY event.recurrence.pattern.yearly.month2.4.label "april" >
+<!ENTITY event.recurrence.pattern.yearly.month2.5.label "mai" >
+<!ENTITY event.recurrence.pattern.yearly.month2.6.label "juni" >
+<!ENTITY event.recurrence.pattern.yearly.month2.7.label "juli" >
+<!ENTITY event.recurrence.pattern.yearly.month2.8.label "august" >
+<!ENTITY event.recurrence.pattern.yearly.month2.9.label "september" >
+<!ENTITY event.recurrence.pattern.yearly.month2.10.label "oktober" >
+<!ENTITY event.recurrence.pattern.yearly.month2.11.label "november" >
+<!ENTITY event.recurrence.pattern.yearly.month2.12.label "desember" >
+
+<!ENTITY event.recurrence.range.label "Varigheit på repetisjonen">
+<!ENTITY event.recurrence.forever.label "Ingen sluttdato" >
+<!ENTITY event.recurrence.repeat.for.label "Lag" >
+<!ENTITY event.recurrence.appointments.label "avtalar" >
+<!ENTITY event.repeat.until.label "Repeter fram til" >
+<!ENTITY event.recurrence.preview.label "Førehandsvising">
+
+<!-- Attendees dialog -->
+<!ENTITY invite.title.label "Inviter deltakarar">
+<!ENTITY event.organizer.label "Organisert av">
+<!ENTITY event.freebusy.suggest.slot "Føreslå tidsluke:">
+<!ENTITY event.freebusy.button.next.slot "Neste tidsluke">
+<!ENTITY event.freebusy.button.previous.slot "Førre tidsluke">
+<!ENTITY event.freebusy.zoom "Zoom:">
+<!ENTITY event.freebusy.legend.free "Ledig" >
+<!ENTITY event.freebusy.legend.busy "Oppteken" >
+<!ENTITY event.freebusy.legend.busy_tentative "Med atterhald" >
+<!ENTITY event.freebusy.legend.busy_unavailable "Ikkje på kontoret" >
+<!ENTITY event.freebusy.legend.unknown "Ingen informasjon" >
+<!ENTITY event.attendee.role.required "Deltaking obligatorisk">
+<!ENTITY event.attendee.role.optional "Deltaking valfritt">
+<!ENTITY event.attendee.role.chair "Møteleiar">
+<!ENTITY event.attendee.role.nonparticipant "Deltek ikkje">
+<!ENTITY event.attendee.usertype.individual "Individuell">
+<!ENTITY event.attendee.usertype.group "Gruppe">
+<!ENTITY event.attendee.usertype.resource "Ressurs">
+<!ENTITY event.attendee.usertype.room "Rom">
+<!ENTITY event.attendee.usertype.unknown "Ukjend">
+
+<!-- Timezone dialog -->
+<!ENTITY timezone.title.label "Spesifiser tidssone">
+<!ENTITY event.timezone.custom.label "Fleire tidssoner…">
+
+<!-- Read-Only dialog -->
+<!ENTITY read.only.general.label "Generelt">
+<!ENTITY read.only.title.label "Tittel:">
+<!ENTITY read.only.calendar.label "Kalender:">
+<!ENTITY read.only.event.start.label "Startdato:">
+<!ENTITY read.only.task.start.label "Startdato:">
+<!ENTITY read.only.event.end.label "Sluttdato:">
+<!ENTITY read.only.task.due.label "Innan:">
+<!ENTITY read.only.repeat.label "Repeter:">
+<!ENTITY read.only.location.label "Stad:">
+<!ENTITY read.only.category.label "Kategori:">
+<!ENTITY read.only.organizer.label "Organisert av:">
+<!ENTITY read.only.reminder.label "Påminning:">
+<!ENTITY read.only.attachments.label "Vedlegg:">
+<!ENTITY read.only.attendees.label "Deltakarar">
+<!ENTITY read.only.description.label "Skildring">
+<!ENTITY read.only.link.label "Relatert lenke">
+
+<!-- Summary dialog -->
+<!ENTITY summary.dialog.saveclose.label "Lagra og lat att">
+<!ENTITY summary.dialog.saveclose.tooltiptext "Lagra endringar og lat att vindauget utan å endra deltakingsstatus og utan å senda eit svar">
+<!ENTITY summary.dialog.accept.label "Aksepter">
+<!ENTITY summary.dialog.accept.tooltiptext "Aksepter invitasjonen">
+<!ENTITY summary.dialog.tentative.label "Med atterhald">
+<!ENTITY summary.dialog.tentative.tooltiptext "Godta invitasjonen med atterhald">
+<!ENTITY summary.dialog.decline.label "Avvis">
+<!ENTITY summary.dialog.decline.tooltiptext "Avvis invitasjonen">
+<!ENTITY summary.dialog.dontsend.label "Ikkje send eit svar">
+<!ENTITY summary.dialog.dontsend.tooltiptext "Endre deltakingsstatusen din utan å sende eit svar til arrangøren og lat att vindauget">
+<!ENTITY summary.dialog.send.label "Send eit svar no">
+<!ENTITY summary.dialog.send.tooltiptext "Send eit svar til arrangøren, og lat att vindauget">
diff --git a/l10n-nn-NO/calendar/chrome/calendar/calendar-event-dialog.properties b/l10n-nn-NO/calendar/chrome/calendar/calendar-event-dialog.properties
new file mode 100644
index 0000000000..7179542e46
--- /dev/null
+++ b/l10n-nn-NO/calendar/chrome/calendar/calendar-event-dialog.properties
@@ -0,0 +1,541 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE (dailyEveryNth):
+# Edit recurrence window -> Recurrence pattern -> Daily repeat rules
+# #1 - number
+# e.g. "every 4 days"
+dailyEveryNth=kvar dag;kvar #1. dag
+repeatDetailsRuleDaily4=kvar vekedag
+
+# LOCALIZATION NOTE (weeklyNthOnNounclass...)
+# Edit recurrence window -> Recurrence pattern -> Weekly repeat rules
+# Translate these strings according to noun class/gender of weekday (%1$S)
+# set in 'repeadDetailsDay...Nounclass' strings.
+# Nounclass1 <-> Masculine gender; Nounclass2 <-> Feminine gender.
+# Add others strings with suffix 3, 4,... for others noun classes if your
+# language need them. In this case, corresponding strings must be added for
+# others rule strings with 'Nounclass...' suffix and corresponding values
+# "nounclass..." must be written in 'repeatDetailsDayxNounclass' strings.
+# %1$S - weekday (one or more)
+# #2 - week interval
+# e.g. "every 3 weeks on Tuesday, Wednesday and Thursday
+weeklyNthOnNounclass1=kvar %1$S;kvar #2 veke på %1$S
+weeklyNthOnNounclass2=kvar %1$S;kvar #2 veke på %1$S
+
+# LOCALIZATION NOTE (weeklyEveryNth):
+# Edit recurrence window -> Recurrence pattern -> Weekly repeat rules
+# #1 - interval
+# e.g. "every 5 weeks"
+weeklyEveryNth=kvar veke;kvar #1. veke
+
+# LOCALIZATION NOTE ('repeatDetailsDay...' and 'repeatDetailsDay...Nounclass'):
+# Week days names and week days noun classes (feminine/masculine grammatical
+# gender) for languages that need different localization when weekdays nouns
+# have different noun classes (genders).
+# For every weekday, in 'repeatDetailsDay...Nounclass' strings write:
+# "nounclass1" for languages with grammatical genders -> MASCULINE gender;
+# for languages with noun classes -> a noun class;
+# for languages without noun classes or grammatical gender.
+#
+# "nounclass2" for languages with grammatical genders -> FEMININE gender;
+# for languages with noun classes -> a different noun class.
+#
+# "nounclass3", "nounclass4" and so on for languages that need more than two
+# noun classes for weekdays. In this case add corresponding
+# rule string with "Nounclass..." suffix and ordinal string
+# "repeatOrdinalxNounclass..."
+# Will be used rule strings with "Nounclass..." suffix corresponding to the
+# following strings if there is a weekday in the rule string.
+repeatDetailsDay1=Sundag
+repeatDetailsDay1Nounclass=nounclass1
+repeatDetailsDay2=Måndag
+repeatDetailsDay2Nounclass=nounclass1
+repeatDetailsDay3=Tysdag
+repeatDetailsDay3Nounclass=nounclass1
+repeatDetailsDay4=Onsdag
+repeatDetailsDay4Nounclass=nounclass1
+repeatDetailsDay5=Torsdag
+repeatDetailsDay5Nounclass=nounclass1
+repeatDetailsDay6=Fredag
+repeatDetailsDay6Nounclass=nounclass1
+repeatDetailsDay7=Laurdag
+repeatDetailsDay7Nounclass=nounclass1
+
+# LOCALIZATION NOTE (repeatDetailsAnd)
+# Used to show a number of weekdays in a list
+# i.e. "Sunday, Monday, Tuesday " + and + " Wednesday"
+repeatDetailsAnd=og
+
+# LOCALIZATION NOTE (monthlyRuleNthOfEveryNounclass...):
+# Edit recurrence window -> Recurrence pattern -> Monthly repeat rules
+# Translate these strings according to noun class/gender of weekday (%2$S)
+# set in 'repeadDetailsDay...Nounclass' strings.
+# Nounclass1 <-> Masculine gender; Nounclass2 <-> Feminine gender.
+# Add others strings with suffix 3, 4,... for others noun classes if your
+# language need them. In this case, corresponding strings must be added for
+# others rule strings with 'Nounclass...' suffix and corresponding values
+# "nounclass..." must be written in 'repeatDetailsDayxNounclass' strings.
+# %1$S - list of weekdays with ordinal, article and noun class/gender
+# (ordinal and weekday of every element in the list follow the order
+# and the rule of ordinalWeekdayOrder string)
+# #2 - interval
+# e.g. "the first Monday and the last Friday of every 3 months"
+monthlyRuleNthOfEveryNounclass1=%1$S i kvar månad;%1$S kvar #2 månad
+monthlyRuleNthOfEveryNounclass2=%1$S i kvar månad;%1$S kvar #2 månad
+
+# LOCALIZATION NOTE (ordinalWeekdayOrder):
+# Edit recurrence window -> Recurrence pattern -> Monthly repeat rules
+# This string allows to change the order of the elements "ordinal" and
+# "weekday" (or to insert a word between them) for the argument %1$S of the
+# string monthlyRuleNthOfEveryNounclass...
+# Without changing this string, the order is that one required from most
+# languages: ordinal + weekday (e.g. "'the first' 'Monday' of every 2 months").
+# %1$S - ordinal with article
+# %2$S - weekday noun
+# e.g. "'the first' 'Monday'"
+# DONT_TRANSLATE: Make sure there are no extra words in this property, just variables.
+ordinalWeekdayOrder=%1$S %2$S
+
+# LOCALIZATION NOTE (monthlyEveryOfEveryNounclass...):
+# Edit recurrence window -> Recurrence pattern -> Monthly repeat rules
+# Translate these strings according to noun class/gender of weekday (%1$S)
+# set in 'repeadDetailsDay...Nounclass' strings.
+# Nounclass1 <-> Masculine gender; Nounclass2 <-> Feminine gender.
+# Add others strings with suffix 3, 4,... for others noun classes if your
+# language need them. In this case, corresponding strings must be added for
+# others rule strings with 'Nounclass...' suffix and corresponding values
+# "nounclass..." must be written in 'repeatDetailsDayxNounclass' strings.
+# %1$S - list of single weekdays and/or weekdays with ordinal, article and
+# noun class/gender when rule contains also specific day in the month
+# #2 - interval
+# e.g. "every Monday, Tuesday and the second Sunday of every month"
+monthlyEveryOfEveryNounclass1=kvar %1$S i kvar månad;kvar %1$S kvar #2. månad
+monthlyEveryOfEveryNounclass2=kvar %1$S i kvar månad;kvar %1$S kvar #2. månad
+
+# LOCALIZATION NOTE (monthlyDaysOfNth_day):
+# Edit recurrence window -> Recurrence pattern -> Monthly repeat rules
+# %1$S - day of month or a sequence of days of month, possibly followed by an ordinal symbol
+# (depending on the string dayOrdinalSymbol in dateFormat.properties) separated with commas;
+# e.g. "days 3, 6 and 9" or "days 3rd, 6th and 9th"
+monthlyDaysOfNth_day=dag %1$S;dagar %1$S
+
+# LOCALIZATION NOTE (monthlyDaysOfNth):
+# Edit recurrence window -> Recurrence pattern -> Monthly repeat rules
+# %1$S - it's the string monthlyDaysOfNth_day: day of month or a sequence of days
+# of month, possibly followed by an ordinal symbol, separated with commas;
+# #2 - monthly interval
+# e.g. "days 3, 6, 9 and 12 of every 3 months"
+monthlyDaysOfNth=%1$S kvar månad;%1$S kvar #2 månadar
+
+# LOCALIZATION NOTE (monthlyLastDayOfNth):
+# Edit recurrence window -> Recurrence pattern -> Monthly repeat rules
+# %1$S - day of month
+# #2 - month interval
+# e.g. "the last day of every 3 months"
+monthlyLastDayOfNth=den siste dagen i månaden; den siste dagen kvar #1 månad
+
+# LOCALIZATION NOTE (monthlyEveryDayOfNth):
+# Edit recurrence window -> Recurrence pattern -> Monthly repeat rules
+# #2 - month interval
+# e.g. "every day of the month every 4 months"
+monthlyEveryDayOfNth=kvar dag i kvar månad;kvar dag i månaden kvar #2 månad
+
+# LOCALIZATION NOTE (repeatOrdinal...Nounclass...):
+# Ordinal numbers nouns for every noun class (grammatical genders) of weekdays
+# considered in 'repeatDetailsDayxNounclass' strings. For languages that need
+# localization according to genders or noun classes.
+# Nounclass1 <-> Masculine gender; Nounclass2 <-> Feminine gender.
+# Add 'repeatOrdinal...Nounclass' strings with suffix 3, 4 and so on for
+# languages with more than two noun classes for weekdays. In this case
+# must be added corresponding rule strings with 'Nounclass...' suffix and
+# corresponding values "nounclass..." must be written in
+# 'repeatDetailsDayxNounclass' strings.
+repeatOrdinal1Nounclass1=den fyrste
+repeatOrdinal2Nounclass1=den andre
+repeatOrdinal3Nounclass1=den tredje
+repeatOrdinal4Nounclass1=den fjerde
+repeatOrdinal5Nounclass1=den femte
+repeatOrdinal-1Nounclass1=den siste
+repeatOrdinal1Nounclass2=den fyrste
+repeatOrdinal2Nounclass2=den andre
+repeatOrdinal3Nounclass2=den tredje
+repeatOrdinal4Nounclass2=den fjerde
+repeatOrdinal5Nounclass2=den femte
+repeatOrdinal-1Nounclass2=den siste
+
+# LOCALIZATION NOTE (yearlyNthOn):
+# Edit recurrence window -> Recurrence pattern -> Yearly repeat rules
+# %1$S - month name
+# %2$S - day of month possibly followed by an ordinal symbol (depending on the string
+# dayOrdinalSymbol in dateFormat.properties)
+# #3 - yearly interval
+# e.g. "every 3 years on December 14"
+# "every 2 years on December 8th"
+yearlyNthOn=kvar %1$S %2$S;kvar #3. år på %1$S %2$S
+
+# LOCALIZATION NOTE (yearlyNthOnNthOfNounclass...):
+# Edit recurrence window -> Recurrence pattern -> Yearly repeat rules
+# Translate these strings according to noun class/gender of weekday (%2$S)
+# set in 'repeadDetailsDay...Nounclass' strings.
+# Nounclass1 <-> Masculine gender; Nounclass2 <-> Feminine gender.
+# Add others strings with suffix 3, 4,... for others noun classes if your
+# language need them. In this case, corresponding strings must be added for
+# others rule strings with 'Nounclass...' suffix and corresponding values
+# "nounclass..." must be written in 'repeatDetailsDayxNounclass' strings.
+# %1$S - ordinal with article and noun class/gender corresponding to weekday
+# %2$S - weekday
+# %3$S - month
+# #4 - yearly interval
+# e.g. "the second Monday of every March"
+# e.g "every 3 years the second Monday of March"
+yearlyNthOnNthOfNounclass1=den %1$S %2$S i kvar %3$S;kvar #4 år på %1$S %2$S i %3$S
+yearlyNthOnNthOfNounclass2=den %1$S %2$S i kvar %3$S;kvar #4 år på %1$S %2$S i %3$S
+
+# LOCALIZATION NOTE (yearlyOnEveryNthOfNthNounclass...):
+# Edit recurrence window -> Recurrence pattern -> Yearly repeat rules
+# Translate these strings according to noun class/gender of weekday (%1$S)
+# set in 'repeadDetailsDay...Nounclass' strings.
+# Nounclass1 <-> Masculine gender; Nounclass2 <-> Feminine gender.
+# Add others strings with suffix 3, 4,... for others noun classes if your
+# language need them. In this case, corresponding strings must be added for
+# others rule strings with 'Nounclass...' suffix and corresponding values
+# "nounclass..." must be written in 'repeatDetailsDayxNounclass' strings.
+# %1$S - weekday
+# %2$S - month
+# #3 - yearly interval
+# e.g. "every Thursday of March"
+# e.g "every 3 years on every Thursday of March"
+yearlyOnEveryNthOfNthNounclass1=kvar %1$S i %2$S;kvar #3 år på kvar %1$S i %2$S
+yearlyOnEveryNthOfNthNounclass2=kvar %1$S i %2$S;kvar #3 år på kvar %1$S i %2$S
+
+#LOCALIZATION NOTE (yearlyEveryDayOf):
+# Edit recurrence window -> Recurrence pattern -> Yearly repeat rules
+# This string describes part of a yearly rule which includes every day of a month.
+# %1$S - month
+# #2 - yearly interval
+# e.g. "every day of December"
+# e.g. "every 3 years every day of December"
+yearlyEveryDayOf=every day of %1$S;every #2 years every day of %1$S
+
+repeatDetailsMonth1=Januar
+repeatDetailsMonth2=Februar
+repeatDetailsMonth3=Mars
+repeatDetailsMonth4=April
+repeatDetailsMonth5=Mai
+repeatDetailsMonth6=Juni
+repeatDetailsMonth7=Juli
+repeatDetailsMonth8=August
+repeatDetailsMonth9=September
+repeatDetailsMonth10=Oktober
+repeatDetailsMonth11=November
+repeatDetailsMonth12=Desember
+
+# LOCALIZATION NOTE (repeatCount):
+# Edit recurrence window -> Recurrence details link on Event/Task dialog window
+# %1%$ - A rule string (see above). This is the first line of the link
+# %2%$ - event start date (e.g. mm/gg/yyyy)
+# %3$S - event start time (e.g. hh:mm (PM/AM))
+# %4$S - event end time (e.g. hh:mm (PM/AM))
+# #5 - event occurence times: number
+# e.g. with monthlyRuleNthOfEvery:
+# "Occurs the first Sunday of every 3 month
+# only on 1/1/2009"
+# from 5:00 PM to 6:00 PM"
+# "Occurs the first Sunday of every 3 month
+# effective 1/1/2009 for 5 times
+# from 5:00 PM to 6:00 PM"
+repeatCount=Skjer %1$S\nfrå og med %2$S for #5 gongar\nfrå %3$S til %4$S.;Skjer %1$S\nfrå og med %2$S for #5 gongar\nfrå %3$S til %4$S.
+
+# LOCALIZATION NOTE (repeatCountAllDay):
+# Edit recurrence window -> Recurrence details link on Event/Task dialog window
+# %1%$ - A rule string (see above). This is the first line of the link
+# %2%$ - event start date (e.g. mm/gg/yyyy)
+# #3 - event occurence times: number
+# e.g. with monthlyRuleNthOfEvery:
+# "Occurs the first Sunday of every 3 month
+# only on 1/1/2009"
+# "Occurs the first Sunday of every 3 month
+# effective 1/1/2009 for 5 times"
+repeatCountAllDay=Skjer %1$S\nfrå og med %2$S for #3 gong.;Skjer %1$S\nfrå og med %2$S for #3 gongar.
+
+# LOCALIZATION NOTE (repeatDetailsUntil):
+# Edit recurrence window -> Recurrence details link on Event/Task dialog window
+# %1%$ - A rule string (see above). This is the first line of the link
+# %2%$ - event start date (e.g. mm/gg/yyyy)
+# %3$S - event end date (e.g. mm/gg/yyyy)
+# %4$S - event start time (e.g. hh:mm (PM/AM))
+# %5$S - event end time (e.g. hh:mm (PM/AM))
+# e.g. with weeklyNthOn:
+# "Occurs every 2 weeks on Sunday and Friday
+# effective 1/1/2009 until 1/1/2010
+# from 5:00 PM to 6:00 PM"
+repeatDetailsUntil=Skjer %1$S\nfrå og med %2$S inntil %3$S\nfrå %4$S til %5$S.
+
+# LOCALIZATION NOTE (repeatDetailsUntilAllDay):
+# Edit recurrence window -> Recurrence details link on Event/Task dialog window
+# %1%$ - A rule string (see above). This is the first line of the link
+# %2%$ - event start date (e.g. mm/gg/yyyy)
+# %3$S - event end date (e.g. mm/gg/yyyy)
+# e.g. with monthlyDaysOfNth and all day event:
+# "Occurs day 3 of every 5 month
+# effective 1/1/2009 until 1/1/2010"
+repeatDetailsUntilAllDay=Skjer %1$S\nfrå og med %2$S til %3$S.
+
+# LOCALIZATION NOTE (repeatDetailsInfinite):
+# Edit recurrence window -> Recurrence details link on Event/Task dialog window
+# %1%$ - A rule string (see above). This is the first line of the link
+# %2%$ - event start date (e.g. mm/gg/yyyy)
+# %3$S - event start time (e.g. hh:mm (PM/AM))
+# %4$S - event end time (e.g. hh:mm (PM/AM))
+# e.g. with monthlyDaysOfNth:
+# "Occurs day 3 of every 5 month
+# effective 1/1/2009
+# from 5:00 PM to 6:00 PM"
+repeatDetailsInfinite=Skjer %1$S\nfrå og med %2$S\n frå %3$S til %4$S.
+
+# LOCALIZATION NOTE (repeatDetailsInfiniteAllDay):
+# Edit recurrence window -> Recurrence details link on Event/Task dialog window
+# %1%$ - A rule string (see above). This is the first line of the link
+# %2%$ - event start date (e.g. mm/gg/yyyy)
+# e.g. with monthlyDaysOfNth and all day event:
+# "Occurs day 3 of every 5 month
+# effective 1/1/2009"
+repeatDetailsInfiniteAllDay=Skjer %1$S\nfrå og med %2$S.
+
+# LOCALIZATION NOTE (monthlyLastDay):
+# Edit recurrence window -> Recurrence details link on Event/Task dialog window
+# A monthly rule with one or more days of the month (monthlyDaysOfNth) and the
+# string "the last day" of the month.
+# e.g.: "Occurs day 15, 20, 25 and the last day of every 3 months"
+monthlyLastDay=den siste dagen
+
+# LOCALIZATION NOTE (ruleTooComplex):
+# This string is shown in the repeat details area if our code can't handle the
+# complexity of the recurrence rule yet.
+ruleTooComplex=Trykk her for meir informasjon
+
+# LOCALIZATION NOTE (ruleTooComplexSummary):
+# This string is shown in the event summary dialog if our code can't handle the
+# complexity of the recurrence rule yet.
+ruleTooComplexSummary=Detaljar om repetering er ukjende
+
+# differences between the dialog for an Event or a Task
+newEvent=Ny hending
+newTask=Ny oppgåve
+itemMenuLabelEvent=Hending
+itemMenuAccesskeyEvent2=H
+itemMenuLabelTask=Oppgåve
+itemMenuAccesskeyTask2=O
+
+emailSubjectReply=Sv: %1$S
+
+# Link Location Dialog
+specifyLinkLocation=Spesifiser lenkeadresse
+enterLinkLocation=Skriv inn ei nettadresse eller ei dokumentplassering.
+
+summaryDueTaskLabel=Forfall:
+
+# Attach File Dialog
+attachViaFilelink=Fil med %1$S
+selectAFile=Vel fila/filene som skal leggjast ved
+removeCalendarsTitle=Fjern vedlegg
+
+# LOCALIZATION NOTE (removeAttachmentsText): Semi-colon list of plural forms for
+# prompting attachment removal.
+# See http://developer.mozilla.org/en/Localization_and_Plurals
+removeAttachmentsText=Vil du verkelig fjerne #1 vedlegg?;Vil du verkeleg fjerne #1 vedlegg?
+
+# Recurrence Dialog Widget Order
+# LOCALIZATION NOTE: You can change the order of below params
+# Edit recurrence window -> Recurrence pattern -> Repeat monthly
+# %1$S - ordinal with article, %2$S - weekday
+# e.g. "the First Saturday"
+# DONT_TRANSLATE: Make sure there are no extra words in this property, just variables.
+monthlyOrder=%1$S %2$S
+
+# Edit recurrence window -> Recurrence pattern -> Repeat yearly
+# %1$S - day of month, %2$S - of, %3$S - month
+# e.g. "6 [of] September"
+# If you don't need %2$S in your locale - please put this on the third place.
+# DONT_TRANSLATE: Make sure there are no extra words in this property, just variables.
+yearlyOrder=%1$S %3$S %2$S
+
+# Edit recurrence window -> Recurrence pattern -> Repeat yearly
+# %1$S - ordinal with article, %2$S - weekday, %3$S - of, %4$S - month
+# e.g. "the First Saturday of September"
+# If you don't need %3$S in your locale - please put this on the third place.
+# DONT_TRANSLATE: Make sure there are no extra words in this property, just variables.
+yearlyOrder2=%1$S %2$S %3$S %4$S
+
+# LOCALIZATION NOTE (pluralForWeekdays):
+# This string allows to set the use of weekdays nouns in plural form for
+# languages that need them in sentences like "every Monday" or "every Sunday
+# of March" etc.
+# Rule strings involved by this setting are:
+# - weeklyNthOn (only the first part) e.g. "every Sunday"
+# - monthlyEveryOfEvery
+# e.g. "every Monday of every month;every Monday every 2 months"
+# - yearlyOnEveryNthOfNth
+# e.g. "every Friday of March;every 2 years on every Friday of March"
+# In your local write:
+# "true" if sentences like those above need weekday in plural form;
+# "false" if sentences like those above don't need weekday in plural form;
+pluralForWeekdays=false
+
+# LOCALIZATION NOTE (repeatDetailsDayxxxPlural):
+# Edit recurrence window -> Recurrence details link on Event/Task dialog window
+# Weekdays in plural form used inside sentences like "every Monday" or
+# "every Sunday of May" etc. for languages that need them.
+# These plurals will be used inside the following rule strings only if string
+# 'pluralForWeekdays' (see above) is set to "true":
+# - weeklyNthOn (only the first part) e.g. "every Sunday"
+# - monthlyEveryOfEvery
+# e.g. "every Monday of every month;every Monday every 2 months"
+# - yearlyOnEveryNthOfNth
+# e.g. "every Friday of March;every 2 years on every Friday of March"
+repeatDetailsDay1Plural=Sundag
+repeatDetailsDay2Plural=Måndag
+repeatDetailsDay3Plural=Tysdag
+repeatDetailsDay4Plural=Onsdag
+repeatDetailsDay5Plural=Torsdag
+repeatDetailsDay6Plural=Fredag
+repeatDetailsDay7Plural=Laurdag
+
+# LOCALIZATION NOTE (eventRecurrenceForeverLabel):
+# Edit/New Event dialog -> datepicker that sets the until date.
+# For recurring rules that repeat forever, this labels appears in the
+# datepicker, below the minimonth, as an option for the until date.
+eventRecurrenceForeverLabel=For alltid
+
+# LOCALIZATION NOTE (eventRecurrenceMonthlyLastDayLabel):
+# Edit dialog recurrence -> Monthly Recurrence pattern -> Monthly daypicker
+# The label on the monthly daypicker's last button that allows to select
+# the last day of the month inside a BYMONTHDAY rule.
+eventRecurrenceMonthlyLastDayLabel=Siste dag
+
+# LOCALIZATION NOTE (counterSummaryAccepted) - this is only visible when opening the dialog from the
+# email summary view after receiving a counter message
+# %1$S - the name or email address of the replying attendee
+counterSummaryAccepted=%1$S har akseptert invitasjonen, men kom med eit motforslag:
+
+# LOCALIZATION NOTE (counterSummaryDeclined) - this is only visible when opening the dialog from the
+# email summary view after receiving a counter message
+# %1$S - the name or email address of the replying attendee
+counterSummaryDeclined=%1$S har avslått invitasjonen, men kom med eit motforslag:
+
+# LOCALIZATION NOTE (counterSummaryDelegated) - this is only visible when opening the dialog from the
+# email summary view after receiving a counter message
+# %1$S - the name or email address of the replying attendee
+counterSummaryDelegated=%1$S har delegert invitasjonen, men kom med eit motforslag:
+
+# LOCALIZATION NOTE (counterSummaryNeedsAction) - this is only visible when opening the dialog from the
+# email summary view after receiving a counter message
+# %1$S - the name or email address of the replying attendee
+counterSummaryNeedsAction=%1$S har ikkje bestemt seg for om de vil delta, og kom med eit motforslag:
+
+# LOCALIZATION NOTE (counterSummaryTentative) - this is only visible when opening the dialog from the
+# email summary view after receiving a counter message
+# %1$S - the name or email address of the replying attendee
+counterSummaryTentative=%1$S har foreløpig akseptert invitasjonen og kome med eit motforslag:
+
+# LOCALIZATION NOTE (counterOnPreviousVersionNotification) - this is only visible when opening the
+# dialog from the email summary view after receiving a counter message
+counterOnPreviousVersionNotification=Dette er eit motforslag til ein tidlegare versjon av denne hendinga.
+
+# LOCALIZATION NOTE (counterOnCounterDisallowedNotification) - this is only visible when opening the
+# dialog from the email summary view after receiving a counter message
+counterOnCounterDisallowedNotification=Du tillèt ikkje motforslag når du sender ut invitasjonen.
+
+# LOCALIZATION NOTE (eventAccepted) - this will be displayed as notification
+# in the summary dialog if the user has accepted the event invitation
+eventAccepted=Du har godkjent denne invitasjonen
+
+# LOCALIZATION NOTE (eventTentative) - this will be displayed as notification
+# in the summary dialog if the user has accepted the event invitation tentatively
+eventTentative=Du har godteke denne invitasjonen med atterhald
+
+# LOCALIZATION NOTE (eventDeclined) - this will be displayed as notification
+# in the summary dialog if the user has declined the event invitation
+eventDeclined=Du har avslått denne invitasjonen
+
+# LOCALIZATION NOTE (eventDelegated) - this will be displayed as notification
+# in the summary dialog if the user has delegated his/her participation to one
+# or more other participants (without attending / working on it his/herself)
+eventDelegated=Du har delegert denne invitasjonen
+
+# LOCALIZATION NOTE (eventNeedsAction) - this will be displayed as notification
+# in the summary dialog if the user hasn't yet responded to an invitation
+eventNeedsAction=Du har enno ikkje svart på denne invitasjonen
+
+# LOCALIZATION NOTE (taskAccepted) - this will be displayed as notification
+# in the summary dialog if the user has accepted the assigned task
+taskAccepted=Du har godteke å arbeide med denne oppgåva
+
+# LOCALIZATION NOTE (taskTentative) - this will be displayed as notification
+# in the summary dialog if the user has accepted tentatively the assigned task
+taskTentative=Du har med atterhald godteke å arbeide med denne oppgåva
+
+# LOCALIZATION NOTE (taskDeclined) - this will be displayed as notification
+# in the summary dialog if the user has declined the assigned task
+taskDeclined=Du har avvist å arbeide med denne oppgåva
+
+# LOCALIZATION NOTE (taskDelegated) - this will be displayed as notification
+# in the summary dialog if the user has delegated his/her assignement to one or
+# more others (without attending / working on it his/herself)
+taskDelegated=Du har delegert arbeidet med denne oppgåva
+
+# LOCALIZATION NOTE (taskNeedsAction) - this will be displayed as notification
+# in the summary dialog if the user hasn't yet responded to the task assignment
+taskNeedsAction=Du har enno ikkje svara på denne oppgåvetildelinga
+
+# LOCALIZATION NOTE (taskInProgress) - this will be displayed as notification
+# in the summary dialog if the user is working on an assigned task
+taskInProgress=Du er byrja å jobbe på denne tildelte oppgåva
+
+# LOCALIZATION NOTE (taskCompleted) - this will be displayed as notification
+# in the summary dialog if the user has completed the work on this assigned task
+taskCompleted=Du har fullført jobben din med denne tildelte oppgåva
+
+# LOCALIZATION NOTE (sendandcloseButtonLabel) - this is a runtime replacement for
+# event.toolbar.saveandclose.label in the event dialog/tab toolbar if attendees
+# will be notified on saving & closing
+sendandcloseButtonLabel=Send og lat att
+
+# LOCALIZATION NOTE (sendandcloseButtonTooltip) - this is a runtime replacement for
+# event.toolbar.saveandclose.tooltip in the event dialog/tab toolbar if attendees
+# will be notified on saving & closing
+sendandcloseButtonTooltip=Varsle deltakarar og lat att
+
+# LOCALIZATION NOTE (saveandsendButtonLabel) - this is a runtime replacement for
+# event.toolbar.save.label2 in the event dialog/tab toolbar if attendees
+# will be notified on saving
+saveandsendButtonLabel=Lagra og send
+
+# LOCALIZATION NOTE (saveandsendButtonTooltip) - this is a runtime replacement
+# for event.toolbar.save.tooltip2 in the event dialog/tab toolbar if attendees
+# will be notified on saving
+saveandsendButtonTooltip=Lagra og varsla deltakarar
+
+# LOCALIZATION NOTE (saveandsendMenuLabel) - this is a runtime replacement for
+# event.menu.item.save.label in the event dialog/tab toolbar if attendees
+# will be notified on saving
+saveandsendMenuLabel=Lagra og send
+
+# LOCALIZATION NOTE (sendandcloseMenuLabel) - this is a runtime replacement for
+# event.menu.item.saveandclose.label in the event dialog/tab toolbar if attendees
+# will be notified on saving
+sendandcloseMenuLabel=Send og lat att
+
+# LOCALIZATION NOTE (attendeesTabLabel) - this is a runtime replacement for
+# event.attendees.label defined in calendar-event-dialog.dtd and used in the
+# event dialog/tab as attendee tab label if an event has at least one attendee
+# %1$S - the number of attendee (1-n)
+attendeesTabLabel=Deltakarar (%1$S):
+
+# LOCALIZATION NOTE (attachmentsTabLabel) - this is a runtime replacement for
+# event.attachments.label defined in calendar-event-dialog.dtd and used in the
+# event dialog/tab as attendee tab label if an event has at least one attachment
+# %1$S - the number of attachments (1-n)
+attachmentsTabLabel=Vedlegg (%1$S):
diff --git a/l10n-nn-NO/calendar/chrome/calendar/calendar-extract.properties b/l10n-nn-NO/calendar/chrome/calendar/calendar-extract.properties
new file mode 100644
index 0000000000..c7dc02cf16
--- /dev/null
+++ b/l10n-nn-NO/calendar/chrome/calendar/calendar-extract.properties
@@ -0,0 +1,294 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# LOCALIZATION NOTE:
+# Strings here are used to create events and tasks with start and end times
+# based on email content.
+# None of the strings are displayed in the user interface.
+#
+# You don't have to fill all from.*, until.*, *.prefix and *.suffix patterns.
+# It's ok to leave some empty.
+# Please consider declensions and gender if your language has them.
+# Don't just translate directly. The number of variants doesn't have to be
+# the same as in en-US. All of 0, 1, 2, etc is allowed in patterns except alphabet
+# pattern. You can and should add language specific variants.
+#
+# There are two different ways to find a start time text in email:
+# 1) it matches a from.* pattern and does not have end.prefix or end.suffix next to it
+# 2) it matches until.* pattern and has start.prefix or start.suffix next to it
+# Similar inverse logic applies to end times.
+# These rules enable using prefix and suffix values with only start.* or only until.*
+# patterns localized for some languages and thus not having to repeat the same
+# values in both.
+#
+# Patterns are partially space-insensitive.
+# "deadline is" pattern will find both "deadlineis" and "deadline is"
+# but "deadlineis" won't find "deadline is" or "deadline is".
+# Therefore you should include all spaces that are valid within a pattern.
+
+# LOCALIZATION NOTE (start.prefix):
+# datetimes with these in front are extracted as start times
+# can be a list of values, separate variants by |
+start.prefix =
+
+# LOCALIZATION NOTE (start.suffix):
+# datetimes followed by these are extracted as start times
+start.suffix = by | until | to | - | till | til | and | frå
+
+# LOCALIZATION NOTE (end.prefix):
+# datetimes with these in front are extracted as end times
+end.prefix = by | until | to | - | till | til | and | due: | due | ends | deadline is | deadline:
+
+# LOCALIZATION NOTE (end.suffix):
+# datetimes followed by these are extracted as end times
+# can be a list of values, separate variants by |
+end.suffix =
+
+# LOCALIZATION NOTE (no.datetime.prefix):
+# datetimes with these in front won't be used
+# specify full words here
+no.datetime.prefix = last week | sent | email | e-mail | instead of | > | unfortunately | in | not | førre veke| e-post | i stadenfor | ikkje
+
+# LOCALIZATION NOTE (no.datetime.suffix):
+# datetimes followed by these won't be used
+no.datetime.suffix = floor | flr | : | email | e-mail | > | % | usd | dollars | etasje | e-post | kroner | NOK
+
+# LOCALIZATION NOTE (from.*):
+# can be a list of values, separate variants by |
+
+# LOCALIZATION NOTE (from.today):
+# must not be empty!
+from.today = i dag
+
+from.tomorrow = i morgon
+# LOCALIZATION NOTE (until.*):
+# can be a list of values, separate variants by |
+until.tomorrow =
+
+# LOCALIZATION NOTE (from.ordinal.date):
+# #1 = matches numbers 1-31 and number.x
+# should not have "#1" as this would match any single number in email to a time
+from.ordinal.date = #1st | #1nd | #1rd | #1th
+
+# LOCALIZATION NOTE (until.ordinal.date):
+# #1 = matches numbers 1-31 and number.x
+until.ordinal.date =
+
+from.noon = middag
+until.noon =
+
+# LOCALIZATION NOTE (from.hour):
+# #1 = matches numbers 0-23 and number.0-number.23
+# should not have "#1" as this would match any single number in email to a time
+from.hour = at #1 | around #1 | #1 - | #1 to
+
+# LOCALIZATION NOTE (until.hour):
+# #1 = matches numbers 0-23 and number.0-number.23
+# should also list how to find end of a timeframe
+until.hour = - #1 | to #1 | until #1 | by #1
+
+# LOCALIZATION NOTE (from.hour.am):
+# #1 = matches numbers 0-23 and number.0-number.23
+from.hour.am = #1 am | #1 a.m
+
+# LOCALIZATION NOTE (until.hour.am):
+# #1 = matches numbers 0-23 and number.0-number.23
+# should also list how to find end of a timeframe
+until.hour.am =
+
+# LOCALIZATION NOTE (from.hour.pm):
+# #1 = matches numbers 0-23 and number.0-number.23
+from.hour.pm = #1 pm | #1 p.m | #1 p
+
+# LOCALIZATION NOTE (until.hour.pm):
+# #1 = matches numbers 0-23 and number.0-number.23
+# should also list how to find end of a timeframe
+until.hour.pm =
+
+# LOCALIZATION NOTE (from.half.hour.before):
+# denotes times 30 minutes before next full hour
+from.half.hour.before = ein halv time før #1
+
+# LOCALIZATION NOTE (until.half.hour.before):
+# denotes times 30 minutes before next full hour
+until.half.hour.before =
+
+# LOCALIZATION NOTE (from.half.hour.after):
+# denotes times 30 minutes after last full hour
+from.half.hour.after = half past #1
+
+# LOCALIZATION NOTE (until.half.hour.after):
+# denotes times 30 minutes after last full hour
+until.half.hour.after =
+
+# LOCALIZATION NOTE (from.hour.minutes):
+# #1 = matches numbers 0-23
+# #2 = matches numbers 0-59
+from.hour.minutes = #1:#2 | at #1#2
+
+# LOCALIZATION NOTE (until.hour.minutes):
+# #1 = matches numbers 0-23
+# #2 = matches numbers 0-59
+until.hour.minutes =
+
+# LOCALIZATION NOTE (from.hour.minutes.am):
+# #1 = matches numbers 0-23
+# #2 = matches numbers 0-59
+from.hour.minutes.am = #1:#2 am | #1:#2 a.m
+
+# LOCALIZATION NOTE (until.hour.minutes.am):
+# #1 = matches numbers 0-23
+# #2 = matches numbers 0-59
+until.hour.minutes.am =
+
+# LOCALIZATION NOTE (from.hour.minutes.pm):
+# #1 = matches numbers 0-23
+# #2 = matches numbers 0-59
+from.hour.minutes.pm = #1:#2 pm | #1:#2 p.m | #1:#2 p
+
+# LOCALIZATION NOTE (until.hour.minutes.pm):
+# #1 = matches numbers 0-23
+# #2 = matches numbers 0-59
+until.hour.minutes.pm =
+
+# LOCALIZATION NOTE (from.monthname.day):
+# #1 = matches numbers 1-31 and number.x
+# #2 = matches monthname
+from.monthname.day = #1 #2 | #2 #1 | #2 #1st | #2 #1nd | #2 #1rd | #2 #1th | #1st of #2 | #1nd of #2 | #1rd of #2 | #1th of #2
+
+# LOCALIZATION NOTE (until.monthname.day):
+# #1 = matches numbers 1-31
+# #2 = matches monthname
+until.monthname.day =
+
+# LOCALIZATION NOTE (from.month.day):
+# #1 = matches numbers 1-31
+# #2 = matches numbers 1-12
+from.month.day = #2/#1
+
+# LOCALIZATION NOTE (until.month.day):
+# #1 = matches numbers 1-31 and number.x
+# #2 = matches numbers 1-12
+until.month.day =
+
+# LOCALIZATION NOTE (from.year.month.day):
+# #1 = matches numbers 1-31
+# #2 = matches numbers 1-12
+# #3 = matches 2/4 numbers
+from.year.month.day = #2/#1/#3 | #3/#2/#1 | #3-#2-#1
+
+# LOCALIZATION NOTE (until.year.month.day):
+# #1 = matches numbers 1-31
+# #2 = matches numbers 1-12
+# #3 = matches 2/4 numbers
+until.year.month.day =
+
+# LOCALIZATION NOTE (from.year.monthname.day):
+# #1 = matches numbers 1-31
+# #2 = matches monthname
+# #3 = matches 2/4 numbers
+from.year.monthname.day = #1 #2 #3 | #1st #2 #3 | #1nd #2 #3 | #1rd #2 #3 | #1th #2 #3 | #2 #1, #3 | #3-#2-#1
+
+# LOCALIZATION NOTE (until.year.monthname.day):
+# #1 = matches numbers 1-31
+# #2 = matches monthname
+# #3 = matches 2/4 numbers
+until.year.monthname.day =
+
+# LOCALIZATION NOTE (duration.*):
+# can be a list of values, separate variants by |
+
+# LOCALIZATION NOTE (duration.minutes):
+# #1 = matches 1/2 numbers and number.0 - and number.31
+duration.minutes = #1 minutt | #1 min | #1 mins
+
+# LOCALIZATION NOTE (duration.hours):
+# #1 = matches 1/2 numbers and number.0 - and number.31
+duration.hours = #1 time | #1 timar
+
+# LOCALIZATION NOTE (duration.days):
+# #1 = matches 1/2 numbers and number.0 - and number.31
+duration.days = #1 dagar
+
+# LOCALIZATION NOTE (month.*):
+# can be a list of values, separate variants by |
+month.1 = january | jan | jan.
+month.2 = february | feb | feb.
+month.3 = march | mar | mar.
+month.4 = april | apr | apr.
+month.5 = mai
+month.6 = june | jun | jun. | juni
+month.7 = july | jul | jul. | juli
+month.8 = august | aug | aug.
+month.9 = september | sep | sep. | sept.
+month.10 = october | oct | oct. | oktober
+month.11 = november | nov | nov.
+month.12 = december | dec | dec. | desember
+
+# LOCALIZATION NOTE (from.weekday.*):
+# used to derive start date based on weekdays mentioned
+# can be a list of values, separate variants by |
+# LOCALIZATION NOTE (from.weekday.0):
+# Regardless of what the first day of the week is in your country, 0 is Sunday here.
+from.weekday.0 = sunday | sundays | sundag | sundagar
+from.weekday.1 = monday | mondays | måndag | måndagar
+from.weekday.2 = tuesday | tuesdays | tysdag | tysdagar
+from.weekday.3 = wednesday | wednesdays | onsdag | onsdagar
+from.weekday.4 = thursday | thursdays | torsdag | torsdagar
+from.weekday.5 = friday | fridays | fredag | fredagar
+from.weekday.6 = saturday | saturdays | laurdag | laurdagar
+
+# LOCALIZATION NOTE (until.weekday.*):
+# used to derive end date based on weekdays mentioned
+# can be a list of values, separate variants by |
+# LOCALIZATION NOTE (until.weekday.0):
+# Regardless of what the first day of the week is in your country, 0 is Sunday here.
+until.weekday.0 =
+until.weekday.1 =
+until.weekday.2 =
+until.weekday.3 =
+until.weekday.4 =
+until.weekday.5 =
+until.weekday.6 =
+
+# LOCALIZATION NOTE (number.*):
+# used within other patterns to understand dates where day of month isn't written with digits
+# can be a list of values, separate variants by |
+number.0 = zero | null
+number.1 = one | first | ein | fyrste
+number.2 = two | second | to andre
+number.3 = three | third | tre | tredje
+number.4 = four | fourth | fire | fjerde
+number.5 = five | fifth | fem | femte
+number.6 = six | sixth | seks | sjette
+number.7 = seven | seventh | sju | sjuande
+number.8 = eight | eighth | åtte | åttande
+number.9 = nine | ninth | ni | niande
+number.10 = ten | tenth | ti | tiande
+number.11 = eleven | eleventh | elleve | ellevte
+number.12 = twelve | twelfth | tolv | tolvte
+number.13 = thirteen | thirteenth | tretten | trettande
+number.14 = fourteen | fourteenth | fjorten | fjortande
+number.15 = fifteen | fifteenth | femten | femtande
+number.16 = sixteen | sixteenth
+number.17 = seventeen | seventeenth
+number.18 = eighteen | eighteenth
+number.19 = nineteen | nineteenth
+number.20 = twenty | twentieth
+number.21 = twenty one | twenty first
+number.22 = twenty two | twenty second
+number.23 = twenty three | twenty third
+number.24 = twenty four | twenty fourth
+number.25 = twenty five | twenty fifth
+number.26 = twenty six | twenty sixth
+number.27 = twenty seven | twenty seventh
+number.28 = twenty eight | twenty eighth
+number.29 = twenty nine | twenty ninth
+number.30 = thirty | thirtieth
+number.31 = thirty one | thirty first
+
+# LOCALIZATION NOTE (alphabet):
+# list all lower and uppercase letters if your language has an alphabet
+# otherwise leave it empty
+alphabet = abcdefghijklmnopqrstuvwxyzæøåABCDEFGHIJKLMNOPQRSTUVWXYZÆØÅ
diff --git a/l10n-nn-NO/calendar/chrome/calendar/calendar-invitations-dialog.dtd b/l10n-nn-NO/calendar/chrome/calendar/calendar-invitations-dialog.dtd
new file mode 100644
index 0000000000..fc811b7a28
--- /dev/null
+++ b/l10n-nn-NO/calendar/chrome/calendar/calendar-invitations-dialog.dtd
@@ -0,0 +1,19 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/.
+-->
+
+<!-- Calendar Invitations Dialog -->
+<!ENTITY calendar.invitations.dialog.invitations.text "Invitasjonar">
+<!ENTITY calendar.invitations.dialog.statusmessage.updating.text "Oppdaterer lista over invitasjonar.">
+<!ENTITY calendar.invitations.dialog.statusmessage.noinvitations.text "Ingen ubekrefta invitasjonar vart funne.">
+
+<!-- Calendar Invitations List -->
+<!ENTITY calendar.invitations.list.accept.button.label "Godta">
+<!ENTITY calendar.invitations.list.decline.button.label "Avslå">
+<!ENTITY calendar.invitations.list.recurrentevent.text "Repeterande hending">
+<!ENTITY calendar.invitations.list.alldayevent.text "Heildagshending">
+<!ENTITY calendar.invitations.list.location.text "Stad: ">
+<!ENTITY calendar.invitations.list.organizer.text "Organisert av:">
+<!ENTITY calendar.invitations.list.attendee.text "Deltakar: ">
+<!ENTITY calendar.invitations.list.none.text "Ingen">
diff --git a/l10n-nn-NO/calendar/chrome/calendar/calendar-invitations-dialog.properties b/l10n-nn-NO/calendar/chrome/calendar/calendar-invitations-dialog.properties
new file mode 100644
index 0000000000..c81eb9b856
--- /dev/null
+++ b/l10n-nn-NO/calendar/chrome/calendar/calendar-invitations-dialog.properties
@@ -0,0 +1,10 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+allday-event=Heildagshending
+recurrent-event=Repeterande hending
+location=Plass: %S
+organizer=Organisator: %S
+attendee=Deltakarar: %S
+none=Ingen
diff --git a/l10n-nn-NO/calendar/chrome/calendar/calendar-occurrence-prompt.dtd b/l10n-nn-NO/calendar/chrome/calendar/calendar-occurrence-prompt.dtd
new file mode 100644
index 0000000000..5864a9335f
--- /dev/null
+++ b/l10n-nn-NO/calendar/chrome/calendar/calendar-occurrence-prompt.dtd
@@ -0,0 +1,7 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY buttons.occurrence.accesskey "t">
+<!ENTITY buttons.allfollowing.accesskey "f">
+<!ENTITY buttons.parent.accesskey "a">
diff --git a/l10n-nn-NO/calendar/chrome/calendar/calendar-occurrence-prompt.properties b/l10n-nn-NO/calendar/chrome/calendar/calendar-occurrence-prompt.properties
new file mode 100644
index 0000000000..94bc7db220
--- /dev/null
+++ b/l10n-nn-NO/calendar/chrome/calendar/calendar-occurrence-prompt.properties
@@ -0,0 +1,53 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+header.isrepeating.event.label=er ei repeterande hending
+header.isrepeating.task.label=er ei repeterande oppgåve
+header.containsrepeating.event.label=inneheld repeterande hendingar
+header.containsrepeating.task.label=inneheld repeterande oppgåver
+header.containsrepeating.mixed.label=inneheld gjentekne element av ulike slag
+
+windowtitle.event.copy=Kopier repeterande hending
+windowtitle.task.copy=Kopier repeterande oppgåve
+windowtitle.mixed.copy=Kopier gjentakande element
+windowtitle.event.cut=Klipp ut repeterande hending
+windowtitle.task.cut=Klipp ut repeterande oppgåve
+windowtitle.mixed.cut=Klipp ut gjentakande element
+windowtitle.event.delete=Slett repeterande hending
+windowtitle.task.delete=Slett repeterande oppgåve
+windowtitle.mixed.delete=Slett gjentakande element
+windowtitle.event.edit=Rediger gjentakande hending
+windowtitle.task.edit=Rediger repeterande oppgåve
+windowtitle.mixed.edit=Rediger gjentakande element
+windowtitle.multipleitems=Valde element
+
+buttons.single.occurrence.copy.label=Kopier berre denne førekomsten
+buttons.single.occurrence.cut.label=Klipp ut berre denne førekomsten
+buttons.single.occurrence.delete.label=Slett berre denne førekomsten
+buttons.single.occurrence.edit.label=Rediger berre denne førekomsten
+
+buttons.multiple.occurrence.copy.label=Kopier berre markerte førekomstar
+buttons.multiple.occurrence.cut.label=Klipp ut berre markerte førekomstar
+buttons.multiple.occurrence.delete.label=Slett berre valde førekomstar
+buttons.multiple.occurrence.edit.label=Rediger berre valde førekomstar
+
+buttons.single.allfollowing.copy.label=Kopier denne og alle framtidige førekomstar
+buttons.single.allfollowing.cut.label=Klipp ut denne og alle framtidige førekomstar
+buttons.single.allfollowing.delete.label=Slett denne og alle framtidige førekomstar
+buttons.single.allfollowing.edit.label=Rediger denne og alle framtidige førekomstar
+
+buttons.multiple.allfollowing.copy.label=Kopier valde og alle framtidige førekomstar
+buttons.multiple.allfollowing.cut.label=Klipp ut valde og alle framtidige førekomstar
+buttons.multiple.allfollowing.delete.label=Slett valde og alle framtidige førekomstar
+buttons.multiple.allfollowing.edit.label=Rediger valde og alle framtidige førekomstar
+
+buttons.single.parent.copy.label=Kopier alle førekomstar
+buttons.single.parent.cut.label=Klipp ut alle førekomstar
+buttons.single.parent.delete.label=Slett alle førekomstar
+buttons.single.parent.edit.label=Rediger alle førekomstar
+
+buttons.multiple.parent.copy.label=Kopier alle førekomstar av valde element
+buttons.multiple.parent.cut.label=Klipp ut alle førekomstar av valde element
+buttons.multiple.parent.delete.label=Slett alle førekomstar av valde element
+buttons.multiple.parent.edit.label=Rediger alle førekomstar av markerte element
diff --git a/l10n-nn-NO/calendar/chrome/calendar/calendar.dtd b/l10n-nn-NO/calendar/chrome/calendar/calendar.dtd
new file mode 100644
index 0000000000..d8440af895
--- /dev/null
+++ b/l10n-nn-NO/calendar/chrome/calendar/calendar.dtd
@@ -0,0 +1,411 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!-- General -->
+<!ENTITY calendar.calendar.label "Kalender">
+<!ENTITY calendar.calendar.accesskey "K">
+
+<!ENTITY calendar.newevent.button.tooltip "Lag ny hending" >
+<!ENTITY calendar.newtask.button.tooltip "Lag ny oppgåve" >
+
+<!ENTITY calendar.unifinder.todoitems.label "Oppgåver" >
+
+<!ENTITY calendar.unifinder.showcompletedtodos.label "Vis fullførte oppgåver">
+
+<!ENTITY calendar.today.button.label "I dag">
+<!ENTITY calendar.tomorrow.button.label "I morgon">
+<!ENTITY calendar.upcoming.button.label "Komande">
+
+<!ENTITY calendar.events.filter.all.label "Alle hendingar">
+<!ENTITY calendar.events.filter.today.label "Hendingar i dag">
+<!ENTITY calendar.events.filter.future.label "Alle framtidige hendingar">
+<!ENTITY calendar.events.filter.current.label "Vald dag">
+<!ENTITY calendar.events.filter.currentview.label "Hendingar i denne visinga">
+<!ENTITY calendar.events.filter.next7Days.label "Hendingar dei neste 7 dagane">
+<!ENTITY calendar.events.filter.next14Days.label "Hendingar dei neste 14 dagane">
+<!ENTITY calendar.events.filter.next31Days.label "Hendingar dei neste 31 dagane">
+<!ENTITY calendar.events.filter.thisCalendarMonth.label "Hendingar denne kalendermånaden">
+
+<!-- LOCALIZATION NOTE(calendar.unifinder.tree.done.tooltip)
+ - This label and tooltip is used for the column with the checkbox in the
+ - task tree view. -->
+<!ENTITY calendar.unifinder.tree.done.label "Fullført">
+<!ENTITY calendar.unifinder.tree.done.tooltip2 "Sorter etter fullføring">
+<!ENTITY calendar.unifinder.tree.priority.label "Prioritet">
+<!ENTITY calendar.unifinder.tree.priority.tooltip2 "Sorter etter prioritet">
+<!ENTITY calendar.unifinder.tree.title.label "Tittel">
+<!ENTITY calendar.unifinder.tree.title.tooltip2 "Sorter etter tittel">
+<!ENTITY calendar.unifinder.tree.percentcomplete.label "&#037; fullført">
+<!ENTITY calendar.unifinder.tree.percentcomplete.tooltip2 "Sorter etter &#037; fullført">
+<!ENTITY calendar.unifinder.tree.startdate.label "Start">
+<!ENTITY calendar.unifinder.tree.startdate.tooltip2 "Sorter etter startdato">
+<!ENTITY calendar.unifinder.tree.enddate.label "Slutt">
+<!ENTITY calendar.unifinder.tree.enddate.tooltip2 "Sorter etter sluttdato">
+<!ENTITY calendar.unifinder.tree.duedate.label "Forfall">
+<!ENTITY calendar.unifinder.tree.duedate.tooltip2 "Sorter etter forfallsdato">
+<!ENTITY calendar.unifinder.tree.completeddate.label "Fullført">
+<!ENTITY calendar.unifinder.tree.completeddate.tooltip2 "Sorter etter fullførtdato">
+<!ENTITY calendar.unifinder.tree.categories.label "Kategori">
+<!ENTITY calendar.unifinder.tree.categories.tooltip2 "Sorter etter kategori">
+<!ENTITY calendar.unifinder.tree.location.label "Stad">
+<!ENTITY calendar.unifinder.tree.location.tooltip2 "Sorter etter stad">
+<!ENTITY calendar.unifinder.tree.status.label "Status">
+<!ENTITY calendar.unifinder.tree.status.tooltip2 "Sorter etter status">
+<!ENTITY calendar.unifinder.tree.calendarname.label "Kalendernamn">
+<!ENTITY calendar.unifinder.tree.calendarname.tooltip2 "Sorter etter kalendernamn">
+<!ENTITY calendar.unifinder.tree.duration.label "Forfell om">
+<!ENTITY calendar.unifinder.tree.duration.tooltip2 "Sorter etter forfall">
+<!ENTITY calendar.unifinder.close.tooltip "Lèt att hendingssøk og hendingsliste">
+
+<!ENTITY calendar.today.button.tooltip "Gå til «I dag»" >
+<!ENTITY calendar.todaypane.button.tooltip "Vis «I dag»-ruta" >
+
+<!ENTITY calendar.day.button.tooltip "Byt til dagvising" >
+<!ENTITY calendar.week.button.tooltip "Byt til vekevising" >
+<!ENTITY calendar.month.button.tooltip "Byt til månadvising" >
+<!ENTITY calendar.multiweek.button.tooltip "Byt til fleirvekevising" >
+
+<!ENTITY calendar.nextday.label "Neste dag" >
+<!ENTITY calendar.prevday.label "Førre dag" >
+<!ENTITY calendar.nextday.accesskey "N" >
+<!ENTITY calendar.prevday.accesskey "F" >
+<!ENTITY calendar.nextweek.label "Neste veke" >
+<!ENTITY calendar.prevweek.label "Førre veke" >
+<!ENTITY calendar.nextweek.accesskey "e" >
+<!ENTITY calendar.prevweek.accesskey "ø" >
+<!ENTITY calendar.nextmonth.label "Neste månad" >
+<!ENTITY calendar.prevmonth.label "Førre månad" >
+<!ENTITY calendar.nextmonth.accesskey "s" >
+<!ENTITY calendar.prevmonth.accesskey "r" >
+
+<!ENTITY calendar.navigation.nextday.tooltip "Ein dag fram" >
+<!ENTITY calendar.navigation.prevday.tooltip "Ein dag tilbake" >
+<!ENTITY calendar.navigation.nextweek.tooltip "Ei veke fram" >
+<!ENTITY calendar.navigation.prevweek.tooltip "Ei veke tilbake" >
+<!ENTITY calendar.navigation.nextmonth.tooltip "Ein månad fram" >
+<!ENTITY calendar.navigation.prevmonth.tooltip "Ein månad tilbake" >
+
+<!ENTITY calendar.newevent.button.label "Ny hending" >
+<!ENTITY calendar.newtask.button.label "Ny oppgåve" >
+<!ENTITY calendar.print.button.label "Skriv ut" >
+<!ENTITY calendar.print.button.accesskey "u">
+
+<!ENTITY calendar.day.button.label "Dag" >
+<!ENTITY calendar.week.button.label "Veke" >
+<!ENTITY calendar.month.button.label "Månad" >
+<!ENTITY calendar.multiweek.button.label "Fleire veker" >
+<!ENTITY calendar.onlyworkday.checkbox.label "Berre arbeidsveke" >
+<!ENTITY calendar.onlyworkday.checkbox.accesskey "B" >
+<!ENTITY calendar.displaytodos.checkbox.label "Oppgåver i visinga" >
+<!ENTITY calendar.displaytodos.checkbox.accesskey "p" >
+<!ENTITY calendar.completedtasks.checkbox.label "Vis fullførte oppgåver" >
+<!ENTITY calendar.completedtasks.checkbox.accesskey "f" >
+
+<!ENTITY calendar.orientation.label "Roter vising" >
+<!ENTITY calendar.orientation.accesskey "o" >
+
+<!ENTITY calendar.search.options.searchfor " inneheld">
+
+<!ENTITY calendar.list.header.label "Kalender">
+
+<!ENTITY calendar.task.filter.title.label "Vis">
+<!ENTITY calendar.task.filter.all.label "Alle">
+<!ENTITY calendar.task.filter.all.accesskey "A">
+<!ENTITY calendar.task.filter.today.label "I dag">
+<!ENTITY calendar.task.filter.today.accesskey "I">
+<!ENTITY calendar.task.filter.next7days.label "Neste sju dagar">
+<!ENTITY calendar.task.filter.next7days.accesskey "N">
+<!ENTITY calendar.task.filter.notstarted.label "Oppgåver som ikkje er starta">
+<!ENTITY calendar.task.filter.notstarted.accesskey "O">
+<!ENTITY calendar.task.filter.overdue.label "Forfalne oppgåver">
+<!ENTITY calendar.task.filter.overdue.accesskey "F">
+<!ENTITY calendar.task.filter.completed.label "Fullførte oppgåver">
+<!ENTITY calendar.task.filter.completed.accesskey "u">
+<!ENTITY calendar.task.filter.open.label "Uferdige oppgåver">
+<!ENTITY calendar.task.filter.open.accesskey "U">
+
+<!-- LOCALIZATION NOTE(calendar.task.filter.current.label)
+ "Current Tasks" will show all tasks, except those with a start date set
+ that is after today and after the selected date. If a task repeats, a
+ separate entry will be shown for each of the occurrences that happen on or
+ before today (or the selected date, whichever is later). -->
+<!ENTITY calendar.task.filter.current.label "Gjeldande oppgåver">
+<!ENTITY calendar.task.filter.current.accesskey "G">
+
+<!ENTITY calendar.task-details.title.label "tittel">
+<!ENTITY calendar.task-details.organizer.label "frå">
+<!ENTITY calendar.task-details.priority.label "prioritet">
+<!ENTITY calendar.task-details.priority.low.label "Låg">
+<!ENTITY calendar.task-details.priority.normal.label "Normal">
+<!ENTITY calendar.task-details.priority.high.label "Høg">
+<!ENTITY calendar.task-details.status.label "status">
+<!ENTITY calendar.task-details.category.label "kategori">
+<!ENTITY calendar.task-details.repeat.label "gjenta">
+<!ENTITY calendar.task-details.attachments.label "vedlegg">
+<!ENTITY calendar.task-details.start.label "startdato">
+<!ENTITY calendar.task-details.due.label "innan">
+
+<!ENTITY calendar.task.category.button.tooltip "Kategoriser oppgåver">
+<!ENTITY calendar.task.complete.button.tooltip "Marker valde oppgåver som fullførte">
+<!ENTITY calendar.task.priority.button.tooltip "Endre prioritet">
+
+<!ENTITY calendar.task.text-filter.textbox.emptytext.base1 "Filtrer oppgåver #1">
+<!ENTITY calendar.task.text-filter.textbox.emptytext.keylabel.nonmac "&lt;Ctrl+Skift+K&gt;">
+<!ENTITY calendar.task.text-filter.textbox.emptytext.keylabel.mac "&lt;&#x21E7;&#x2318;K&gt;">
+
+<!-- Context Menu -->
+<!ENTITY calendar.context.modifyorviewitem.label "Opna">
+<!ENTITY calendar.context.modifyorviewitem.accesskey "O">
+<!ENTITY calendar.context.modifyorviewtask.label "Opna oppgåve…">
+<!ENTITY calendar.context.modifyorviewtask.accesskey "o">
+<!ENTITY calendar.context.newevent.label "Ny hending…">
+<!ENTITY calendar.context.newevent.accesskey "N">
+<!ENTITY calendar.context.newtodo.label "Ny oppgåve…">
+<!ENTITY calendar.context.newtodo.accesskey "o">
+<!ENTITY calendar.context.deletetask.label "Slett oppgåve">
+<!ENTITY calendar.context.deletetask.accesskey "S">
+<!ENTITY calendar.context.deleteevent.label "Slett hending">
+<!ENTITY calendar.context.deleteevent.accesskey "l">
+<!ENTITY calendar.context.cutevent.label "Klipp ut">
+<!ENTITY calendar.context.cutevent.accesskey "u">
+<!ENTITY calendar.context.copyevent.label "Kopier">
+<!ENTITY calendar.context.copyevent.accesskey "K">
+<!ENTITY calendar.context.pasteevent.label "Lim inn">
+<!ENTITY calendar.context.pasteevent.accesskey "L">
+<!ENTITY calendar.context.button.label "I dag-rute">
+<!ENTITY calendar.context.button.accesskey "d">
+
+<!ENTITY calendar.context.attendance.menu.label "Deltaking">
+<!ENTITY calendar.context.attendance.menu.accesskey "D">
+<!ENTITY calendar.context.attendance.occurrence.label "Denne førekomsten">
+<!ENTITY calendar.context.attendance.all2.label "Komplett serie">
+<!ENTITY calendar.context.attendance.send.label "Send eit varsel no">
+<!ENTITY calendar.context.attendance.send.accesskey "S">
+<!ENTITY calendar.context.attendance.dontsend.label "Ikkje send eit varsel">
+<!ENTITY calendar.context.attendance.dontsend.accesskey "d">
+
+<!ENTITY calendar.context.attendance.occ.accepted.accesskey "A">
+<!ENTITY calendar.context.attendance.occ.accepted.label "Akseptert">
+<!ENTITY calendar.context.attendance.occ.tentative.accesskey "u">
+<!ENTITY calendar.context.attendance.occ.tentative.label "Godteke med atterhald">
+<!ENTITY calendar.context.attendance.occ.declined.accesskey "s">
+<!ENTITY calendar.context.attendance.occ.declined.label "Avvist">
+<!ENTITY calendar.context.attendance.occ.delegated.accesskey "g">
+<!ENTITY calendar.context.attendance.occ.delegated.label "Delegert">
+<!ENTITY calendar.context.attendance.occ.needsaction.accesskey "s">
+<!ENTITY calendar.context.attendance.occ.needsaction.label "Treng framleis handling">
+<!ENTITY calendar.context.attendance.occ.inprogress.accesskey "r">
+<!ENTITY calendar.context.attendance.occ.inprogress.label "Held på">
+<!ENTITY calendar.context.attendance.occ.completed.accesskey "k">
+<!ENTITY calendar.context.attendance.occ.completed.label "Fullført">
+
+<!ENTITY calendar.context.attendance.all.accepted.accesskey "F">
+<!ENTITY calendar.context.attendance.all.accepted.label "Akseptert">
+<!ENTITY calendar.context.attendance.all.tentative.accesskey "p">
+<!ENTITY calendar.context.attendance.all.tentative.label "Godteke med atterhald">
+<!ENTITY calendar.context.attendance.all.declined.accesskey "s">
+<!ENTITY calendar.context.attendance.all.declined.label "Avvist">
+<!ENTITY calendar.context.attendance.all.delegated.accesskey "l">
+<!ENTITY calendar.context.attendance.all.delegated.label "Delegert">
+<!ENTITY calendar.context.attendance.all.needsaction.accesskey "l">
+<!ENTITY calendar.context.attendance.all.needsaction.label "Treng framleis handling">
+<!ENTITY calendar.context.attendance.all.inprogress.accesskey "P">
+<!ENTITY calendar.context.attendance.all.inprogress.label "Held på">
+<!ENTITY calendar.context.attendance.all.completed.accesskey "F">
+<!ENTITY calendar.context.attendance.all.completed.label "Fullført">
+
+<!-- Task Context Menu -->
+<!ENTITY calendar.context.progress.label "Framdrift">
+<!ENTITY calendar.context.progress.accesskey "F">
+<!ENTITY calendar.context.priority.label "Prioritet">
+<!ENTITY calendar.context.priority.accesskey "r">
+<!ENTITY calendar.context.postpone.label "Utset oppgåva">
+<!ENTITY calendar.context.postpone.accesskey "U">
+
+<!ENTITY percnt "&#38;#37;" ><!--=percent sign-->
+
+<!ENTITY calendar.context.markcompleted.label "Marker som fullført">
+<!ENTITY calendar.context.markcompleted.accesskey "M">
+
+<!ENTITY progress.level.0 "0 &percnt; fullført">
+<!ENTITY progress.level.0.accesskey "0">
+<!ENTITY progress.level.25 "25 &percnt; fullført">
+<!ENTITY progress.level.25.accesskey "2">
+<!ENTITY progress.level.50 "50 &percnt; fullført">
+<!ENTITY progress.level.50.accesskey "5">
+<!ENTITY progress.level.75 "75 &percnt; fullført">
+<!ENTITY progress.level.75.accesskey "7">
+<!ENTITY progress.level.100 "100 &percnt; fullført">
+<!ENTITY progress.level.100.accesskey "1">
+
+<!ENTITY priority.level.none "Ikkje spesifisert">
+<!ENTITY priority.level.none.accesskey "I">
+<!ENTITY priority.level.low "Låg">
+<!ENTITY priority.level.low.accesskey "L">
+<!ENTITY priority.level.normal "Normal">
+<!ENTITY priority.level.normal.accesskey "N">
+<!ENTITY priority.level.high "Høg">
+<!ENTITY priority.level.high.accesskey "H">
+
+<!ENTITY calendar.context.postpone.1hour.label "1 time">
+<!ENTITY calendar.context.postpone.1hour.accesskey "t">
+<!ENTITY calendar.context.postpone.1day.label "1 dag">
+<!ENTITY calendar.context.postpone.1day.accesskey "d">
+<!ENTITY calendar.context.postpone.1week.label "1 veke">
+<!ENTITY calendar.context.postpone.1week.accesskey "v">
+
+<!ENTITY calendar.copylink.label "Kopier lenkeadresse">
+<!ENTITY calendar.copylink.accesskey "K">
+
+<!-- Task View -->
+<!-- Note that the above *.context.* strings are currently used for the other
+ task action buttons -->
+<!ENTITY calendar.taskview.delete.label "Slett">
+
+<!-- Server Context Menu -->
+<!ENTITY calendar.context.newserver.label "Ny kalender…">
+<!ENTITY calendar.context.newserver.accesskey "N">
+<!ENTITY calendar.context.findcalendar.label "Finn kalender…" >
+<!ENTITY calendar.context.findcalendar.accesskey "F" >
+<!ENTITY calendar.context.deleteserver2.label "Slett kalender…">
+<!ENTITY calendar.context.deleteserver2.accesskey "S">
+
+<!-- LOCALIZATION NOTE (calendar.context.removeserver.label): Removing the
+ calendar is the general action of removing it, while deleting means to
+ clear the data and unsubscribing means just taking it out of the calendar
+ list. -->
+<!ENTITY calendar.context.removeserver.label "Fjern kalender…">
+<!ENTITY calendar.context.removeserver.accesskey "F">
+<!ENTITY calendar.context.unsubscribeserver.label "Avslutt abonnement på kalender…">
+<!ENTITY calendar.context.unsubscribeserver.accesskey "A">
+<!ENTITY calendar.context.synccalendars.label "Synkroniser kalendrar">
+<!ENTITY calendar.context.synccalendars.accesskey "S">
+<!ENTITY calendar.context.publish.label "Publiser kalender…">
+<!ENTITY calendar.context.publish.accesskey "P">
+<!ENTITY calendar.context.export.label "Eksporter kalender…">
+<!ENTITY calendar.context.export.accesskey "k">
+<!ENTITY calendar.context.properties.label "Eigenskapar">
+<!ENTITY calendar.context.properties.accesskey "E">
+
+<!-- LOCALIZATION NOTE (calendar.context.showcalendar.accesskey)
+ This is the access key used for the showCalendar string -->
+<!ENTITY calendar.context.showcalendar.accesskey "V">
+
+<!-- LOCALIZATION NOTE (calendar.context.hidecalendar.accesskey)
+ This is the access key used for the hideCalendar string -->
+<!ENTITY calendar.context.hidecalendar.accesskey "G">
+
+<!-- LOCALIZATION NOTE (calendar.context.showonly.accesskey)
+ This is the access key used for the showOnlyCalendar string -->
+<!ENTITY calendar.context.showonly.accesskey "b">
+<!ENTITY calendar.context.showall.label "Vis alle kalendrane">
+<!ENTITY calendar.context.showall.accesskey "a">
+
+<!ENTITY calendar.context.convertmenu.label "Konverter til">
+<!ENTITY calendar.context.convertmenu.accesskey.mail "K">
+<!ENTITY calendar.context.convertmenu.accesskey.calendar "n">
+<!ENTITY calendar.context.convertmenu.event.label "Hending…">
+<!ENTITY calendar.context.convertmenu.event.accesskey "H">
+<!ENTITY calendar.context.convertmenu.message.label "Melding…">
+<!ENTITY calendar.context.convertmenu.message.accesskey "M">
+<!ENTITY calendar.context.convertmenu.task.label "Oppgåve…">
+<!ENTITY calendar.context.convertmenu.task.accesskey "O">
+
+<!ENTITY calendar.tasks.view.minimonth.label "Mini-månad">
+<!ENTITY calendar.tasks.view.minimonth.accesskey "M">
+
+<!ENTITY calendar.tasks.view.calendarlist.label "Kalenderliste">
+<!ENTITY calendar.tasks.view.calendarlist.accesskey "l">
+
+<!ENTITY calendar.tasks.view.filtertasks.label "Filtrer oppgåver">
+<!ENTITY calendar.tasks.view.filtertasks.accesskey "F">
+
+<!-- Calendar Alarm Dialog -->
+
+<!ENTITY calendar.alarm.location.label "Stad:" >
+<!ENTITY calendar.alarm.details.label "Detaljar…" >
+
+<!ENTITY calendar.alarm.snoozefor.label "Utsett i" >
+<!ENTITY calendar.alarm.snoozeallfor.label "Utsett alle i" >
+<!ENTITY calendar.alarm.title.label "Kalenderalarm" >
+<!ENTITY calendar.alarm.dismiss.label "Avslutt" >
+<!ENTITY calendar.alarm.dismissall.label "Avslutt alle" >
+
+<!ENTITY calendar.alarm.snooze.5minutes.label "5 minutt" >
+<!ENTITY calendar.alarm.snooze.10minutes.label "10 minutt" >
+<!ENTITY calendar.alarm.snooze.15minutes.label "15 minutt" >
+<!ENTITY calendar.alarm.snooze.30minutes.label "30 minutt" >
+<!ENTITY calendar.alarm.snooze.45minutes.label "45 minutt" >
+<!ENTITY calendar.alarm.snooze.1hour.label "1 time" >
+<!ENTITY calendar.alarm.snooze.2hours.label "2 timar" >
+<!ENTITY calendar.alarm.snooze.1day.label "1 dag" >
+
+<!-- LOCALIZATION NOTE (calendar.alarm.snooze.cancel)
+ This string is not seen in the UI, it is read by screen readers when the
+ user focuses the "Cancel" button in the "Snooze for..." popup of the alarm
+ dialog. -->
+<!ENTITY calendar.alarm.snooze.cancel "Avbryt utsetting">
+
+<!-- Calendar Server Dialog -->
+<!ENTITY calendar.server.dialog.title.edit "Rediger kalenderen">
+<!ENTITY calendar.server.dialog.name.label "Namn:">
+
+<!-- Calendar Properties -->
+<!ENTITY calendarproperties.color.label "Farge:">
+<!ENTITY calendarproperties.webdav.label "iCalendar (ICS)">
+<!ENTITY calendarproperties.caldav.label "CalDAV">
+<!ENTITY calendarproperties.wcap.label "Sun Java System Calendar Server (WCAP)">
+<!ENTITY calendarproperties.format.label "Format:">
+<!ENTITY calendarproperties.location.label "Adresse:">
+<!ENTITY calendarproperties.refreshInterval.label "Oppdater kalenderen:">
+<!ENTITY calendarproperties.refreshInterval.manual.label "Manuelt">
+<!ENTITY calendarproperties.name.label "Namn:">
+<!ENTITY calendarproperties.readonly.label "Skriveverna">
+<!ENTITY calendarproperties.firealarms.label "Vis alarmar">
+<!ENTITY calendarproperties.cache3.label "Fråkopla støtte">
+<!ENTITY calendarproperties.enabled.label "Slå på denne kalenderen">
+<!ENTITY calendarproperties.enabled2.label "Aktiver denne kalenderen">
+<!ENTITY calendarproperties.forceDisabled.label "Fann ikkje tilbydaren av denne kalenderen. Dette skjer ofte om du har slått av eller avinstallert enkelte utvidingar.">
+<!ENTITY calendarproperties.unsubscribe.label "Stopp abonnement">
+<!ENTITY calendarproperties.unsubscribe.accesskey "S">
+
+<!-- Calendar Publish Dialog -->
+<!ENTITY calendar.publish.dialog.title "Publiser kalender">
+<!ENTITY calendar.publish.url.label "Adresse">
+<!ENTITY calendar.publish.publish.button "Publiser">
+<!ENTITY calendar.publish.close.button "Lat att">
+
+<!ENTITY calendar.publish.example.url.description "til dømes http://www.myserver.com/webdav/test.ics">
+
+<!-- Select Calendar Dialog -->
+<!ENTITY calendar.select.dialog.title "Vel kalender">
+
+<!-- Calendar Printing -->
+<!ENTITY calendar.print.window.title "Skriv ut kalender">
+<!ENTITY calendar.print.title.label "Tittel:">
+<!ENTITY calendar.print.layout.label "Utsjånad:">
+<!ENTITY calendar.print.range.label "Utskriftsområde">
+<!ENTITY calendar.print.currentView2.label "Aktiv vising">
+<!ENTITY calendar.print.selectedEventsAndTasks.label "Valde hendingar/oppgåver">
+<!ENTITY calendar.print.tasks.label "Oppgåver">
+<!ENTITY calendar.print.events.label "Hendingar">
+<!ENTITY calendar.print.custom.label "Hendingar mellom:">
+<!ENTITY calendar.print.from.label "Frå:">
+<!ENTITY calendar.print.to.label "Til:">
+<!ENTITY calendar.print.settingsGroup.label "Utskriftsoppsett">
+<!ENTITY calendar.print.optionsGroup.label "Innstillingar">
+<!ENTITY calendar.print.taskswithnoduedate.label "Oppgåver utan forfallsdato">
+<!ENTITY calendar.print.completedtasks.label "Fullførte oppgåver">
+
+<!-- Error reporting -->
+<!ENTITY calendar.error.detail "Detaljar…">
+<!ENTITY calendar.error.code "Feilkode:">
+<!ENTITY calendar.error.description "Skildring:">
+<!ENTITY calendar.error.title "Det oppstod ein feil">
+
+<!-- Extract buttons in message header -->
+<!ENTITY calendar.extract.event.button "Legg til som hending">
+<!ENTITY calendar.extract.task.button "Legg til som oppgåve">
+<!ENTITY calendar.extract.event.button.tooltip "Hent ut kalenderinfo frå meldinga og legg til i kalenderen din som ei hending">
+<!ENTITY calendar.extract.task.button.tooltip "Hent ut kalenderinfo frå meldinga og legg til i kalenderen din som ei oppgåve">
diff --git a/l10n-nn-NO/calendar/chrome/calendar/calendar.properties b/l10n-nn-NO/calendar/chrome/calendar/calendar.properties
new file mode 100644
index 0000000000..7c26018fe6
--- /dev/null
+++ b/l10n-nn-NO/calendar/chrome/calendar/calendar.properties
@@ -0,0 +1,696 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# Default name for new events
+newEvent=Ny hending
+
+# Titles for the event/task dialog
+newEventDialog=Ny hending
+editEventDialog=Rediger hending
+newTaskDialog=Ny oppgåve
+editTaskDialog=Rediger oppgåve
+
+# Do you want to save changes?
+askSaveTitleEvent=Lagra hendinga
+askSaveTitleTask=Lagra oppgåva
+askSaveMessageEvent=Hendinga er ikkje lagra. Vil du lagra hendinga?
+askSaveMessageTask=Oppgåva er ikkje lagra. Vil du lagra oppgåva?
+
+# Event Dialog Warnings
+warningEndBeforeStart=Sluttdatoen du skreiv inn er før start-datoen
+warningUntilDateBeforeStart=Til-datoen er før startdatoen
+
+# The name of the calendar provided with the application by default
+homeCalendarName=Heim
+
+# The name given to a calendar if an opened calendar has an empty filename
+untitledCalendarName=Namnlaus kalender
+
+# Event status: Tentative, Confirmed, Cancelled
+# ToDo task status: NeedsAction, InProcess, Completed, Cancelled
+statusTentative =Med atterhald
+statusConfirmed =Stadfesta
+eventStatusCancelled=Avbrote
+todoStatusCancelled =Avbrote
+statusNeedsAction =Treng handling
+statusInProcess =I framdrift
+statusCompleted =Ferdig
+
+# Task priority, these should match the priority.level.* labels in calendar.dtd
+highPriority=Høg
+normalPriority=Normal
+lowPriority=Låg
+
+importPrompt=Kva for kalender vil du importere desse hendingane til?
+exportPrompt=Kva for kalender vil du eksportere frå?
+pastePrompt=Kva for ein av dei skrivbare kalendrane dine vil du lime inn i?
+publishPrompt=Kva for kalender vil du publisere?
+
+# LOCALIZATION NOTE (pasteEventAlso): The users pasting operation includes among
+# others also a meeting invitation - this is used as a affix in
+# pasteNotifyAbout
+pasteEventAlso=Innliminga di inneheld eit møte
+# LOCALIZATION NOTE (pasteEventsAlso): The users pasting operation includes among
+# others also several meeting invitations - this is used as a affix in
+# pasteNotifyAbout
+pasteEventsAlso=Innliminga di inneheld møte
+# LOCALIZATION NOTE (pasteTaskAlso): The users pasting operation includes among
+# others also an assigned task - this is used as a affix in pasteNotifyAbout
+pasteTaskAlso=Innliminga di inneheld ei tildelt oppgåve
+# LOCALIZATION NOTE (pasteTasksAlso): The users pasting operation include among
+# others also several assigned tasks - this is used as a affix in
+# pasteNotifyAbout
+pasteTasksAlso=Innliminga di inneheld tildelte oppgåver
+# LOCALIZATION NOTE (pasteItemsAlso): The users pasting operation includes among
+# others also assigned task(s) and meeting invitation(s) - this is used as a affix
+# in pasteNotifyAbout
+pasteItemsAlso=Innliminga di inneheld møte og tildelte oppgåver
+# LOCALIZATION NOTE (pasteEventOnly): The users is pasting a meeting -
+# this is used as a affix in pasteNotifyAbout
+pasteEventOnly=Du limer inn eit møte
+# LOCALIZATION NOTE (pasteEventsOnly): The users is pasting several meetings -
+# this is used as a affix in pasteNotifyAbout
+pasteEventsOnly=Du limer inn møte
+# LOCALIZATION NOTE (pasteEventOnly): The users is pasting an assigned task -
+# this is used as a affix in pasteNotifyAbout
+pasteTaskOnly=Du limer inn ei tildelt oppgåve
+# LOCALIZATION NOTE (pasteEventsOnly): The users is pasting several assigned
+# tasks - this is used as a affix in pasteNotifyAbout
+pasteTasksOnly=Du limer inn tildelte oppgåver
+# LOCALIZATION NOTE (pasteEventsOnly): The users is pasting assigned task(s) and
+# meeting(s) - this is used as a affix in pasteNotifyAbout
+pasteItemsOnly=Du limer inn møte og tildelte oppgåver
+
+# LOCALIZATION NOTE (pasteNotifyAbout): Text displayed if pasting an invitation
+# or assigned task
+# %1$S - pasteEvent* or pasteTask*
+pasteNotifyAbout=%1$S - vil du sende ei opdatering til alle involverte?
+
+# LOCALIZATION NOTE (pasteAndNotifyLabel): button label used in calendar prompt
+# of the pasted item has attendees
+pasteAndNotifyLabel=Lim inn og send no
+# LOCALIZATION NOTE (pasteDontNotifyLabel): button label used in calendar prompt
+# of the pasted item has attendees
+pasteDontNotifyLabel=Lim inn utan å sende
+
+# LOCALIZATION NOTE (importItemsFailed):
+# %1$S will be replaced with number of failed items
+# %2$S will be replaced with last error code / error string
+importItemsFailed=Klarte ikkje å importere %1$S element. Den siste feilen var: %2$S
+# LOCALIZATION NOTE (noItemsInCalendarFile2):
+# %1$S will be replaced with file path
+noItemsInCalendarFile2=Klarte ikkje å importere frå %1$S. Det finst ingen importerbare element i denne fila.
+
+#spaces needed at the end of the following lines
+eventDescription=Skildring:
+
+unableToRead=Kan ikkje lese frå fila:
+unableToWrite=Kan ikkje skrive til fila:
+defaultFileName=MozillaCalEvents
+HTMLTitle=Mozilla Calendar
+
+# LOCALIZATION NOTE (timezoneError):
+# used for an error message like 'An unknown and undefined timezone was found while reading c:\Mycalendarfile.ics'
+# %1$S will be replaced with the path to a file
+timezoneError=Ei ukjend og udefinert tidssone vart funnen under lesing av %1$S.
+
+# LOCALIZATION NOTE (duplicateError):
+# %1$S will be replaced with number of duplicate items
+# %2$S will be replaced with a file path pointing to a calendar
+duplicateError=%1$S hendingar vart ignorerte sidan dei finst både i målkalenderen og i %2$S.
+
+unableToCreateProvider=Ein feil oppstod under førebuinga til bruk av kalenderen på %1$S. Han vil ikkje vere tilgjengeleg.
+
+# Sample: Unknown timezone "USPacific" in "Dentist Appt". Using the 'floating' local timezone instead: 2008/02/28 14:00:00
+unknownTimezoneInItem=Ukjend tidssone "%1$S" in "%2$S". Denne vert handsama som «flytande» lokal tidssone: %3$S
+TimezoneErrorsAlertTitle=Tidssonefeil
+TimezoneErrorsSeeConsole=Sjå feilkonsoll: Ukjende tidssoner vert handsama som «flytande» lokal tidssone.
+
+# The following strings are for the prompt to delete/unsubscribe from the calendar
+removeCalendarTitle=Fjern kalender
+removeCalendarButtonDelete=Slett kalender
+removeCalendarButtonUnsubscribe=Stopp abonnement
+
+# LOCALIZATION NOTE (removeCalendarMessageDeleteOrUnsubscribe): Shown for
+# calendar where both deleting and unsubscribing is possible.
+# %1$S: The name of a calendar
+removeCalendarMessageDeleteOrUnsubscribe=Vil du fjerne kalenderen «%1$S»? Stopping av abonnementet vil fjerne kalenderen frå lista, sletting vil også permanent fjerne tilhøyrande data.
+
+# LOCALIZATION NOTE (removeCalendarMessageDelete): Shown for calendar where
+# deleting is the only option.
+# %1$S: The name of a calendar
+removeCalendarMessageDelete=Ønskjer du å permanent slette kalenderen «%1$S»?
+
+# LOCALIZATION NOTE (removeCalendarMessageUnsubscribe): Shown for calendar
+# where unsubscribing is the only option.
+# %1$S: The name of a calendar
+removeCalendarMessageUnsubscribe=Ønskjer du å stoppe abonnementet på kalenderen «%1$S»?
+
+WeekTitle=Veke %1$S
+None=Ingen
+
+# Error strings
+## @name UID_NOT_FOUND
+## @loc none
+
+# LOCALIZATION NOTE (tooNewSchemaErrorText):
+# %1$S will be replaced with the name of the host application, e.g. 'Thunderbird'
+# %2$S will be replaced with the name of the new copy of the file, e.g. 'local-2020-05-11T21-30-17.sqlite'
+tooNewSchemaErrorText=Kalenderdataa dine er ikkje kompatible med denne versjonen av %1$S. Kalenderdataa i profilen din vart oppdaterte av ein nyare versjon av %1$S. Ein sikkerheitskopi av datafila er oppretta med namnet «%2$S». Fortset med ei nyoppretta datafil.
+
+# List of events or todos (unifinder)
+eventUntitled=Manglar tittel
+
+# Tooltips of events or todos
+tooltipTitle=Tittel:
+tooltipLocation=Stad:
+# event date, usually an interval, such as
+# Date: 7:00--8:00 Thu 9 Oct 2011
+# Date: Thu 9 Oct 2000 -- Fri 10 Oct 2000
+tooltipDate=Dato:
+# event calendar name
+tooltipCalName=Kalendernamn:
+# event status: tentative, confirmed, cancelled
+tooltipStatus=Status:
+# event organizer
+tooltipOrganizer=Organisert av:
+# task/todo fields
+# start date time, due date time, task priority number, completed date time
+tooltipStart=Start:
+tooltipDue=Forfall:
+tooltipPriority=Prioritet:
+tooltipPercent=% fullført:
+tooltipCompleted=Fullført:
+
+#File commands and dialogs
+New=Ny
+Open=Opna
+filepickerTitleImport=Importer
+filepickerTitleExport=Eksporter
+
+# Filters for export/import/open file picker. %1$S will be replaced with
+# wildmat used to filter files by extension, such as (*.html; *.htm).
+filterIcs=iCalendar (%1$S)
+filterHtml=Nettside (%1$S)
+
+# Remote calendar errors
+genericErrorTitle=Det oppstod ein feil
+httpPutError=Publisering av kalenderfila feila.\nStatuskode: %1$S: %2$S
+otherPutError=Publisering av kalenderfila feila.\nStatuskode: 0x%1$S
+
+# LOCALIZATION NOTE (readOnlyMode):
+# used for an message like 'There has been an error reading data for calendar: Home. It has been...'
+# %1$S will be replaced with the name of a calendar
+readOnlyMode=Ein feil har oppstått under lesing av kalenderdata: %1$S. Han er no skriveverna, sidan endringar i han truleg vil føre til tap av data. Du kan endre dette ved å velje «Rediger kalender».
+
+# LOCALIZATION NOTE (disabledMode):
+# used for an message like 'There has been an error reading data for calendar: Home. It has been...'
+# %1$S will be replaced with the name of a calendar
+disabledMode=En feil oppstod under lesing av data i kalenderen: %1$S. Og er difor avslått til det er trygt å bruke han.
+
+# LOCALIZATION NOTE (minorError):
+# used for an message like 'There has been an error reading data for calendar: Home. However this...'
+# %1$S will be replaced with the name of a calendar
+minorError=Ein feil har oppstått under lesing av kalenderdata: %1$S. Men sidan feilen verkar å vere liten, vil programmet prøve å fortsetje.
+
+# LOCALIZATION NOTE (stillReadOnlyError):
+# used for an message like 'There has been an error reading data for calendar: Home.'
+# %1$S will be replaced with the name of a calendar
+stillReadOnlyError=Ein feil har oppstått under lesing av kalenderdata: %1$S.
+utf8DecodeError=Ein feil har oppstått under dekoding av ei iCalendar (ics)-fil til UTF-8. Kontroller at fila, medrekna symbol og utheva teikn, er koda med UTF-8.
+icsMalformedError=Lesing av ei iCalendar (ics)-fil feila. Kontroller at fila samsvarar med iCalendar (ics)-filsyntaks.
+itemModifiedOnServerTitle=Hending endra på tenaren
+itemModifiedOnServer=Denne hendinga er nyleg blitt endra på tenaren.\n
+modifyWillLoseData=Dersom du sender inn endringane dine, overskriv du endringane som er gjort på tenaren.
+deleteWillLoseData=Slettar du denne hendinga vil endringane som er gjort på tenaren gå tapt.
+updateFromServer=Forkast endringane mine og last inn på nytt
+proceedModify=Send endringane mine likevel
+proceedDelete=Slett likevel
+dav_notDav=Ressursen på %1$S er anten ikkje ei DAV-samling eller er ikkje tilgjengeleg
+dav_davNotCaldav=Ressursen på %1$S er ei DAV-samling, men ikkje ein CalDAV-kalender
+itemPutError=Det oppstod ein feil ved lagring av hendingar på tenaren.
+itemDeleteError=Det oppstod ein feil ved sletting av hendingar på tenaren.
+caldavRequestError=Det oppstod ein feil ved sending av invitasjonen.
+caldavResponseError=Det oppstod ein feil ved sending av svaret.
+caldavRequestStatusCode=Statuskode: %1$S
+caldavRequestStatusCodeStringGeneric=Klarte ikkje å handsame førespurnaden.
+caldavRequestStatusCodeString400=Førespurnaden har feil syntaks og kan ikkje handsamast.
+caldavRequestStatusCodeString403=Brukaren manglar nødvendige rettar for å utføre førespurnaden.
+caldavRequestStatusCodeString404=Fann ikkje resursen.
+caldavRequestStatusCodeString409=Resurskonflikt.
+caldavRequestStatusCodeString412=Vilkåra feila.
+caldavRequestStatusCodeString500=Intern serverfeil.
+caldavRequestStatusCodeString502=Problem med gateway (proxy-konfigurasjon?).
+caldavRequestStatusCodeString503=Intern tenarfeil (serveren er mellombels nede?).
+caldavRedirectTitle=Oppdatere plassering for kalenderen %1$S?
+caldavRedirectText=Førespurnaden for %1$S er vidarekopla til ei ny plassering. Ønskjer du å endre plassering til følgjande verdi?
+caldavRedirectDisableCalendar=Slå av kalender
+
+
+# LOCALIZATION NOTE (likelyTimezone):
+# Translators, please put the most likely timezone(s) where the people using
+# your locale will be. Use the Olson ZoneInfo timezone name *in English*,
+# ie "Europe/Paris", (continent or ocean)/(largest city in timezone).
+# Order does not matter, except if two historically different zones now match,
+# such as America/New_York and America/Toronto, will only find first listed.
+# (Particularly needed to guess the most relevant timezones if there are
+# similar timezones at the same June/December GMT offsets with alphabetically
+# earlier ZoneInfo timezone names. Sample explanations for English below.)
+# for english-US:
+# America/Los_Angeles likelier than America/Dawson
+# America/New_York likelier than America/Detroit (NY for US-EasternTime)
+# for english:
+# Europe/London likelier than Atlantic/Canary
+# Europe/Paris likelier than Africa/Ceuta (for WestEuropeanTime)
+# America/Halifax likelier than America/Glace_Bay (Canada-AtlanticTime)
+# America/Mexico_City likelier than America/Cancun
+# America/Argentina/Buenos_Aires likelier than America/Araguaina
+# America/Sao_Paolo (may not recognize: summer-time dates change every year)
+# Asia/Singapore likelier than Antarctica/Casey
+# Asia/Tokyo likelier than Asia/Dili
+# Africa/Lagos likelier than Africa/Algiers (for WestAfricanTime)
+# Africa/Johannesburg likelier than Africa/Blantyre (for SouthAfricanStdTime)
+# Africa/Nairobi likelier than Africa/Addis_Ababa (for EastAfricanTime)
+# Australia/Brisbane likelier than Antarctica/DumontDUrville
+# Australia/Sydney likelier than Australia/Currie or Australia/Hobart
+# Pacific/Auckland likelier than Antarctica/McMurdo
+likelyTimezone=Europe/Oslo, Europe/Stockholm, Europe/Copenhagen, Europe/London, Europe/Paris, Europe/Berlin, America/New_York
+
+# Guessed Timezone errors and warnings.
+# Testing note:
+# * remove preference for calendar.timezone.default in userprofile/prefs.js
+# * repeat
+# - set OS timezone to a city (windows: click right on clock in taskbar)
+# - restart
+# - observe guess in error console and verify whether guessed timezone city
+# makes sense for OS city.
+#
+# 'Warning: Operating system timezone "E. South America Standard Time"
+# no longer matches ZoneInfo timezone "America/Sao_Paulo".'
+# Testing notes:
+# - Brasil DST change dates are set every year by decree, so likely out of sync.
+# - Only appears on OSes from which timezone can be obtained
+# (windows; or TZ env var, /etc/localtime target path, or line in
+# /etc/timezone or /etc/sysconfig/clock contains ZoneInfo timezone id).
+# - Windows: turning off "Automatically adjust clock for daylight saving time"
+# can also trigger this warning.
+WarningOSTZNoMatch=Åtvaring: Tidssona i opreativsystemet («%1$S»)\nsamsvarar ikkje lenger med den interne ZoneInfo-tidssona («%2$S»).
+
+# "Skipping Operating System timezone 'Pacific/New_Country'."
+# Testing note: not easily testable. May occur someday if (non-windows)
+# OS uses different version of ZoneInfo database which has a timezone name
+# that is not included in our current ZoneInfo database (or if the mapping
+# mapping from windows to ZoneInfo timezone ids does).
+SkippingOSTimezone=Hoppar over tidssona til operativsystemet («%1$S»).
+
+# "Skipping locale timezone 'America/New_Yawk'."
+# Testing note: Skipping occurs if a likelyTimezone id is unknown or misspelled.
+SkippingLocaleTimezone=Hoppar over lokal tidssone '%1$S'.
+
+# Testing note: "No match" timezones include Bucharest on W2k.
+# Brazil timezones may be "No match" (change every year, so often out of date,
+# and changes are often more than a week different).
+warningUsingFloatingTZNoMatch=Åtvaring: Brukar «flytande» tidssone.\nIngen tidssonedata frå ZoneInfo samsvarte med tidssonedata på operativsystemet.
+
+# "Warning: Using guessed timezone
+# America/New York (UTC-0500/-0400).
+# [rfc2445 summer daylight saving shift rules for timezone]
+# This ZoneInfo timezone almost matches/seems to match..."
+# This ZoneInfo timezone was chosen based on ... "
+WarningUsingGuessedTZ=Åtvaring: Gjettar tidssone\n %1$S (UTC%2$S).\n%3$S\n%4$S
+
+# Testing note: "Almost match" timezones include Cairo on W2k.
+TZAlmostMatchesOSDifferAtMostAWeek=Denne ZoneInfo-tidssona passar nesten til tidssona i operativsystemet. \nFor denne regelen vil neste byte mellom standardtid og vintertid skje\nmaks ei veke etter operativsystemet.\nDet kan oppstå konflikt i data, som t.d. at startdato\neller ulike reglar, eller forskjellar for ikkje-gregorianske kalendrar.
+
+TZSeemsToMatchOS=Denne ZoneInfo-tidssona ser ut til å samsvare med tidssona på operativsystemet i år.
+
+# LOCALIZATION NOTE (TZFromOS):
+# used for a display of a chosen timezone
+# %1$S will be replaced with the name of a timezone
+TZFromOS=Denne ZoneInfo-tidssona vart vald basert på tidssoneidentifiseringa\n på operativsystemet, «%1$S».
+
+# Localization note (TZFromLocale): Substitute name of your locale language.
+TZFromLocale=Denne ZoneInfo-tidssona vart vald basert på ei passande operativsystem\ntidssone som dei fleste brukarane av US English har.
+
+TZFromKnownTimezones=Denne ZoneInfo-tidssona vart vald basert på samsvar mellom operativsystem\ntidssona og kjende tidssoner i alfabetisk rekkjefølgje etter tidssone-ID.
+
+# Print Layout
+tasksWithNoDueDate = Oppgåver utan forfallsdato
+
+# Providers
+caldavName=CalDAV
+compositeName=Kompositt
+icsName=iCalendar (ICS)
+memoryName=Førebels (minne)
+storageName=Lokal (SQLite)
+
+# Used in created html code for export
+htmlPrefixTitle=Tittel
+htmlPrefixWhen=Når
+htmlPrefixLocation=Stad
+htmlPrefixDescription=Skildring
+htmlTaskCompleted=%1$S (fullført)
+
+# Categories
+addCategory=Legg til kategori
+multipleCategories=Fleire kategoriar
+
+today=I dag
+tomorrow=I morgon
+yesterday=I går
+
+#Today pane
+eventsonly=Hendingar
+eventsandtasks=Hendingar og oppgåver
+tasksonly=Oppgåver
+shortcalendarweek=Veke
+
+go=Gå
+
+# Some languages have different conjugations of 'next' and 'last'. If yours
+# does not, simply repeat the value. This will be used with day names, as in
+# 'next Sunday'.
+next1=neste
+next2=neste
+last1=siste
+last2=siste
+
+# Alarm Dialog
+# LOCALIZATION NOTE (alarmWindowTitle.label): Semi-colon list of plural
+# forms. See: http://developer.mozilla.org/en/Localization_and_Plurals
+alarmWindowTitle.label=#1 påminning;#1 påminningar
+
+# LOCALIZATION NOTE (alarmStarts):
+# used for a display the start of an alarm like 'Starts: Thu 2 Oct 2008 13:21'
+# %1$S will be replaced with a date-time
+alarmStarts=Startar: %1$S
+
+# LOCALIZATION NOTE (alarmTodayAt):
+# used for a display the date-time of an alarm like 'Today at Thu 2 Oct 2008 13:21'
+# %1$S will be replaced with a date-time
+alarmTodayAt=I dag %1$S
+
+# LOCALIZATION NOTE (alarmTomorrowAt):
+# used for a display the date-time of an alarm like 'Tomorrow at Thu 2 Oct 2008 13:21'
+# %1$S will be replaced with a date-time
+alarmTomorrowAt=I morgon %1$S
+
+# LOCALIZATION NOTE (alarmYesterdayAt):
+# used for a display the date-time of an alarm like 'Yesterday at Thu 2 Oct 2008 13:21'
+# %1$S will be replaced with a date-time
+alarmYesterdayAt=I går %1$S
+
+# Alarm interface strings
+# LOCALIZATION NOTE: These strings do not get displayed. They are only visible
+# when exporting an item with i.e a DISPLAY alarm, that doesn't have a
+# description set, or an EMAIL alarm that doesn't have a summary set.
+alarmDefaultDescription=Standard Mozilla-skildring
+alarmDefaultSummary=Standard Mozilla-oppsummering
+
+# LOCALIZATION NOTE (alarmSnoozeLimitExceeded): Semi-colon list of plural
+# forms.
+alarmSnoozeLimitExceeded=Du kan ikkje slumre ein alarm meir enn #1 månad.;Du kan ikkje slumre ein alarm over #1 månadar.
+
+taskDetailsStatusNeedsAction=Treng handling
+
+# LOCALIZATION NOTE (taskDetailsStatusInProgress):
+# used for a display of how much of a task is completed '25% Complete'
+# %1$S will be replaced with the number of percentage completed
+taskDetailsStatusInProgress=%1$S%% fullført
+taskDetailsStatusCompleted=Fullført
+
+# LOCALIZATION NOTE (taskDetailsStatusCompletedOn):
+# used for a display of completion date like 'Completed on Thu 2 Oct 2008 13:21'
+# %1$S will be replaced with the completion date-time of the task
+taskDetailsStatusCompletedOn=Fullført den %1$S
+taskDetailsStatusCancelled=Avbrote
+
+gettingCalendarInfoCommon=Kontrollerer kalendrar…
+
+# LOCALIZATION NOTE (gettingCalendarInfoDetail):
+# used for a progress-display of processed like 'Checking Calendar 5 of 10'
+# %1$S will be replaced with the index of the currently processed calendar
+# %2$S will be replaced with the total numbers of calendars
+gettingCalendarInfoDetail=Kontrollerer kalender %1$S av %2$S
+
+# LOCALIZATION NOTE (errorCode):
+# %1$S will be replaced with the number of an error code
+errorCode=Feilkode: %1$S
+
+# LOCALIZATION NOTE (errorDescription):
+# %1$S will be replaced with the description of an error
+errorDescription=Skildring: %1$S
+
+# LOCALIZATION NOTE (errorWriting):
+# used for an message like 'An error occurred when writing to the calendar Home!'
+# %1$S will be replaced with the name of a calendar
+errorWriting2=Ein feil oppstod under skriving til kalenderen %1$S! Sjå nedanfor for meir informasjon.
+
+# LOCALIZATION NOTE (errorWritingDetails):
+# This will be displayed in the detail section of the error dialog
+errorWritingDetails=Viss du ser denne meldinga etter å ha slumra eller avvist ei påminning, og dette er for ein kalender du ikkje vil leggje til eller redigere hendingar for, kan du markere denne kalenderen som skrivebeskytta for å unngå at dette skjer i framtida. For å gjere det, gå til kalendereigenskapane ved å høgreklikke på denne kalenderen i lista i kalenderen eller oppgåvevisinga.
+
+# LOCALIZATION NOTE (tooltipCalendarDisabled):
+# used for an alert-message like 'The calendar Home is momentarily not available'
+# %1$S will be replaced with the name of a calendar
+tooltipCalendarDisabled=Kalenderene %1$S er førebels ikkje tilgjengeleg
+
+# LOCALIZATION NOTE (tooltipCalendarReadOnly):
+# used for an message like 'The calendar Home is readonly'
+# %1$S will be replaced with the name of a calendar
+tooltipCalendarReadOnly=Kalenderen %1$S er skriveverna
+
+taskEditInstructions=Trykk her for å leggje til ei ny oppgåve
+taskEditInstructionsReadonly=Vel ein kalender som kan skrivast til
+taskEditInstructionsCapability=Vel ein kalender som støttar oppgåver
+
+eventDetailsStartDate=Start:
+eventDetailsEndDate=Slutt:
+
+# LOCALIZATION NOTE (datetimeWithTimezone):
+# used for a display of a date-time with timezone 'Thu 2 Oct 2008 13:21', Europe/Paris
+# %1$S will be replaced with the completion date-time
+# %2$S will be replaced with the name of the timezone
+datetimeWithTimezone=%1$S, %2$S
+
+# LOCALIZATION NOTE (singleLongCalendarWeek):
+# used for display of calendar weeks in short form like 'Calendar Week 43'
+# %1$S will be replaced with the index of the week
+singleLongCalendarWeek=Kalenderveke: %1$S
+
+# LOCALIZATION NOTE (severalLongCalendarWeeks):
+# used for display of calendar weeks in short form like 'Calendar Weeks 43 - 45'
+# %1$S will be replaced with the index of the start-week
+# %2$S will be replaced with the index of the end-week
+severalLongCalendarWeeks=kalenderveker %1$S-%2$S
+
+# LOCALIZATION NOTE (singleShortCalendarWeek):
+# used for display of calendar weeks in short form like 'CW 43'
+# %1$S will be replaced with the index of the week
+singleShortCalendarWeek=Veke: %1$S
+
+# LOCALIZATION NOTE (severalShortCalendarWeeks):
+# used for display of calendar weeks in short form like 'CWs 43 - 45'
+# %1$S will be replaced with the index of the start-week
+# %2$S will be replaced with the index of the end-week
+severalShortCalendarWeeks=Veke: %1$S-%2$S
+
+# LOCALIZATION NOTE (multiweekViewWeek):
+# Used for displaying the week number in the first day box of every week
+# in multiweek and month views.
+# It allows to localize the label with the week number in case your locale
+# requires it.
+# Take into account that this label is placed in the same room of the day label
+# inside the day boxes, exactly on left side, hence a possible string shouldn't
+# be too long otherwise it will create confusion between the week number and
+# the day number other than a possible crop when the window is resized.
+#
+# %1$S is a number from 1 to 53 that represents the week number.
+multiweekViewWeek=V %1$S
+
+# Task tree, "Due In" column.
+# LOCALIZATION NOTE (dueInDays, dueInHours): Semi-colon list of plural
+# forms. See: http://developer.mozilla.org/en/Localization_and_Plurals
+dueInDays=#1 dag;#1 dagar
+dueInHours=#1 time;#1 timar
+dueInLessThanOneHour=< 1 time
+
+# LOCALIZATION NOTE (monthInYear):
+# used for display of Month-dates like 'December 2008'
+# %1$S will be replaced with name of the month
+# %2$S will be replaced with the year
+monthInYear=%1$S %2$S
+
+# LOCALIZATION NOTE (monthInYear.monthFormat):
+# If your language requires a different declension, change this to
+# one of the values specified in dateFormat.properties.
+# In any case, DO NOT TRANSLATE.
+monthInYear.monthFormat=nominative
+
+# LOCALIZATION NOTE (formatDateLong):
+# used for display dates in long format like 'Mon 15 Oct 2008' when it's
+# impossible to retrieve the formatatted date from the OS.
+# %1$S will be replaced with name of the day in short format;
+# %2$S will be replaced with the day-index of the month, possibly followed by an ordinal symbol
+# (depending on the string dayOrdinalSymbol in dateFormat.properties);
+# %3$S will be replaced with the name of the month in short format;
+# %4$S will be replaced with the year.
+formatDateLong=%1$S %2$S %3$S %4$S
+
+# LOCALIZATION NOTE (dayHeaderLabel):
+# used for display the labels in the header of the days in day/week views in short
+# or long format. For example: 'Monday 6 Oct.' or 'Mon. 6 Oct.'
+# %1$S will be replaced with name of the day in short or long format
+# %2$S will be replaced with the day-index of the month, possibly followed by an ordinal symbol
+# (depending on the string dayOrdinalSymbol in dateFormat.properties), plus the name
+# of the month in short format (the day/month order depends on the OS settings).
+dayHeaderLabel=%1$S %2$S
+
+# LOCALIZATION NOTE (daysIntervalInMonth):
+# used for display of intervals in the form of 'March 3 - 9, 2008'
+# %1$S will be replaced with name of the month of the start date
+# %2$S will be replaced with the day-index of the start date possibly followed by an ordinal symbol
+# %3$S will be replaced with the day-index of the end date possibly followed by an ordinal symbol
+# %4$S will be replaced with the common year of both dates
+# The presence of the ordinal symbol in the day-indexes depends on the string
+# dayOrdinalSymbol in dateFormat.properties
+daysIntervalInMonth=%1$S %2$S – %3$S, %4$S
+
+# LOCALIZATION NOTE (daysIntervalInMonth.monthFormat):
+# If your language requires a different declension, change this to
+# one of the values specified in dateFormat.properties.
+# In any case, DO NOT TRANSLATE.
+daysIntervalInMonth.monthFormat=nominative
+
+# LOCALIZATION NOTE (daysIntervalBetweenMonths):
+# used for display of intervals in the form 'September 29 - October 5, 2008'
+# %1$S will be replaced with name of the month of the start date
+# %2$S will be replaced with the day-index of the start date possibly followed by an ordinal symbol
+# %3$S will be replaced with name of the month of the end date
+# %4$S will be replaced with the day-index of the end date possibly followed by an ordinal symbol
+# %5$S will be replaced with the common year of both dates
+# The presence of the ordinal symbol in the day-indexes depends on the string
+# dayOrdinalSymbol in dateFormat.properties
+daysIntervalBetweenMonths=%1$S %2$S – %3$S %4$S, %5$S
+
+# LOCALIZATION NOTE (daysIntervalBetweenMonths.monthFormat):
+# If your language requires a different declension, change this to
+# one of the values specified in dateFormat.properties.
+# In any case, DO NOT TRANSLATE.
+daysIntervalBetweenMonths.monthFormat=nominative
+
+# LOCALIZATION NOTE (daysIntervalBetweenYears):
+# used for display of intervals in the form 'December 29, 2008 - January 4, 2009'
+# %1$S will be replaced with name of the month of the start date
+# %2$S will be replaced with the day-index of the start date possibly followed by an ordinal symbol
+# %3$S will be replaced with the year of the start date
+# %4$S will be replaced with name of the month of the end date
+# %5$S will be replaced with the day-index of the end date possibly followed by an ordinal symbol
+# %6$S will be replaced with the year of the end date
+# The presence of the ordinal symbol in the day-indexes depends on the string
+# dayOrdinalSymbol in dateFormat.properties
+daysIntervalBetweenYears=%1$S %2$S, %3$S – %4$S %5$S, %6$S
+
+# LOCALIZATION NOTE (daysIntervalBetweenYears.monthFormat):
+# If your language requires a different declension, change this to
+# one of the values specified in dateFormat.properties.
+# In any case, DO NOT TRANSLATE.
+daysIntervalBetweenYears.monthFormat=nominative
+
+# LOCALIZATION NOTE (datetimeIntervalOnSameDateTime):
+# used for intervals where end is equals to start
+# displayed form is '5 Jan 2006 13:00'
+# %1$S will be replaced with the date of the start date
+# %2$S will be replaced with the time of the start date
+datetimeIntervalOnSameDateTime=%1$S %2$S
+
+# LOCALIZATION NOTE (datetimeIntervalOnSameDay):
+# used for intervals where end is on the same day as start, so we can leave out the
+# end date but still include end time
+# displayed form is '5 Jan 2006 13:00 - 17:00'
+# %1$S will be replaced with the date of the start date
+# %2$S will be replaced with the time of the start date
+# %3$S will be replaced with the time of the end date
+datetimeIntervalOnSameDay=%1$S %2$S – %3$S
+
+# LOCALIZATION NOTE (datetimeIntervalOnSeveralDays):
+# used for intervals spanning multiple days by including date and time
+# displayed form is '5 Jan 2006 13:00 - 7 Jan 2006 9:00'
+# %1$S will be replaced with the date of the start date
+# %2$S will be replaced with the time of the start date
+# %3$S will be replaced with the date of the end date
+# %4$S will be replaced with the time of the end date
+datetimeIntervalOnSeveralDays=%1$S %2$S – %3$S %4$S
+
+# LOCALIZATION NOTE (datetimeIntervalTaskWithoutDate):
+# used for task without start and due date
+# (showed only in exported calendar in Html format)
+datetimeIntervalTaskWithoutDate= ingen start- eller forfallsdato
+# LOCALIZATION NOTE (datetimeIntervalTaskWithoutDueDate):
+# used for intervals in task with only start date
+# displayed form is 'start date 5 Jan 2006 13:00'
+# (showed only in exported calendar in Html format)
+# %1$S will be replaced with the date of the start date
+# %2$S will be replaced with the time of the start date
+datetimeIntervalTaskWithoutDueDate=startdato %1$S %2$S
+# LOCALIZATION NOTE (datetimeIntervalTaskWithoutStartDate):
+# used for intervals in task with only due date
+# displayed form is 'due date 5 Jan 2006 13:00'
+# (showed only in exported calendar in Html format)
+# %1$S will be replaced with the date of the due date
+# %2$S will be replaced with the time of the due date
+datetimeIntervalTaskWithoutStartDate=innan %1$S %2$S
+
+# LOCALIZATION NOTE (dragLabelTasksWithOnlyEntryDate
+# dragLabelTasksWithOnlyDueDate)
+# Labels that appear while dragging a task with only
+# entry date OR due date
+dragLabelTasksWithOnlyEntryDate=Starttidspunkt
+dragLabelTasksWithOnlyDueDate=Forfall
+
+deleteTaskLabel=Slett oppgåve
+deleteTaskAccesskey=l
+deleteItemLabel=Slett
+deleteItemAccesskey=l
+deleteEventLabel=Slett hending
+deleteEventAccesskey=l
+
+calendarPropertiesEveryMinute=Kvart minutt;Kvart #1 minutt
+
+# LOCALIZATION NOTE (extractUsing)
+# Used in message header
+# %1$S will be replaced with language name from languageNames.properties
+extractUsing=Med %1$S
+
+# LOCALIZATION NOTE (extractUsingRegion)
+# Used in message header
+# %1$S will be replaced with language name from languageNames.properties
+# %2$S will be replaced with region like US in en-US
+extractUsingRegion=Brukar %1$S (%2$S)
+
+# LOCALIZATION NOTE (unit)
+# Used to determine the correct plural form of a unit
+unitMinutes=#1 minutt;#1 minutt
+unitHours=#1 time;#1 timar
+unitDays=#1 dag;#1 dagar
+unitWeeks=#1 veke;#1 veker
+
+# LOCALIZATION NOTE (showCalendar)
+# Used in calendar list context menu
+# %1$S will be replaced with the calendar name
+# uses the access key calendar.context.togglevisible.accesskey
+showCalendar=Vis %1$S
+hideCalendar=Gøym %1$S
+# uses the access key calendar.context.showonly.accesskey
+showOnlyCalendar=Vis berre %1$S
+
+# LOCALIZATION NOTE (modifyConflict)
+# Used by the event dialog to resolve item modification conflicts.
+modifyConflictPromptTitle=Konflikt ved endring av element
+modifyConflictPromptMessage=Elementet som vert redigert i dialogen er endra sidan det vart opna.
+modifyConflictPromptButton1=Skriv over dei andre endringane
+modifyConflictPromptButton2=Forkast desse endringane
+
+# Accessible description of a grid calendar with no selected date
+minimonthNoSelectedDate=Ingen dato vald
diff --git a/l10n-nn-NO/calendar/chrome/calendar/calendarCreation.dtd b/l10n-nn-NO/calendar/chrome/calendar/calendarCreation.dtd
new file mode 100644
index 0000000000..87466b4d8b
--- /dev/null
+++ b/l10n-nn-NO/calendar/chrome/calendar/calendarCreation.dtd
@@ -0,0 +1,51 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY wizard.title "Lag ny kalender" >
+<!ENTITY wizard.label "Lag ein ny kalender" >
+<!ENTITY wizard.description "Lokaliser kalenderen" >
+
+<!ENTITY initialpage.description "Kalenderen kan anten lagrast lokalt, eller på ein tenar slik at han er tilgjengeleg for andre." >
+<!ENTITY initialpage.computer.label "På datamaskina mi">
+<!ENTITY initialpage.network.label "På nettverket">
+
+<!ENTITY locationpage.description "Spesifiser informasjon om kvar ein finn kalenderen" >
+<!ENTITY locationpage.login.description "Valfritt: Spesifiser brukarnamn og passord" >
+<!ENTITY locationpage.username.label "Brukarnamn:" >
+<!ENTITY locationpage.password.label "Passord:" >
+
+<!ENTITY custompage.shortdescription "Tilpass kalenderen din" >
+<!ENTITY custompage.longdescription "Du kan gje kalenderen din eit eige namn, og eigen farge for hendingar i kalenderen." >
+
+<!ENTITY finishpage.shortdescription "Kalender laga" >
+<!ENTITY finishpage.longdescription "Kalenderen er laga." >
+
+<!-- Below are new strings for the revised new calendar dialog. The above strings should be
+ removed/renamed later on -->
+
+<!ENTITY sourcetabs.other.label "Anna">
+
+<!ENTITY buttons.create.label "Lag kalender">
+<!ENTITY buttons.create.accesskey "r">
+
+<!ENTITY buttons.find.label "Finn kalendrar">
+<!ENTITY buttons.find.accesskey "F">
+
+<!ENTITY buttons.back.label "Tilbake">
+<!ENTITY buttons.back.accesskey "b">
+
+<!ENTITY buttons.subscribe.label "Abonner">
+<!ENTITY buttons.subscribe.accesskey "b">
+
+<!ENTITY calendartype.label "Kalendertype:">
+<!ENTITY location.label "Adresse:">
+<!ENTITY location.placeholder "URL eller vertsnamn på kalenderserveren">
+
+<!ENTITY network.nocredentials.label "Denne adressa krev ikkje innlogging">
+<!ENTITY network.loading.description "Vent medan kalendrane dine blir oppdaga.">
+<!ENTITY network.notfound.description "Kan ikkje finna kalendrar på denne adressa. Kontroller innstillingane dine.">
+<!ENTITY network.authfail.description "Innlogginga du spesifiserte fungerte ikkje. Ver snill og kontroller innstillingane dine.">
+
+<!ENTITY network.subscribe.single.description "Vel kalendrane du vil abonnere på.">
+<!ENTITY network.subscribe.multiple.description "Fleire kalendertypar er tilgjengelege på denne adressa. Vel ei kalendertype og marker kalendrane du vil abonnera på.">
diff --git a/l10n-nn-NO/calendar/chrome/calendar/calendarCreation.properties b/l10n-nn-NO/calendar/chrome/calendar/calendarCreation.properties
new file mode 100644
index 0000000000..9d00b3e42c
--- /dev/null
+++ b/l10n-nn-NO/calendar/chrome/calendar/calendarCreation.properties
@@ -0,0 +1,6 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+error.invalidUri=Skriv inn ei gyldig nettadresse.
+error.alreadyExists=Du abonnerer allereie på kalenderen med denne nettadressa.
diff --git a/l10n-nn-NO/calendar/chrome/calendar/categories.properties b/l10n-nn-NO/calendar/chrome/calendar/categories.properties
new file mode 100644
index 0000000000..9c20a13d9d
--- /dev/null
+++ b/l10n-nn-NO/calendar/chrome/calendar/categories.properties
@@ -0,0 +1,7 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# default categories
+
+categories2=Arbeid,Favorittar,Ferie,Fridagar,Fødselsdag,Gåver,Idear,Jubileum,Klientar,Konkurranse,Kunde,Leverandørar,Møte,Offentleg helgedag,Oppfølgjing,Personleg,Problem,Prosjekt,Reise,Status,Telefonsamtalar,Ymse
diff --git a/l10n-nn-NO/calendar/chrome/calendar/dateFormat.properties b/l10n-nn-NO/calendar/chrome/calendar/dateFormat.properties
new file mode 100644
index 0000000000..004d729324
--- /dev/null
+++ b/l10n-nn-NO/calendar/chrome/calendar/dateFormat.properties
@@ -0,0 +1,146 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# In case you are looking for the note about different declensions on date
+# formats, here it is. If your language doesn't use different declensions of
+# month names, you shouldn't have much work. Just leave the *.monthFormat
+# string on "nominative" and the string month.*.name will be filled in.
+#
+# If you need a different form for a string, you can change the
+# *.monthFormat to a different value. Supported values are currently:
+# nominative (default), genitive
+# The modified month name form will then be filled in accordingly. If this
+# system does not suit your needs, please file a bug!
+
+# LOCALIZATION NOTE (month.*.name):
+# Some languages require different declensions of month names.
+# These values will be used if *.monthFormat is set to "nominative" or in places
+# where using a different declension is not yet supported.
+month.1.name=Januar
+month.2.name=Februar
+month.3.name=Mars
+month.4.name=April
+month.5.name=Mai
+month.6.name=Juni
+month.7.name=Juli
+month.8.name=August
+month.9.name=September
+month.10.name=Oktober
+month.11.name=November
+month.12.name=Desember
+
+# LOCALIZATION NOTE (month.*.genitive):
+# Some languages require different declensions of month names.
+# These values will be used if *.monthFormat is set to "genitive"
+# If your language doesn't use different declensions, just set the same
+# values as for month.*.name.
+month.1.genitive=Januar
+month.2.genitive=Februar
+month.3.genitive=Mars
+month.4.genitive=April
+month.5.genitive=Mai
+month.6.genitive=Juni
+month.7.genitive=Juli
+month.8.genitive=August
+month.9.genitive=September
+month.10.genitive=Oktober
+month.11.genitive=November
+month.12.genitive=Desember
+
+month.1.Mmm=jan
+month.2.Mmm=feb
+month.3.Mmm=mar
+month.4.Mmm=apr
+month.5.Mmm=mai
+month.6.Mmm=jun
+month.7.Mmm=jul
+month.8.Mmm=aug
+month.9.Mmm=sep
+month.10.Mmm=okt
+month.11.Mmm=nov
+month.12.Mmm=des
+
+day.1.name=Sundag
+day.2.name=Måndag
+day.3.name=Tysdag
+day.4.name=Onsdag
+day.5.name=Torsdag
+day.6.name=Fredag
+day.7.name=Laurdag
+
+day.1.Mmm=Sun
+day.2.Mmm=Mån
+day.3.Mmm=Tys
+day.4.Mmm=Ons
+day.5.Mmm=Tor
+day.6.Mmm=Fre
+day.7.Mmm=Lau
+
+# Can someone tell me why we're not counting from zero?
+day.1.short=Su
+day.2.short=Må
+day.3.short=Ty
+day.4.short=On
+day.5.short=To
+day.6.short=Fr
+day.7.short=La
+
+# Localizable day's date
+day.1.number=1
+day.2.number=2
+day.3.number=3
+day.4.number=4
+day.5.number=5
+day.6.number=6
+day.7.number=7
+day.8.number=8
+day.9.number=9
+day.10.number=10
+day.11.number=11
+day.12.number=12
+day.13.number=13
+day.14.number=14
+day.15.number=15
+day.16.number=16
+day.17.number=17
+day.18.number=18
+day.19.number=19
+day.20.number=20
+day.21.number=21
+day.22.number=22
+day.23.number=23
+day.24.number=24
+day.25.number=25
+day.26.number=26
+day.27.number=27
+day.28.number=28
+day.29.number=29
+day.30.number=30
+day.31.number=31
+
+# LOCALIZATION NOTE (dayOrdinalSymbol):
+# Allows to insert a string, a character or a symbol after the number of a
+# monthday in order to give it the meaning of ordinal number e.g. 1 -> 1st etc.
+# It's mainly used when formatting dates with both monthday and month name. It
+# affects the following localizable strings that hence must be localized *without*
+# any ordinal symbol for the monthday number:
+# dayHeaderLabel, monthlyDaysOfNth_day,
+# yearlyNthOn, daysIntervalBetweenYears,
+# daysIntervalBetweenMonths, daysIntervalInMonth.
+# Write only a single string if the ordinal symbol is the same for every monthday, otherwise
+# write a sequence of _31_ strings (one for each monthday) separated with commas.
+# If your language doesn't require that in the mentioned strings, leave it empty.
+# e.g.
+# dayOrdinalSymbol=.
+# -> daysIntervalInMonth: 'March 3. - 9., 2008'
+# dayOrdinalSymbol=st,nd,rd,th,th,th,th,th,th,th,th,th,th,th,th,
+# th,th,th,th,th,st,nd,rd,th,th,th,th,th,th,th,st
+# -> daysIntervalBetweenMonths: 'September 29th - November 1st, 2008'
+dayOrdinalSymbol=
+
+noon=Midt på dagen
+midnight=Midnatt
+
+AllDay=Heile dagen
+Repeating=(Repeterande)
diff --git a/l10n-nn-NO/calendar/chrome/calendar/dialogs/calendar-event-dialog-reminder.dtd b/l10n-nn-NO/calendar/chrome/calendar/dialogs/calendar-event-dialog-reminder.dtd
new file mode 100644
index 0000000000..290b4c90e4
--- /dev/null
+++ b/l10n-nn-NO/calendar/chrome/calendar/dialogs/calendar-event-dialog-reminder.dtd
@@ -0,0 +1,19 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY reminderdialog.title "Påminningar">
+<!ENTITY reminder.add.label "Legg til">
+<!ENTITY reminder.add.accesskey "L">
+<!ENTITY reminder.remove.label "Fjern">
+<!ENTITY reminder.remove.accesskey "F">
+
+<!ENTITY reminder.reminderDetails.label "Detaljar">
+<!ENTITY reminder.action.label "Vel ei påminningshandling">
+
+<!ENTITY reminder.action.alert.label "Vis eit varsel">
+<!ENTITY reminder.action.email.label "Send ein e-post">
+
+<!ENTITY alarm.units.minutes "minutt" >
+<!ENTITY alarm.units.hours "timar" >
+<!ENTITY alarm.units.days "dagar" >
diff --git a/l10n-nn-NO/calendar/chrome/calendar/global.dtd b/l10n-nn-NO/calendar/chrome/calendar/global.dtd
new file mode 100644
index 0000000000..35d5f20679
--- /dev/null
+++ b/l10n-nn-NO/calendar/chrome/calendar/global.dtd
@@ -0,0 +1,54 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY time.midnight "00:00" >
+<!ENTITY time.noon "12:00" >
+
+<!-- Day Names -->
+<!-- LOCALIZATION NOTE : Accesskeys for day.1.Ddd to day.7.Ddd are currently
+ only used in Preferences > Views > Workweek groupbox -->
+<!ENTITY day.1.Ddd "Sun" >
+<!ENTITY day.1.Ddd.accesskey "S">
+<!ENTITY day.2.Ddd "Mån" >
+<!ENTITY day.2.Ddd.accesskey "M">
+<!ENTITY day.3.Ddd "Tys" >
+<!ENTITY day.3.Ddd.accesskey "T">
+<!ENTITY day.4.Ddd "Ons" >
+<!ENTITY day.4.Ddd.accesskey "O">
+<!ENTITY day.5.Ddd "Tor" >
+<!ENTITY day.5.Ddd.accesskey "r">
+<!ENTITY day.6.Ddd "Fre" >
+<!ENTITY day.6.Ddd.accesskey "F">
+<!ENTITY day.7.Ddd "Lau" >
+<!ENTITY day.7.Ddd.accesskey "L">
+
+<!ENTITY day.1.name "Sundag" >
+<!ENTITY day.2.name "Måndag" >
+<!ENTITY day.3.name "Tysdag" >
+<!ENTITY day.4.name "Onsdag" >
+<!ENTITY day.5.name "Torsdag" >
+<!ENTITY day.6.name "Fredag" >
+<!ENTITY day.7.name "Laurdag" >
+
+<!ENTITY month.1.name "Januar" >
+<!ENTITY month.2.name "Februar" >
+<!ENTITY month.3.name "Mars" >
+<!ENTITY month.4.name "April" >
+<!ENTITY month.5.name "Mai" >
+<!ENTITY month.6.name "Juni" >
+<!ENTITY month.7.name "Juli" >
+<!ENTITY month.8.name "August" >
+<!ENTITY month.9.name "September" >
+<!ENTITY month.10.name "Oktober" >
+<!ENTITY month.11.name "November" >
+<!ENTITY month.12.name "Desember" >
+
+<!ENTITY onemonthbackward.tooltip "Ein månad tilbake" >
+<!ENTITY onemonthforward.tooltip "Ein månad fram" >
+<!ENTITY oneyearbackward.tooltip "Eitt år tilbake" >
+<!ENTITY oneyearforward.tooltip "Eitt år fram" >
+<!ENTITY showToday.tooltip "Gå til i dag">
+<!ENTITY onedayforward.tooltip "Ein dag fram">
+<!ENTITY onedaybackward.tooltip "Ein dag tilbake">
+<!ENTITY showselectedday.tooltip "Vis hendingar for vald dag">
diff --git a/l10n-nn-NO/calendar/chrome/calendar/menuOverlay.dtd b/l10n-nn-NO/calendar/chrome/calendar/menuOverlay.dtd
new file mode 100644
index 0000000000..84e1067e5d
--- /dev/null
+++ b/l10n-nn-NO/calendar/chrome/calendar/menuOverlay.dtd
@@ -0,0 +1,50 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!-- Event Menu -->
+<!ENTITY event.new.event "Ny hending…">
+<!ENTITY event.new.event.accesskey "N">
+
+<!ENTITY event.new.task "Ny oppgåve…">
+<!ENTITY event.new.task.accesskey "o">
+
+<!ENTITY calendar.import.label "Importer…">
+<!ENTITY calendar.import.accesskey "I">
+
+<!ENTITY calendar.export.label "Eksporter…">
+<!ENTITY calendar.export.accesskey "E">
+
+<!ENTITY calendar.publish.label "Publiser…">
+<!ENTITY calendar.publish.accesskey "P">
+
+<!ENTITY calendar.deletecalendar.label "Slett vald kalender…">
+<!ENTITY calendar.deletecalendar.accesskey "S">
+<!ENTITY calendar.unsubscribecalendar.label "Stopp abonnement på vald kalender…">
+<!ENTITY calendar.unsubscribecalendar.accesskey "t">
+
+<!-- LOCALIZATION NOTE (calendar.removecalendar.label): Removing the calendar
+ is the general action of removing it, while deleting means to clear the
+ data and unsubscribing means just taking it out of the calendar list. -->
+<!ENTITY calendar.removecalendar.label "Fjern vald kalender…">
+<!ENTITY calendar.removecalendar.accesskey "F">
+
+
+<!ENTITY calendar.menu.customize.label "Tilpass…">
+<!ENTITY calendar.menu.customize.accesskey "T">
+
+<!ENTITY showUnifinderCmd.label "Finn hendingar">
+<!ENTITY showUnifinderCmd.accesskey "F">
+<!ENTITY showUnifinderCmd.tooltip "Slå søk i hendingar av eller på">
+
+<!ENTITY calendar.displaytodos.checkbox.label "Vis oppgåver i kalenderen">
+<!ENTITY calendar.displaytodos.checkbox.accesskey "p">
+
+<!ENTITY goTodayCmd.label "I dag">
+<!ENTITY goTodayCmd.accesskey "I">
+
+<!ENTITY showCurrentView.label "Aktiv vising">
+<!ENTITY showCurrentView.accesskey "v">
+
+<!ENTITY calendar.properties.label "Kalendereigenskapar…">
+<!ENTITY calendar.properties.accesskey "K">
diff --git a/l10n-nn-NO/calendar/chrome/calendar/migration.dtd b/l10n-nn-NO/calendar/chrome/calendar/migration.dtd
new file mode 100644
index 0000000000..a165fa5eec
--- /dev/null
+++ b/l10n-nn-NO/calendar/chrome/calendar/migration.dtd
@@ -0,0 +1,9 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY migration.title "&brandFullName;: Dataimport">
+<!ENTITY migration.welcome "Velkomen">
+<!ENTITY migration.importing "Importerer">
+<!ENTITY migration.list.description "&brandShortName; kan importera kalenderdata frå mange populære program. Data frå følgjande program vart funne på maskina di. Vel kva for program du vil importere data frå.">
+<!ENTITY migration.progress.description "Importerer valde data">
diff --git a/l10n-nn-NO/calendar/chrome/calendar/migration.properties b/l10n-nn-NO/calendar/chrome/calendar/migration.properties
new file mode 100644
index 0000000000..c2aa3b9123
--- /dev/null
+++ b/l10n-nn-NO/calendar/chrome/calendar/migration.properties
@@ -0,0 +1,13 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+migratingApp = Flyttar %1$S…
+
+# The next two lines are duplicated from migration.dtd until there is branding
+# for lightning
+migrationTitle = %1$S: Dataimport
+migrationDescription=%1$S kan importere kalenderdata frå mange populære program. Data frå følgjande program vart funne på maskina di. Vel kva for program du vil importere data frå.
+finished = Fullført
+disableExtTitle = Ikkje-kompatibel utviding vart funne
+disableExtText = Du har den gamle Mozilla Calendar-utvidinga installert. Denne er ikkje kompatibel med Lightning. Utvidinga vert slått av og %1$S vil starte på nytt.
diff --git a/l10n-nn-NO/calendar/chrome/calendar/provider-uninstall.dtd b/l10n-nn-NO/calendar/chrome/calendar/provider-uninstall.dtd
new file mode 100644
index 0000000000..3417d3019b
--- /dev/null
+++ b/l10n-nn-NO/calendar/chrome/calendar/provider-uninstall.dtd
@@ -0,0 +1,12 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY providerUninstall.title "Avinstaller ein tilbydar">
+<!ENTITY providerUninstall.accept.label "Avinstaller valde">
+<!ENTITY providerUninstall.accept.accesskey "A">
+<!ENTITY providerUninstall.cancel.label "Behald utviding">
+<!ENTITY providerUninstall.cancel.accesskey "B">
+<!ENTITY providerUninstall.preName.label "Du har bedt om å avinstallere eller slå av:">
+<!ENTITY providerUninstall.postName.label "Dette vil føre til at kalendrane nedanfor vert slått av.">
+<!ENTITY providerUninstall.reinstallNote.label "Dersom du ikkje planlegg å installere tilbydaren på nytt kan du velje å stoppe medlemskapen på kalendrane du har gjennom tilbydaren.">
diff --git a/l10n-nn-NO/calendar/chrome/calendar/timezones.properties b/l10n-nn-NO/calendar/chrome/calendar/timezones.properties
new file mode 100644
index 0000000000..b2d59570fe
--- /dev/null
+++ b/l10n-nn-NO/calendar/chrome/calendar/timezones.properties
@@ -0,0 +1,489 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+pref.timezone.floating=Lokal tid
+pref.timezone.UTC=UTC/GMT
+
+# I've derived this list out of timezones.dtd
+# - replaced '_' with ' ' on value side
+# - corrected 'St xyz' to 'St. xyz'
+
+# timezone names:
+pref.timezone.Africa.Abidjan=Afrika/Abidjan
+pref.timezone.Africa.Accra=Afrika/Accra
+pref.timezone.Africa.Addis_Ababa=Afrika/Addis Ababa
+pref.timezone.Africa.Algiers=Afrika/Alger
+pref.timezone.Africa.Asmara=Afrika/Asmara
+pref.timezone.Africa.Bamako=Afrika/Bamako
+pref.timezone.Africa.Bangui=Afrika/Bangui
+pref.timezone.Africa.Banjul=Afrika/Banjul
+pref.timezone.Africa.Bissau=Afrika/Bissau
+pref.timezone.Africa.Blantyre=Afrika/Blantyre
+pref.timezone.Africa.Brazzaville=Afrika/Brazzaville
+pref.timezone.Africa.Bujumbura=Afrika/Bujumbura
+pref.timezone.Africa.Cairo=Afrika/Kairo
+pref.timezone.Africa.Casablanca=Afrika/Casablanca
+pref.timezone.Africa.Ceuta=Afrika/Ceuta
+pref.timezone.Africa.Conakry=Afrika/Conakry
+pref.timezone.Africa.Dakar=Afrika/Dakar
+pref.timezone.Africa.Dar_es_Salaam=Afrika/Dar es Salaam
+pref.timezone.Africa.Djibouti=Afrika/Djibouti
+pref.timezone.Africa.Douala=Afrika/Douala
+pref.timezone.Africa.El_Aaiun=Afrika/El Aaiun
+pref.timezone.Africa.Freetown=Afrika/Freetown
+pref.timezone.Africa.Gaborone=Afrika/Gaborone
+pref.timezone.Africa.Harare=Afrika/Harare
+pref.timezone.Africa.Johannesburg=Afrika/Johannesburg
+pref.timezone.Africa.Kampala=Afrika/Kampala
+pref.timezone.Africa.Khartoum=Afrika/Khartoum
+pref.timezone.Africa.Kigali=Afrika/Kigali
+pref.timezone.Africa.Kinshasa=Afrika/Kinshasa
+pref.timezone.Africa.Lagos=Afrika/Lagos
+pref.timezone.Africa.Libreville=Afrika/Libreville
+pref.timezone.Africa.Lome=Afrika/Lome
+pref.timezone.Africa.Luanda=Afrika/Luanda
+pref.timezone.Africa.Lubumbashi=Afrika/Lubumbashi
+pref.timezone.Africa.Lusaka=Afrika/Lusaka
+pref.timezone.Africa.Malabo=Afrika/Malabo
+pref.timezone.Africa.Maputo=Afrika/Maputo
+pref.timezone.Africa.Maseru=Afrika/Maseru
+pref.timezone.Africa.Mbabane=Afrika/Mbabane
+pref.timezone.Africa.Mogadishu=Afrika/Mogadishu
+pref.timezone.Africa.Monrovia=Afrika/Monrovia
+pref.timezone.Africa.Nairobi=Afrika/Nairobi
+pref.timezone.Africa.Ndjamena=Afrika/NDjamena
+pref.timezone.Africa.Niamey=Afrika/Niamey
+pref.timezone.Africa.Nouakchott=Afrika/Nouakchott
+pref.timezone.Africa.Ouagadougou=Afrika/Ouagadougou
+pref.timezone.Africa.Porto-Novo=Afrika/Porto-Novo
+pref.timezone.Africa.Sao_Tome=Afrika/Sao Tome
+pref.timezone.Africa.Tripoli=Afrika/Tripoli
+pref.timezone.Africa.Tunis=Afrika/Tunis
+pref.timezone.Africa.Windhoek=Afrika/Windhoek
+pref.timezone.America.Adak=Amerika/Adak
+pref.timezone.America.Anchorage=Amerika/Anchorage
+pref.timezone.America.Anguilla=Amerika/Anguilla
+pref.timezone.America.Antigua=Amerika/Antigua
+pref.timezone.America.Araguaina=Amerika/Araguaina
+pref.timezone.America.Argentina.Buenos_Aires=Amerika/Argentina/Buenos Aires
+pref.timezone.America.Argentina.Catamarca=Amerika/Argentina/Catamarca
+pref.timezone.America.Argentina.Cordoba=Amerika/Argentina/Cordoba
+pref.timezone.America.Argentina.Jujuy=Amerika/Argentina/Jujuy
+pref.timezone.America.Argentina.La_Rioja=Amerika/Argentina/La Rioja
+pref.timezone.America.Argentina.Mendoza=Amerika/Argentina/Mendoza
+pref.timezone.America.Argentina.Rio_Gallegos=Amerika/Argentina/Rio Gallegos
+pref.timezone.America.Argentina.San_Juan=Amerika/Argentina/San Juan
+pref.timezone.America.Argentina.Tucuman=Amerika/Argentina/Tucuman
+pref.timezone.America.Argentina.Ushuaia=Amerika/Argentina/Ushuaia
+pref.timezone.America.Aruba=Amerika/Aruba
+pref.timezone.America.Asuncion=Amerika/Asuncion
+pref.timezone.America.Atikokan=Amerika/Atikokan
+pref.timezone.America.Bahia=Amerika/Bahia
+pref.timezone.America.Barbados=Amerika/Barbados
+pref.timezone.America.Belem=Amerika/Belem
+pref.timezone.America.Belize=Amerika/Belize
+pref.timezone.America.Blanc-Sablon=Amerika/Blanc-Sablon
+pref.timezone.America.Boa_Vista=Amerika/Boa Vista
+pref.timezone.America.Bogota=Amerika/Bogota
+pref.timezone.America.Boise=Amerika/Boise
+pref.timezone.America.Cambridge_Bay=Amerika/Cambridge Bay
+pref.timezone.America.Campo_Grande=Amerika/Campo Grande
+pref.timezone.America.Cancun=Amerika/Cancun
+pref.timezone.America.Caracas=Amerika/Caracas
+pref.timezone.America.Cayenne=Amerika/Cayenne
+pref.timezone.America.Cayman=Amerika/Cayman
+pref.timezone.America.Chicago=Amerika/Chicago
+pref.timezone.America.Chihuahua=Amerika/Chihuahua
+pref.timezone.America.Costa_Rica=Amerika/Costa Rica
+pref.timezone.America.Cuiaba=Amerika/Cuiaba
+pref.timezone.America.Curacao=Amerika/Curacao
+pref.timezone.America.Danmarkshavn=Amerika/Danmarkshavn
+pref.timezone.America.Dawson=Amerika/Dawson
+pref.timezone.America.Dawson_Creek=Amerika/Dawson Creek
+pref.timezone.America.Denver=Amerika/Denver
+pref.timezone.America.Detroit=Amerika/Detroit
+pref.timezone.America.Dominica=Amerika/Dominica
+pref.timezone.America.Edmonton=Amerika/Edmonton
+pref.timezone.America.Eirunepe=Amerika/Eirunepe
+pref.timezone.America.El_Salvador=Amerika/El Salvador
+pref.timezone.America.Fortaleza=Amerika/Fortaleza
+pref.timezone.America.Glace_Bay=Amerika/Glace Bay
+pref.timezone.America.Godthab=Amerika/Godthab
+pref.timezone.America.Goose_Bay=Amerika/Goose Bay
+pref.timezone.America.Grand_Turk=Amerika/Grand Turk
+pref.timezone.America.Grenada=Amerika/Grenada
+pref.timezone.America.Guadeloupe=Amerika/Guadeloupe
+pref.timezone.America.Guatemala=Amerika/Guatemala
+pref.timezone.America.Guayaquil=Amerika/Guayaquil
+pref.timezone.America.Guyana=Amerika/Guyana
+pref.timezone.America.Halifax=Amerika/Halifax
+pref.timezone.America.Havana=Amerika/Havana
+pref.timezone.America.Hermosillo=Amerika/Hermosillo
+pref.timezone.America.Indiana.Indianapolis=Amerika/Indiana/Indianapolis
+pref.timezone.America.Indiana.Knox=Amerika/Indiana/Knox
+pref.timezone.America.Indiana.Marengo=Amerika/Indiana/Marengo
+pref.timezone.America.Indiana.Petersburg=Amerika/Indiana/Petersburg
+pref.timezone.America.Indiana.Vevay=Amerika/Indiana/Vevay
+pref.timezone.America.Indiana.Vincennes=Amerika/Indiana/Vincennes
+pref.timezone.America.Inuvik=Amerika/Inuvik
+pref.timezone.America.Iqaluit=Amerika/Iqaluit
+pref.timezone.America.Jamaica=Amerika/Jamaica
+pref.timezone.America.Juneau=Amerika/Juneau
+pref.timezone.America.Kentucky.Louisville=Amerika/Kentucky/Louisville
+pref.timezone.America.Kentucky.Monticello=Amerika/Kentucky/Monticello
+pref.timezone.America.La_Paz=Amerika/La Paz
+pref.timezone.America.Lima=Amerika/Lima
+pref.timezone.America.Los_Angeles=Amerika/Los Angeles
+pref.timezone.America.Maceio=Amerika/Maceio
+pref.timezone.America.Managua=Amerika/Managua
+pref.timezone.America.Manaus=Amerika/Manaus
+pref.timezone.America.Martinique=Amerika/Martinique
+pref.timezone.America.Mazatlan=Amerika/Mazatlan
+pref.timezone.America.Menominee=Amerika/Menominee
+pref.timezone.America.Merida=Amerika/Merida
+pref.timezone.America.Mexico_City=Amerika/Mexico City
+pref.timezone.America.Miquelon=Amerika/Miquelon
+pref.timezone.America.Moncton=Amerika/Moncton
+pref.timezone.America.Monterrey=Amerika/Monterrey
+pref.timezone.America.Montevideo=Amerika/Montevideo
+pref.timezone.America.Montreal=Amerika/Montreal
+pref.timezone.America.Montserrat=Amerika/Montserrat
+pref.timezone.America.Nassau=Amerika/Nassau
+pref.timezone.America.New_York=Amerika/New York
+pref.timezone.America.Nipigon=Amerika/Nipigon
+pref.timezone.America.Nome=Amerika/Nome
+pref.timezone.America.Noronha=Amerika/Noronha
+pref.timezone.America.North_Dakota.Center=Amerika/Nord-Dakota/Center
+pref.timezone.America.North_Dakota.New_Salem=Amerika/Nord-Dakota/New Salem
+pref.timezone.America.Panama=Amerika/Panama
+pref.timezone.America.Pangnirtung=Amerika/Pangnirtung
+pref.timezone.America.Paramaribo=Amerika/Paramaribo
+pref.timezone.America.Phoenix=Amerika/Phoenix
+pref.timezone.America.Port-au-Prince=Amerika/Port-au-Prince
+pref.timezone.America.Port_of_Spain=Amerika/Port of Spain
+pref.timezone.America.Porto_Velho=Amerika/Porto Velho
+pref.timezone.America.Puerto_Rico=Amerika/Puerto Rico
+pref.timezone.America.Rainy_River=Amerika/Rainy River
+pref.timezone.America.Rankin_Inlet=Amerika/Rankin Inlet
+pref.timezone.America.Recife=Amerika/Recife
+pref.timezone.America.Regina=Amerika/Regina
+pref.timezone.America.Rio_Branco=Amerika/Rio Branco
+pref.timezone.America.Santiago=Amerika/Santiago
+pref.timezone.America.Santo_Domingo=Amerika/Santo Domingo
+pref.timezone.America.Sao_Paulo=Amerika/Sao_Paulo
+pref.timezone.America.Scoresbysund=Amerika/Scoresbysund
+pref.timezone.America.Shiprock=Amerika/Shiprock
+pref.timezone.America.St_Johns=Amerika/St. Johns
+pref.timezone.America.St_Kitts=Amerika/St. Kitts
+pref.timezone.America.St_Lucia=Amerika/St. Lucia
+pref.timezone.America.St_Thomas=Amerika/St. Thomas
+pref.timezone.America.St_Vincent=Amerika/St. Vincent
+pref.timezone.America.Swift_Current=Amerika/Swift Current
+pref.timezone.America.Tegucigalpa=Amerika/Tegucigalpa
+pref.timezone.America.Thule=Amerika/Thule
+pref.timezone.America.Thunder_Bay=Amerika/Thunder Bay
+pref.timezone.America.Tijuana=Amerika/Tijuana
+pref.timezone.America.Toronto=Amerika/Toronto
+pref.timezone.America.Tortola=Amerika/Tortola
+pref.timezone.America.Vancouver=Amerika/Vancouver
+pref.timezone.America.Whitehorse=Amerika/Whitehorse
+pref.timezone.America.Winnipeg=Amerika/Winnipeg
+pref.timezone.America.Yakutat=Amerika/Yakutat
+pref.timezone.America.Yellowknife=Amerika/Yellowknife
+pref.timezone.Antarctica.Casey=Antarktika/Casey
+pref.timezone.Antarctica.Davis=Antarktika/Davis
+pref.timezone.Antarctica.DumontDUrville=Antarktika/DumontDUrville
+pref.timezone.Antarctica.Mawson=Antarktika/Mawson
+pref.timezone.Antarctica.McMurdo=Antarktika/McMurdo
+pref.timezone.Antarctica.Palmer=Antarktika/Palmer
+pref.timezone.Antarctica.Rothera=Antarktika/Rothera
+pref.timezone.Antarctica.South_Pole=Antarktika/Sørpolen
+pref.timezone.Antarctica.Syowa=Antarktika/Syowa
+pref.timezone.Antarctica.Vostok=Antarktika/Vostok
+pref.timezone.Arctic.Longyearbyen=Arktis/Longyearbyen
+pref.timezone.Asia.Aden=Asia/Aden
+pref.timezone.Asia.Almaty=Asia/Almaty
+pref.timezone.Asia.Amman=Asia/Amman
+pref.timezone.Asia.Anadyr=Asia/Anadyr
+pref.timezone.Asia.Aqtau=Asia/Aqtau
+pref.timezone.Asia.Aqtobe=Asia/Aqtobe
+pref.timezone.Asia.Ashgabat=Asia/Ashgabat
+pref.timezone.Asia.Baghdad=Asia/Baghdad
+pref.timezone.Asia.Bahrain=Asia/Bahrain
+pref.timezone.Asia.Baku=Asia/Baku
+pref.timezone.Asia.Bangkok=Asia/Bangkok
+pref.timezone.Asia.Beirut=Asia/Beirut
+pref.timezone.Asia.Bishkek=Asia/Bisjkek
+pref.timezone.Asia.Brunei=Asia/Brunei
+pref.timezone.Asia.Choibalsan=Asia/Choibalsan
+pref.timezone.Asia.Chongqing=Asia/Chongqing
+pref.timezone.Asia.Colombo=Asia/Colombo
+pref.timezone.Asia.Damascus=Asia/Damaskus
+pref.timezone.Asia.Dhaka=Asia/Dhaka
+pref.timezone.Asia.Dili=Asia/Dili
+pref.timezone.Asia.Dubai=Asia/Dubai
+pref.timezone.Asia.Dushanbe=Asia/Dushanbe
+pref.timezone.Asia.Gaza=Asia/Gaza
+pref.timezone.Asia.Harbin=Asia/Harbin
+pref.timezone.Asia.Hong_Kong=Asia/Hong_Kong
+pref.timezone.Asia.Hovd=Asia/Hovd
+pref.timezone.Asia.Irkutsk=Asia/Irkutsk
+pref.timezone.Asia.Istanbul=Asia/Istanbul
+pref.timezone.Asia.Jakarta=Asia/Jakarta
+pref.timezone.Asia.Jayapura=Asia/Jayapura
+pref.timezone.Asia.Jerusalem=Asia/Jerusalem
+pref.timezone.Asia.Kabul=Asia/Kabul
+pref.timezone.Asia.Kamchatka=Asia/Kamtsjatka
+pref.timezone.Asia.Karachi=Asia/Karachi
+pref.timezone.Asia.Kashgar=Asia/Kashgar
+pref.timezone.Asia.Kathmandu=Asia/Katmandu
+pref.timezone.Asia.Krasnoyarsk=Asia/Krasnojarsk
+pref.timezone.Asia.Kuala_Lumpur=Asia/Kuala Lumpur
+pref.timezone.Asia.Kuching=Asia/Kuching
+pref.timezone.Asia.Kuwait=Asia/Kuwait
+pref.timezone.Asia.Macau=Asia/Macau
+pref.timezone.Asia.Magadan=Asia/Magadan
+pref.timezone.Asia.Makassar=Asia/Makassar
+pref.timezone.Asia.Manila=Asia/Manila
+pref.timezone.Asia.Muscat=Asia/Muscat
+pref.timezone.Asia.Nicosia=Asia/Nikosia
+pref.timezone.Asia.Novosibirsk=Asia/Novosibirsk
+pref.timezone.Asia.Omsk=Asia/Omsk
+pref.timezone.Asia.Oral=Asia/Oral
+pref.timezone.Asia.Phnom_Penh=Asia/Phnom Penh
+pref.timezone.Asia.Pontianak=Asia/Pontianak
+pref.timezone.Asia.Pyongyang=Asia/Pyongyang
+pref.timezone.Asia.Qatar=Asia/Qatar
+pref.timezone.Asia.Qyzylorda=Asia/Qyzylorda
+pref.timezone.Asia.Rangoon=Asia/Rangoon
+pref.timezone.Asia.Riyadh=Asia/Riyadh
+pref.timezone.Asia.Sakhalin=Asia/Sakhalin
+pref.timezone.Asia.Samarkand=Asia/Samarkand
+pref.timezone.Asia.Seoul=Asia/Seoul
+pref.timezone.Asia.Shanghai=Asia/Shanghai
+pref.timezone.Asia.Singapore=Asia/Singapore
+pref.timezone.Asia.Taipei=Asia/Taipei
+pref.timezone.Asia.Tashkent=Asia/Tashkent
+pref.timezone.Asia.Tbilisi=Asia/Tbilisi
+pref.timezone.Asia.Tehran=Asia/Teheran
+pref.timezone.Asia.Thimphu=Asia/Thimphu
+pref.timezone.Asia.Tokyo=Asia/Tokyo
+pref.timezone.Asia.Ulaanbaatar=Asia/Ulan Bator
+pref.timezone.Asia.Urumqi=Asia/Urumqi
+pref.timezone.Asia.Vientiane=Asia/Vientiane
+pref.timezone.Asia.Vladivostok=Asia/Vladivostok
+pref.timezone.Asia.Yakutsk=Asia/Jakutsk
+pref.timezone.Asia.Yekaterinburg=Asia/Jekaterinburg
+pref.timezone.Asia.Yerevan=Asia/Jerevan
+pref.timezone.Atlantic.Azores=Atlanterhavet/Azorane
+pref.timezone.Atlantic.Bermuda=Atlanterhavet/Bermuda
+pref.timezone.Atlantic.Canary=Atlanterhavet/Kanariøyane
+pref.timezone.Atlantic.Cape_Verde=Atlanterhavet/Kapp Verde
+pref.timezone.Atlantic.Faroe=Atlanterhavet/Færøyane
+pref.timezone.Atlantic.Madeira=Atlanterhavet/Madeira
+pref.timezone.Atlantic.Reykjavik=Atlanterhavet/Reykjavik
+pref.timezone.Atlantic.South_Georgia=Atlanterhavet/Sor-Georgia
+pref.timezone.Atlantic.St_Helena=Atlanterhavet/St. Helena
+pref.timezone.Atlantic.Stanley=Atlanterhavet/Stanley
+pref.timezone.Australia.Adelaide=Australia/Adelaide
+pref.timezone.Australia.Brisbane=Australia/Brisbane
+pref.timezone.Australia.Broken_Hill=Australia/Broken Hill
+pref.timezone.Australia.Currie=Australia/Currie
+pref.timezone.Australia.Darwin=Australia/Darwin
+pref.timezone.Australia.Eucla=Australia/Eucla
+pref.timezone.Australia.Hobart=Australia/Hobart
+pref.timezone.Australia.Lindeman=Australia/Lindeman
+pref.timezone.Australia.Lord_Howe=Australia/Lord Howe
+pref.timezone.Australia.Melbourne=Australia/Melbourne
+pref.timezone.Australia.Perth=Australia/Perth
+pref.timezone.Australia.Sydney=Australia/Sydney
+pref.timezone.Europe.Amsterdam=Europa/Amsterdam
+pref.timezone.Europe.Andorra=Europa/Andorra
+pref.timezone.Europe.Athens=Europa/Athen
+pref.timezone.Europe.Belgrade=Europa/Beograd
+pref.timezone.Europe.Berlin=Europa/Berlin
+pref.timezone.Europe.Bratislava=Europa/Bratislava
+pref.timezone.Europe.Brussels=Europa/Brussel
+pref.timezone.Europe.Bucharest=Europa/Bucuresti
+pref.timezone.Europe.Budapest=Europa/Budapest
+pref.timezone.Europe.Chisinau=Europa/Chisinau
+pref.timezone.Europe.Copenhagen=Europa/København
+pref.timezone.Europe.Dublin=Europa/Dublin
+pref.timezone.Europe.Gibraltar=Europa/Gibraltar
+pref.timezone.Europe.Guernsey=Europa/Guernsey
+pref.timezone.Europe.Helsinki=Europa/Helsinki
+pref.timezone.Europe.Isle_of_Man=Europa/Isle of Man
+pref.timezone.Europe.Istanbul=Europa/Istanbul
+pref.timezone.Europe.Jersey=Europa/Jersey
+pref.timezone.Europe.Kaliningrad=Europa/Kaliningrad
+pref.timezone.Europe.Kiev=Europa/Kiev
+pref.timezone.Europe.Lisbon=Europa/Lisboa
+pref.timezone.Europe.Ljubljana=Europa/Ljubljana
+pref.timezone.Europe.London=Europa/London
+pref.timezone.Europe.Luxembourg=Europa/Luxembourg
+pref.timezone.Europe.Madrid=Europa/Madrid
+pref.timezone.Europe.Malta=Europa/Malta
+pref.timezone.Europe.Mariehamn=Europa/Mariehamn
+pref.timezone.Europe.Minsk=Europa/Minsk
+pref.timezone.Europe.Monaco=Europa/Monaco
+pref.timezone.Europe.Moscow=Europa/Moskva
+pref.timezone.Europe.Nicosia=Europa/Nikosia
+pref.timezone.Europe.Oslo=Europa/Oslo
+pref.timezone.Europe.Paris=Europa/Paris
+pref.timezone.Europe.Podgorica=Europa/Podgorica
+pref.timezone.Europe.Prague=Europa/Praha
+pref.timezone.Europe.Riga=Europa/Riga
+pref.timezone.Europe.Rome=Europa/Roma
+pref.timezone.Europe.Samara=Europa/Samara
+pref.timezone.Europe.San_Marino=Europa/San_Marino
+pref.timezone.Europe.Sarajevo=Europa/Sarajevo
+pref.timezone.Europe.Simferopol=Europa/Simferopol
+pref.timezone.Europe.Skopje=Europa/Skopje
+pref.timezone.Europe.Sofia=Europa/Sofia
+pref.timezone.Europe.Stockholm=Europa/Stockholm
+pref.timezone.Europe.Tallinn=Europa/Tallinn
+pref.timezone.Europe.Tirane=Europa/Tirana
+pref.timezone.Europe.Uzhgorod=Europa/Uzjgorod
+pref.timezone.Europe.Vaduz=Europa/Vaduz
+pref.timezone.Europe.Vatican=Europa/Vatikanbyen
+pref.timezone.Europe.Vienna=Europa/Wien
+pref.timezone.Europe.Vilnius=Europa/Vilnius
+pref.timezone.Europe.Volgograd=Europa/Volgograd
+pref.timezone.Europe.Warsaw=Europa/Warszawa
+pref.timezone.Europe.Zagreb=Europa/Zagreb
+pref.timezone.Europe.Zaporozhye=Europa/Zaporozhye
+pref.timezone.Europe.Zurich=Europa/Zürich
+pref.timezone.Indian.Antananarivo=Indiahavet/Antananarivo
+pref.timezone.Indian.Chagos=Indiahavet/Chagos
+pref.timezone.Indian.Christmas=Indiahavet/Christmas
+pref.timezone.Indian.Cocos=Indiahavet/Cocos
+pref.timezone.Indian.Comoro=Indiahavet/Komorane
+pref.timezone.Indian.Kerguelen=Indiahavet/Kerguelen
+pref.timezone.Indian.Mahe=Indiahavet/Mahe
+pref.timezone.Indian.Maldives=Indiahavet/Maldivane
+pref.timezone.Indian.Mauritius=Indiahavet/Mauritius
+pref.timezone.Indian.Mayotte=Indiahavet/Mayotte
+pref.timezone.Indian.Reunion=Indiahavet/Reunion
+pref.timezone.Pacific.Apia=Stillehavet/Apia
+pref.timezone.Pacific.Auckland=Stillehavet/Auckland
+pref.timezone.Pacific.Chatham=Stillehavet/Chatham
+pref.timezone.Pacific.Easter=Stillehavet/Påske
+pref.timezone.Pacific.Efate=Stillehavet/Efate
+pref.timezone.Pacific.Enderbury=Stillehavet/Enderbury
+pref.timezone.Pacific.Fakaofo=Stillehavet/Fakaofo
+pref.timezone.Pacific.Fiji=Stillehavet/Fiji
+pref.timezone.Pacific.Funafuti=Stillehavet/Funafuti
+pref.timezone.Pacific.Galapagos=Stillehavet/Galapagos
+pref.timezone.Pacific.Gambier=Stillehavet/Gambier
+pref.timezone.Pacific.Guadalcanal=Stillehavet/Guadalcanal
+pref.timezone.Pacific.Guam=Stillehavet/Guam
+pref.timezone.Pacific.Honolulu=Stillehavet/Honolulu
+pref.timezone.Pacific.Johnston=Stillehavet/Johnston
+pref.timezone.Pacific.Kiritimati=Stillehavet/Kiritimati
+pref.timezone.Pacific.Kosrae=Stillehavet/Kosrae
+pref.timezone.Pacific.Kwajalein=Stillehavet/Kwajalein
+pref.timezone.Pacific.Majuro=Stillehavet/Majuro
+pref.timezone.Pacific.Marquesas=Stillehavet/Marquesas
+pref.timezone.Pacific.Midway=Stillehavet/Midway
+pref.timezone.Pacific.Nauru=Stillehavet/Nauru
+pref.timezone.Pacific.Niue=Stillehavet/Niue
+pref.timezone.Pacific.Norfolk=Stillehavet/Norfolk
+pref.timezone.Pacific.Noumea=Stillehavet/Noumea
+pref.timezone.Pacific.Pago_Pago=Stillehavet/Pago Pago
+pref.timezone.Pacific.Palau=Stillehavet/Palau
+pref.timezone.Pacific.Pitcairn=Stillehavet/Pitcairn
+pref.timezone.Pacific.Ponape=Stillehavet/Ponape
+pref.timezone.Pacific.Port_Moresby=Stillehavet/Port Moresby
+pref.timezone.Pacific.Rarotonga=Stillehavet/Rarotonga
+pref.timezone.Pacific.Saipan=Stillehavet/Saipan
+pref.timezone.Pacific.Tahiti=Stillehavet/Tahiti
+pref.timezone.Pacific.Tarawa=Stillehavet/Tarawa
+pref.timezone.Pacific.Tongatapu=Stillehavet/Tongatapu
+pref.timezone.Pacific.Truk=Stillehavet/Truk
+pref.timezone.Pacific.Wake=Stillehavet/Wake
+pref.timezone.Pacific.Wallis=Stillehavet/Wallis
+
+# the following have been missing
+pref.timezone.America.Indiana.Tell_City=Amerika/Indiana/Tell City
+pref.timezone.America.Indiana.Winamac=Amerika/Indiana/Winamac
+pref.timezone.America.Marigot=Amerika/Marigot
+pref.timezone.America.Resolute=Amerika/Resolute
+pref.timezone.America.St_Barthelemy=Amerika/St. Barthelemy
+
+# added with 2008d:
+pref.timezone.America.Argentina.San_Luis=Amerika/Argentina/San Luis
+pref.timezone.America.Santarem=Amerika/Santarem
+pref.timezone.Asia.Ho_Chi_Minh=Asia/Ho Chi Minh
+pref.timezone.Asia.Kolkata=Asia/Kolkata
+
+# added with 2008i:
+pref.timezone.America.Argentina.Salta=Amerika/Argentina/Salta
+
+# added with 2010i
+pref.timezone.America.Matamoros=Amerika/Matamoros
+pref.timezone.America.Ojinaga=Amerika/Ojinaga
+pref.timezone.America.Santa_Isabel=Amerika/Santa Isabel
+pref.timezone.Antarctica.Macquarie=Antarktika/Macquarie
+pref.timezone.Asia.Novokuznetsk=Asia/Novokuznetsk
+
+#added with 2011b
+pref.timezone.America.Bahia_Banderas=Amerika/Bahia Banderas
+pref.timezone.America.North_Dakota.Beulah=Amerika/Nord Dakota/Beulah
+pref.timezone.Pacific.Chuuk=Stillehavet/Chuuk
+pref.timezone.Pacific.Pohnpei=Stillehavet/Pohnpei
+
+#added with 2011n
+pref.timezone.Africa.Juba=Afrika/Juba
+pref.timezone.America.Kralendijk=Amerika/Kralendijk
+pref.timezone.America.Lower_Princes=Amerika/Lower Princes
+pref.timezone.America.Metlakatla=Amerika/Metlakatla
+pref.timezone.America.Sitka=Amerika/Sitka
+pref.timezone.Asia.Hebron=Asia/Hebron
+
+#added with 2013a
+pref.timezone.America.Creston=Amerika/Creston
+pref.timezone.Asia.Khandyga=Asia/Khandyga
+pref.timezone.Asia.Ust-Nera=Asia/Ust-Nera
+pref.timezone.Europe.Busingen=Europa/Busingen
+
+#added with 2014b
+pref.timezone.Antarctica.Troll=Antarktika/Troll
+
+#added with 2014j
+pref.timezone.Asia.Chita=Asia/Chita
+pref.timezone.Asia.Srednekolymsk=Asia/Srednekolymsk
+pref.timezone.Pacific.Bougainville=Stillehavet/Bougainville
+
+#added with 2.2015g
+pref.timezone.America.Fort_Nelson=Amerika/Fort Nelson
+
+#added with 2.2016b
+pref.timezone.Europe.Ulyanovsk=Europa/Ulyanovsk
+pref.timezone.Europe.Astrakhan=Europa/Astrakhan
+pref.timezone.Asia.Barnaul=Asia/Barnaul
+
+#added with 2.2016i
+pref.timezone.Asia.Yangon=Asia/Yangon
+pref.timezone.Asia.Tomsk=Asia/Tomsk
+pref.timezone.Asia.Famagusta=Asia/Famagusta
+pref.timezone.Europe.Kirov=Europe/Kirov
+
+#added with 2.2016j
+pref.timezone.Europe.Saratov=Europe/Saratov
+pref.timezone.Asia.Atyrau=Asia/Atyrau
+
+#added with 2.2017b
+pref.timezone.America.Punta_Arenas=Amerika/Punta Arenas
+
+#added with 2.2018i
+pref.timezone.Asia.Qostanay=Asia/Kostanaj
+
+#added with 2.2020a
+pref.timezone.America.Nuuk=America/Nuuk
+
+#added with 2.2021c
+pref.timezone.Pacific.Kanton=Stillehavet/Kanton
+
+#added with 2.2022b
+pref.timezone.Europe.Kyiv=Europa/Kyiv
diff --git a/l10n-nn-NO/calendar/chrome/lightning/lightning-toolbar.dtd b/l10n-nn-NO/calendar/chrome/lightning/lightning-toolbar.dtd
new file mode 100644
index 0000000000..a18c3ee4d0
--- /dev/null
+++ b/l10n-nn-NO/calendar/chrome/lightning/lightning-toolbar.dtd
@@ -0,0 +1,51 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY lightning.toolbar.calendar.name "Kalender-verktøylinje">
+<!ENTITY lightning.toolbar.calendar.name.accesskey "K">
+<!ENTITY lightning.toolbar.task.name "Oppgåve-verktøylinje">
+<!ENTITY lightning.toolbar.task.name.accesskey "O">
+
+<!ENTITY lightning.toolbar.sync.label "Synkroniser">
+<!ENTITY lightning.toolbar.sync.tooltip "Oppdater kalendrar og synkroniser endringar">
+<!ENTITY lightning.toolbar.delete.label "Slett">
+<!ENTITY lightning.toolbar.delete.tooltip "Slett valde hendingar eller oppgåver">
+<!ENTITY lightning.toolbar.edit.label "Rediger">
+<!ENTITY lightning.toolbar.edit.tooltip "Rediger vald hending eller oppgåve">
+<!ENTITY lightning.toolbar.gototoday.label "Gå til I dag">
+<!ENTITY lightning.toolbar.gototoday.tooltip "Gå til I dag">
+<!ENTITY lightning.toolbar.print.label "Skriv ut">
+<!ENTITY lightning.toolbar.print.tooltip "Skriv ut hendingar eller oppgåver">
+<!-- Mode Toolbar -->
+
+<!ENTITY lightning.toolbar.calendar.label "Kalender">
+<!ENTITY lightning.toolbar.calendar.tooltip "Byt til kalenderfana">
+<!ENTITY lightning.toolbar.calendar.accesskey "K">
+<!ENTITY lightning.toolbar.task.label "Oppgåver">
+<!ENTITY lightning.toolbar.task.tooltip "Byt til oppgåvefana">
+<!ENTITY lightning.toolbar.task.accesskey "O">
+<!-- Toolbar write button -->
+
+<!ENTITY lightning.toolbar.newevent.label "Hending">
+<!ENTITY lightning.toolbar.newevent.tooltip "Lag ei ny hending">
+<!ENTITY lightning.toolbar.newtask.label "Oppgåve">
+<!ENTITY lightning.toolbar.newtask.tooltip "Lag ei ny oppgåve">
+<!-- Calendar and Task Mode Toolbar -->
+
+<!ENTITY lightning.toolbar.day.label "Dag">
+<!ENTITY lightning.toolbar.day.accesskey "D">
+<!ENTITY lightning.toolbar.week.label "Veke">
+<!ENTITY lightning.toolbar.week.accesskey "V">
+<!ENTITY lightning.toolbar.multiweek.label "Fleire veker">
+<!ENTITY lightning.toolbar.multiweek.accesskey "F">
+<!ENTITY lightning.toolbar.month.label "Månad">
+<!ENTITY lightning.toolbar.month.accesskey "M">
+<!-- LOCALIZATION NOTE: the same as appmenuButton.label and appmenuButton1.tooltip
+ from messenger.dtd -->
+<!ENTITY lightning.toolbar.appmenuButton.label "AppMeny">
+<!ENTITY lightning.toolbar.appmenuButton1.tooltip "Viser &brandShortName;-menyen">
+<!ENTITY lightning.toolbar.calendarmenu.label "Kalenderpanel">
+<!ENTITY lightning.toolbar.calendarmenu.accesskey "K">
+<!ENTITY lightning.toolbar.calendarpane.label "Vis kalenderpanel">
+<!ENTITY lightning.toolbar.calendarpane.accesskey "V">
diff --git a/l10n-nn-NO/calendar/chrome/lightning/lightning.dtd b/l10n-nn-NO/calendar/chrome/lightning/lightning.dtd
new file mode 100644
index 0000000000..a39ae94d86
--- /dev/null
+++ b/l10n-nn-NO/calendar/chrome/lightning/lightning.dtd
@@ -0,0 +1,112 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!-- WARNING! This file contains UTF-8 encoded characters!
+ - If this ==> … <== doesn't look like an ellipsis (three dots in a row),
+ - your editor isn't using UTF-8 encoding and may munge up the document!
+ -->
+
+<!-- Tools menu -->
+<!ENTITY lightning.preferencesLabel "Kalender">
+
+<!-- New menu popup in File menu -->
+<!ENTITY lightning.menupopup.new.event.label "Hending…">
+<!ENTITY lightning.menupopup.new.event.accesskey "H">
+<!ENTITY lightning.menupopup.new.task.label "Oppgåve…">
+<!ENTITY lightning.menupopup.new.task.accesskey "O">
+<!ENTITY lightning.menupopup.new.calendar.label "Kalender…">
+<!ENTITY lightning.menupopup.new.calendar.accesskey "K">
+
+<!-- Open menu popup in File menu -->
+<!ENTITY lightning.menupopup.open.calendar.label "Kalenderfil…">
+<!ENTITY lightning.menupopup.open.calendar.accesskey "K">
+
+<!-- View Menu -->
+<!ENTITY lightning.menu.view.calendar.label "Kalender">
+<!ENTITY lightning.menu.view.calendar.accesskey "K">
+<!ENTITY lightning.menu.view.tasks.label "Oppgåver">
+<!ENTITY lightning.menu.view.tasks.accesskey "p">
+
+<!-- Events and Tasks menu -->
+<!ENTITY lightning.menu.eventtask.label "Hendingar og oppgåver">
+<!ENTITY lightning.menu.eventtask.accesskey "e">
+
+<!-- properties dialog, calendar creation wizard -->
+<!-- LOCALIZATON NOTE(lightning.calendarproperties.email.label,
+ lightning.calendarproperties.forceEmailScheduling.label)
+ These strings are used in the calendar wizard and the calendar properties dialog, but are only
+ displayed when setting/using a caldav calendar -->
+<!ENTITY lightning.calendarproperties.email.label "E-postadresse:">
+<!ENTITY lightning.calendarproperties.forceEmailScheduling.label "Lat klienten handsame utsending av e-post">
+<!-- LOCALIZATON NOTE(lightning.calendarproperties.forceEmailScheduling.tooltiptext1,
+ lightning.calendarproperties.forceEmailScheduling.tooltiptext2)
+ - tooltiptext1 is used in the calendar wizard when setting a new caldav calendar
+ - tooltiptext2 is used in the calendar properties dialog for caldav calendars -->
+<!ENTITY lightning.calendarproperties.forceEmailScheduling.tooltiptext1 "Denne innstillinga kan for tida berre endrast, viss du har oppretta ein kalender, der det er kalenderserveren som handsamar utsending av e-post.">
+<!ENTITY lightning.calendarproperties.forceEmailScheduling.tooltiptext2 "Denne innstillinga kan berre endrast, viss det er kalenderserveren som handsamar utsending av e-post. Vel du å aktivere innstillinga, har kalenderen moglegheit for sjølv å sende ut e-post i staden for å overlate det til serveren.">
+
+<!-- The notifications settings in the properties dialog -->
+<!ENTITY lightning.calendarproperties.notifications.label "Varsel">
+<!ENTITY lightning.calendarproperties.globalNotifications.label "Globale varselinnstillingar…">
+
+<!-- iMIP Bar (meeting support) -->
+<!ENTITY lightning.imipbar.btnAccept.label "Godta">
+<!ENTITY lightning.imipbar.btnAccept2.tooltiptext "Godta hendingsinvitasjonen">
+<!ENTITY lightning.imipbar.btnAcceptRecurrences.label "Godta alle">
+<!ENTITY lightning.imipbar.btnAcceptRecurrences2.tooltiptext "Godta invitasjon til hendinga for alle oppføringar av hendinga">
+<!ENTITY lightning.imipbar.btnAdd.label "Legg til">
+<!ENTITY lightning.imipbar.btnAdd.tooltiptext "Legg til hendinga i kalenderen">
+<!ENTITY lightning.imipbar.btnDecline.label "Avvis">
+<!ENTITY lightning.imipbar.btnDecline2.tooltiptext "Avvis hendingsinvitasjon">
+<!ENTITY lightning.imipbar.btnDeclineRecurrences.label "Avvis alle">
+<!ENTITY lightning.imipbar.btnDeclineRecurrences2.tooltiptext "Avvis hendingsinvitasjonen for alle oppføringar av hendinga">
+<!ENTITY lightning.imipbar.btnDeclineCounter.label "Avvis">
+<!ENTITY lightning.imipbar.btnDeclineCounter.tooltiptext "Avvis motforslaget">
+<!ENTITY lightning.imipbar.btnDelete.label "Slett">
+<!ENTITY lightning.imipbar.btnDelete.tooltiptext "Slett frå kalenderen">
+<!ENTITY lightning.imipbar.btnDetails.label "Detaljar…">
+<!ENTITY lightning.imipbar.btnDetails.tooltiptext "Vis detaljar">
+<!ENTITY lightning.imipbar.btnDoNotShowImipBar.label "Ikkje vis meg desse meldingane">
+<!ENTITY lightning.imipbar.btnGoToCalendar.label "Kalender">
+<!ENTITY lightning.imipbar.btnGoToCalendar.tooltiptext "Gå til kalenderfana">
+<!ENTITY lightning.imipbar.btnMore.label "Meir">
+<!ENTITY lightning.imipbar.btnMore.tooltiptext "Trykk for å vise fleire val">
+<!ENTITY lightning.imipbar.btnReconfirm2.label "Stadfest på nytt">
+<!ENTITY lightning.imipbar.btnReconfirm.tooltiptext "Sender ei ny stadfesting til hendingsinnkallar">
+<!ENTITY lightning.imipbar.btnReschedule.label "Planlegg på nytt">
+<!ENTITY lightning.imipbar.btnReschedule.tooltiptext "Planlegge hendinga på nytt">
+<!ENTITY lightning.imipbar.btnSaveCopy.label "Lagra ein kopi">
+<!ENTITY lightning.imipbar.btnSaveCopy.tooltiptext "Lagra ein kopi av hendinga i kalenderen, uavhengig om du svarar organisator. Deltakarlista vert sletta.">
+<!ENTITY lightning.imipbar.btnTentative.label "Med atterhald">
+<!ENTITY lightning.imipbar.btnTentative2.tooltiptext "Godta hendingsinvitasjon med atterhald">
+<!ENTITY lightning.imipbar.btnTentativeRecurrences.label "Alle med atterhald">
+<!ENTITY lightning.imipbar.btnTentativeRecurrences2.tooltiptext "Godta hendingsinvitasjon med atterhald, for alle oppføringar av hendinga">
+<!ENTITY lightning.imipbar.btnUpdate.label "Oppdater">
+<!ENTITY lightning.imipbar.btnUpdate.tooltiptext "Oppdater hending i kalenderen">
+<!ENTITY lightning.imipbar.description "Denne meldinga inneheld ein invitasjon til ei hending.">
+
+<!ENTITY lightning.imipbar.btnSend.label "Send eit svar no">
+<!ENTITY lightning.imipbar.btnSend.tooltiptext "Send eit svar til arrangøren">
+<!ENTITY lightning.imipbar.btnSendSeries.tooltiptext "Send eit svar for heile serien til arrangøren">
+<!ENTITY lightning.imipbar.btnDontSend.label "Send ikkje eit svar">
+<!ENTITY lightning.imipbar.btnDontSend.tooltiptext "Endre deltakingsstatusen din utan å sende eit svar til arrangøren">
+<!ENTITY lightning.imipbar.btnDontSendSeries.tooltiptext "Endre deltakingsstatusen din for serien utan å sende eit svar til arrangøren">
+
+<!-- Lightning specific keybindings -->
+<!ENTITY lightning.keys.event.new "I">
+<!ENTITY lightning.keys.todo.new "D">
+
+<!-- Account Central page -->
+<!ENTITY lightning.acctCentral.newCalendar.label "Lag ein ny kalender">
+
+<!-- today-pane-specific -->
+<!ENTITY todaypane.showMinimonth.label "Vis mini-månad">
+<!ENTITY todaypane.showMinimonth.accesskey "m">
+<!ENTITY todaypane.showMiniday.label "Vis mini-dag">
+<!ENTITY todaypane.showMiniday.accesskey "d">
+<!ENTITY todaypane.showNone.label "Vis ingen">
+<!ENTITY todaypane.showNone.accesskey "s">
+<!ENTITY todaypane.showTodayPane.label "Vis i dag-ruta">
+<!ENTITY todaypane.showTodayPane.accesskey "a">
+<!ENTITY todaypane.statusButton.label "I dag-ruta">
diff --git a/l10n-nn-NO/calendar/chrome/lightning/lightning.properties b/l10n-nn-NO/calendar/chrome/lightning/lightning.properties
new file mode 100644
index 0000000000..f654812f34
--- /dev/null
+++ b/l10n-nn-NO/calendar/chrome/lightning/lightning.properties
@@ -0,0 +1,165 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# Task mode title
+taskModeApplicationTitle=Oppgåver
+
+# Tab titles
+tabTitleCalendar=Kalender
+tabTitleTasks=Oppgåver
+
+# Html event display in message
+imipHtml.header=Invitasjon
+imipHtml.summary=Tittel:
+imipHtml.location=Adresse:
+imipHtml.when=Når:
+imipHtml.organizer=Organisert av:
+imipHtml.description=Skildring:
+# LOCALIZATION_NOTE(imipHtml.attachments): This is a label for one or more (additional) links to
+# documents or websites attached to this event.
+imipHtml.attachments=Vedlegg:
+imipHtml.comment=Kommentar:
+imipHtml.attendees=Deltakarar:
+# LOCALIZATION_NOTE(imipHtml.url): This is a label for a reference to an (alternate) online
+# representation of the event (either directly human readable or not).
+imipHtml.url=Relatert lenke:
+imipHtml.canceledOccurrences=Kansellerte førekomstar:
+imipHtml.modifiedOccurrences=Endra førekomstar:
+imipHtml.newLocation=Ny stad: %1$S
+# LOCALIZATION_NOTE(imipHtml.attendeeDelegatedFrom): this is appended behind an attendee name in the
+# email invitation preview - don't add leading/trailing whitespaces here
+# %1$S - a single delegator or a comma separated list of delegators
+imipHtml.attendeeDelegatedFrom=(delegert frå %1$S)
+# LOCALIZATION_NOTE(imipHtml.attendeeDelegatedTo): this is appended behind an attendee name in the
+# email invitation preview - don't add leading/trailing whitespaces here
+# %1$S - a single delegatee or a comma separated list of delegatees
+imipHtml.attendeeDelegatedTo=(delegert til %1$S)
+
+# LOCALIZATION_NOTE(imipHtml.attendee.combined): tooltip for itip icon in email invitation preview.
+# Given an attendee loungeexample.org of type room is a mandatory participant and has accepted the
+# invitation, the tooltip would be:
+# lounge@example.org (room) is a required participant. lounge@example.org has confirmed attendance.
+# %1$S - value of imipHtml.attendeeRole2.*
+# %2$S - value of imipHtml.attendeePartStat2.*
+imipHtml.attendee.combined=%1$S %2$S
+
+# LOCALIZATION_NOTE(imipHtml.attendeeRole2.CHAIR): used to compose
+# imipHtml.attendee.combined
+# %1$S - value of imipHtml.attendeeUserType2.*
+imipHtml.attendeeRole2.CHAIR=%1$S er vertskap for hendinga.
+# LOCALIZATION_NOTE(imipHtml.attendeeRole2.NON-PARTICIPANT): used to compose
+# imipHtml.attendee.combined
+# %1$S - value of imipHtml.attendeeUserType2.*
+imipHtml.attendeeRole2.NON-PARTICIPANT=%1$S er ein ikkje-deltakar.
+# LOCALIZATION_NOTE(imipHtml.attendeeRole2.OPT-PARTICIPANT): used to compose
+# imipHtml.attendee.combined
+# %1$S - value of imipHtml.attendeeUserType2.*
+imipHtml.attendeeRole2.OPT-PARTICIPANT=%1$S er ein valfri deltakar.
+# LOCALIZATION_NOTE(imipHtml.attendeeRole2.REQ-PARTICIPANT): used to compose
+# imipHtml.attendee.combined
+# %1$S - value of imipHtml.attendeeUserType2.*
+imipHtml.attendeeRole2.REQ-PARTICIPANT=%1$S er ein påkravd deltakar.
+
+# LOCALIZATION_NOTE(imipHtml.attendeePartStat2.ACCEPTED): used to compose
+# imipHtml.attendee.combined
+# %1$S - common name or email address of the attendee
+imipHtml.attendeePartStat2.ACCEPTED=%1$S har stadfesta deltaking.
+# LOCALIZATION_NOTE(imipHtml.attendeePartStat2.DECLINED): used to compose
+# imipHtml.attendee.combined
+# %1$S - common name or email address of the attendee
+imipHtml.attendeePartStat2.DECLINED=%1$S har avvist deltaking.
+# LOCALIZATION_NOTE(imipHtml.attendeePartStat2.DELEGATED): used to compose
+# imipHtml.attendee.combined
+# %1$S - common name or email address of the attendee
+# %2$S - single delegatee or comma separated list of delegatees
+# delegation is different from invitation forwarding - in case of the former the original attendee
+# is replaced, while on the latter the receiver may take part additionally
+imipHtml.attendeePartStat2.DELEGATED=%1$S har delegert si deltaking til %2$S.
+# LOCALIZATION_NOTE(imipHtml.attendeePartStat2.NEEDS-ACTION): used to compose
+# imipHtml.attendee.combined
+# %1$S - common name or email address of the attendee
+imipHtml.attendeePartStat2.NEEDS-ACTION=%1$S må framleis svara.
+# LOCALIZATION_NOTE(imipHtml.attendeePartStat2.TENTATIVE): used to compose
+# imipHtml.attendee.combined
+# %1$S - common name or email address of the attendee
+imipHtml.attendeePartStat2.TENTATIVE=%1$S har med atterhald godteke deltakinga si.
+
+# LOCALIZATION_NOTE(imipHtml.attendeeUserType2.INDIVIDUAL): used to compose
+# imipHtml.attendeeRole2.*
+# %1$S - email address or common name <email address> representing an individual attendee
+imipHtml.attendeeUserType2.INDIVIDUAL=%1$S
+# LOCALIZATION_NOTE(imipHtml.attendeeUserType2.GROUP): used to compose
+# imipHtml.attendeeRole2.*
+# %1$S - email address or common name <email address> representing a group (e.g. a distribution list)
+imipHtml.attendeeUserType2.GROUP=%1$S (gruppe)
+# LOCALIZATION_NOTE(imipHtml.attendeeUserType2.RESOURCE): used to compose
+# imipHtml.attendeeRole2.*
+# %1$S - email address or common name <email address> representing a resource (e.g. projector)
+imipHtml.attendeeUserType2.RESOURCE=%1$S (ressurs)
+# LOCALIZATION_NOTE(imipHtml.attendeeUserType2.ROOM): used to compose
+# imipHtml.attendeeRole2.*
+# %1$S - email address or common name <email address> representing a room
+imipHtml.attendeeUserType2.ROOM=%1$S (rom)
+# LOCALIZATION_NOTE(imipHtml.attendeeUserType2.UNKNOWN): used to compose
+# imipHtml.attendeeRole2.*
+# %1$S - email address or common name <email address> representing an attendee of unknown type
+imipHtml.attendeeUserType2.UNKNOWN=%1$S
+
+imipAddedItemToCal2=Hendinga er lagt til i kalenderen din.
+imipCanceledItem2=Hendinga er sletta frå kalenderen din.
+imipUpdatedItem2=Hendinga er oppdatert.
+imipBarCancelText=Denne meldinga inneheld ei avlysing.
+imipBarCounterErrorText=Denne meldinga inneheld eit motforslag til ei innbyding som ikkje kan behandlast.
+imipBarCounterPreviousVersionText=Denne meldinga inneheld eit motforslag til ein tidlegare versjon av ei innbyding.
+imipBarCounterText=Denne meldinga inneheld eit motforslag til ei innbyding.
+imipBarDisallowedCounterText=Denne meldinga inneheld eit motforslag sjølv om du ikkje tillèt motforslag for denne hendinga.
+imipBarDeclineCounterText=Denne meldinga inneheld eit svar på motforslaget ditt.
+imipBarRefreshText=Denne meldinga ber om oppdatering på ei hending.
+imipBarPublishText=Denne meldinga inneheld ei hending.
+imipBarRequestText=Denne meldinga inneheld ein invitasjon til ei hending.
+imipBarSentText=Denne meldinga inneheld ei sendt hending.
+imipBarSentButRemovedText=Denne meldinga inneheld ei usendt hending som ikkje er i kalenderen din lenger.
+imipBarUpdateText=Denne meldinga inneheld ei oppdatering til ei eksisterande hending.
+imipBarUpdateMultipleText=Denne meldinga inneheld oppdateringar for fleire eksisterande hendingar.
+imipBarUpdateSeriesText=Denn meldinga inneheld ei oppdatering til ein eksisterande serie av hendingar.
+imipBarAlreadyProcessedText=Denne meldinga inneheld ei hending som allereie er handsama.
+imipBarProcessedNeedsAction=Denne meldinga inneheld ei hending som du enno ikkje har svart på.
+imipBarProcessedMultipleNeedsAction=Denne meldinga inneheld fleire hendingar som du enno ikkje har svara på.
+imipBarProcessedSeriesNeedsAction=Denne meldinga inneheld ein hendingsserie som du enno ikkje har svara på.
+imipBarReplyText=Denne meldinga inneheld eit svar på ein invitasjon.
+imipBarReplyToNotExistingItem=Denne meldinga inneheld eit svar som viser til ei hending som ikkje finst i kalenderen din.
+# LOCALIZATION_NOTE(imipBarReplyToRecentlyRemovedItem):
+# %1$S - time of deletion
+imipBarReplyToRecentlyRemovedItem=Denne meldinga inneheld eit svar som viser til ei hending som vart fjerna frå kalenderen den %1$S.
+imipBarUnsupportedText2=Denne meldinga inneheld ei hending som denne versjonen av %1$S ikkje kan handsame.
+imipBarProcessingFailed=Klarte ikkje å handsame meldinga. Status: %1$S.
+imipBarCalendarDeactivated=Denne meldinga inneheld informasjon om hendingar. Aktiver ein kalender for å handsame han.
+imipBarNotWritable=Ingen skrivbare kalendrar er konfigurerte for invitasjonar. Kontroller kalenderinnstillingane.
+imipSendMail.title=Informer deltakarar på e-post
+imipSendMail.text=Vil du sende ut kunngjeringar på e-post no?
+imipNoIdentity=Ingen
+imipNoCalendarAvailable=Ingen skrivbare kalendrar er tilgjengelege.
+
+itipReplySubject2=Svar på invitasjon: %1$S
+itipReplyBodyAccept=%1$S har godteke invitasjonen din.
+itipReplyBodyDecline=%1$S har avslått invitasjonen din.
+itipReplySubjectAccept2=Akseptert: %1$S
+itipReplySubjectDecline2=Invitasjon avvist: %1$S
+itipReplySubjectTentative2=Med atterhald: %1$S
+itipRequestSubject2=Invitasjon: %1$S
+itipRequestUpdatedSubject2=Oppdatert: %1$S
+itipRequestBody=%1$S har invitert deg til %2$S
+itipCancelSubject2=Avbroten: %1$S
+itipCancelBody=%1$S har avlyst denne hendinga: %2$S
+itipCounterBody=%1$S har kome med eit motforslag for « %2$S »:
+itipDeclineCounterBody=%1$S har avslått motforslaget ditt om « %2$S ».
+itipDeclineCounterSubject=Motforslaget avvist: %1$S
+
+confirmProcessInvitation=Du har nyleg sletta dette elementet. Er du viss på at du vil handsame denne invitasjonen?
+confirmProcessInvitationTitle=Handsame invitasjon?
+
+invitationsLink.label=Invitasjonar: %1$S
+
+# LOCALIZATION NOTE(noIdentitySelectedNotification):
+noIdentitySelectedNotification=Viss du vil bruka denne kalenderen for å lagra innbydingar til eller frå andre personar, skal du tildela ein e-postidentitet nedanfor.
diff --git a/l10n-nn-NO/calendar/lightning-l10n.js b/l10n-nn-NO/calendar/lightning-l10n.js
new file mode 100644
index 0000000000..912952c08b
--- /dev/null
+++ b/l10n-nn-NO/calendar/lightning-l10n.js
@@ -0,0 +1,24 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+#filter substitution
+
+# the default day to start the week on
+#0=Sunday 1=Monday 2=Tuesday 3=Wednesday 4=Thursday 5=Friday 6=Saturday
+pref("calendar.week.start", 1);
+
+# default days off (not in work week)
+pref("calendar.week.d0sundaysoff", true);
+pref("calendar.week.d1mondaysoff", false);
+pref("calendar.week.d2tuesdaysoff", false);
+pref("calendar.week.d3wednesdaysoff", false);
+pref("calendar.week.d4thursdaysoff", false);
+pref("calendar.week.d5fridaysoff", false);
+pref("calendar.week.d6saturdaysoff", true);
+
+pref("general.useragent.locale", "@AB_CD@");
+
+# categories
+pref("calendar.categories.names", "Arbeid,Favorittar,Ferie,Fridagar,Fødselsdag,Gåver,Idear,Jubileum,Klientar,Konkurranse,Kunde,Leverandørar,Møte,Offentleg helgedag,Oppfølging,Personleg,Problem,Prosjekt,Reise,Status,Telefonsamtalar,Ymse");
+