diff --git a/frontend/static/layouts/persian_farsi.json b/frontend/static/layouts/persian_farsi.json index 93f9e4f14..92f01c230 100644 --- a/frontend/static/layouts/persian_farsi.json +++ b/frontend/static/layouts/persian_farsi.json @@ -5,7 +5,7 @@ "row1": [ ["÷", "×"], ["1", "!"], - ["@", "2"], + ["2", "@"], ["3", "#"], ["4", "$"], ["5", "%"], @@ -18,43 +18,43 @@ ["=", "+"] ], "row2": [ - ["ً", "ض"], - ["ٌ", "ص"], - ["ٍ", "ث"], - ["ق", "ق"], - ["،", "ف"], - ["؛", "غ"], - [",", "ع"], - ["]", "ه"], - ["[", "خ"], - ["ح"], - ["}", "ج"], - ["{", "چ"], - ["|", "پ"] + ["ض", "ً"], + ["ص", "ٌ"], + ["ث", "ٍ"], + ["ق"], + ["ف", "،"], + ["غ", "؛"], + ["ع", ","], + ["ه", "]"], + ["خ", "["], + ["ح", "\\"], + ["ج", "}"], + ["چ", "{"], + ["پ", "|"] ], "row3": [ - ["َ", "ش"], - ["ُ", "س"], - ["ِ", "ی"], - ["ّ", "ب"], - ["ۀ", "ل"], - ["آ", "ا"], - ["ـ", "ت"], - ["«", "ن"], - ["»", "م"], - [":", "ک"], + ["ش", "َ"], + ["س", "ُ"], + ["ی", "ِ"], + ["ب", "ّ"], + ["ل", "ۀ"], + ["ا", "آ"], + ["ت", "ـ"], + ["ن", "«"], + ["م", "»"], + ["ک", ":"], ["گ", "\""] ], "row4": [ - ["ة", "ظ"], - ["ي", "ط"], - ["ژ", "ز"], - ["ؤ", "ر"], - ["إ", "ذ"], - ["أ", "د"], - ["ء", "ئ"], - ["<", "و"], - [">", "."], + ["ظ", "ة"], + ["ط", "ي"], + ["ز", "ژ"], + ["ر", "ؤ"], + ["ذ", "إ"], + ["د", "أ"], + ["ئ", "ء"], + ["و", "<"], + [".", ">"], ["/", "؟"] ], "row5": [[" "]] diff --git a/frontend/static/layouts/persian_farsi_colemak.json b/frontend/static/layouts/persian_farsi_colemak.json new file mode 100644 index 000000000..aa7a59b1c --- /dev/null +++ b/frontend/static/layouts/persian_farsi_colemak.json @@ -0,0 +1,62 @@ +{ + "keymapShowTopRow": false, + "type": "ansi", + "keys": { + "row1": [ + ["÷", "×"], + ["1", "!"], + ["2", "@"], + ["3", "#"], + ["4", "$"], + ["5", "%"], + ["6", "^"], + ["7", "&"], + ["8", "*"], + ["9", ")"], + ["0", "("], + ["-", "_"], + ["=", "+"] + ], + "row2": [ + ["ض", "ً"], + ["ص", "ٌ"], + ["ب", "ّ"], + ["ح", "\\"], + ["ل", "ۀ"], + ["ت", "ـ"], + ["م", "»"], + ["ع", ","], + ["غ", "؛"], + ["ک", ":"], + ["ج", "}"], + ["چ", "{"], + ["پ", "|"] + ], + "row3": [ + ["ش", "َ"], + ["ق"], + ["س", "ُ"], + ["ف", "،"], + ["ی", "ِ"], + ["ا", "آ"], + ["د", "أ"], + ["ث", "ٍ"], + ["ه", "]"], + ["خ", "["], + ["گ", "\""] + ], + "row4": [ + ["ظ", "ة"], + ["ط", "ي"], + ["ز", "ژ"], + ["ر", "ؤ"], + ["ذ", "إ"], + ["ن", "«"], + ["ئ", "ء"], + ["و", "<"], + [".", ">"], + ["/", "؟"] + ], + "row5": [[" "]] + } +} diff --git a/frontend/static/layouts/persian_standard.json b/frontend/static/layouts/persian_standard.json index d224d79c1..16c70e271 100644 --- a/frontend/static/layouts/persian_standard.json +++ b/frontend/static/layouts/persian_standard.json @@ -4,57 +4,57 @@ "keys": { "row1": [ ["`", "~"], - ["1", "!"], - ["2", "@"], - ["3", "#"], - ["4", "$"], - ["5", "%"], - ["6", "^"], - ["7", "&"], - ["8", "*"], - ["9", "("], - ["0", ")"], - ["-", "_"], + ["۱", "!"], + ["۲", "٬"], + ["۳", "٫"], + ["۴"], + ["۵", "٪"], + ["۶", "×"], + ["۷", "،"], + ["۸", "*"], + ["۹", ")"], + ["۰", "("], + ["-", "ـ"], ["=", "+"] ], "row2": [ - ["ض"], - ["ص"], - ["ث"], - ["ق"], - ["ف"], - ["غ"], - ["ع"], - ["ه"], - ["خ"], - ["ح"], - ["ج"], - ["چ"], - ["\""] + ["ض", "ْ"], + ["ص", "ٌ"], + ["ث", "ٍ"], + ["ق", "ً"], + ["ف", "ُ"], + ["غ", "ِ"], + ["ع", "َ"], + ["ه", "ّ"], + ["خ", "]"], + ["ح", "["], + ["ج", "}"], + ["چ", "}"], + ["\\", "{"] ], "row3": [ - ["ش"], - ["س"], - ["ی"], - ["ب"], - ["ل"], + ["ش", "ؤ"], + ["س", "ئ"], + ["ی", "ي"], + ["ب", "إ"], + ["ل", "أ"], ["ا", "آ"], - ["ت"], - ["ن"], - ["م"], - ["ک"], - ["گ"] + ["ت", "ة"], + ["ن", "»"], + ["م", "«"], + ["ک", ":"], + ["گ", "؛"] ], "row4": [ - ["ظ"], - ["ط"], + ["ظ", "ك"], + ["ط", "ط"], ["ز", "ژ"], - ["ر"], + ["ر", "ٰ"], ["ذ"], - ["د"], - ["پ"], - ["و"], - ["."], + ["د", "ٔ"], + ["پ", "ء"], + ["و", ">"], + [".", "<"], ["/", "?"] ], "row5": [[" "]] diff --git a/frontend/static/layouts/persian_standard_colemak.json b/frontend/static/layouts/persian_standard_colemak.json new file mode 100644 index 000000000..7c57e764b --- /dev/null +++ b/frontend/static/layouts/persian_standard_colemak.json @@ -0,0 +1,62 @@ +{ + "keymapShowTopRow": true, + "type": "ansi", + "keys": { + "row1": [ + ["گ", "؛"], + ["۱", "!"], + ["۲", "٬"], + ["۳", "٫"], + ["۴"], + ["۵", "٪"], + ["۶", "×"], + ["۷", "،"], + ["۸", "*"], + ["۹", ")"], + ["۰", ")"], + ["-", "ـ"], + ["=", "+"] + ], + "row2": [ + ["ض", "ْ"], + ["ص", "ٌ"], + ["ب", "إ"], + ["ح", "["], + ["ل", "أ"], + ["ت", "ة"], + ["م", "«"], + ["ع", "َ"], + ["غ", "ِ"], + ["ک", ":"], + ["\\", "|"], + ["ج", "}"], + ["چ", "{"] + ], + "row3": [ + ["ش", "ؤ"], + ["ق", "ً"], + ["س", "ئ"], + ["ف", "ُ"], + ["ی", "ي"], + ["ا", "آ"], + ["د", "ٔ"], + ["ث", "ٍ"], + ["ه", "ّ"], + ["خ", "]"], + ["گ", "؛"] + ], + "row4": [ + ["ظ", "ك"], + ["ط", "ط"], + ["ز", "ژ"], + ["ر", "ٰ"], + ["ذ", "‌"], + ["ن", "»"], + ["پ", "ء"], + ["و", ">"], + [".", "<"], + ["/", "؟"] + ], + "row5": [[" "]] + } +} diff --git a/packages/schemas/src/layouts.ts b/packages/schemas/src/layouts.ts index e20d0c2e4..01ecbba3a 100644 --- a/packages/schemas/src/layouts.ts +++ b/packages/schemas/src/layouts.ts @@ -219,7 +219,9 @@ export const LayoutNameSchema = z.enum([ "tarmak_3", "tarmak_4", "rulemak", - ], + "persian_farsi_colemak", + "persian_standard_colemak", + ], { errorMap: customEnumErrorHandler("Must be a supported layout"), }