Index: xkeyboard-config-1.5/symbols/ara
===================================================================
--- xkeyboard-config-1.5.orig/symbols/ara
+++ xkeyboard-config-1.5/symbols/ara
@@ -2,10 +2,18 @@
 
 // based on a keyboard map from an 'xkb/symbols/ar' file
 
-partial default alphanumeric_keys 
+partial default alphanumeric_keys
 xkb_symbols "basic" {
+    include "ara(bare)"
     name[Group1]= "Arabic";
 
+    include "ara(eastern_arabic_numerals)"
+};
+
+partial alphanumeric_keys
+xkb_symbols "bare" {
+    name[Group1]= "Arabic - bare";
+
 // NOTES:
 //
 // there is also combined shadda diacritis in AltGr position of simple
@@ -14,16 +22,6 @@ xkb_symbols "basic" {
 //
 
     key <TLDE> {  [     Arabic_thal,      Arabic_shadda   ]	};
-    key <AE01> {  [               1,          exclam      ]     };
-    key <AE02> {  [               2,              at      ]     };
-    key <AE03> {  [               3,      numbersign      ]     };
-    key <AE04> {  [               4,          dollar      ]     };
-    key <AE05> {  [               5,         percent      ]     };
-    key <AE06> {  [               6,     asciicircum      ]     };
-    key <AE07> {  [               7,       ampersand      ]     };
-    key <AE08> {  [               8,        asterisk      ]     };
-    key <AE09> {  [               9,      parenright      ]     };
-    key <AE10> {  [               0,       parenleft      ]     };
     key <AE11> {  [           minus,      underscore      ]     };
     key <AE12> {  [           equal,            plus      ]     };
 						
@@ -68,14 +66,50 @@ xkb_symbols "basic" {
 };
 
 partial alphanumeric_keys
+xkb_symbols "arabic_numerals" {
+    name[Group1]= "Arabic - arabic_numerals";
+
+    key <AE01> {  [               1,          exclam      ]     };
+    key <AE02> {  [               2,              at      ]     };
+    key <AE03> {  [               3,      numbersign      ]     };
+    key <AE04> {  [               4,          dollar      ]     };
+    key <AE05> {  [               5,         percent      ]     };
+    key <AE06> {  [               6,     asciicircum      ]     };
+    key <AE07> {  [               7,       ampersand      ]     };
+    key <AE08> {  [               8,        asterisk      ]     };
+    key <AE09> {  [               9,      parenright      ]     };
+    key <AE10> {  [               0,       parenleft      ]     };
+};
+
+partial alphanumeric_keys
+xkb_symbols "eastern_arabic_numerals" {
+    name[Group1]= "Arabic - eastern_arabic_numerals";
+
+	// use arabic script digits
+
+    key <AE01> {  [       0x1000661,          exclam      ]       };
+    key <AE02> {  [       0x1000662,              at      ]       };
+    key <AE03> {  [       0x1000663,      numbersign      ]       };
+    key <AE04> {  [       0x1000664,          dollar      ]       };
+    key <AE05> {  [       0x1000665,  Arabic_percent      ]       };
+    key <AE06> {  [       0x1000666,     asciicircum      ]       };
+    key <AE07> {  [       0x1000667,       ampersand      ]       };
+    key <AE08> {  [       0x1000668,        asterisk      ]       };
+    key <AE09> {  [       0x1000669,      parenright      ]       };
+    key <AE10> {  [       0x1000660,       parenleft      ]       };
+};
+
+partial alphanumeric_keys
 xkb_symbols "qwerty" {
-    include "ara(basic)"
+    include "ara(bare)"
+    include "ara(arabic_numerals)"
     name[Group1]= "Arabic - qwerty";
 };
 
 partial alphanumeric_keys
 xkb_symbols "azerty" {
-    include "ara(basic)"
+    include "ara(bare)"
+    include "ara(arabic_numerals)"
     name[Group1]= "Arabic - azerty";
 
 	// the north african arabic keyboard differs from the middle east one
@@ -103,21 +137,9 @@ xkb_symbols "azerty" {
 
 partial alphanumeric_keys
 xkb_symbols "digits" {
-    include "ara(basic)"
+    include "ara(bare)"
+    include "ara(eastern_arabic_numerals)"
     name[Group1]= "Arabic - digits";
-
-	// use arabic script digits
-
-    key <AE01> {  [       0x1000661,          exclam      ]       };
-    key <AE02> {  [       0x1000662,              at      ]       };
-    key <AE03> {  [       0x1000663,      numbersign      ]       };
-    key <AE04> {  [       0x1000664,          dollar      ]       };
-    key <AE05> {  [       0x1000665,  Arabic_percent      ]       };
-    key <AE06> {  [       0x1000666,     asciicircum      ]       };
-    key <AE07> {  [       0x1000667,       ampersand      ]       };
-    key <AE08> {  [       0x1000668,        asterisk      ]       };
-    key <AE09> {  [       0x1000669,      parenright      ]       };
-    key <AE10> {  [       0x1000660,       parenleft      ]       };
 };
 
 partial alphanumeric_keys
@@ -221,7 +243,8 @@ xkb_symbols "buckwalter" {
 partial alphanumeric_keys
 xkb_symbols "olpc" {
 
-    include "ara(basic)"
+    include "ara(bare)"
+    include "ara(arabic_numerals)"
 
     // As part of the olpc design some changes were made to the Arabic
     // keyboard design. Major changes are:
