PNG  IHDRX cHRMz&u0`:pQ<bKGD pHYsodtIME MeqIDATxw]Wug^Qd˶ 6`!N:!@xI~)%7%@Bh&`lnjVF29gΨ4E$|>cɚ{gk= %,a KX%,a KX%,a KX%,a KX%,a KX%,a KX%, b` ǟzeאfp]<!SJmɤY޲ڿ,%c ~ع9VH.!Ͳz&QynֺTkRR.BLHi٪:l;@(!MԴ=žI,:o&N'Kù\vRmJ雵֫AWic H@" !: Cé||]k-Ha oݜ:y F())u]aG7*JV@J415p=sZH!=!DRʯvɱh~V\}v/GKY$n]"X"}t@ xS76^[bw4dsce)2dU0 CkMa-U5tvLƀ~mlMwfGE/-]7XAƟ`׮g ewxwC4\[~7@O-Q( a*XGƒ{ ՟}$_y3tĐƤatgvێi|K=uVyrŲlLӪuܿzwk$m87k( `múcE)"@rK( z4$D; 2kW=Xb$V[Ru819קR~qloѱDyįݎ*mxw]y5e4K@ЃI0A D@"BDk_)N\8͜9dz"fK0zɿvM /.:2O{ Nb=M=7>??Zuo32 DLD@D| &+֎C #B8ַ`bOb $D#ͮҪtx]%`ES`Ru[=¾!@Od37LJ0!OIR4m]GZRJu$‡c=%~s@6SKy?CeIh:[vR@Lh | (BhAMy=݃  G"'wzn޺~8ԽSh ~T*A:xR[ܹ?X[uKL_=fDȊ؂p0}7=D$Ekq!/t.*2ʼnDbŞ}DijYaȲ(""6HA;:LzxQ‘(SQQ}*PL*fc\s `/d'QXW, e`#kPGZuŞuO{{wm[&NBTiiI0bukcA9<4@SӊH*؎4U/'2U5.(9JuDfrޱtycU%j(:RUbArLֺN)udA':uGQN"-"Is.*+k@ `Ojs@yU/ H:l;@yyTn}_yw!VkRJ4P)~y#)r,D =ě"Q]ci'%HI4ZL0"MJy 8A{ aN<8D"1#IJi >XjX֔#@>-{vN!8tRݻ^)N_╗FJEk]CT՟ YP:_|H1@ CBk]yKYp|og?*dGvzنzӴzjֺNkC~AbZƷ`.H)=!QͷVTT(| u78y֮}|[8-Vjp%2JPk[}ԉaH8Wpqhwr:vWª<}l77_~{s۴V+RCģ%WRZ\AqHifɤL36: #F:p]Bq/z{0CU6ݳEv_^k7'>sq*+kH%a`0ԣisqにtү04gVgW΂iJiS'3w.w}l6MC2uԯ|>JF5`fV5m`Y**Db1FKNttu]4ccsQNnex/87+}xaUW9y>ͯ骵G{䩓Գ3+vU}~jJ.NFRD7<aJDB1#ҳgSb,+CS?/ VG J?|?,2#M9}B)MiE+G`-wo߫V`fio(}S^4e~V4bHOYb"b#E)dda:'?}׮4繏`{7Z"uny-?ǹ;0MKx{:_pÚmFמ:F " .LFQLG)Q8qN q¯¯3wOvxDb\. BKD9_NN &L:4D{mm o^tֽ:q!ƥ}K+<"m78N< ywsard5+вz~mnG)=}lYݧNj'QJS{S :UYS-952?&O-:W}(!6Mk4+>A>j+i|<<|;ر^߉=HE|V#F)Emm#}/"y GII웻Jі94+v뾧xu~5C95~ūH>c@덉pʃ1/4-A2G%7>m;–Y,cyyaln" ?ƻ!ʪ<{~h~i y.zZB̃/,雋SiC/JFMmBH&&FAbϓO^tubbb_hZ{_QZ-sύodFgO(6]TJA˯#`۶ɟ( %$&+V'~hiYy>922 Wp74Zkq+Ovn錄c>8~GqܲcWꂎz@"1A.}T)uiW4="jJ2W7mU/N0gcqܗOO}?9/wìXžΏ0 >֩(V^Rh32!Hj5`;O28؇2#ݕf3 ?sJd8NJ@7O0 b־?lldщ̡&|9C.8RTWwxWy46ah嘦mh٤&l zCy!PY?: CJyв]dm4ǜҐR޻RլhX{FƯanшQI@x' ao(kUUuxW_Ñ줮[w8 FRJ(8˼)_mQ _!RJhm=!cVmm ?sFOnll6Qk}alY}; "baӌ~M0w,Ggw2W:G/k2%R,_=u`WU R.9T"v,<\Ik޽/2110Ӿxc0gyC&Ny޽JҢrV6N ``یeA16"J³+Rj*;BϜkZPJaÍ<Jyw:NP8/D$ 011z֊Ⱳ3ι֘k1V_"h!JPIΣ'ɜ* aEAd:ݺ>y<}Lp&PlRfTb1]o .2EW\ͮ]38؋rTJsǏP@芎sF\> P^+dYJLbJ C-xϐn> ι$nj,;Ǖa FU *择|h ~izť3ᤓ`K'-f tL7JK+vf2)V'-sFuB4i+m+@My=O҈0"|Yxoj,3]:cо3 $#uŘ%Y"y죯LebqtҢVzq¼X)~>4L׶m~[1_k?kxֺQ`\ |ٛY4Ѯr!)N9{56(iNq}O()Em]=F&u?$HypWUeB\k]JɩSع9 Zqg4ZĊo oMcjZBU]B\TUd34ݝ~:7ڶSUsB0Z3srx 7`:5xcx !qZA!;%͚7&P H<WL!džOb5kF)xor^aujƍ7 Ǡ8/p^(L>ὴ-B,{ۇWzֺ^k]3\EE@7>lYBȝR.oHnXO/}sB|.i@ɥDB4tcm,@ӣgdtJ!lH$_vN166L__'Z)y&kH;:,Y7=J 9cG) V\hjiE;gya~%ks_nC~Er er)muuMg2;֫R)Md) ,¶ 2-wr#F7<-BBn~_(o=KO㭇[Xv eN_SMgSҐ BS헃D%g_N:/pe -wkG*9yYSZS.9cREL !k}<4_Xs#FmҶ:7R$i,fi!~' # !6/S6y@kZkZcX)%5V4P]VGYq%H1!;e1MV<!ϐHO021Dp= HMs~~a)ަu7G^];git!Frl]H/L$=AeUvZE4P\.,xi {-~p?2b#amXAHq)MWǾI_r`S Hz&|{ +ʖ_= (YS(_g0a03M`I&'9vl?MM+m~}*xT۲(fY*V4x@29s{DaY"toGNTO+xCAO~4Ϳ;p`Ѫ:>Ҵ7K 3}+0 387x\)a"/E>qpWB=1 ¨"MP(\xp߫́A3+J] n[ʼnӼaTbZUWb={~2ooKױӰp(CS\S筐R*JغV&&"FA}J>G֐p1ٸbk7 ŘH$JoN <8s^yk_[;gy-;߉DV{c B yce% aJhDȶ 2IdйIB/^n0tNtџdcKj4϶v~- CBcgqx9= PJ) dMsjpYB] GD4RDWX +h{y`,3ꊕ$`zj*N^TP4L:Iz9~6s) Ga:?y*J~?OrMwP\](21sZUD ?ܟQ5Q%ggW6QdO+\@ ̪X'GxN @'4=ˋ+*VwN ne_|(/BDfj5(Dq<*tNt1х!MV.C0 32b#?n0pzj#!38}޴o1KovCJ`8ŗ_"]] rDUy޲@ Ȗ-;xџ'^Y`zEd?0„ DAL18IS]VGq\4o !swV7ˣι%4FѮ~}6)OgS[~Q vcYbL!wG3 7띸*E Pql8=jT\꘿I(z<[6OrR8ºC~ډ]=rNl[g|v TMTղb-o}OrP^Q]<98S¤!k)G(Vkwyqyr޽Nv`N/e p/~NAOk \I:G6]4+K;j$R:Mi #*[AȚT,ʰ,;N{HZTGMoּy) ]%dHء9Պ䠬|<45,\=[bƟ8QXeB3- &dҩ^{>/86bXmZ]]yޚN[(WAHL$YAgDKp=5GHjU&99v簪C0vygln*P)9^͞}lMuiH!̍#DoRBn9l@ xA/_v=ȺT{7Yt2N"4!YN`ae >Q<XMydEB`VU}u]嫇.%e^ánE87Mu\t`cP=AD/G)sI"@MP;)]%fH9'FNsj1pVhY&9=0pfuJ&gޤx+k:!r˭wkl03׼Ku C &ѓYt{.O.zҏ z}/tf_wEp2gvX)GN#I ݭ߽v/ .& и(ZF{e"=V!{zW`, ]+LGz"(UJp|j( #V4, 8B 0 9OkRrlɱl94)'VH9=9W|>PS['G(*I1==C<5"Pg+x'K5EMd؞Af8lG ?D FtoB[je?{k3zQ vZ;%Ɠ,]E>KZ+T/ EJxOZ1i #T<@ I}q9/t'zi(EMqw`mYkU6;[t4DPeckeM;H}_g pMww}k6#H㶏+b8雡Sxp)&C $@'b,fPߑt$RbJ'vznuS ~8='72_`{q纶|Q)Xk}cPz9p7O:'|G~8wx(a 0QCko|0ASD>Ip=4Q, d|F8RcU"/KM opKle M3#i0c%<7׿p&pZq[TR"BpqauIp$ 8~Ĩ!8Սx\ւdT>>Z40ks7 z2IQ}ItԀ<-%S⍤};zIb$I 5K}Q͙D8UguWE$Jh )cu4N tZl+[]M4k8֦Zeq֮M7uIqG 1==tLtR,ƜSrHYt&QP윯Lg' I,3@P'}'R˪e/%-Auv·ñ\> vDJzlӾNv5:|K/Jb6KI9)Zh*ZAi`?S {aiVDԲuy5W7pWeQJk֤#5&V<̺@/GH?^τZL|IJNvI:'P=Ϛt"¨=cud S Q.Ki0 !cJy;LJR;G{BJy޺[^8fK6)=yʊ+(k|&xQ2`L?Ȓ2@Mf 0C`6-%pKpm')c$׻K5[J*U[/#hH!6acB JA _|uMvDyk y)6OPYjœ50VT K}cǻP[ $:]4MEA.y)|B)cf-A?(e|lɉ#P9V)[9t.EiQPDѠ3ϴ;E:+Օ t ȥ~|_N2,ZJLt4! %ա]u {+=p.GhNcŞQI?Nd'yeh n7zi1DB)1S | S#ًZs2|Ɛy$F SxeX{7Vl.Src3E℃Q>b6G ўYCmtկ~=K0f(=LrAS GN'ɹ9<\!a`)֕y[uՍ[09` 9 +57ts6}b4{oqd+J5fa/,97J#6yν99mRWxJyѡyu_TJc`~W>l^q#Ts#2"nD1%fS)FU w{ܯ R{ ˎ󅃏џDsZSQS;LV;7 Od1&1n$ N /.q3~eNɪ]E#oM~}v֯FڦwyZ=<<>Xo稯lfMFV6p02|*=tV!c~]fa5Y^Q_WN|Vs 0ҘދU97OI'N2'8N֭fgg-}V%y]U4 峧p*91#9U kCac_AFңĪy뚇Y_AiuYyTTYЗ-(!JFLt›17uTozc. S;7A&&<ԋ5y;Ro+:' *eYJkWR[@F %SHWP 72k4 qLd'J "zB6{AC0ƁA6U.'F3:Ȅ(9ΜL;D]m8ڥ9}dU "v!;*13Rg^fJyShyy5auA?ɩGHRjo^]׽S)Fm\toy 4WQS@mE#%5ʈfFYDX ~D5Ϡ9tE9So_aU4?Ѽm%&c{n>.KW1Tlb}:j uGi(JgcYj0qn+>) %\!4{LaJso d||u//P_y7iRJ߬nHOy) l+@$($VFIQ9%EeKʈU. ia&FY̒mZ=)+qqoQn >L!qCiDB;Y<%} OgBxB!ØuG)WG9y(Ą{_yesuZmZZey'Wg#C~1Cev@0D $a@˲(.._GimA:uyw֬%;@!JkQVM_Ow:P.s\)ot- ˹"`B,e CRtaEUP<0'}r3[>?G8xU~Nqu;Wm8\RIkբ^5@k+5(By'L&'gBJ3ݶ!/㮻w҅ yqPWUg<e"Qy*167΃sJ\oz]T*UQ<\FԎ`HaNmڜ6DysCask8wP8y9``GJ9lF\G g's Nn͵MLN֪u$| /|7=]O)6s !ĴAKh]q_ap $HH'\1jB^s\|- W1:=6lJBqjY^LsPk""`]w)󭃈,(HC ?䔨Y$Sʣ{4Z+0NvQkhol6C.婧/u]FwiVjZka&%6\F*Ny#8O,22+|Db~d ~Çwc N:FuuCe&oZ(l;@ee-+Wn`44AMK➝2BRՈt7g*1gph9N) *"TF*R(#'88pm=}X]u[i7bEc|\~EMn}P瘊J)K.0i1M6=7'_\kaZ(Th{K*GJyytw"IO-PWJk)..axӝ47"89Cc7ĐBiZx 7m!fy|ϿF9CbȩV 9V-՛^pV̌ɄS#Bv4-@]Vxt-Z, &ֺ*diؠ2^VXbs֔Ìl.jQ]Y[47gj=幽ex)A0ip׳ W2[ᎇhuE^~q흙L} #-b۸oFJ_QP3r6jr+"nfzRJTUqoaۍ /$d8Mx'ݓ= OՃ| )$2mcM*cЙj}f };n YG w0Ia!1Q.oYfr]DyISaP}"dIӗթO67jqR ҊƐƈaɤGG|h;t]䗖oSv|iZqX)oalv;۩meEJ\!8=$4QU4Xo&VEĊ YS^E#d,yX_> ۘ-e\ "Wa6uLĜZi`aD9.% w~mB(02G[6y.773a7 /=o7D)$Z 66 $bY^\CuP. (x'"J60׿Y:Oi;F{w佩b+\Yi`TDWa~|VH)8q/=9!g߆2Y)?ND)%?Ǐ`k/sn:;O299yB=a[Ng 3˲N}vLNy;*?x?~L&=xyӴ~}q{qE*IQ^^ͧvü{Huu=R|>JyUlZV, B~/YF!Y\u_ݼF{_C)LD]m {H 0ihhadd nUkf3oٺCvE\)QJi+֥@tDJkB$1!Đr0XQ|q?d2) Ӣ_}qv-< FŊ߫%roppVBwü~JidY4:}L6M7f٬F "?71<2#?Jyy4뷢<_a7_=Q E=S1И/9{+93֮E{ǂw{))?maÆm(uLE#lïZ  ~d];+]h j?!|$F}*"4(v'8s<ŏUkm7^7no1w2ؗ}TrͿEk>p'8OB7d7R(A 9.*Mi^ͳ; eeUwS+C)uO@ =Sy]` }l8^ZzRXj[^iUɺ$tj))<sbDJfg=Pk_{xaKo1:-uyG0M ԃ\0Lvuy'ȱc2Ji AdyVgVh!{]/&}}ċJ#%d !+87<;qN޼Nفl|1N:8ya  8}k¾+-$4FiZYÔXk*I&'@iI99)HSh4+2G:tGhS^繿 Kتm0 вDk}֚+QT4;sC}rՅE,8CX-e~>G&'9xpW,%Fh,Ry56Y–hW-(v_,? ; qrBk4-V7HQ;ˇ^Gv1JVV%,ik;D_W!))+BoS4QsTM;gt+ndS-~:11Sgv!0qRVh!"Ȋ(̦Yl.]PQWgٳE'`%W1{ndΗBk|Ž7ʒR~,lnoa&:ü$ 3<a[CBݮwt"o\ePJ=Hz"_c^Z.#ˆ*x z̝grY]tdkP*:97YľXyBkD4N.C_[;F9`8& !AMO c `@BA& Ost\-\NX+Xp < !bj3C&QL+*&kAQ=04}cC!9~820G'PC9xa!w&bo_1 Sw"ܱ V )Yl3+ס2KoXOx]"`^WOy :3GO0g;%Yv㐫(R/r (s } u B &FeYZh0y> =2<Ϟc/ -u= c&׭,.0"g"7 6T!vl#sc>{u/Oh Bᾈ)۴74]x7 gMӒ"d]U)}" v4co[ ɡs 5Gg=XR14?5A}D "b{0$L .\4y{_fe:kVS\\O]c^W52LSBDM! C3Dhr̦RtArx4&agaN3Cf<Ԉp4~ B'"1@.b_/xQ} _߃҉/gٓ2Qkqp0շpZ2fԫYz< 4L.Cyυι1t@鎫Fe sYfsF}^ V}N<_`p)alٶ "(XEAVZ<)2},:Ir*#m_YӼ R%a||EƼIJ,,+f"96r/}0jE/)s)cjW#w'Sʯ5<66lj$a~3Kʛy 2:cZ:Yh))+a߭K::N,Q F'qB]={.]h85C9cr=}*rk?vwV렵ٸW Rs%}rNAkDv|uFLBkWY YkX מ|)1!$#3%y?pF<@<Rr0}: }\J [5FRxY<9"SQdE(Q*Qʻ)q1E0B_O24[U'],lOb ]~WjHޏTQ5Syu wq)xnw8~)c 쫬gٲߠ H% k5dƝk> kEj,0% b"vi2Wس_CuK)K{n|>t{P1򨾜j>'kEkƗBg*H%'_aY6Bn!TL&ɌOb{c`'d^{t\i^[uɐ[}q0lM˕G:‚4kb祔c^:?bpg… +37stH:0}en6x˟%/<]BL&* 5&fK9Mq)/iyqtA%kUe[ڛKN]Ě^,"`/ s[EQQm?|XJ߅92m]G.E΃ח U*Cn.j_)Tѧj̿30ڇ!A0=͜ar I3$C^-9#|pk!)?7.x9 @OO;WƝZBFU keZ75F6Tc6"ZȚs2y/1 ʵ:u4xa`C>6Rb/Yм)^=+~uRd`/|_8xbB0?Ft||Z\##|K 0>>zxv8۴吅q 8ĥ)"6>~\8:qM}#͚'ĉ#p\׶ l#bA?)|g g9|8jP(cr,BwV (WliVxxᡁ@0Okn;ɥh$_ckCgriv}>=wGzβ KkBɛ[˪ !J)h&k2%07δt}!d<9;I&0wV/ v 0<H}L&8ob%Hi|޶o&h1L|u֦y~󛱢8fٲUsւ)0oiFx2}X[zVYr_;N(w]_4B@OanC?gĦx>мgx>ΛToZoOMp>40>V Oy V9iq!4 LN,ˢu{jsz]|"R޻&'ƚ{53ўFu(<٪9:΋]B;)B>1::8;~)Yt|0(pw2N%&X,URBK)3\zz&}ax4;ǟ(tLNg{N|Ǽ\G#C9g$^\}p?556]/RP.90 k,U8/u776s ʪ_01چ|\N 0VV*3H鴃J7iI!wG_^ypl}r*jɤSR 5QN@ iZ#1ٰy;_\3\BQQ x:WJv츟ٯ$"@6 S#qe딇(/P( Dy~TOϻ<4:-+F`0||;Xl-"uw$Цi󼕝mKʩorz"mϺ$F:~E'ҐvD\y?Rr8_He@ e~O,T.(ފR*cY^m|cVR[8 JҡSm!ΆԨb)RHG{?MpqrmN>߶Y)\p,d#xۆWY*,l6]v0h15M˙MS8+EdI='LBJIH7_9{Caз*Lq,dt >+~ّeʏ?xԕ4bBAŚjﵫ!'\Ը$WNvKO}ӽmSşذqsOy?\[,d@'73'j%kOe`1.g2"e =YIzS2|zŐƄa\U,dP;jhhhaxǶ?КZ՚.q SE+XrbOu%\GتX(H,N^~]JyEZQKceTQ]VGYqnah;y$cQahT&QPZ*iZ8UQQM.qo/T\7X"u?Mttl2Xq(IoW{R^ ux*SYJ! 4S.Jy~ BROS[V|žKNɛP(L6V^|cR7i7nZW1Fd@ Ara{詑|(T*dN]Ko?s=@ |_EvF]׍kR)eBJc" MUUbY6`~V޴dJKß&~'d3i WWWWWW
Current Directory: /usr/share/X11/xkb/symbols
Viewing File: /usr/share/X11/xkb/symbols/ara
default partial alphanumeric_keys xkb_symbols "basic" { name[Group1]= "Arabic"; key.type[Group1]="FOUR_LEVEL"; key <TLDE> { [ Arabic_thal, Arabic_shadda, Arabic_percent, U0609 ]}; // ‎ذ‎ ‎◌ّ‎ ‎٪‎ ‎؉‎ key <AE01> { [ 1, exclam, Arabic_1, NoSymbol ]}; // 1 ! ١ key <AE02> { [ 2, at, Arabic_2, NoSymbol ]}; // 2 @ ٢ key <AE03> { [ 3, numbersign, Arabic_3, NoSymbol ]}; // 3 # ٣ key <AE04> { [ 4, dollar, Arabic_4, NoSymbol ]}; // 4 $ ٤ key <AE05> { [ 5, percent, Arabic_5, U2030 ]}; // 5 % ٥ ‰ key <AE06> { [ 6, asciicircum, Arabic_6, NoSymbol ]}; // 6 ^ ٦ key <AE07> { [ 7, ampersand, Arabic_7, NoSymbol ]}; // 7 & ٧ key <AE08> { [ 8, asterisk, Arabic_8, NoSymbol ]}; // 8 * ٨ key <AE09> { [ 9, parenright, Arabic_9, NoSymbol ]}; // 9 ) ٩ key <AE10> { [ 0, parenleft, Arabic_0, NoSymbol ]}; // 0 ( ٠ key <AE11> { [ minus, underscore, endash, U2011 ]}; // - _ – Non-Breaking-Hyphen key <AE12> { [ equal, plus, notequal, U2248 ]}; // = + ≠ ≈ key <AD01> { [ Arabic_dad, Arabic_fatha, NoSymbol, U2066 ]}; // ‎ض‎ ‎◌َ LEFT‑TO‑RIGHT ISOLATE key <AD02> { [ Arabic_sad, Arabic_fathatan, NoSymbol, U2067 ]}; // ‎ص‎ ‎◌ً RIGHT‑TO‑LEFT ISOLATE key <AD03> { [ Arabic_theh, Arabic_damma, NoSymbol, U2068 ]}; // ‎ث‎ ‎◌ُ FIRST STRONG ISOLATE key <AD04> { [ Arabic_qaf, Arabic_dammatan, NoSymbol, U2069 ]}; // ‎ق‎ ‎◌ٌ POP DIRECTIONAL ISOLATE key <AD05> { [ Arabic_feh, UFEF9, Arabic_veh, NoSymbol ]}; // ‎ف‎ ‎ﻹ ‎ڤ key <AD06> { [ Arabic_ghain,Arabic_hamzaunderalef, NoSymbol, U202A ]}; // ‎غ‎ ‎إ‎ LEFT-TO-RIGHT-EMBEDDING key <AD07> { [ Arabic_ain, grave, NoSymbol, U202B ]}; // ‎ع‎ ` RIGHT-TO-LEFT EMBEDDING key <AD08> { [ Arabic_ha, division, NoSymbol, U202C ]}; // ‎ه‎ ÷ POP DIRECTIONAL FORMATTING key <AD09> { [ Arabic_khah, multiply, NoSymbol, NoSymbol ]}; // ‎خ‎ × key <AD10> { [ Arabic_hah, Arabic_semicolon, NoSymbol, U200E ]}; // ‎ح‎ ؛ LEFT-TO-RIGHT MARK key <AD11> { [ Arabic_jeem, less, Arabic_tcheh, U200F ]}; // ‎ج‎ < ‎چ‎ RIGHT-TO-LEFT MARK key <AD12> { [ Arabic_dal, greater, NoSymbol, U061C ]}; // ‎د‎ > ARABIC LETTER MARK key <AC01> { [ Arabic_sheen, Arabic_kasra, NoSymbol, NoSymbol ]}; // ‎ش‎ ‎◌ِ‎ key <AC02> { [ Arabic_seen, Arabic_kasratan, NoSymbol, NoSymbol ]}; // ‎س‎ ‎◌ٍ‎ key <AC03> { [ Arabic_yeh, bracketright, NoSymbol, NoSymbol ]}; // ‎ي‎ ] key <AC04> { [ Arabic_beh, bracketleft, Arabic_peh, NoSymbol ]}; // ‎ب‎ [ ‎پ‎ key <AC05> { [ Arabic_lam, U0FEF7, NoSymbol, NoSymbol ]}; // ‎ل‎ ‎ﻷ‎ key <AC06> { [ Arabic_alef, Arabic_hamzaonalef, U0671, NoSymbol ]}; // ‎ا‎ ‎أ ‎ٱ‎ key <AC07> { [ Arabic_teh, Arabic_tatweel, NoSymbol, NoSymbol ]}; // ‎ت‎ ‎ـ‎ key <AC08> { [ Arabic_noon, Arabic_comma, U066B, NoSymbol ]}; // ‎ن‎ ‎،‎ ‎٫‎ key <AC09> { [ Arabic_meem, slash, NoSymbol, NoSymbol ]}; // ‎م‎ / key <AC10> { [ Arabic_kaf, colon, Arabic_gaf, NoSymbol ]}; // ‎ك‎ : ‎گ‎ key <AC11> { [ Arabic_tah, quotedbl, U27E9, U200D ]}; // ‎ط‎ " ⟩ ZWJ key <BKSL> { [ backslash, ellipsis, U27E8, U202F ]}; // \ … ⟨ NNBSP key <LSGT> { [ bar, brokenbar, NoSymbol, NoSymbol ]}; // | ¦ key <AB01> { [Arabic_hamzaonyeh, asciitilde, guillemotright, U203A ]}; // ‎ئ‎ ~ » › key <AB02> { [ Arabic_hamza, Arabic_sukun, guillemotleft, U2039 ]}; // ‎ء‎ ◌ْ « ‹ key <AB03> { [Arabic_hamzaonwaw, braceright, NoSymbol, NoSymbol ]}; // ‎ؤ } key <AB04> { [ Arabic_ra, braceleft, NoSymbol, NoSymbol ]}; // ‎ر‎ { key <AB05> { [ UFEFB, UFEF5, NoSymbol, NoSymbol ]}; // ‎ﻻ‎ ‎ﻵ‎ key <AB06> {[Arabic_alefmaksura, Arabic_maddaonalef, Arabic_superscript_alef, NoSymbol ]}; // ‎ى‎ ‎آ‎ ‎◌ٰ‎ key <AB07> { [Arabic_tehmarbuta, apostrophe, NoSymbol, NoSymbol ]}; // ‎ة‎ ' key <AB08> { [ Arabic_waw, comma, U066C, NoSymbol ]}; // ‎و‎ , ‎٬ key <AB09> { [ Arabic_zain, period, Arabic_jeh, NoSymbol ]}; // ‎ز‎ . ‎ژ‎ key <AB10> { [ Arabic_zah, Arabic_question_mark, U066D, U200C ]}; // ‎ظ‎ ‎؟‎ ‎٭‎ ZWNJ include "level3(ralt_switch)" }; // Synonym for the default partial alphanumeric_keys xkb_symbols "qwerty" { include "ara(basic)" name[Group1]= "Arabic (QWERTY)"; }; // Replaces the Western numeral signs with Arabic-script digits on the keypad, pushing the Western digits to the third level accessible by the right alt key. // As this set of definitions is unlisted, it is not usable without parallel mapping on the numeric row in the ara(digits) layout which includes it. partial hidden keypad_keys xkb_symbols "digits_KP" { key.type[Group1]="FOUR_LEVEL_MIXED_KEYPAD"; key <KP7> { [ KP_Home, Arabic_7, 7, NoSymbol ] }; key <KP8> { [ KP_Up, Arabic_8, 8, NoSymbol ] }; key <KP9> { [ KP_Prior, Arabic_9, 9, NoSymbol ] }; key <KP4> { [ KP_Left, Arabic_4, 4, NoSymbol ] }; key <KP5> { [ KP_Begin, Arabic_5, 5, NoSymbol ] }; key <KP6> { [ KP_Right, Arabic_6, 6, NoSymbol ] }; key <KP1> { [ KP_End, Arabic_1, 1, NoSymbol ] }; key <KP2> { [ KP_Down, Arabic_2, 2, NoSymbol ] }; key <KP3> { [ KP_Next, Arabic_3, 3, NoSymbol ] }; key <KP0> { [ KP_Insert, Arabic_0, 0, NoSymbol ] }; include "kpdl(momayyezoss)" }; // Replaces the Western numeral signs with Arabic-script digits on the numeric row, pushing the Western digits to the third level accessible by the right alt key. partial alphanumeric_keys xkb_symbols "digits" { include "ara(basic)" name[Group1]= "Arabic (digits)"; key <TLDE> { [Arabic_thal,Arabic_shadda, percent,U2030]}; key <AE01> { [ Arabic_1, exclam, 1, NoSymbol ] }; key <AE02> { [ Arabic_2, at, 2, NoSymbol ] }; key <AE03> { [ Arabic_3, numbersign, 3, NoSymbol ] }; key <AE04> { [ Arabic_4, dollar, 4, NoSymbol ] }; key <AE05> { [ Arabic_5, Arabic_percent, 5, U0609 ] }; key <AE06> { [ Arabic_6, asciicircum, 6, NoSymbol ] }; key <AE07> { [ Arabic_7, ampersand, 7, NoSymbol ] }; key <AE08> { [ Arabic_8, asterisk, 8, NoSymbol ] }; key <AE09> { [ Arabic_9, parenright, 9, NoSymbol ] }; key <AE10> { [ Arabic_0, parenleft, 0, NoSymbol ] }; include "ara(digits_KP)" }; // Synonym for the layout with the Latin-script and Arabic-script digits switched partial alphanumeric_keys xkb_symbols "qwerty_digits" { include "ara(digits)" name[Group1]= "Arabic (qwerty/digits)"; }; partial alphanumeric_keys xkb_symbols "azerty" { include "ara(basic)" name[Group1]= "Arabic (AZERTY)"; // The North African Arabic keyboard differs from the Middle East one // by the numeric row; it follows French keyboard style. // // PROBLEM: some characters are inaccessible: ! @ # $ % ^ * // Should they go elsewhere? Replacing " ' that are now doubled? // Also, dead_circumflex and dead_diaeresis from French keyboard // as well as ugrave are missing, which questions the utility of the // other accentuated Latin letters. Maybe this is useful only with // a French keyboard in Group1? Then, shouldn't Group1 be filled? key <AE01> { [ ampersand, 1 ] }; key <AE02> { [ eacute, 2 ] }; key <AE03> { [ quotedbl, 3 ] }; key <AE04> { [ apostrophe, 4 ] }; key <AE05> { [ parenleft, 5 ] }; key <AE06> { [ minus, 6 ] }; key <AE07> { [ egrave, 7 ] }; key <AE08> { [ underscore, 8 ] }; key <AE09> { [ ccedilla, 9 ] }; key <AE10> { [ agrave, 0 ] }; key <AE11> { [ parenright, degree ] }; }; partial alphanumeric_keys xkb_symbols "azerty_digits" { include "ara(azerty)" name[Group1]= "Arabic (AZERTY/digits)"; key <AE01> { [ ampersand, Arabic_1, 1, NoSymbol ] }; key <AE02> { [ eacute, Arabic_2, 2, NoSymbol ] }; key <AE03> { [ quotedbl, Arabic_3, 3, NoSymbol ] }; key <AE04> { [ apostrophe, Arabic_4, 4, NoSymbol ] }; key <AE05> { [ parenleft, Arabic_5, 5, NoSymbol ] }; key <AE06> { [ minus, Arabic_6, 6, NoSymbol ] }; key <AE07> { [ egrave, Arabic_7, 7, NoSymbol ] }; key <AE08> { [ underscore, Arabic_8, 8, NoSymbol ] }; key <AE09> { [ ccedilla, Arabic_9, 9, NoSymbol ] }; key <AE10> { [ agrave, Arabic_0, 0, NoSymbol ] }; }; // Arabic keyboard using Buckwalter transliteration // http://www.qamus.org/transliteration.htm // Martin Vidner partial alphanumeric_keys xkb_symbols "buckwalter" { name[Group1]= "Arabic (Buckwalter)"; // ARABIC LETTER SUPERSCRIPT ALEF key <TLDE> { [ 0x1000670, Arabic_shadda ] }; // Arabic_0 .. Arabic_9 do not work in Kate, // Unicode never seems to work worse. key <AE01> { [ 0x1000661, VoidSymbol ] }; key <AE02> { [ 0x1000662, VoidSymbol ] }; key <AE03> { [ 0x1000663, VoidSymbol ] }; key <AE04> { [ 0x1000664, Arabic_sheen ] }; key <AE05> { [ 0x1000665, Arabic_percent ] }; key <AE06> { [ 0x1000666, VoidSymbol ] }; key <AE07> { [ 0x1000667, Arabic_hamzaonwaw ] }; key <AE08> { [ 0x1000668, Arabic_thal ] }; // ORNATE LEFT PARENTHESIS key <AE09> { [ 0x1000669, 0x100fd3e ] }; // ORNATE RIGHT PARENTHESIS key <AE10> { [ 0x1000660, 0x100fd3f ] }; key <AE11> { [ minus, Arabic_tatweel ] }; key <AE12> { [ equal, plus ] }; key <AD01> { [ Arabic_qaf, VoidSymbol ] }; key <AD02> { [ Arabic_waw, Arabic_hamzaonwaw ] }; key <AD03> { [ VoidSymbol, Arabic_ain ] }; key <AD04> { [ Arabic_ra, VoidSymbol ] }; key <AD05> { [ Arabic_teh, Arabic_tah ] }; key <AD06> { [ Arabic_yeh, Arabic_alefmaksura ] }; key <AD07> { [ Arabic_damma, VoidSymbol ] }; key <AD08> { [ Arabic_kasra, Arabic_hamzaunderalef ] }; key <AD09> { [ Arabic_sukun, Arabic_hamzaonalef ] }; key <AD10> { [ Arabic_tehmarbuta, VoidSymbol ] }; // ARABIC LETTER ALEF WASLA key <AD11> { [ VoidSymbol, 0x1000671 ] }; key <AD12> { [ VoidSymbol, Arabic_hamzaonyeh ] }; key <AC01> { [ Arabic_fatha, Arabic_alef ] }; key <AC02> { [ Arabic_seen, Arabic_sad ] }; key <AC03> { [ Arabic_dal, Arabic_dad ] }; key <AC04> { [ Arabic_feh, Arabic_fathatan ] }; key <AC05> { [ Arabic_ghain, VoidSymbol ] }; key <AC06> { [ Arabic_ha, Arabic_hah ] }; key <AC07> { [ Arabic_jeem, VoidSymbol ] }; key <AC08> { [ Arabic_kaf, Arabic_kasratan ] }; key <AC09> { [ Arabic_lam, VoidSymbol ] }; key <AC10> { [ Arabic_semicolon, VoidSymbol ] }; key <AC11> { [ Arabic_hamza, VoidSymbol ] }; key <BKSL> { [ VoidSymbol, Arabic_maddaonalef ] }; key <AB01> { [ Arabic_zain, Arabic_zah ] }; key <AB02> { [ Arabic_khah, VoidSymbol ] }; key <AB03> { [ VoidSymbol, VoidSymbol ] }; key <AB04> { [ Arabic_theh, VoidSymbol ] }; key <AB05> { [ Arabic_beh, VoidSymbol ] }; key <AB06> { [ Arabic_noon, Arabic_dammatan ] }; key <AB07> { [ Arabic_meem, VoidSymbol ] }; key <AB08> { [ Arabic_comma, Arabic_hamzaunderalef ] }; // ARABIC FULL STOP (Urdu) key <AB09> { [ 0x10006d4, Arabic_hamzaonalef ] }; key <AB10> { [ VoidSymbol, Arabic_question_mark ] }; }; partial alphanumeric_keys xkb_symbols "olpc" { name[Group1]= "Arabic (OLPC)"; include "ara(basic)" // This OLPC layout comprises the following changes in comparison to the default Arabic one: // ‣ Arabic and European digits are swapped (which entails swapping of the percent and permille signs). // ‣ Lām-ʾalif is eliminated. People type as they pronounce, and lam-alef is just a visual formatting of the // sequence and thus arguably not used on the keyboard. This frees four slots which are used for the following three changes. // ‣ The <TLDE> characters move: // • Thal from <TLDE> to <AB05> // • Shadda from <TLDE> to <AD05> // ‣ £ and € obtain the <AE06> and <AE07> keys, the ^ and & signs previously occupying them take seat at <AB05> and <AC05>. // ‣ The <TLDE> key gets grave ` and asciitilde ~ as on English keyboards. // ‣ In sum the grave and asciitilde are present twice, as their erstwhile places are not removed. // ‣ The braces }{ take the place of the less-than and greater-than >< signs, // but these the place of kasra and kasratan which establish themselves in the braces’ former steads. // ‣ The … character on <BKSL> is replaced by |, because OLPC laptops have no <LSGT> key installed where the bar is else placed. key <TLDE> { [ grave, asciitilde, percent, U2030 ] }; key <AE01> { [ Arabic_1, exclam, 1 ] }; key <AE02> { [ Arabic_2, at, 2 ] }; key <AE03> { [ Arabic_3, numbersign, 3 ] }; key <AE04> { [ Arabic_4, dollar, 4 ] }; key <AE05> { [ Arabic_5, Arabic_percent, 5, U0609 ] }; key <AE06> { [ Arabic_6, sterling, 6 ] }; key <AE07> { [ Arabic_7, EuroSign, 7 ] }; key <AE08> { [ Arabic_8, asterisk, 8 ] }; key <AE09> { [ Arabic_9, parenright, 9 ] }; key <AE10> { [ Arabic_0, parenleft, 0 ] }; key <AD05> { [ Arabic_feh, Arabic_shadda ] }; key <AD11> { [ Arabic_jeem, braceright ] }; key <AD12> { [ Arabic_dal, braceleft ] }; key <AC01> { [ Arabic_sheen, greater ] }; key <AC02> { [ Arabic_seen, less ] }; key <AC05> { [ Arabic_lam, ampersand ] }; key <BKSL> { [ backslash, bar ] }; key <AB03> { [ Arabic_hamzaonwaw, Arabic_kasra ] }; key <AB04> { [ Arabic_ra, Arabic_kasratan ] }; key <AB05> { [ Arabic_thal, asciicircum ] }; include "group(olpc)" }; partial alphanumeric_keys xkb_symbols "mac" { //This is a layout that is compatible with macbooks include "ara(digits)" name[Group1]= "Arabic (Macintosh)"; key <AE11> { [ minus, underscore ] }; key <AE12> { [ equal, plus ] }; key <TLDE> { [ Arabic_tatweel, VoidSymbol ] }; key <AD03> { [ Arabic_theh, Arabic_kasra ] }; key <AD04> { [ Arabic_qaf, Arabic_kasratan ] }; key <AD05> { [ Arabic_feh, Arabic_damma ] }; key <AD06> { [ Arabic_ghain, Arabic_dammatan ] }; key <AD07> { [ Arabic_ain, Arabic_sukun ] }; key <AD08> { [ Arabic_ha, Arabic_shadda ] }; key <AD09> { [ Arabic_khah, bracketright ] }; key <AD10> { [ Arabic_hah, bracketleft ] }; key <AD11> { [ Arabic_jeem, braceright ] }; key <AD12> { [Arabic_tehmarbuta, braceleft ] }; key <AC01> { [ Arabic_sheen, guillemotright ] }; key <AC02> { [ Arabic_seen, guillemotleft ] }; key <AC03> { [ Arabic_yeh, Arabic_alefmaksura] }; key <AC04> { [ Arabic_beh, 0x1000670 ] }; key <AC05> { [ Arabic_lam, VoidSymbol ] }; key <AC06> { [ Arabic_alef, Arabic_maddaonalef ] }; key <AC07> { [ Arabic_teh, 0x1000671 ] }; key <AC08> { [ Arabic_noon, VoidSymbol ] }; key <AC09> { [ Arabic_meem, VoidSymbol ] }; key <AC10> { [ Arabic_kaf, colon ] }; key <AC11> { [ Arabic_semicolon, quotedbl ] }; key <BKSL> { [ backslash, bar ] }; key <LSGT> { [ Arabic_tatweel, VoidSymbol ] }; key <AB01> { [ Arabic_zah, VoidSymbol ] }; key <AB02> { [ Arabic_tah, VoidSymbol ] }; key <AB03> { [ Arabic_thal, Arabic_hamzaonyeh ] }; key <AB04> { [ Arabic_dal, Arabic_hamza ] }; key <AB05> { [ Arabic_zain, Arabic_hamzaonalef ] }; key <AB06> { [ Arabic_ra, Arabic_hamzaunderalef ] }; key <AB07> { [ Arabic_waw, Arabic_hamzaonwaw ] }; key <AB08> { [ Arabic_comma, greater ] }; key <AB09> { [ period, less ] }; key <AB10> { [ slash, Arabic_question_mark ] }; }; // EXTRAS: partial alphanumeric_keys xkb_symbols "sun_type6" { include "sun_vndr/ara(sun_type6)" }; partial alphanumeric_keys xkb_symbols "basic_ext" { name[Group1]= "Arabic (with extensions for Arabic-written other languages and European digits preferred)"; key.type[Group1]="FOUR_LEVEL"; key <TLDE> { [ Arabic_thal, Arabic_shadda, Arabic_percent, Arabic_ddal ]}; // ‎ذ‎ ‎◌ّ‎ ‎٪‎ ‎ڈ‎ key <AE01> { [ 1, exclam, Arabic_1, Farsi_1 ]}; // 1 ! ١ ۱ key <AE02> { [ 2, at, Arabic_2, Farsi_2 ]}; // 2 @ ٢ ۲ key <AE03> { [ 3, numbersign, Arabic_3, Farsi_3 ]}; // 3 # ٣ ۳ key <AE04> { [ 4, dollar, Arabic_4, Farsi_4 ]}; // 4 $ ٤ ۴ key <AE05> { [ 5, percent, Arabic_5, Farsi_5 ]}; // 5 % ٥ ۵ key <AE06> { [ 6, Farsi_yeh, Arabic_6, Farsi_6 ]}; // 6 ‎ی‎ ٦ ۶ key <AE07> { [ 7, ampersand, Arabic_7, Farsi_7 ]}; // 7 & ٧ ۷ key <AE08> { [ 8, asterisk, Arabic_8, Farsi_8 ]}; // 8 * ٨ ۸ key <AE09> { [ 9, parenright, Arabic_9, Farsi_9 ]}; // 9 ) ٩ ۹ key <AE10> { [ 0, parenleft, Arabic_0, Farsi_0 ]}; // 0 ( ٠ ۰ key <AE11> { [ minus, underscore, endash, U2011 ]}; // - _ – Non-Breaking-Hyphen key <AE12> { [ equal, plus, notequal, U2248 ]}; // = + ≠ ≈ key <AD01> { [ Arabic_dad, Arabic_fatha, U0689, U2066 ]}; // ‎ض‎ ‎◌َ ډ LEFT‑TO‑RIGHT ISOLATE key <AD02> { [ Arabic_sad, Arabic_fathatan, U06D5, U2067 ]}; // ‎ص‎ ‎◌ً ە RIGHT‑TO‑LEFT ISOLATE key <AD03> { [ Arabic_theh, Arabic_damma, U067F, U2068 ]}; // ‎ث‎ ‎◌ُ ٿ FIRST STRONG ISOLATE key <AD04> { [ Arabic_qaf, Arabic_dammatan, U06A6, U2069 ]}; // ‎ق‎ ‎◌ٌ ڦ POP DIRECTIONAL ISOLATE key <AD05> { [ Arabic_feh, UFEF9, Arabic_veh, U068D ]}; // ‎ف‎ ‎ﻹ ‎ڤ ‎ڍ‎ key <AD06> { [ Arabic_ghain,Arabic_hamzaunderalef, U0685, U202A ]}; // ‎غ‎ ‎إ‎ ‎څ‎ LEFT-TO-RIGHT-EMBEDDING key <AD07> { [ Arabic_ain, Arabic_rreh, Arabic_heh_goal, U202B ]}; // ‎ع‎ ‎ڑ‎ ‎ہ‎ RIGHT-TO-LEFT EMBEDDING key <AD08> { [ Arabic_ha, division, Arabic_heh_doachashmee, U202C ]}; // ‎ه‎ ÷ ‎ھ‎ POP DIRECTIONAL FORMATTING key <AD09> { [ Arabic_khah, multiply, U0681, U0687 ]}; // ‎خ‎ × ‎ځ‎ ‎ڇ‎ key <AD10> { [ Arabic_hah, Arabic_semicolon, U0683, U200E ]}; // ‎ح‎ ؛ ‎ڃ‎ LEFT-TO-RIGHT MARK key <AD11> { [ Arabic_jeem, less, Arabic_tcheh, U200F ]}; // ‎ج‎ < ‎چ‎ RIGHT-TO-LEFT MARK key <AD12> { [ Arabic_dal, greater, U0684, U061C ]}; // ‎د‎ > ‎ڄ‎ ARABIC LETTER MARK key <AC01> { [ Arabic_sheen, Arabic_kasra, U06C6, U06C9 ]}; // ‎ش‎ ‎◌ِ‎ ‎ۆ‎ ‎ۉ‎ key <AC02> { [ Arabic_seen, Arabic_kasratan, U067C, U0680 ]}; // ‎س‎ ‎◌ٍ‎ ‎ټ‎ ‎ڀ‎ key <AC03> { [ Arabic_yeh, bracketright, U06D0, U06CD ]}; // ‎ي‎ ] ‎ې‎ ‎ۍ‎ key <AC04> { [ Arabic_beh, bracketleft, Arabic_peh, U067B ]}; // ‎ب‎ [ ‎پ‎ ‎ٻ‎ key <AC05> { [ Arabic_lam, U0FEF7, U076A, U0658 ]}; // ‎ل‎ ‎ﻷ‎ ‎ݪ‎ ٘‎◌‎ key <AC06> { [ Arabic_alef, Arabic_hamzaonalef, U0671, Arabic_noon_ghunna ]}; // ‎ا‎ ‎أ ‎ٱ‎ ‎ں‎ key <AC07> { [ Arabic_teh, Arabic_tatweel, U067D, U067A ]}; // ‎ت‎ ‎ـ‎ ‎ٽ‎ ٺ‎ key <AC08> { [ Arabic_noon, Arabic_comma, U066B, U06BB ]}; // ‎ن‎ ‎،‎ ‎٫‎ ڻ‎ key <AC09> { [ Arabic_meem, slash, U06B3, U06B1 ]}; // ‎م‎ / ‎ڳ‎ ‎ڱ‎ key <AC10> { [ Arabic_kaf, colon, Arabic_gaf, Arabic_keheh ]}; // ‎ك‎ : ‎گ‎ ‎ک‎ key <AC11> { [ Arabic_tah, quotedbl, U27E9, U200D ]}; // ‎ط‎ " ⟩ ZWJ key <BKSL> { [ backslash, ellipsis, U27E8, U202F ]}; // \ … ⟨ NNBSP key <LSGT> { [ bar, brokenbar, U06C0, U0620 ]}; // | ¦ ‎ۀ‎ ‎ؠ‎ key <AB01> { [Arabic_hamzaonyeh, asciitilde, guillemotright, U203A ]}; // ‎ئ‎ ~ » › key <AB02> { [ Arabic_hamza, Arabic_sukun, guillemotleft, U2039 ]}; // ‎ء‎ ◌ْ « ‹ key <AB03> { [Arabic_hamzaonwaw, braceright, U06C7, U0677 ]}; // ‎ؤ } ‎ۇ‎ ‎ٷ‎ key <AB04> { [ Arabic_ra, braceleft, U0693, U0699 ]}; // ‎ر‎ { ‎ړ ‎ڙ‎ key <AB05> { [ UFEFB, UFEF5, U06AB, U06AD ]}; // ‎ﻻ‎ ‎ﻵ‎ ‎ګ‎ ‎ڭ‎ key <AB06> {[Arabic_alefmaksura, Arabic_maddaonalef, Arabic_superscript_alef, Arabic_yeh_baree ]}; // ‎ى‎ ‎آ‎ ‎◌ٰ‎ ‎ے‎ key <AB07> { [Arabic_tehmarbuta, apostrophe, Arabic_fullstop, U06AA ]}; // ‎ة‎ ' ۔ ‎ڪ‎ key <AB08> { [ Arabic_waw, comma, U066C, U06CB ]}; // ‎و‎ , ‎٬‎ ‎ۋ‎ key <AB09> { [ Arabic_zain, period, Arabic_jeh, U0696 ]}; // ‎ز‎ . ‎ژ‎ ‎ږ‎ key <AB10> { [ Arabic_zah, Arabic_question_mark, Arabic_tteh, U200C ]}; // ‎ظ‎ ‎؟‎ ‎ٹ‎ ZWNJ include "level3(ralt_switch)" }; // Replaces the Western numeral signs with Arabic-script digits on the keypad, pushing the Western digits to the third level accessible by the right alt key. // As this set of definitions is unlisted, it is not usable without parallel mapping on the numeric row in the ara(basic_ext_digits) layout which includes it. partial hidden keypad_keys xkb_symbols "basic_ext_digits_KP" { key.type[Group1]="FOUR_LEVEL_MIXED_KEYPAD"; key <KP7> { [ KP_Home, Arabic_7, 7, Farsi_7 ] }; key <KP8> { [ KP_Up, Arabic_8, 8, Farsi_8 ] }; key <KP9> { [ KP_Prior, Arabic_9, 9, Farsi_9 ] }; key <KP4> { [ KP_Left, Arabic_4, 4, Farsi_4 ] }; key <KP5> { [ KP_Begin, Arabic_5, 5, Farsi_5 ] }; key <KP6> { [ KP_Right, Arabic_6, 6, Farsi_6 ] }; key <KP1> { [ KP_End, Arabic_1, 1, Farsi_1 ] }; key <KP2> { [ KP_Down, Arabic_2, 2, Farsi_2 ] }; key <KP3> { [ KP_Next, Arabic_3, 3, Farsi_3 ] }; key <KP0> { [ KP_Insert, Arabic_0, 0, Farsi_0 ] }; include "kpdl(momayyezoss)" }; // Replaces the Western numeral signs with Arabic-script digits on the numeric row, pushing the Western digits to the third level accessible by the right alt key. // The alternative numeral glyphs used in some languages that employ the Arabic script are featured in the fourth layer. partial alphanumeric_keys xkb_symbols "basic_ext_digits" { include "ara(basic_ext)" name[Group1]= "Arabic (with extensions for Arabic-written other languages and Arabic digits preferred)"; key <TLDE> { [Arabic_thal,Arabic_shadda, percent, Arabic_ddal ]}; key <AE01> { [ Arabic_1, exclam, 1, Farsi_1 ] }; key <AE02> { [ Arabic_2, at, 2, Farsi_2 ] }; key <AE03> { [ Arabic_3, numbersign, 3, Farsi_3 ] }; key <AE04> { [ Arabic_4, dollar, 4, Farsi_4 ] }; key <AE05> { [ Arabic_5, Arabic_percent, 5, Farsi_5 ] }; key <AE06> { [ Arabic_6, Farsi_yeh, 6, Farsi_6 ] }; key <AE07> { [ Arabic_7, ampersand, 7, Farsi_7 ] }; key <AE08> { [ Arabic_8, asterisk, 8, Farsi_8 ] }; key <AE09> { [ Arabic_9, parenright, 9, Farsi_9 ] }; key <AE10> { [ Arabic_0, parenleft, 0, Farsi_0 ] }; include "ara(basic_ext_digits_KP)" }; // In this layout the Ugaritic characters get the places of the Arabic characters with the matching sound values. partial alphanumeric_keys xkb_symbols "uga" { name[Group1]= "Ugaritic instead of Arabic"; key.type[Group1]="TWO_LEVEL"; key <TLDE> { [ U1038F, NoSymbol ]}; // 𐎏 key <AE01> { [ 1, exclam ]}; // 1 ! key <AE02> { [ 2, at ]}; // 2 @ key <AE03> { [ 3, numbersign ]}; // 3 # key <AE04> { [ 4, dollar ]}; // 4 $ key <AE05> { [ 5, percent ]}; // 5 % key <AE06> { [ 6, asciicircum ]}; // 6 ^ key <AE07> { [ 7, ampersand ]}; // 7 & key <AE08> { [ 8, asterisk ]}; // 8 * key <AE09> { [ 9, parenleft ]}; // 9 ( key <AE10> { [ 0, parenright ]}; // 0 ) key <AE11> { [ minus, underscore ]}; // - _ key <AE12> { [ equal, plus ]}; // = + key <AD01> { [ U1039D, NoSymbol ]}; // 𐎝 key <AD02> { [ U10395, NoSymbol ]}; // 𐎕 key <AD03> { [ U10398, NoSymbol ]}; // 𐎘 key <AD04> { [ U10396, NoSymbol ]}; // 𐎖 key <AD05> { [ U10394, NoSymbol ]}; // 𐎔 key <AD06> { [ U10399, NoSymbol ]}; // 𐎙 key <AD07> { [ U10393, grave ]}; // 𐎓 ` key <AD08> { [ U10385, division ]}; // 𐎅 ÷ key <AD09> { [ U10383, multiply ]}; // 𐎃 × key <AD10> { [ U10388, semicolon ]}; // 𐎈 ; key <AD11> { [ U10382, greater ]}; // 𐎂 > key <AD12> { [ U10384, less ]}; // 𐎄 < key <AC01> { [ U1038C, U27E8 ]}; // 𐎌 ⟨ key <AC02> { [ U10392, U27E9 ]}; // 𐎒 ⟩ key <AC03> { [ U1038A, bracketleft ]}; // 𐎊 [ key <AC04> { [ U10381, bracketright ]}; // 𐎁 ] key <AC05> { [ U1038D, NoSymbol ]}; // 𐎍 key <AC06> { [ U10380, NoSymbol ]}; // 𐎀 key <AC07> { [ U1039A, NoSymbol ]}; // 𐎚 key <AC08> { [ U10390, NoSymbol ]}; // 𐎐 key <AC09> { [ U1038E, slash ]}; // 𐎎 / key <AC10> { [ U1038B, colon ]}; // 𐎋: key <AC11> { [ U10389, quotedbl ]}; // 𐎉 " key <BKSL> { [backslash, ellipsis ]}; // \ … key <LSGT> { [ bar, endash ]}; // | – key <AB01> { [ U1039B, guillemotleft ]}; // 𐎛 « key <AB02> { [ NoSymbol, guillemotright ]}; // » key <AB03> { [ U1039C, braceleft ]}; // 𐎜 { key <AB04> { [ U10397, braceright ]}; // 𐎗 } key <AB05> { [ U1039F, U2039 ]}; // 𐎟 ‹ key <AB06> { [ question, U203A ]}; // ? › key <AB07> { [ U002BC, apostrophe ]}; // ʼ ' key <AB08> { [ U10386, comma ]}; // 𐎆 , key <AB09> { [ U10387, period ]}; // 𐎇 . key <AB10> { [ U10391, periodcentered ]}; // 𐎑 · };