Re: Re: Bidirectional Bugs in Hebrew (fwd)



Kaixo!

On Mon, Oct 30, 2000 at 05:06:26PM +0200, Uri David Akavia wrote:

> I tried replacing the minus with hyphen in the XKB file. Unfortunately,
> when trying to write equations "9-8" the hyphen and the paragraph defined
> as RTL reverse it which isn't what I want.
> Would it be possible to write hyphen in certain circumstances and minus in
> other circumstances (numbers)?

I think it is better to use the keyboard in English mode when typing
mathematical stuff. (the "hyphen" key should send "minus" in English mode
and "hyphen" in Hebrew mode).

> By the way, does anyone know how MS implemented biderctionality in Word95?
> That version of word was pretty much perfect on stuff like this.

cp1255 and cp1256 (and all cp125? btw) have typographic hyphens (M and N ones)
along with the minus sign and the "soft hyphen" sign.
So the main problem is input (what does the "-" key in the keyboard send?
I guess it is context dependent; and that it doesn't work as well on a simple
text box than in MS-Word)

> P.S.
> Pablo, I don't have any tools to create XKB files.

vi is enough.

> However, If I know the
> keyboard layout (easy for my native tounge of hebrew) I have enough
> paitence to create an XKB file from scratch.

I already did it, I attach them to you (they need some small fixes; 
in particular all the (){}[]<> keys need to be reversed for Hebrew mode;
and I didn't put the hyphen for "-" in Hebrew mode; I made them near a
year ago; I must look at them again)

> If anyone wants an XKB file he or she should send me a picture or
> description of the layout and I will do my best to create one like that.

Here are the pictures of those two layouts:
http://www.linuxi18n.org/keyboards/

-- 
Ki a vos vye bn,
Pablo Saratxaga

http://www.srtxg.easynet.be/		PGP Key available, key ID: 0x8F0E4975
// $XConsortium: il /main/3 1997/12/18 12:40:12 rch $

partial default alphanumeric_keys 
xkb_symbols "basic" {

    // Describes the differences between a very simple en_US
    // keyboard and a very simple Israelian keyboard

    // uses the kbd layout in use in Israel

    name[Group1]= "US/ASCII";
    name[Group2]= "Israelian";


    key <TLDE> {        [     grave,   asciitilde       ],
			[ semicolon,   asciitilde	]	};

    key <AD01> {        [         q,    Q               ],
			[     slash,     Q		]	};
    key <AD02> {        [         w,    W               ],
			[apostrophe,     W		]	};
    key <AD03> {        [         e,    E               ],
			[ hebrew_qoph,  E		]       };
    key <AD04> {        [         r,    R               ],
			[ hebrew_resh,  R		]	};
    key <AD05> {        [         t,    T               ],
			[ hebrew_aleph, T		]       };
    key <AD06> {        [         y,    Y               ],
			[ hebrew_tet,   Y		]       };
    key <AD07> {        [         u,    U               ],
			[ hebrew_waw,   U		]       };
    key <AD08> {        [         i,    I               ],
			[ hebrew_finalnun, I		]       };
    key <AD09> {        [         o,    O               ],
			[ hebrew_finalmem, O		]       };
    key <AD10> {        [         p,    P               ],
			[ hebrew_pe,    P		]	};

    key <AC01> {        [         a,    A               ],
			[ hebrew_shin,  A		]	};
    key <AC02> {        [         s,    S               ],
			[ hebrew_dalet, S		]       };
    key <AC03> {        [         d,    D               ],
			[ hebrew_gimel, D		]       };
    key <AC04> {        [         f,    F               ],
			[ hebrew_kaph,  F		]	};
    key <AC05> {        [         g,    G               ],
			[ hebrew_ayin,  G		]       };
    key <AC06> {        [         h,    H               ],
			[ hebrew_yod,   H		]       };
    key <AC07> {        [         j,    J               ],
			[ hebrew_chet,  J		]	};
    key <AC08> {        [         k,    K               ],
			[ hebrew_lamed, K		]	};
    key <AC09> {        [         l,    L               ],
			[ hebrew_finalkaph, L		]       };
    key <AC10> {        [ semicolon,    colon           ],
			[ hebrew_finalpe, colon		]       };
    key <AC11> {        [ apostrophe,   quotedbl        ],
			[     comma,    quotedbl	]	};

    key <AB01> {        [         z,    Z               ],
			[ hebrew_zain,  Z		]       };
    key <AB02> {        [         x,    X               ],
			[ hebrew_samech, X		]       };
    key <AB03> {        [         c,    C               ],
			[ hebrew_bet,   C		]       };
    key <AB04> {        [         v,    V               ],
			[ hebrew_he,    V		]       };
    key <AB05> {        [         b,    B               ],
			[ hebrew_nun,   B		]       };
    key <AB06> {        [         n,    N               ],
			[ hebrew_mem,   N		]	};
    key <AB07> {        [         m,    M               ],
			[ hebrew_zade,  M		]	};
    key <AB08> {        [     comma,    less            ],
			[ hebrew_taw,   less		]	};
    key <AB09> {        [    period,    greater         ],
			[ hebrew_finalzade,  greater	]	};
    key <AB10> {        [     slash,    question        ],
			[    period,    question	]	};
    
    // Begin modifier mappings 

    modifier_map Shift  { Shift_L };
    modifier_map Lock   { Caps_Lock, ISO_Lock };
    modifier_map Control{ Control_L };
    modifier_map Mod3   { Mode_switch };
};


// $XConsortium: il_phonetic /main/3 1997/12/18 12:40:12 rch $

partial default alphanumeric_keys 
xkb_symbols "basic" {

    // Describes the differences between a very simple en_US
    // keyboard and a very simple Israelian keyboard

    // uses the phonetic layout from old Slackware 'il.map' file

    name[Group1]= "US/ASCII";
    name[Group2]= "Israelian";


    key <AE12> {        [     equal,    plus            ],
			[ hebrew_doublelowline, hebrew_doublelowline ]};

    key <AD01> {        [         q,    Q               ],
			[ hebrew_qoph, hebrew_qoph	]	};
    key <AD02> {        [         w,    W               ],
			[ hebrew_waw, hebrew_waw	]	};
    key <AD03> {        [         e,    E               ],
			[ hebrew_aleph, hebrew_aleph	]       };
    key <AD04> {        [         r,    R               ],
			[ hebrew_resh, hebrew_resh	]	};
    key <AD05> {        [         t,    T               ],
			[ hebrew_taw, hebrew_tet	]       };
    key <AD06> {        [         y,    Y               ],
			[ hebrew_ayin, hebrew_ayin	]       };
    key <AD07> {        [         u,    U               ],
			[ hebrew_waw, hebrew_waw	]       };
    key <AD08> {        [         i,    I               ],
			[ hebrew_yod, hebrew_yod	]       };
    key <AD09> {        [         o,    O               ],
			[ hebrew_samech, hebrew_samech	]       };
    key <AD10> {        [         p,    P               ],
			[ hebrew_pe, hebrew_finalpe	]	};

    key <AC01> {        [         a,    A               ],
			[ hebrew_aleph, hebrew_aleph	]	};
    key <AC02> {        [         s,    S               ],
			[ hebrew_shin, hebrew_shin	]       };
    key <AC03> {        [         d,    D               ],
			[ hebrew_dalet, hebrew_dalet	]       };
    key <AC04> {        [         f,    F               ],
			[ hebrew_pe, hebrew_finalpe	]	};
    key <AC05> {        [         g,    G               ],
			[ hebrew_gimel, hebrew_gimel	]       };
    key <AC06> {        [         h,    H               ],
			[ hebrew_he, hebrew_he		]       };
    key <AC07> {        [         j,    J               ],
			[ hebrew_yod, hebrew_yod	]	};
    key <AC08> {        [         k,    K               ],
			[ hebrew_kaph, hebrew_finalkaph	]	};
    key <AC09> {        [         l,    L               ],
			[ hebrew_lamed, hebrew_lamed	]       };

    key <AB01> {        [         z,    Z               ],
			[ hebrew_zain, hebrew_zain	]       };
    key <AB02> {        [         x,    X               ],
			[ hebrew_chet, hebrew_chet	]       };
    key <AB03> {        [         c,    C               ],
			[ hebrew_zade, hebrew_finalzade	]       };
    key <AB04> {        [         v,    V               ],
			[ hebrew_waw, hebrew_waw	]       };
    key <AB05> {        [         b,    B               ],
			[ hebrew_bet, hebrew_bet	]       };
    key <AB06> {        [         n,    N               ],
			[ hebrew_nun, hebrew_finalnun	]	};
    key <AB07> {        [         m,    M               ],
			[ hebrew_mem, hebrew_finalmem	]	};
    
    // Begin modifier mappings 

    modifier_map Shift  { Shift_L };
    modifier_map Lock   { Caps_Lock, ISO_Lock };
    modifier_map Control{ Control_L };
    modifier_map Mod3   { Mode_switch };
};




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]