;;; hebrew-en-dvorak.el --- Quail package for inputting Hebrew characters -*-coding: iso-2022-7bit;-*- ;; Keywords: multilingual, input method, Hebrew ;; This file is part of GNU Emacs. ;; GNU Emacs is free software: you can redistribute it and/or modify ;; it under the terms of the GNU General Public License as published by ;; the Free Software Foundation, either version 3 of the License, or ;; (at your option) any later version. ;; GNU Emacs is distributed in the hope that it will be useful, ;; but WITHOUT ANY WARRANTY; without even the implied warranty of ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ;; GNU General Public License for more details. ;; You should have received a copy of the GNU General Public License ;; along with GNU Emacs. If not, see . ;;; Commentary: ;;; Code: (require 'quail) ;; This is a Hebrew LyX input method that assumes a basic US English ;; Dvorak keyboard layout. It is based on a keyboard map from Debian GNU/Linux ;; 'xkb/symbols/il' file, and the nikud pattern is based on Dekel Tsur's ;; Hebrew mapping for LyX. ;; It also incorporates suggestions on the emacs-bidi list by Yair F. ;; I made some slight modifications to the original LyX layout. All off them ;; are just filling vacancies in the first shift level. They are: ;; ;; - AD01 gershayim ;; - AD02 geresh ;; - AC03 euro ;; - AC04 en dash ;; - AB01 bullet ;; ;; Amit Ramon amit DOT ramon AT gmail DOT com June 2010 (quail-define-package "hebrew-lyx-en-dvorak" "Hebrew" "$,1,s(B" nil "Hebrew LyX over US English Dvorak 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 ;; AE01 AE09 - AE12 ("`" ?\;) ;; 9 unchanged AE09 ;; 0 unchanged AE10 ("[" ?-) ("]" ?=) ;; Shifted ;; ~ unchanged AE01 ("(" ?\)) ; mirroring (")" ?\() ; mirroring ("{" ?$,1,^(B) ; maqaf ("}" ?+) ;; AD01 - AD13 ("'" ?/) ("," ?\') ("." ?,Hw(B) ; qof ("p" ?,Hx(B) ; resh ("y" ?,H`(B) ; alef ("f" ?,Hh(B) ; tet ("g" ?,He(B) ; vav ("c" ?,Ho(B) ; final nun ("r" ?,Hm(B) ; final mem ("l" ?,Ht(B) ; pe ("/" ?\]) ; mirroring ("=" ?\[) ; mirroring ;; \ unchanged ;; Shifted ("\"" ?$,1-4(B) ; gershayim (new) ("<" ?$,1-3(B) ; geresh (new) (">" ?$,1,X(B) ; qamats ("P" ?$,1,_(B) ; rafe (new) ("Y" ?\u200E) ; LRM ("F" ?\u200F) ; RLM ("G" ?$,1,Y(B) ; holam ("C" ?$,1-2(B) ; Yiddish double yod ("R" ?$,1-0(B) ; Yiddish double vav ("L" ?$,1,W(B) ; patah ("?" ?}) ; mirroring ("+" ?{) ; mirroring ;; | unchanged ;; AC01 - AC11 ("a" ?,Hy(B) ; shin ("o" ?,Hc(B) ; dalet ("e" ?,Hb(B) ; gimel ("u" ?,Hk(B) ; kaf ("i" ?,Hr(B) ; ayin ("d" ?,Hi(B) ; yod ("h" ?,Hg(B) ; het ("t" ?,Hl(B) ; lamed ("n" ?,Hj(B) ; final kaf ("s" ?,Hs(B) ; final pe ("-" ?,) ;; Shifted ("A" ?$,1,P(B) ; sheva ("O" ?$,1,\(B) ; dagesh/shuruq or mapiq ("E" ?$,1tL(B) ; euro (new) ("U" ?\u2013) ;en dash ("I" ?$,1,b(B) ; sin dot ("D" ?$,1,a(B) ; shin dot ("H" ?$,1,T(B) ; hiriq ("T" ?$,1tJ(B) ; new sheqel sign ("N" ?$,1-1(B) ; Yiddish vav-yod ("S" ?:) ("_" ?\") ;; AB01 - AB10 (";" ?,Hf(B) ; zayin ("q" ?,Hq(B) ; samekh ("j" ?,Ha(B) ; bet ("k" ?,Hd(B) ; he ("x" ?,Hp(B) ; nun ("b" ?,Hn(B) ; mem ("m" ?,Hv(B) ; tsadi ("w" ?,Hz(B) ; tav ("v" ?,Hu(B) ; final tsadi ("z" ?.) ; stop ;; Shifted (":" ?\u2022) ; bullet (new) ("Q" ?$,1,V(B) ; segol (point) ("J" ?$,1,[(B) ; qubuts ("K" ?$,1,Q(B) ; hataf segol ("X" ?$,1,R(B) ; hataf patah ("B" ?$,1,S(B) ; hataf qamats ("M" ?$,1,U(B) ; tsere ("W" ?>) ; mirroring ("V" ?<) ; mirroring ("Z" ??) ) ;; arch-tag: 771b887d-15af-4a4d-b4ce-a4a86f5ca0cf ;;; hebrew.el ends here