###############################################################################
# Copyright (c) 2009, Oracle and/or its affiliates. All rights reserved.
#
# Permission is hereby granted, free of charge, to any person obtaining a
# copy of this software and associated documentation files (the "Software"),
# to deal in the Software without restriction, including without limitation
# the rights to use, copy, modify, merge, publish, distribute, sublicense,
# and/or sell copies of the Software, and to permit persons to whom the
# Software is furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice (including the next
# paragraph) shall be included in all copies or substantial portions of the
# Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
# DEALINGS IN THE SOFTWARE.
#
diff --git a/nls/iso8859-6/Compose.pre b/nls/iso8859-6/Compose.pre
index cb03315..8c4eca0 100644
--- a/nls/iso8859-6/Compose.pre
+++ b/nls/iso8859-6/Compose.pre
@@ -1,14 +1,114 @@
+XCOMM Arabic input table (Ascii input mode)
XCOMM
-XCOMM ISO 8859-6 Compose Sequence
+XCOMM Note: The quoted string after the token STATE will appear
+XCOMM in the status area when XIM status area is specified.
+
+STATE "[ English ]"
+Ctrl<T> : SWITCH_STATE_TO "[ Arabic ]"
+Ctrl<space> : SWITCH_STATE_TO "[ Arabic ]"
+<EuroSign> : "e"
+
+END_STATE
+
+
XCOMM
-XCOMM Sequence Definition
+XCOMM Arabic input table (Arabic input mode)
XCOMM
+
+
+STATE "[ Arabic ]"
+Ctrl<T> : SWITCH_STATE_TO "[ English ]"
+Ctrl<space> : SWITCH_STATE_TO "[ English ]"
+
XCOMM
-XCOMM This file currently has no entries. It appears that a compose file (even
-XCOMM just an empty one) is required for the appropriate keysyms to work for
-XCOMM this encoding.
XCOMM
-XCOMM <Multi_key> Means <Compose>
-XCOMM Special Character
+XCOMM <A> not verified
+XCOMM A, C, J, K, S, T, U, V, X, Z, {, }, <, > changed/added
+
+<A> : "\xf0"
+XCOMM <B> => <lam> <alef>
+<B> : "\xe4\xc2"
+XCOMM <C> => <kasratan> \xed
+<C> : "\x7b"
+XCOMM<D> => opening square bracket
+<D> : "["
+<E> : "\xef"
+XCOMM<F> => closing square bracke
+<F> : "]"
+XCOMM<G> => <lam> <hamzaonalef>
+<G> : "\xe4\xc3"
+<J> : "\xe0"
+<H> : "\xc3"
+<I> : "\xe7"
+<K> : "\xac"
+<L> : "/"
+<M> : "\xc9"
+<N> : "\xc2"
+<O> : "\xce"
+<P> : "\xbb"
+<Q> : "\xee"
+<R> : "\xec"
+<S> : "\xed"
+<T> : "\xe4\xc5"
+<U> : "\xac"
+XCOMM<V> = <kasra> \xf0
+<V> : "\x7d"
+<W> : "\xeb"
+<X> : "\xf2"
+<Y> : "\xc5"
+<Z> : "\xc6"
+<a> : "\xd4"
+XCOMM <b> => <lam> <maddaonalef>
+<b> : "\xe4\xc7"
+<c> : "\xc4"
+<d> : "\xea"
+<e> : "\xcb"
+<f> : "\xc8"
+<g> : "\xe4"
+<h> : "\xc7"
+<i> : "\xe7"
+<j> : "\xca"
+<k> : "\xe6"
+<l> : "\xe5"
+<m> : "\xc9"
+<n> : "\xe9"
+<o> : "\xce"
+<p> : "\xcd"
+<q> : "\xd6"
+<r> : "\xe2"
+<s> : "\xd3"
+<t> : "\xe1"
+<u> : "\xd9"
+<v> : "\xd1"
+<w> : "\xd5"
+<x> : "\xc1"
+<y> : "\xda"
+<z> : "\xc6"
+<apostrophe> : "\xd7"
+XCOMM<plus> : "\xab"
+<comma> : "\xe8"
+XCOMM<minus> : "\xad"
+<period> : "\xd2"
+<slash> : "\xd8"
+<semicolon> : "\xe3"
+XCOMM<equal> : "\xbd"
+<greater> : "\x2e"
+<less> : "\x2c"
+<question> : "\xbf"
+XCOMM<backslash> : "\xe0"
+XCOMM ok
+<bracketleft> : "\xcc"
+<bracketright> : "\xcf"
+XCOMM<underscore> : "\xdf"
+XCOMM ok
+<grave> : "\xd0"
+XCOMM<bar> : "\xfc"
+XCOMM ok
+<asciitilde> : "\xf1"
+<braceleft> : "\x3e"
+<braceright> : "\x3c"
+
+
+
+END_STATE
-XCOMM End of Sequence Definition