diff --git a/crowdin.yml b/crowdin.yml
new file mode 100644
index 0000000..48edea1
--- /dev/null
+++ b/crowdin.yml
@@ -0,0 +1,3 @@
+files:
+ - source: /language/.en.json
+ translation: /language/%two_letters_code%.json
diff --git a/language/.en.json b/language/.en.json
new file mode 100644
index 0000000..90f5187
--- /dev/null
+++ b/language/.en.json
@@ -0,0 +1,165 @@
+{
+ "semantics": [
+ {
+ "label": "Media",
+ "fields": [
+ {
+ "label": "Type",
+ "description": "Optional media to display above the question."
+ }
+ ]
+ },
+ {
+ "label": "Task description",
+ "default": "Fill in the missing words",
+ "description": "A guide telling the user how to answer this task."
+ },
+ {
+ "label": "Text blocks",
+ "entity": "text block",
+ "field": {
+ "label": "Line of text",
+ "placeholder": "Oslo is the capital of *Norway*.",
+ "description": "",
+ "important": {
+ "description": "
- Blanks are added with an asterisk (*) in front and behind the correct word/phrase.
- Alternative answers are separated with a forward slash (/).
- You may add a textual tip, using a colon (:) in front of the tip.
"
+ }
+ }
+ },
+ {
+ "label": "Feedback text",
+ "default": "You got @score of @total points",
+ "description": "Feedback text, variables available: @score and @total. Example: 'You got @score of @total possible points'"
+ },
+ {
+ "label": "Text for \"Show solutions\" button",
+ "default": "Show solution"
+ },
+ {
+ "label": "Text for \"Retry\" button",
+ "default": "Retry"
+ },
+ {
+ "label": "Text for \"Check\" button",
+ "default": "Check"
+ },
+ {
+ "label": "Text for \"Not filled out\" message",
+ "default": "Please fill in all blanks to view solution"
+ },
+ {
+ "label": "Text for \"':ans' is correct\" message",
+ "default": "':ans' is correct"
+ },
+ {
+ "label": "Text for \"':ans' is wrong\" message",
+ "default": "':ans' is wrong"
+ },
+ {
+ "label": "Text for \"Answered correctly\" message",
+ "default": "Answered correctly"
+ },
+ {
+ "label": "Text for \"Answered incorrectly\" message",
+ "default": "Answered incorrectly"
+ },
+ {
+ "label": "Assistive technology label for solution",
+ "default": "Correct answer:"
+ },
+ {
+ "label": "Assistive technology label for input field",
+ "description": "Use @num and @total to replace current cloze number and total cloze number",
+ "default": "Blank input @num of @total"
+ },
+ {
+ "label": "Assistive technology label for saying an input has a tip tied to it",
+ "default": "Tip available"
+ },
+ {
+ "label": "Tip icon label",
+ "default": "Tip"
+ },
+ {
+ "label": "Behavioural settings.",
+ "description": "These options will let you control how the task behaves.",
+ "fields": [
+ {
+ "label": "Enable \"Retry\""
+ },
+ {
+ "label": "Enable \"Show solutions\" button"
+ },
+ {
+ "label": "Automatically check answers after input"
+ },
+ {
+ "label": "Case sensitive",
+ "description": "Makes sure the user input has to be exactly the same as the answer."
+ },
+ {
+ "label": "Require all fields to be answered before the solution can be viewed"
+ },
+ {
+ "label": "Put input fields on separate lines"
+ },
+ {
+ "label": "Disable image zooming for question image"
+ },
+ {
+ "label": "Show confirmation dialog on \"Check\"",
+ "description": "This options is not compatible with the \"Automatically check answers after input\" option"
+ },
+ {
+ "label": "Show confirmation dialog on \"Retry\""
+ },
+ {
+ "label": "Accept minor spelling errors",
+ "description": "If activated, an answer will also count as correct with minor spelling errors"
+ }
+ ]
+ },
+ {
+ "label": "Check confirmation dialog",
+ "fields": [
+ {
+ "label": "Header text",
+ "default": "Finish ?"
+ },
+ {
+ "label": "Body text",
+ "default": "Are you sure you wish to finish ?"
+ },
+ {
+ "label": "Cancel button label",
+ "default": "Cancel"
+ },
+ {
+ "label": "Confirm button label",
+ "default": "Finish"
+ }
+ ]
+ },
+ {
+ "label": "Retry confirmation dialog",
+ "fields": [
+ {
+ "label": "Header text",
+ "default": "Retry ?"
+ },
+ {
+ "label": "Body text",
+ "default": "Are you sure you wish to retry ?"
+ },
+ {
+ "label": "Cancel button label",
+ "default": "Cancel"
+ },
+ {
+ "label": "Confirm button label",
+ "default": "Confirm"
+ }
+ ]
+ }
+ ]
+}
\ No newline at end of file
diff --git a/language/ar.json b/language/ar.json
index 57e847d..d918d54 100644
--- a/language/ar.json
+++ b/language/ar.json
@@ -159,4 +159,4 @@
]
}
]
-}
+}
\ No newline at end of file
diff --git a/language/bs.json b/language/bs.json
index 7c0c049..93145b9 100644
--- a/language/bs.json
+++ b/language/bs.json
@@ -159,4 +159,4 @@
]
}
]
-}
+}
\ No newline at end of file
diff --git a/language/de.json b/language/de.json
index 6f4326a..f314d9a 100755
--- a/language/de.json
+++ b/language/de.json
@@ -159,4 +159,4 @@
]
}
]
-}
+}
\ No newline at end of file
diff --git a/language/fr.json b/language/fr.json
index 70ae5d7..df1e5fd 100644
--- a/language/fr.json
+++ b/language/fr.json
@@ -159,4 +159,4 @@
]
}
]
-}
+}
\ No newline at end of file
diff --git a/language/it.json b/language/it.json
index aaed257..bf71c70 100644
--- a/language/it.json
+++ b/language/it.json
@@ -159,4 +159,4 @@
]
}
]
-}
+}
\ No newline at end of file
diff --git a/language/nb.json b/language/nb.json
index 9544028..78ed5fb 100644
--- a/language/nb.json
+++ b/language/nb.json
@@ -163,4 +163,4 @@
]
}
]
-}
+}
\ No newline at end of file
diff --git a/language/nn.json b/language/nn.json
index 5c5b75a..88720bc 100644
--- a/language/nn.json
+++ b/language/nn.json
@@ -22,7 +22,7 @@
"placeholder": "Oslo er hovudstaden i *Noreg*",
"description": "",
"important": {
- "description":"- Opne felt merkast med ei stjerne * foran og bak det korrekte ordet/uttrykket.
- Alternativ angis med ein skråstrek (/)
- Tips angis med eit kolon (:) før tipset
",
+ "description": "- Opne felt merkast med ei stjerne * foran og bak det korrekte ordet/uttrykket.
- Alternativ angis med ein skråstrek (/)
- Tips angis med eit kolon (:) før tipset
",
"example": "H5P innhold kan lages i ein *nettleser:Noe du bruker til å navigere internett med*."
}
}
@@ -163,4 +163,4 @@
]
}
]
-}
+}
\ No newline at end of file