summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLars-Dominik Braun <lars@6xq.net>2021-10-12 15:05:02 +0200
committerLars-Dominik Braun <lars@6xq.net>2021-10-27 15:36:39 +0200
commitb42ab59f92b2f015b2b06cbd1bbbfc43ab11c506 (patch)
tree28652ea816498db53aa5e3fe994f523a69094f99
parent67901c25470734107a9888402e8e12a2c8e0a25b (diff)
downloadlulua-b42ab59f92b2f015b2b06cbd1bbbfc43ab11c506.tar.gz
lulua-b42ab59f92b2f015b2b06cbd1bbbfc43ab11c506.tar.bz2
lulua-b42ab59f92b2f015b2b06cbd1bbbfc43ab11c506.zip
layouts: Add ergoarabic
See https://github.com/darkstego/ergoarabic
-rwxr-xr-xgen.sh2
-rw-r--r--lulua/data/layouts/ar-ergoarabic.yaml168
-rw-r--r--lulua/data/report/index.html31
3 files changed, 199 insertions, 2 deletions
diff --git a/gen.sh b/gen.sh
index 47d01ea..998f4a2 100755
--- a/gen.sh
+++ b/gen.sh
@@ -2,7 +2,7 @@
# Generate build.ninja that builds the docs/stats/…
corpusdir=corpus
-layouts="ar-lulua ar-asmo663 ar-linux ar-malas ar-phonetic ar-osman ar-khorshid ar-osx ar-idlebi ar-alramly"
+layouts="ar-lulua ar-asmo663 ar-linux ar-malas ar-phonetic ar-osman ar-khorshid ar-osx ar-idlebi ar-alramly ar-ergoarabic"
layoutsXmodmap="ar-lulua"
corpora="`ls ${corpusdir}`"
diff --git a/lulua/data/layouts/ar-ergoarabic.yaml b/lulua/data/layouts/ar-ergoarabic.yaml
new file mode 100644
index 0000000..a58a8d0
--- /dev/null
+++ b/lulua/data/layouts/ar-ergoarabic.yaml
@@ -0,0 +1,168 @@
+name: ar-ergoarabic
+layout:
+- layer:
+ Bl1: "`"
+ Bl2: "1"
+ Bl3: "2"
+ Bl4: "3"
+ Bl5: "4"
+ Bl6: "5"
+ Bl7: "6"
+ Br6: "7"
+ Br5: "8"
+ Br4: "9"
+ Br3: "0"
+ Br2: "-"
+ Br1: "="
+ Br_bs: "\b"
+
+ Cl_tab: "\t"
+ Cl1: "د"
+ Cl2: "ص"
+ Cl3: "ث"
+ Cl4: "ق"
+ Cl5: "ف"
+ Cr7: "ء"
+ Cr6: "ع"
+ Cr5: "ه"
+ Cr4: "و"
+ Cr3: "ة"
+ Cr2: "]"
+ Cr1: "["
+
+ CD_ret: "\n"
+
+ Dl1: "ش"
+ Dl2: "س"
+ Dl3: "ي"
+ Dl4: "ب"
+ Dl5: "ل"
+ Dr7: "ا"
+ Dr6: "ت"
+ Dr5: "ن"
+ Dr4: "م"
+ Dr3: "ك"
+ Dr2: "'"
+ Dr1: "\\"
+
+ El2: "\u064a\u0654" # composed: ئ
+ El3: "ى"
+ El4: "ط"
+ El5: "ر"
+ El6: "خ"
+ Er5: "ح"
+ Er4: "ج"
+ Er3: "،"
+ Er2: "."
+ Er1: "/"
+
+ Fl_space: " "
+ Fr_space: " "
+ modifier:
+ - []
+- layer:
+ Bl1: "~" # shadda
+ Bl2: "!"
+ Bl3: "@"
+ Bl4: "#"
+ Bl5: "$"
+ Bl6: "%"
+ Bl7: "^"
+ Br6: "&"
+ Br5: "*"
+ Br4: ")"
+ Br3: "("
+ Br2: "_"
+ Br1: "+"
+
+ Cl1: "ذ"
+ Cl2: "ض"
+ Cl3: "\u064f" # damma
+ Cl4: "\u064c" # dammatan
+ Cl5: "\u0651" # shadda
+ Cr7: "ا\u0655" # composed: إ
+ Cr6: "غ"
+ Cr5: "÷"
+ Cr4: "\u0648\u0654" # composed: ؤ
+ Cr3: "؛"
+ Cr2: "}"
+ Cr1: "{"
+
+ Dl1: "\u0650" # kasra
+ Dl2: "\u064d" # kasratan
+ Dl3: "\u064e" # fatha
+ Dl4: "\u064b" # fathatan
+ Dl5: "ا\u0653" # composed: آ
+ Dr7: "ا\u0654" # composed: أ
+ Dr6: "\u0640" # tatweel
+ Dr5: "×"
+ Dr4: ","
+ Dr3: ":"
+ Dr2: '"'
+
+ El3: "\u0652" # sukun
+ El4: "ظ"
+ El5: "ز"
+ El6: "…"
+ Er5: "»"
+ Er4: "«"
+ Er3: ">"
+ Er2: "<"
+ Er1: "؟"
+ modifier:
+ - [El_shift]
+ - [Er_shift]
+- layer:
+ Bl2: "١"
+ Bl3: "٢"
+ Bl4: "٣"
+ Bl5: "٤"
+ Bl6: "٥"
+ Bl7: "٦"
+ Br6: "٧"
+ Br5: "٨"
+ Br4: "٩"
+ Br3: "٠"
+ Br1: "≠"
+
+ Cl5: "ڤ"
+
+ Dl4: "پ"
+ Dl5: "\u0670" # superscript alef
+ Dr7: "\u0671" # alef wasla
+ Dr5: "\u066b" # decimal separator
+ Dr3: "گ‎"
+ Dr2: '⟩'
+ Dr1: "⟨"
+
+ El2: "›"
+ El3: "‹"
+ El5: "ژ"
+ Er4: "چ"
+ Er1: "\u066d" # five pointed star
+ modifier:
+ - [Fr_altgr]
+- layer:
+ Bl6: "‰"
+ Br2: "\u2011" # non-breaking hyphen
+ Br1: "≈"
+
+ Cl1: "\u2066" # LRI
+ Cl2: "\u2067" # RLI
+ Cl3: "\u2068" # first strong isolate
+ Cl4: "\u2069" # PDI
+ Cr7: "\u202a" # LRE
+ Cr6: "\u202b" # RLE
+ Cr5: "\u202c" # PDF
+ Cr3: "\u200e" # LRM
+ Cr2: "\u200f" # RLM
+ Cr1: "\u061c" # ALM
+
+ Dr2: "\u200d" # ZWJ
+ Dr1: "\u202f" # NNBSP
+
+ Er1: "\u200c" # ZWNJ
+ modifier:
+ - [Fr_altgr, El_shift]
+ - [Fr_altgr, Er_shift]
+
diff --git a/lulua/data/report/index.html b/lulua/data/report/index.html
index e35e08f..146b7f9 100644
--- a/lulua/data/report/index.html
+++ b/lulua/data/report/index.html
@@ -753,13 +753,42 @@
</div>
</div>
- <figure id="ar-osman">
+ <figure>
<div class="lbox">
<img src="ar-osman-heat.svg">
{{ fingerhandstats(layoutstats['ar-osman']) }}
</div>
</figure>
+ <div id="ar-ergoarabic" class="pure-g flexreverse">
+ <div class="pure-u-1 pure-u-xl-1-2">
+ </div>
+ <div class="pure-u-1 pure-u-xl-1-2" lang="en">
+ <div class="lbox">
+ <h3><a href="#ar-ergoarabic">Ergoarabic</a></h3>
+ <p>
+ Being first released in 2021 <a
+ href="https://github.com/darkstego/ergoarabic">Ergoarabic</a> is the
+ most recent optimized layout for Arabic.
+ <!-- -->
+ On the first layer it combines the positions of 17 keys from the <a
+ href="#ar-linux">standard PC layout</a> with brackets and punctuation
+ symbols from QWERTY, aiming to retain compatibility with both.
+ <!-- -->
+ The remaining keys have been re-arranged or moved to the shift layer by
+ hand for improved ergonomics.
+ </p>
+ </div>
+ </div>
+ </div>
+
+ <figure id="ar-ergoarabic">
+ <div class="lbox">
+ <img src="ar-ergoarabic-heat.svg">
+ {{ fingerhandstats(layoutstats['ar-ergoarabic']) }}
+ </div>
+ </figure>
+
<div id="ar-phonetic" class="pure-g flexreverse">
<div class="pure-u-1 pure-u-xl-1-2">
</div>