git: 9front

Download patch

ref: 00b4628de66236f95e56919391ce3cf65fdbf23f
parent: b2126553b9839b747ad383c61a62ebc57312a47b
author: noodle <noodle@pastanoggin.com>
date: Sat Dec 6 17:04:34 EST 2025

kbmap: add arabic keymap

It's been sourced from microsoft's "arabic 101" layout [0] and
xkeyboard-config's "ara" layout [1].  I chose the eastern arabic
numerals variant for the number row because while arabs use both
western (1, 2, 3, ...) and eastern (١, ٢, ٣, ...) arabic numerals
everday, easy access to eastern arabic numerals is useful for writing
fully arabic text; the user can easily change layout to an english
keymap or similar to get at western arabic numerals (they have to keep
a latin keymap around anyways to run any commands on the system).

[0] https://learn.microsoft.com/en-us/globalization/keyboards/kbda1
[1] https://cvsweb.openbsd.org/xenocara/dist/xkeyboard-config/symbols/ara?rev=1.10&content-type=text/x-cvsweb-markup

--- /dev/null
+++ b/sys/lib/kbmap/ar
@@ -1,0 +1,87 @@
+# Arabic key layout with Eastern Arabic numerals
+0	2	'١
+0	3	'٢
+0	4	'٣
+0	5	'٤
+0	6	'٥
+0	7	'٦
+0	8	'٧
+0	9	'٨
+0	10	'٩
+0	11	'٠
+0	16	'ض
+1	16	'َ
+0	17	'ص
+1	17	'ً
+0	18	'ث
+1	18	'ُ
+0	19	'ق
+1	19	'ٌ
+0	20	'ف
+1	20	'ﻹ
+3	20	'ڤ
+0	21	'غ
+1	21	'إ
+0	22	'ع
+1	22	'‘
+0	23	'ه
+1	23	'÷
+0	24	'خ
+1	24	'×
+0	25	'ح
+1	25	'؛
+0	26	'ج
+1	26	'<
+3	26	'چ
+0	27	'د
+1	27	'>
+0	30	'ش
+1	30	'ِ
+0	31	'س
+1	31	'ٍ
+0	32	'ي
+1	32	']
+0	33	'ب
+1	33	'[
+3	33	'پ
+0	34	'ل
+1	34	'ﻷ
+0	35	'ا
+1	35	'أ
+3	35	'ٱ
+0	36	'ت
+1	36	'ـ
+0	37	'ن
+1	37	'،
+0	38	'م
+1	38	'/
+0	39	'ك
+3	39	'گ
+1	39	':
+0	40	'ط
+1	40	'"
+0	41	'ذ
+1	41	'ّ
+0	44	'ئ
+1	44	'~
+3	44	'»
+0	45	'ء
+1	45	'ْ
+3	45	'«
+0	46	'ؤ
+1	46	'}
+0	47	'ر
+1	47	'{
+0	48	'ﻻ
+1	48	'ﻵ
+0	49	'ى
+1	49	'آ
+3	49	'ٰ
+0	50	'ة
+1	50	'’
+0	51	'و
+1	51	',
+0	52	'ز
+1	52	'.
+0	53	'ظ
+1	53	'؟
--