[COMMIT LEIM] Import GNU's Hebrew input methods

Aidan Kehoe <[email protected]>
Newsgroups gmane.emacs.xemacs.patches
Message-ID <[email protected]>
Thank you Uwe, I apologise that I didn’t get to it sooner!

APPROVE COMMIT

NOTE: This patch has been committed.

# HG changeset patch
# User Aidan Kehoe <[email protected]>
# Date 1390303635 -7200
#      Tue Jan 21 13:27:15 2014 +0200
# Node ID 3e31b3d13c100a9bae06a7feead54480dd8a8e84
# Parent  72865092f02b13aced9cd49b5fd2297d2b0a5b27
Import GNU's Hebrew input methods, thank you Uwe Brauer!

leim/ChangeLog addition:

2014-01-21  Aidan Kehoe  <[email protected]>

	Import GNU's Hebrew input methods, thank you GNU, thank you Uwe
	Brauer!

	* leim-list.el:
	Make the Hebrew input methods available here.
	* Makefile:
	* Makefile (EXTRA_SOURCES):
	Install hebrew.el uncompiled, since it's not computationally
	intensive (compiling it doesn't bring much) and 21.4, which
	compiles the packages, chokes on it.

	* quail/hebrew.el:
	* quail/hebrew.el ("hebrew"):
	Update.
	* quail/hebrew.el ("hebrew-new"): New.
	* quail/hebrew.el ("hebrew-lyx"): New.
	* quail/hebrew.el ("hebrew-full"): New.
	* quail/hebrew.el ("hebrew-biblical-tiro"): New.
	* quail/hebrew.el ("hebrew-biblical-sil"): New.
	* quail/hebrew.el ("yiddish-royal"): New.
	* quail/hebrew.el ("yiddish-keyman"): New.
	* quail/hebrew.el ("hebrew-phonetic-xkb"): New.
	* quail/hebrew.el ("hebrew-phonetic-qwerty"): New.

diff -r 72865092f02b -r 3e31b3d13c10 ChangeLog
--- a/ChangeLog	Mon Sep 02 14:45:38 2013 +0200
+++ b/ChangeLog	Tue Jan 21 13:27:15 2014 +0200
@@ -1,3 +1,29 @@
+2014-01-21  Aidan Kehoe  <[email protected]>
+
+	Import GNU's Hebrew input methods, thank you GNU, thank you Uwe
+	Brauer!
+
+	* leim-list.el:
+	Make the Hebrew input methods available here.
+	* Makefile:
+	* Makefile (EXTRA_SOURCES):
+	Install hebrew.el uncompiled, since it's not computationally
+	intensive (compiling it doesn't bring much) and 21.4, which
+	compiles the packages, chokes on it.
+
+	* quail/hebrew.el:
+	* quail/hebrew.el ("hebrew"):
+	Update.
+	* quail/hebrew.el ("hebrew-new"): New.
+	* quail/hebrew.el ("hebrew-lyx"): New.
+	* quail/hebrew.el ("hebrew-full"): New.
+	* quail/hebrew.el ("hebrew-biblical-tiro"): New.
+	* quail/hebrew.el ("hebrew-biblical-sil"): New.
+	* quail/hebrew.el ("yiddish-royal"): New.
+	* quail/hebrew.el ("yiddish-keyman"): New.
+	* quail/hebrew.el ("hebrew-phonetic-xkb"): New.
+	* quail/hebrew.el ("hebrew-phonetic-qwerty"): New.
+
 2013-09-02  Norbert Koch  <[email protected]>
 
 	* Makefile (VERSION): XEmacs package 1.34 released.
diff -r 72865092f02b -r 3e31b3d13c10 Makefile
--- a/Makefile	Mon Sep 02 14:45:38 2013 +0200
+++ b/Makefile	Tue Jan 21 13:27:15 2014 +0200
@@ -52,8 +52,9 @@
 
 # #### Move these to ELCS_1 once 21.4 is deprecated.
 
-EXTRA_SOURCES= quail/cyrillic-tajik.el quail/georgian.el quail/ipa-21.5.el \
-	quail/latin-ltx.el quail/rfc1345.el quail/sgml-input.el quail/welsh.el
+EXTRA_SOURCES= quail/cyrillic-tajik.el quail/georgian.el quail/hebrew.el \
+	quail/ipa-21.5.el quail/latin-ltx.el quail/rfc1345.el \
+	quail/sgml-input.el quail/welsh.el
 
 ELCS_1_FILES = $(ELCS_1) $(ELCS_1:.elc=.el)
 ELCS_1_DEST = $(PACKAGE)/quail
diff -r 72865092f02b -r 3e31b3d13c10 leim-list.el
--- a/leim-list.el	Mon Sep 02 14:45:38 2013 +0200
+++ b/leim-list.el	Tue Jan 21 13:27:15 2014 +0200
@@ -610,3 +610,56 @@
  "croatian" "Croatian" 'quail-use-package
  "HR" "\"Standard\" Croatian keyboard."
  "quail/croatian")
+(when (and (fboundp 'decode-char) (decode-char 'ucs #x31C)
+           (eq #x31C (encode-char (decode-char 'ucs #x31C) 'ucs)))
+  (register-input-method
+   "hebrew" "Hebrew" 'quail-use-package
+   "[2],Hr[0](B" "Hebrew SI-1452 input method. Only Hebrew-related characters are considered."
+   "quail/hebrew")
+  (register-input-method
+   "hebrew-new" "Hebrew" 'quail-use-package
+  "[2],Hr[0](B"  "Hebrew SI-1452 new draft input method."
+   "quail/hebrew")
+  (register-input-method
+   "hebrew-lyx" "Hebrew" 'quail-use-package
+   (decode-coding-string  "\xd7\x9c\xd6\xb4" 'utf-8)
+   "Hebrew LyX input method. Based on LyX keyboard layout.
+  Additional mappings for Rafe and Yiddish ligatures."
+   "quail/hebrew")
+  (register-input-method
+   "hebrew-full" "Hebrew" 'quail-use-package
+   (decode-coding-string "\xd7\xa2\xd6\xb4\xd6\xab" 'utf-8)
+   "Hebrew Full method. Provides access to all Hebrew characters suitable to Modern Hebrew.")
+  (register-input-method
+   "hebrew-biblical-tiro" "Hebrew" 'quail-use-package
+   (decode-coding-string "\xd7\xaa\xd6\xb4\xd7\xa8\xd6\xb9" 'utf-8)
+   "Biblical Hebrew Tiro input method. Based on Society of Biblical Literature's Tiro \
+keyboard layout.
+Not suitable for modern Hebrew input.")
+  (register-input-method
+   "hebrew-biblical-sil" "Hebrew" 'quail-use-package
+   (decode-coding-string "\xd7\xa1\xd6\xb4\xd7\x9c" 'utf-8)
+   "Biblical Hebrew SIL input method.
+Based on Society of Biblical Literature's SIL keyboard layout.
+Phonetic and not suitable for modern Hebrew input.")
+  (register-input-method
+   "yiddish-royal" "Hebrew" 'quail-use-package (decode-coding-string "\xd7\xb2\xd7\xa8" 'utf-8)
+   "Yiddish Royal input method. Based on Royal Yiddish typewriter.
+Better for Yiddish than Hebrew methods.")
+  (register-input-method
+   "yiddish-keyman" "Hebrew" 'quail-use-package (decode-coding-string "\xd7\xb2\xd7\xa7" 'utf-8)
+   "Yiddish Keyman input method. Based on Keyman keyboard layout.
+Better for Yiddish than Hebrew methods.")
+  (register-input-method
+   "hebrew-phonetic-xkb" "Hebrew" 'quail-use-package "[2],Ht[0](B" 
+   "Hebrew phonetic (XKB) input method. Based on the XKB hebrew-phonetic
+keyboard layout, layout that attempts to match Hebrew letters to
+English phonetic equivalents, some of its chars however are mapped
+according to their shape, as o--> samesh.")
+  (register-input-method 
+   "hebrew-phonetic-qwerty" "Hebrew" "[2],Hs[0](B" 'quail-use-package 
+  "Hebrew phonetic input method. Based on the KDE hebrew-phonetic keyboard layout,
+layout that attempts to match Hebrew letters to English phonetic equivalents.
+It is however modified, c=chet x zadik, o=wav y=ain e=aleph.
+Moreover some but not all niqqud are added."))
+  
diff -r 72865092f02b -r 3e31b3d13c10 quail/hebrew.el
--- a/quail/hebrew.el	Mon Sep 02 14:45:38 2013 +0200
+++ b/quail/hebrew.el	Tue Jan 21 13:27:15 2014 +0200
@@ -1,8 +1,5 @@
-;;; hebrew.el --- Quail package for inputting Hebrew characters  -*-coding: iso-8859-8 -*-
+;; hebrew.el --- Quail package for inputting Hebrew characters  -*-coding: utf-8;-*-
 
-;; Copyright (C) 1999
-;;   National Institute of Advanced Industrial Science and Technology (AIST)
-;;   Registration Number H14PRO021
 
 ;; Keywords: mule, input method, Hebrew
 
@@ -27,59 +24,1025 @@
 
 ;;; Commentary:
 
-;;; XEmacs change; encode the file as ISO-8859-8, which is compatible
-;;; with 21.4. 
+;;; XEmacs change; encode the file as utf-8, given that iso-8859-8 doesn't
+;;; support niqqud and that the version of iso-2022-7bit supported by 21.4
+;;; doesn't support them either. Thank you Uwe Brauer.
 
 ;;; Code:
 
 (require 'quail)
+(quail-define-package
+ "hebrew" "Hebrew" "×¢" nil "Hebrew SI-1452 input method.
 
-(quail-define-package
- "hebrew" "Hebrew" "ò" nil "Hebrew (ISO 8859-8) input method.
-
-Based on Hebrew typewriter keys.
-Hebrew letters are assigned to lowercases.
+Based on SI-1452 keyboard layout.
+Only Hebrew-related characters are considered.
+ 'q' is used to switch levels instead of Alt-Gr.
+ Maqaaf (־) is mapped to '/פ'.
 " nil t t t t nil nil nil nil nil t)
 
-;;  1! 2@ 3# 4$ 5% 6^ 7& 8* 9( 0) -_ =+ ;~
-;;   /Q 'W ÷E øR àT èY åU ïI íO ôP [{ ]}
-;;    ùA ãS âD ëF òG éH çJ ìK êL ó: ," \|
-;;     æZ ñX áC äV ðB îN öM ú< õ> .?
-;;
-
 (quail-define-rules
  ("`" ?\;)
+ ("w" ?\')
+ ("e" ?×§)  ; Qof
+ ("r" ?ר)  ; Resh
+ ("t" ?א)  ; Alef
+ ("y" ?ט)  ; Tet
+ ("u" ?ו)  ; Vav
+ ("i" ?ן)  ; Final Nun
+ ("o" ?ם)  ; Final Mem
+ ("p" ?פ)  ; Pe
+ ("[" ?\])  ; mirroring
+ ("]" ?\[)  ; mirroring
+ ("a" ?ש)  ; Shin
+ ("s" ?ד)  ; Dalet
+ ("d" ?ג)  ; Gimel
+ ("f" ?כ)  ; Kaf
+ ("g" ?×¢)  ; Ayin
+ ("h" ?י)  ; Yod
+ ("j" ?ח)  ; Het
+ ("k" ?ל)  ; Lamed
+ ("l" ?ך)  ; Final Kaf
+ (";" ?×£)  ; Final Pe
+ ("'" ?,)
+ ("z" ?ז)  ; Zayin
+ ("x" ?ס)  ; Samekh
+ ("c" ?ב)  ; Bet
+ ("v" ?ה)  ; He
+ ("b" ?× )  ; Nun
+ ("n" ?מ)  ; Mem
+ ("m" ?צ)  ; Tsadi
+ ("," ?ת)  ; Tav
+ ("." ?×¥)  ; Final Tsadi
+ ("/" ?.)  ; Stop
+ ("(" ?\))  ; mirroring
+ (")" ?\()  ; mirroring
+ ("{" ?})  ; mirroring
+ ("}" ?{)  ; mirroring
+ ("<" ?>)  ; mirroring
+ (">" ?<)  ; mirroring
+ ("q`" ?Ö°)  ; Sheva
+ ("q1" ?Ö±)  ; Hataf Segol
+ ("q2" ?Ö²)  ; Hataf Patah
+ ("q3" ?Ö³)  ; Hataf Qamats
+ ("q4" ?Ö´)  ; Hiriq
+ ("q5" ?Öµ)  ; Tsere
+ ("q6" ?Ö¶)  ; Segol (Point)
+ ("q7" ?Ö·)  ; Patah
+ ("q8" ?Ö¸)  ; Qamats
+ ("q9" ?ׂ)  ; Sin dot שׁ
+ ("q0" ?ׁ)  ; Shin dot
+ ("q-" ?Ö¹)  ; Holam
+ ("q=" ?Ö¼)  ; Dagesh or Mapiq
+ ("q\\" ?Ö»)  ; Qubuts
+ ("qq" ?/)
+ ("qw" ?׳)  ; Geresh (Punct.)
+ ("qi" ?×°)  ; Yiddish Double Vav
+ ("qp" ?Ö¾)  ; Maqaf
+ ("q[" ?Ö¿)  ; Rafe
+ ("q]" ?Ö½)  ; Meteg
+ ("qa" ?₪)  ; New Sheqel sign
+ ("qh" ?ײ)  ; Yiddish Double Yod
+ ("qj" ?×±)  ; Yiddish Vav Yod
+ ("q\"" ?×´)  ; Gershayim (Punct.)
+ ("q," ?\u200E)  ;  LRM
+ ("q." ?\u200F)  ;  RLM
+)
+
+(quail-define-package
+ "hebrew-new" "Hebrew" "×¢" nil "Hebrew SI-1452 new draft input method.
+
+Based on latest draft of SI-1452 keyboard layout.
+Only Hebrew-related characters are considered.
+ '`' is used to switch levels instead of Alt-Gr.
+Geresh is mapped to '`k'.
+" nil t t t t nil nil nil nil nil t)
+
+(quail-define-rules
  ("q" ?/)
+ ("w" ?\')
+ ("e" ?×§)  ; Qof
+ ("r" ?ר)  ; Resh
+ ("t" ?א)  ; Alef
+ ("y" ?ט)  ; Tet
+ ("u" ?ו)  ; Vav
+ ("i" ?ן)  ; Final Nun
+ ("o" ?ם)  ; Final Mem
+ ("p" ?פ)  ; Pe
+ ("[" ?\])  ; mirroring
+ ("]" ?\[)  ; mirroring
+ ("a" ?ש)  ; Shin
+ ("s" ?ד)  ; Dalet
+ ("d" ?ג)  ; Gimel
+ ("f" ?כ)  ; Kaf
+ ("g" ?×¢)  ; Ayin
+ ("h" ?י)  ; Yod
+ ("j" ?ח)  ; Het
+ ("k" ?ל)  ; Lamed
+ ("l" ?ך)  ; Final Kaf
+ (";" ?×£)  ; Final Pe
+ ("'" ?,)
+ ("z" ?ז)  ; Zayin
+ ("x" ?ס)  ; Samekh
+ ("c" ?ב)  ; Bet
+ ("v" ?ה)  ; He
+ ("b" ?× )  ; Nun
+ ("n" ?מ)  ; Mem
+ ("m" ?צ)  ; Tsadi
+ ("," ?ת)  ; Tav
+ ("." ?×¥)  ; Final Tsadi
+ ("/" ?.)  ; Stop
+ ("(" ?\))  ; mirroring
+ (")" ?\()  ; mirroring
+ ("{" ?})  ; mirroring
+ ("}" ?{)  ; mirroring
+ ("<" ?>)  ; mirroring
+ (">" ?<)  ; mirroring
+
+ ("``" ?\;)
+ ("`1" ?Ö½)  ; Meteg
+;("`2" ??)  ; Unassigned
+ ("`3" ?€)  ; Euro Sign
+ ("`4" ?₪)  ; New Sheqel sign
+ ("`5" ?°)  ; Degree Sign
+ ("`6" ?Ö«)  ; Ole
+;("`7" ??)  ; Unassigned
+ ("`8" ?×)  ; Multiplication Sign
+ ("`9" ?\u200E)  ; LRM
+ ("`0" ?\u200F)  ; RLM
+ ("`-" ?Ö¾)  ; Maqaf
+ ("`=" ?–)  ; En Dash
+ ("`q" ?ׂ)  ; Sin dot
+ ("`w" ?ׁ)  ; Shin dot
+ ("`e" ?Ö¸)  ; Qamats
+ ("`r" ?Ö³)  ; Hataf Qamats
+;("`t" ??)  ; Unassigned
+ ("`y" ?×°)  ; Yiddish Double Vav
+ ("`u" ?Ö¹)  ; Holam
+;("`i" ??)  ; Unassigned
+;("`o" ??)  ; Unassigned
+ ("`p" ?Ö·)  ; Patah
+ ("`[" ?Ö²)  ; Hataf Patah
+ ("`]" ?Ö¿)  ; Rafe
+ ("`\\" ?Ö»)  ; Qubuts
+ ("`a" ?Ö°)  ; Sheva
+ ("`s" ?Ö¼)  ; Dagesh or Mapiq
+;("`d" ??)  ; Unassigned
+;("`f" ??)  ; Unassigned
+ ("`g" ?×±)  ; Yiddish Vav Yod
+ ("`h" ?ײ)  ; Yiddish Double Yod
+ ("`j" ?Ö´)  ; Hiriq
+ ("`k" ?׳)  ; Geresh (Punct.)
+ ("`l" ?“)  ; Left Double Quotation Mark
+ ("`;" ?”)  ; Right Double Quotation Mark
+ ("`'" ?×´)  ; Gershayim (Punct.)
+;("`z" ??)  ; Unassigned
+ ("`x" ?Ö¶)  ; Segol (Point)
+ ("`c" ?Ö±)  ; Hataf Segol
+;("`v" ??)  ; Unassigned
+;("`b" ??)  ; Unassigned
+;("`n" ??)  ; Unassigned
+ ("`m" ?Öµ)  ; Tsere
+;("`," ??)  ; Unassigned
+;("`." ??)  ; Unassigned
+ ("`/" ?÷)  ; Division Sign
+
+ ("``" ?׃)  ; Sof Pasuq
+ ("`!" ?֑)  ; Etnahta
+ ("`@" ?֒)  ; Segol (Accent)
+ ("`#" ?֓)  ; Shalshelet
+ ("`$" ?֔)  ; Zaqef Qatan
+ ("`%" ?֕)  ; Zaqef Gadol
+ ("`^" ?֖)  ; Tipeha
+ ("`&" ?֗)  ; Revia
+ ("`*" ?֘)  ; Zarqa
+ ("`(" ?֙)  ; Pashta
+ ("`)" ?֚)  ; Yetiv
+ ("`_" ?֛)  ; Tevir
+ ("`+" ?֜)  ; Geresh (Accent)
+ ("`Q" ?֝)  ; Geresh Muqdam
+ ("`W" ?֞)  ; Gershayim (Accent)
+ ("`E" ?ׇ)  ; Qamats Qatan
+ ("`R" ?֟)  ; Qarney Para
+ ("`T" ?Ö )  ; Telisha Gedola
+ ("`Y" ?Ö¡)  ; Pazer
+ ("`U" ?Öº)  ; Holam Haser for Vav
+ ("`I" ?Ö¢)  ; Atnah Hafukh
+ ("`O" ?Ö£)  ; Munah
+;("`P" ??)  ; Reserved
+ ("`{" ?Ö¤)  ; Mahapakh
+ ("`}" ?Ö¥)  ; Merkha
+ ("`|" ?Ö¦)  ; Merkha Kefula
+;("`A" ??)  ; Reserved
+;("`S" ??)  ; Reserved
+ ("`D" ?Ö§)  ; Darga
+ ("`F" ?Ö¨)  ; Qadma
+ ("`G" ?Ö©)  ; Telisha Qetana
+ ("`H" ?Öª)  ; Yerah Ben Yomo
+ ("`J" ?\u200D)  ; ZWJ
+ ("`K" ?Ö¬)  ; Iluy
+ ("`L" ?“)  ; Left Double Quotation Mark (2nd)
+ ("`:" ?„)  ; Double Low-9 Quotation Mark
+ ("`\"" ?Ö­)  ; Dehi
+ ("`Z" ?Ö®)  ; Zinor
+ ("`X" ?Ö¯)  ; Masora Circle
+ ("`C" ?\u034F)  ; CGJ
+ ("`V" ?׀)  ; Paseq
+ ("`B" ?׆)  ; Nun Hafukha
+ ("`N" ?\u200C)  ; ZWNJ
+;("`M" ??)  ; Unassigned
+;("`<" ??)  ; Unassigned
+ ("`>" ?ׅ)  ; Lower Dot
+ ("`?" ?ׄ)  ; Upper Dot
+)
+
+(quail-define-package
+ "hebrew-lyx" "Hebrew" "לִ" nil "Hebrew LyX input method.
+
+Based on LyX keyboard layout.
+Additional mappings for Rafe and Yiddish ligatures.
+" nil t t t t nil nil nil nil nil t)
+
+(quail-define-rules
+ ("`" ?\;)
+ ("_" ?Ö¾)  ; Maqaf
+ ("q`" ?Ö°)  ; Sheva
+ ("w" ?\')
+ ("e" ?×§)  ; Qof
+ ("r" ?ר)  ; Resh
+ ("t" ?א)  ; Alef
+ ("y" ?ט)  ; Tet
+ ("u" ?ו)  ; Vav
+ ("i" ?ן)  ; Final Nun
+ ("o" ?ם)  ; Final Mem
+ ("p" ?פ)  ; Pe
+ ("[" ?\])  ; mirroring
+ ("]" ?\[)  ; mirroring
+ ("a" ?ש)  ; Shin
+ ("s" ?ד)  ; Dalet
+ ("d" ?ג)  ; Gimel
+ ("f" ?כ)  ; Kaf
+ ("g" ?×¢)  ; Ayin
+ ("h" ?י)  ; Yod
+ ("j" ?ח)  ; Het
+ ("k" ?ל)  ; Lamed
+ ("l" ?ך)  ; Final Kaf
+ (";" ?×£)  ; Final Pe
+ ("'" ?,)
+ ("z" ?ז)  ; Zayin
+ ("x" ?ס)  ; Samekh
+ ("c" ?ב)  ; Bet
+ ("v" ?ה)  ; He
+ ("b" ?× )  ; Nun
+ ("n" ?מ)  ; Mem
+ ("m" ?צ)  ; Tsadi
+ ("," ?ת)  ; Tav
+ ("." ?×¥)  ; Final Tsadi
+ ("/" ?.)  ; Stop
+ ("(" ?\))  ; mirroring
+ (")" ?\()  ; mirroring
+ ("W" ?׳)  ; Geresh (Punct.)
+ ("E" ?Ö¸)  ; Qamats
+ ("R" ?Ö¿)  ; Rafe
+ ("T" ?\u200E)  ; LRM
+ ("Y" ?\u200F)  ; RLM
+ ("U" ?Ö¹)  ; Holam
+ ("I" ?ײ)  ; Yiddish Double Yod
+ ("O" ?×°)  ; Yiddish Double Vav
+ ("P" ?Ö·)  ; Patah
+ ("{" ?})  ; mirroring
+ ("}" ?{)  ; mirroring
+ ("A" ?Ö°)  ; Sheva
+ ("S" ?Ö¼)  ; Dagesh or Mapiq
+ ("F"  ?×´)  ; Gershayim (Punct.)
+ ("G" ?ׂ)  ; Sin dot
+ ("H" ?ׁ)  ; Shin dot
+ ("J" ?Ö´)  ; Hiriq
+ ("K" ?₪)  ; New Sheqel sign
+ ("L" ?×±)  ; Yiddish Vav Yod
+ ("X" ?Ö¶)  ; Segol (Point)
+ ("C" ?Ö»)  ; Qubuts
+ ("V" ?Ö±)  ; Hataf Segol
+ ("B" ?Ö²)  ; Hataf Patah
+ ("N" ?Ö³)  ; Hataf Qamats
+ ("M" ?Öµ)  ; Tsere
+ ("<" ?>)  ; mirroring
+ (">" ?<)  ; mirroring
+)
+
+
+(quail-define-package
+ "hebrew-full" "Hebrew" "×¢Ö´Ö«" nil "Hebrew Full method.
+
+Provides access to all Hebrew characters suitable to Modern Hebrew.
+" nil t t t t nil nil nil nil nil t)
+
+(quail-define-rules
+ ("`" ?\;)
+ ("-" ?Ö¾)  ; Maqaf
  ("w" ?')
- ("e" ?÷)
- ("r" ?ø)
- ("t" ?à)
- ("y" ?è)
- ("u" ?å)
- ("i" ?ï)
- ("o" ?í)
- ("p" ?ô)
- ("a" ?ù)
- ("s" ?ã)
- ("d" ?â)
- ("f" ?ë)
- ("g" ?ò)
- ("h" ?é)
- ("j" ?ç)
- ("k" ?ì)
- ("l" ?ê)
- (";" ?ó)
- ("z" ?æ)
- ("x" ?ñ)
- ("c" ?á)
- ("v" ?ä)
- ("b" ?ð)
- ("n" ?î)
- ("m" ?ö)
- ("," ?ú)
- ("." ?õ)
+ ("e" ?×§)  ; Qof
+ ("r" ?ר)  ; Resh
+ ("t" ?א)  ; Alef
+ ("y" ?ט)  ; Tet
+ ("u" ?ו)  ; Vav
+ ("i" ?ן)  ; Final Nun
+ ("o" ?ם)  ; Final Mem
+ ("p" ?פ)  ; Pe
+ ("[" ?\])  ; mirroring
+ ("]" ?\[)  ; mirroring
+ ("a" ?ש)  ; Shin
+ ("s" ?ד)  ; Dalet
+ ("d" ?ג)  ; Gimel
+ ("f" ?כ)  ; Kaf
+ ("g" ?×¢)  ; Ayin
+ ("h" ?י)  ; Yod
+ ("j" ?ח)  ; Het
+ ("k" ?ל)  ; Lamed
+ ("l" ?ך)  ; Final Kaf
+ (";" ?×£)  ; Final Pe
+ ("'" ?,)
+ ("z" ?ז)  ; Zayin
+ ("x" ?ס)  ; Samekh
+ ("c" ?ב)  ; Bet
+ ("v" ?ה)  ; He
+ ("b" ?× )  ; Nun
+ ("n" ?מ)  ; Mem
+ ("m" ?צ)  ; Tsadi
+ ("," ?ת)  ; Tav
+ ("." ?×¥)  ; Final Tsadi
  ("/" ?.)
- ("'" ?,))
 
-;;; arch-tag: 771b887d-15af-4a4d-b4ce-a4a86f5ca0cf
+ ("(" ?\))  ; mirroring
+ (")" ?\()  ; mirroring
+ ("Q" ?/)
+ ("W" ?׳)  ; Geresh (Punct.)
+ ("E" ?₪)  ; New Sheqel Sign
+ ("R" ?Ö¿)  ; Rafe
+ ("T" ?Ö±)  ; Hataf Segol
+ ("Y" ?×±)  ; Yiddish Vav Yod
+ ("U" ?×°)  ; Yiddish Double Vav
+ ("I" ?Ö²)  ; Hataf Patah
+ ("O" ?Ö³)  ; Hataf Qamats
+ ("P" ?×´)  ; Gershayim (Punct.)
+ ("{" ?})  ; mirroring
+ ("}" ?{)  ; mirroring
+ ("A" ?Ö°)  ; Sheva
+ ("S" ?Ö¼)  ; Dagesh or Mapiq
+ ("D" ?Ö»)  ; Qubuts
+ ("F" ?Ö¹)  ; Holam
+ ("G" ?Ö¶)  ; Segol (Point)
+ ("H" ?Öµ)  ; Tsere
+ ("J" ?Ö´)  ; Hiriq
+ ("K" ?Ö·)  ; Patah
+ ("L" ?Ö¸)  ; Qamats
+ ("Z" ?ׂ)  ; Sin Dot
+ ("X" ?ׁ)  ; Shin Dot
+ ("C" ?Ö«)  ; Ole
+ ("V" ?ײ)  ; Yiddish Double Yod
+ ("B" ?׃)  ; Sof Pasuq
+ ("N" ?\u200E)  ; LRM
+ ("M" ?\u200F)  ; RLM
+ ("<" ?>)  ; mirroring
+ (">" ?<)  ; mirroring
+
+ ("q`" ?\u202D)  ; LRO
+ ("q1" ?\u202E)  ; RLO
+ ("q2" ?\u202A)  ; LRE
+ ("q3" ?\u202B)  ; RLE
+ ("q4" ?\u202C)  ; PDF
+ ("q5" ?\u034F)  ; CGJ
+ ("q6" ?Ö¬)  ; Iluy
+ ("q8" ?Ö­)  ; Dehi
+ ("q9" ?ׇ)  ; Qamats Qatan
+ ("q0" ?֝)  ; Geresh Muqdam
+ ("q-" ?-)  ; Minus
+ ("q=" ?Ö®)  ; Zinor
+ ("q|" ?׀)  ; Paseq
+ ("qw" ?Ö¯)  ; Masora Circle
+ ("qe" ?ׄ)  ; Upper Dot
+ ("qr" ?ׅ)  ; Lower Dot
+ ("qy" ?֟)  ; Qarney Para
+ ("qu" ?֓)  ; Shalshelet
+ ("qi" ?֞)  ; Gershayim (Accent)
+ ("qo" ?֜)  ; Geresh (Accent)
+ ("qp" ?Ö¨)  ; Qadma
+ ("q[" ?׆)  ; Nun Hafukha
+ ("qa" ?Öº)  ; Holam Haser for Vav
+ ("qs" ?Ö©)  ; Telisha Qetana
+ ("qd" ?Ö )  ; Telisha Gedola
+ ("qf" ?Ö¡)  ; Pazer
+ ("qg" ?֕)  ; Zaqef Gadol
+ ("qh" ?֔)  ; Zaqef Qatan
+ ("qj" ?֙)  ; Pashta
+ ("qk" ?Ö¤)  ; Mahapakh
+ ("ql" ?֗)  ; Revia
+ ("q;" ?֒)  ; Segol (Accent)
+ ("q'" ?֘)  ; Zarqa
+ ("qz" ?Öª)  ; Yerah Ben Yomo
+ ("qx" ?Ö¦)  ; Merkha Kefula
+ ("qc" ?֚)  ; Yetiv
+ ("qv" ?֛)  ; Tevir
+ ("qb" ?Ö§)  ; Darga
+ ("qn" ?֑)  ; Etnahta
+ ("qm" ?Ö£)  ; Munah
+ ("q," ?֖)  ; Tipeha
+ ("q." ?Ö¥)  ; Merkha
+ ("q/" ?Ö½)  ; Meteg
+)
+
+
+(quail-define-package
+ "hebrew-biblical-tiro" "Hebrew" "תִרֹ" nil
+"Biblical Hebrew Tiro input method.
+
+Based on Society of Biblical Literature's Tiro keyboard layout.
+Not suitable for modern Hebrew input.
+ 'q' is used to switch levels instead of Alt-Gr.
+ Combining dot above (Called Masora dot) (̇) is mapped to 'q1'.
+" nil t t t t nil nil nil nil nil t)
+
+(quail-define-rules
+ ("`" ?׃)  ; Sof Pasuq
+ ("-" ?Ö¾)  ; Maqaf
+ ("=" ?◦)  ; White Bullet
+ ("w" ?׳)  ; Geresh (Punct.)
+ ("e" ?×§)  ; Qof
+ ("r" ?ר)  ; Resh
+ ("t" ?א)  ; Alef
+ ("y" ?ט)  ; Tet
+ ("u" ?ו)  ; Vav
+ ("i" ?ן)  ; Final Nun
+ ("o" ?ם)  ; Final Mem
+ ("p" ?פ)  ; Pe
+ ("[" ?\])  ; mirroring
+ ("]" ?\[)  ; mirroring
+ ("\\" ?׀)  ; Paseq
+ ("a" ?ש)  ; Shin
+ ("s" ?ד)  ; Dalet
+ ("d" ?ג)  ; Gimel
+ ("f" ?כ)  ; Kaf
+ ("g" ?×¢)  ; Ayin
+ ("h" ?י)  ; Yod
+ ("j" ?ח)  ; Het
+ ("k" ?ל)  ; Lamed
+ ("l" ?ך)  ; Final Kaf
+ (";" ?×£)  ; Final Pe
+ ("'" ?֚)  ; Yetiv
+ ("z" ?ז)  ; Zayin
+ ("x" ?ס)  ; Samekh
+ ("c" ?ב)  ; Bet
+ ("v" ?ה)  ; He
+ ("b" ?× )  ; Nun
+ ("n" ?מ)  ; Mem
+ ("m" ?צ)  ; Tsadi
+ ("," ?ת)  ; Tav
+ ("." ?×¥)  ; Final Tsadi
+ ("/" ?Ö­)  ; Dehi
+ ("~" ?Ö®)  ; Zinor
+ ("!" ?Ö©)  ; Telisha Qetana
+ ("@" ?֙)  ; Pashta
+ ("#" ?֒)  ; Segol (Accent)
+ ("$" ?Ö¯)  ; Masora circle
+ ("%" ?Öº)  ; Holam Haser for Vav
+ ("^" ?Ö¹)  ; Holam
+ ("&" ?Ö¿)  ; Rafe
+ ("*" ?ׂ)  ; Sin dot
+ ("(" ?ׁ)  ; Shin dot
+ (")" ?֝)  ; Geresh Muqdam
+ ("_" ?Ö )  ; Telisha Gedola
+ ("+" ?Ö¼)  ; Dagesh or Mapiq
+ ("Q" ?ׄ)  ; Upper dot
+ ("W" ?Ö¬)  ; Iluy
+ ("E" ?Ö«)  ; Ole
+ ("R" ?֟)  ; Qarney Para
+ ("T" ?֓)  ; Shalshelet
+ ("Y" ?֞)  ; Gershayim (Accent)
+ ("U" ?֜)  ; Geresh (Accent)
+ ("I" ?Ö¡)  ; Pazer
+ ("O" ?֕)  ; Zaqef Gadol
+ ("P" ?֔)  ; Zaqef Qatan
+ ("{" ?֗)  ; Revia
+ ("}" ?֘)  ; Zarqa
+ ("|" ?Ö¨)  ; Qadma
+ ("A" ?Ö½)  ; Meteg
+ ("S" ?Ö°)  ; Sheva
+ ("D" ?Ö»)  ; Qubuts
+ ("F" ?Ö´)  ; Hiriq
+ ("G" ?Ö±)  ; Hataf Segol
+ ("H" ?Ö¶)  ; Segol (Point)
+ ("J" ?Öµ)  ; Tsere
+ ("K" ?Ö³)  ; Hataf Qamats
+ ("L" ?Ö¸)  ; Qamats
+ (":" ?Ö²)  ; Hataf Patah
+ ("\"" ?Ö·)  ; Patah
+ ("Z" ?ׅ)  ; Lower dot
+ ("X" ?Ö¤)  ; Mahapakh
+ ("C" ?Öª)  ; Yerah Ben Yomo
+ ("V" ?Ö¦)  ; Merkha Kefula
+ ("B" ?Ö¥)  ; Merkha
+ ("N" ?Ö§)  ; Darga
+ ("M" ?֛)  ; Tevir
+ ("<" ?֑)  ; Etnahta
+ (">" ?֖)  ; Tipeha
+ ("?" ?Ö£)  ; Munah
+
+ ("q`" ?\;)
+ ("q1" ?\u0307)  ; Combining dot above
+ ("q2" ?\u0336)  ; Combining long stroke overlay
+ ("q3" ?\u030A)  ; Combining ring above
+ ("q4" ?₪)  ; New Sheqel Sign
+ ("q5" ?\u200D)  ; ZWJ
+ ("q6" ?\u200C)  ; ZWNJ
+ ("q7" ?\u034F)  ; CGJ
+ ("q8" ?\u200E)  ; LRM
+ ("q9" ?\u200F)  ; RLM
+ ("q0" ?◌)  ; Dotted Circle
+ ("q-" ?-)  ; Minus
+ ("q=" ?•)  ; Bullet
+ ("qq" ?\u0308)  ; Combining Diaeresis
+ ("qw" ?×´)  ; Gershayim (Punct.)
+ ("qe" ?€)  ; Euro Sign
+ ("qu" ?×°)  ; Yiddish Double Vav
+ ("q\\" ?\\)
+ ("qh" ?ײ)  ; Yiddish Double Yod
+ ("qj" ?×±)  ; Yiddish Vav Yod
+ ("ql" ?ׇ)  ; Qamats Qatan
+ ("q'" ?,)
+ ("qc" ?Ö¢)  ; Atnah Hafukh
+ ("qb" ?׆)  ; Nun Hafukha
+ ("q/" ?.)
+
+ ("q~" ?~)
+ ("q!" ?!)
+ ("q@" ?@)
+ ("q#" ?#)
+ ("q$" ?$)
+ ("q%" ?%)
+ ("q^" ?^)
+ ("q&" ?&)
+ ("q*" ?*)
+ ("q(" ?\))  ; mirroring
+ ("q)" ?\()  ; mirroring
+ ("q_" ?_)
+ ("q+" ?+)
+ ("qQ" ?/)
+ ("qW" ?')
+ ("q{" ?})  ; mirroring
+ ("q}" ?{)  ; mirroring
+ ("q|" ?|)
+ ("q:" ?:)
+ ("q\"" ?\")
+ ("q<" ?>)
+ ("q>" ?<)
+ ("q?" ??)
+)
+
+(quail-define-package
+ "hebrew-biblical-sil" "Hebrew" "סִל" nil
+"Biblical Hebrew SIL input method.
+
+Based on Society of Biblical Literature's SIL keyboard layout.
+Phonetic and not suitable for modern Hebrew input.
+ '`' is used to switch levels instead of Alt-Gr.
+ Euro Sign (€) is mapped to 'Z'.
+" nil t t t t nil nil nil nil nil t)
+
+(quail-define-rules
+ ("-" ?Ö¾)  ; Maqaf
+ ("=" ?Ö¼)  ; Dagesh or Mapiq
+ ("q" ?×§)  ; Qof
+ ("w" ?ו)  ; Vav
+ ("e" ?Ö¶)  ; Segol (Point)
+ ("r" ?ר)  ; Resh
+ ("t" ?ת)  ; Tav
+ ("y" ?י)  ; Yod
+ ("u" ?Ö»)  ; Qubuts
+ ("i" ?Ö´)  ; Hiriq
+ ("o" ?Ö¹)  ; Holam
+ ("p" ?פ)  ; Pe
+ ("[" ?\])  ; mirroring
+ ("]" ?\[)  ; mirroring
+ ("\\" ?׀)  ; Paseq
+ ("a" ?Ö·)  ; Patah
+ ("s" ?ס)  ; Samekh
+ ("d" ?ד)  ; Dalet
+ ("f" [ "שׂ" ])  ; Shin + Sin dot
+ ("g" ?ג)  ; Gimel
+ ("h" ?ה)  ; He
+ ("j" [ "שׁ" ])  ; Shin + Shin dot
+ ("k" ?כ)  ; Kaf
+ ("l" ?ל)  ; Lamed
+ (";" ?Ö°)  ; Sheva
+ ("'" ?’)  ; Right Single Quotation Mark
+ ("z" ?ז)  ; Zayin
+ ("x" ?ח)  ; Het
+ ("c" ?צ)  ; Tsadi
+ ("v" ?ט)  ; Tet
+ ("b" ?ב)  ; Bet
+ ("n" ?× )  ; Nun
+ ("m" ?מ)  ; Mem
+
+ ("~" ?₪)  ; New Sheqel Sign
+ ("@" ?֘)  ; Zarqa
+ ("#" ?Ö¨)  ; Qadma
+ ("$" ?֜)  ; Geresh (Accent)
+ ("%" ?֞)  ; Gershayim (Accent)
+ ("&" ?Ö¬)  ; Iluy
+ ("*" ?֝)  ; Geresh Muqdam
+ ("(" ?\))  ; mirroring
+ (")" ?\()  ; mirroring
+ ("_" ?–)  ; Em Dash
+ ("Q" ?֗)  ; Revia
+ ("E" ?Öµ)  ; Tsere
+ ("Y" ?֟)  ; Qarney Para
+ ("O" ?Öº)  ; Holam Haser for Vav
+ ("P" ?×£)  ; Final Pe
+ ("{" ?})  ; mirroring
+ ("}" ?{)  ; mirroring
+
+ ("A" ?Ö¸)  ; Qamats
+ ("S" ?ש)  ; Shin
+ ("K" ?ך)  ; Final Kaf
+ (":" ?×´)  ; Gershayim (Punct.)
+ ("\"" ?”)  ; Right Double Quotation Mark
+ ("Z" ?€)  ; Euro Sign
+ ("C" ?×¥)  ; Final Tsadi
+ ("N" ?ן)  ; Final Nun
+ ("M" ?ם)  ; Final Mem
+ ("<" ?×¢)  ; Ayin
+ (">" ?א)  ; Alef
+
+ ("``" ?$)
+ ("`1" ?Ö½)  ; Meteg
+ ("`2" ?Ö¢)  ; Atnah Hafukh
+ ("`3" ?֖)  ; Tipeha
+ ("`4" ?Ö¥)  ; Merkha
+ ("`5" ?Ö¦)  ; Merkha Kefula
+ ("`6" ?Ö­)  ; Dehi
+ ("`7" ?Ö£)  ; Munah
+ ("`8" ?֛)  ; Tevir
+ ("`9" ?Ö§)  ; Darga
+ ("`0" ?Öª)  ; Yerah Ben Yomo
+ ("`-" ?—)  ; Em Dash
+ ("`=" ?֑)  ; Etnahta
+ ("`]" ?֚)  ; Accent Yetiv
+ ("`\\" ?Ö¤)  ; Mahapakh
+ ("`a" ?ׇ)  ; Qamats Qatan
+ ("`g" ? ◦)  ; White Bullet
+ ("`h" ?\u0336)  ; Combining Long Stroke Overlay
+ ("`;" ?\;)
+ ("`'" ?\u0323); Combining Dot Below (Lower Point??)
+ ("`m" ?\u200C)  ; ZWNJ
+ ("`," ?»)  ; mirroring
+ ("`." ?«)  ; mirroring
+ ("`/" ?׳)  ; Geresh (Punct.)
+
+ ("`!" ?֗)  ; Revia
+ ("`@" ?Ö®)  ; Zinor
+ ("`#" ?֙)  ; Pashta
+ ("`$" ?Ö )  ; Telisha Gedola
+ ("`%" ?Ö©)  ; Telisha Qetana
+ ("`&" ?Ö¡)  ; Pazer
+ ("`*" ?֕)  ; Zaqef Gadol
+ ("`(" ?֓)  ; Shalshelet
+ ("`)" ?Ö¯)  ; Masora Circle
+ ("`_" ?Ö¿)  ; Rafe
+ ("`+" ?◌)  ; Dotted Circle
+ ("`E" ?Ö±)  ; Hataf Segol
+ ("`O" ?Ö³)  ; Hataf Qamats
+ ("`P" ?\u034F)  ; CGJ
+ ("`{" ?֔)  ; Zaqef Qatan
+ ("`}" ?֒)  ; Segol (Accent)
+ ("`|" ?Ö«)  ; Ole
+ ("`A" ?Ö²)  ; Hataf Patah
+ ("`G" ?•)  ; Bullet
+ ("`H" ?\u030A)  ; Combining ring above
+ ("`:" ?׃)  ; Sof Pasuq
+ ("`\"" ?ׄ)  ; Upper Dot
+ ("`M" ?\u200D)  ; ZWJ
+ ("`<" ?\u0307)  ; Combining dot above
+ ("`>" ?\u0308)  ; Combining Diaeresis
+)
+
+
+(quail-define-package
+ "yiddish-royal" "Hebrew" "ײר" nil "Yiddish Royal input method.
+
+Based on Royal Yiddish typewriter.
+Better for yiddish than Hebrew methods.
+" nil t t t t nil nil nil nil nil t)
+
+(quail-define-rules
+ ("`" ?~)
+ ("q" ?×§)  ; Qof
+ ("w" [ "אָ" ])  ; Qamats Alef (Komets Alef)
+ ("e" ?ר)  ; Resh
+ ("r" ?א)  ; Alef (Shtumer Alef)
+ ("t" ?ט)  ; Tet
+ ("y" ?×°)  ; Yiddish Double Vav (Tsvey Vovn)
+ ("u" ?ו)  ; Vav
+ ("i" ?ן)  ; Final Nun
+ ("o" ?ם)  ; Final Mem
+ ("p" [ "פֿ" ])  ; Rafe Pe (Fey)
+ ("[" [ "פּ" ])  ; Dagesh Pe (Pey)
+ ("]" ?,)
+ ("a" ?ש)  ; Shin
+ ("s" ?ד)  ; Dalet
+ ("d" ?ג)  ; Gimel
+ ("f" ?כ)  ; Kaf
+ ("g" ?×¢)  ; Ayin
+ ("h" ?ײ)  ; Yiddish Double Yod (Tsvey Yudn)
+ ("j" ?י)  ; Yod
+ ("k" ?ח)  ; Het
+ ("l" ?ל)  ; Lamed
+ (";" ?ך)  ; Final Kaf
+ ("'" ?×£)  ; Final Pe
+ ("z" ?.)
+ ("x" ?ז)  ; Zayin
+ ("c" ?ס)  ; Samekh
+ ("v" ?ב)  ; Bet
+ ("b" ?ה)  ; He
+ ("n" ?× )  ; Nun
+ ("m" ?מ)  ; Mem
+ ("," ?צ)  ; Tsadi
+ ("." ?ת)  ; Tav
+ ("/" ?×¥)  ; Final Tsadi
+
+ ("~" ?@)
+ ("!" ?”)  ; Right Double Quotation Mark
+ ("@" ?„)  ; Double Low-9 Quotation Mark
+ ("(" ?\))  ; mirroring
+ (")" ?\()  ; mirroring
+ ("Q" ?“)  ; Left Double Quotation Mark
+ ("W" ?”)  ; Right Double Quotation Mark
+ ("E" ?ײ)  ; Yiddish Double Yod (x2)
+ ("R" [ "אַ" ])  ; Patah Alef (Pasekh Alef)
+; ("T" "")
+ ("Y" ?×±)  ; Ligature Yiddish Vav Yod (vov yud)
+ ("U" [ "וּ" ])  ; Melupm vov
+ ("I" ?/)
+ ("O" ?\\)
+ ("P" ?פ)  ; Pe
+ ("{" ??)
+ ("}" ?!)
+ ("A" [ "שׂ" ])  ; Shin + Sin dot
+ ("S" [ "שׂ" ])  ; Shin + Sin dot
+; ("D" "")
+ ("F" [ "כּ" ])  ; Dagesh Kaf (Kof)
+; ("G" "")
+ ("H" [ "ײַ" ])  ; Yiddish Double Yod + Patah (Pasekh Tsvey Yudn)
+ ("J" [ "יִ" ])  ; Khirik Yud
+ ("K" ?})  ; mirroring
+ ("L" ?{)  ; mirroring
+ ("\"" ?\;)
+ ("Z" ??)
+ ("X" ?|)
+ ("C"  [ "בּ" ])  ; Dagesh Bet (Beys)
+ ("V" [ "בֿ" ])  ; Rafe Bet (Veys)
+ ("B" ?\])  ; mirroring
+ ("N" ?\[)  ; mirroring
+ ("M" ?>)  ; mirroring
+ ("<" ?<)  ; mirroring
+ (">" [ "תּ" ])  ; Dagesh Tav (Tof)
+ ("?" ?\')
+)
+
+
+(quail-define-package
+ "yiddish-keyman" "Hebrew" "ײק" nil "Yiddish Keyman input method.
+
+Based on Keyman keyboard layout.
+Better for yiddish than Hebrew methods..
+" nil t t t t nil nil nil nil nil t)
+
+(quail-define-rules
+ ("`" ?\;)
+ ("q" ?„)  ; Double Low-9 Quotation Mark
+ ("w" ?ש)  ; Shin
+ ("e" ?×¢)  ; Ayin
+ ("r" ?ר)  ; Resh
+ ("t" ?ט)  ; Tet
+ ("y" ?י)  ; Yod
+ ("u" ?ו)  ; Vav
+ ("i" ?י)  ; Yod (x2)
+ ("o" [ "אָ" ])  ; Qamats Alef (Komets Alef)
+ ("p" [ "פּ" ])  ; Dagesh Pe (Pey)
+ ("[" ?\])  ; mirroring
+ ("]" ?\[)  ; mirroring
+ ("a"  [ "אַ" ])  ; Patah Alef (Pasekh Alef)
+ ("s" ?ס)  ; Samekh
+ ("d" ?ד)  ; Dalet
+ ("f" [ "פֿ" ])  ; Rafe Pe (Fey)
+ ("g" ?ג)  ; Gimel
+ ("h" ?ה)  ; He
+ ("j" ?ײ)  ; Yiddish Double Yod (Tsvey Yudn)
+ ("k" ?×§)  ; Qof
+ ("l" ?ל)  ; Lamed
+ ("z" ?ז)  ; Zayin
+ ("x" ?כ)  ; Kaf
+ ("c" ?צ)  ; Tsadi
+ ("v" ?×°)  ; Yiddish Double Vav (Tsvey Vovn)
+ ("b" ?ב)  ; Bet
+ ("n" ?× )  ; Nun
+ ("m" ?מ)  ; Mem
+
+ ("(" ?\))  ; mirroring
+ (")" ?\()  ; mirroring
+ ("Q" ?”)  ; Right Double Quotation Mark
+ ("W" [ "שׂ" ])  ; Shin + Sin dot
+ ("E" ?ײ)  ; Yiddish Double Yod (x2)
+; ("R" "")  ;
+ ("T" [ "תּ" ])  ; Dagesh Tav (Tof)
+ ("Y" [ "ײַ" ])  ; Yiddish Double Yod + Patah (Pasekh Tsvey Yudn)
+ ("U" [ "וּ" ])  ; Melupm vov
+ ("I" [ "יִ" ])  ; Khirik Yud
+ ("O" ?×±)  ; Ligature Yiddish Vav Yod (vov yud)
+; ("P" "")
+ ("{" ?})  ; mirroring
+ ("}" ?{)  ; mirroring
+ ("A" ?א)  ; Alef (Shtumer Alef)
+ ("S" ?ת)  ; Tav
+ ("F"  ?×£)  ; Final Pe
+ ("G" ?׳)  ; Geresh (Punct.)
+ ("H" ?ח)  ; Het
+ ("J" ?ײ)  ; Yiddish Double Yod (x2)
+ ("K" [ "כּ" ])  ; Dagesh Kaf (Kof)
+; ("L" "")
+; ("Z" "")
+ ("X" ?ך)  ; Final Kaf
+ ("C" ?×¥)  ; Final Tsadi
+ ("V" [ "בֿ" ])  ; Rafe Bet (Veys) )  ; Bet
+; ("B" "")
+ ("N" ?ן)  ; Final Nun
+ ("M" ?ם)  ; Final Mem
+ ("<" ?>)  ; mirroring
+ (">" ?<)  ; mirroring
+)
+
+
+(quail-define-package
+ "hebrew-phonetic-xkb" "Hebrew" "פ" nil "Hebrew phonetic (XKB) input method. 
+Based on the XKB hebrew-phonetic  keyboard layout, 
+layout that attempts to match Hebrew letters to English phonetic equivalents, some of its chars however 
+are mapped according to their shape, as o--> samesh.
+;;  1! 2@ 3# 4$ 5% 6^ 7& 8* 9( 0) -_ =+ ;~
+;;  קק וו אא רר תט עע וו יי סס פף ]}[{
+;;    אא שש דד פפ גג הה יי כך לל;:'\"\|
+;;     זז חח צץ וו בב נן מם ,>.</?
+;;
+" nil t t t t nil nil nil nil nil t)
+
+(quail-define-rules
+
+ ("A" ?א)  ; Alef
+ ("B" ?ב)  ; Bet
+ ("C" ?×¥)  ; Final Tsadi
+ ("D" ?ד)  ; Dalet
+ ("E" ?א)  ; aleph
+ ("E" ?א)  ; aleph
+ ("F" ?×£)  ; Final Pe
+ ("G" ?ג)  ; Gimel
+ ("H" ?ה)  ; He
+ ("I" ?י)  ; Yod
+ ("J" ?י)  ; Yod
+ ("K" ?ך)  ; Kaf sofit
+ ("L" ?ל)  ; Lamed
+ ("M" ?ם)  ; Final Mem
+ ("N" ?ן)  ; Final Nun
+ ("O" ?ס)  ; Samekh
+ ("P" ?×£)  ; Final Pe
+ ("Q" ?×§)  ; Kuf
+ ("R" ?ר)  ; Resh
+ ("S" ?ש)  ; Shin
+ ("T" ?ט)  ; Tet
+ ("U" ?ו)  ; Vav
+ ("V" ?ו)  ; Vav
+ ("W" ?ו)  ; Vav
+ ("X" ?ח)  ; Het
+ ("Y" ?×¢)  ; Ayin
+ ("Z" ?ז)  ; Zayin
+ ("a" ?א)  ; Alef
+ ("b" ?ב)  ; Bet
+ ("c" ?צ)  ; Tsadi
+ ("d" ?ד)  ; Dalet
+ ("e" ?א)  ; aleph
+ ("f" ?פ)  ; fe
+ ("g" ?ג)  ; Gimel
+ ("h" ?ה)  ; He
+ ("i" ?י)  ; Yod
+ ("j" ?י)  ; Yod
+ ("k" ?כ)  ; Kaf
+ ("l" ?ל)  ; Lamed
+ ("m" ?מ)  ; Mem
+ ("n" ?× )  ; Nun
+ ("o" ?ס)  ; Samekh
+ ("p" ?פ)  ; Pe
+ ("q" ?×§)  ; Kuf
+ ("r" ?ר)  ; Resh
+ ("s" ?ש)  ; Shin
+ ("t" ?ת)  ; Tav
+ ("u" ?ו)  ; Vav
+ ("v" ?ו)  ; Vav
+ ("w" ?ו)  ; Vav
+ ("x" ?ח)  ; Het
+ ("y" ?×¢)  ; Ayin
+ ("z" ?ז)  ; Zayin
+ ("[" ?\])  ; mirroring
+ ("]" ?\[)  ; mirroring
+ ("." ?.)  ; Stop
+ ("(" ?\))  ; mirroring
+ (")" ?\()  ; mirroring
+ ("{" ?})  ; mirroring
+ ("}" ?{)  ; mirroring
+ ("<" ?>)  ; mirroring
+ (">" ?<)  ; mirroring
+)
+
+
+
+(quail-define-package
+ "hebrew-phonetic-qwerty" "Hebrew" "×£" nil "Hebrew phonetic   input method.
+
+Based on the KDE hebrew-phonetic  keyboard layout, layout that
+attempts to match Hebrew letters to English phonetic equivalents.
+It is however modified, c=chet x zadik, o=wav y=ain e=aleph. Moreover some but 
+not all niqqud are added.
+;;  1! 2@ 3# 4$ 5% 6^ 7& 8* 9( 0) -_ =+ ;~
+;;  קֹ וׁ אֶ רר  תט עע וּ יִ וֹ פַ ]}[{
+;;    אָ שס דּ פף גג הה יִ כך לְ ;: '\" \|
+;;     זֵ צץ חֻ וו בּ נן מם ,>.</?
+;;
+" nil t t t t nil nil nil nil nil t)
+
+
+(quail-define-rules
+
+
+ ("A" ?Ö¸)  ; Qamats
+ ("B" ?Ö¼)  ; Dagesh or Mapiq
+ ("C" ?Ö»)  ; Qubuts
+ ("D" ?Ö¼)  ; Dagesh or Mapiq
+ ("E" ?Ö¶)  ; Segol (Point)
+ ("F" ?×£)  ; Final Pe
+ ("G" ?ג)  ; Gimel
+ ("H" ?ה)  ; He
+ ("I" ?Ö´)  ; Hiriq
+ ("J" ?Ö´)  ; Hiriq
+ ("K" ?ך)  ; Kaf sofit
+ ("L" ?Ö°)  ; Sheva
+ ("M" ?ם)  ; Final Mem
+ ("N" ?ן)  ; Final Nun
+ ("O" ?Ö¹)  ; Holam
+ ("P" ?Ö·)  ; Patah
+ ("Q" ?Ö¹)  ; Holam
+ ("R" ?ר)  ; Resh
+ ("S" ?ס)  ; Samekh
+ ("T" ?ט)  ; Tet
+ ("U" ?Ö¼)  ; Dagesh or Mapiq
+ ("V" ?ו)  ; Vav
+ ("W" ?ׁ)  ; Shin dot
+ ("X" ?×¥)  ; Final Tsadi
+ ("Y" ?×¢)  ; Ayin
+ ("Z" ?Öµ)  ; Tsere
+ ("a" ?א)  ; Alef
+ ("b" ?ב)  ; Bet
+ ("c" ?ח)  ; Het
+ ("d" ?ד)  ; Dalet
+ ("e" ?א)  ; aleph
+ ("f" ?פ)  ; fe
+ ("g" ?ג)  ; Gimel
+ ("h" ?ה)  ; He
+ ("i" ?י)  ; Yod
+ ("j" ?י)  ; Yod
+ ("k" ?כ)  ; Kaf
+ ("l" ?ל)  ; Lamed
+ ("m" ?מ)  ; Mem
+ ("n" ?× )  ; Nun
+ ("o" ?ו)  ; Vav
+ ("p" ?פ)  ; Pe
+ ("q" ?×§)  ; Kuf
+ ("r" ?ר)  ; Resh
+ ("s" ?ש)  ; Shin
+ ("t" ?ת)  ; Tav
+ ("u" ?ו)  ; Vav
+ ("v" ?ו)  ; Vav
+ ("w" ?ו)  ; Vav
+ ("x" ?צ)  ; Tsadi
+ ("y" ?×¢)  ; Ayin
+ ("z" ?ז)  ; Zayin
+ ("[" ?\])  ; mirroring
+ ("]" ?\[)  ; mirroring
+ ("." ?.)  ; Stop
+ ("(" ?\))  ; mirroring
+ (")" ?\()  ; mirroring
+ ("{" ?})  ; mirroring
+ ("}" ?{)  ; mirroring
+ ("<" ?>)  ; mirroring
+ (">" ?<)  ; mirroring
+)
+
+
+
+
+
 ;;; hebrew.el ends here



-- 
‘Liston operated so fast that he once accidentally amputated an assistant’s
fingers along with a patient’s leg, […] The patient and the assistant both
died of sepsis, and a spectator reportedly died of shock, resulting in the
only known procedure with a 300% mortality.’ (Atul Gawande, NEJM, 2012)

_______________________________________________
XEmacs-Patches mailing list
[email protected]
http://lists.xemacs.org/mailman/listinfo/xemacs-patches
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.