From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Mohsen BANAN Newsgroups: gmane.emacs.devel,gmane.emacs.bidi Subject: Persian/Farsi Keyboard Input Method for emacs24 -- quail-persian-isiri9147.el Date: Tue, 26 Apr 2011 00:56:27 -0700 Organization: ByStar Federation of Autonomous Libre Services -- http://www.by-star.net Message-ID: NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Trace: dough.gmane.org 1303836020 22745 80.91.229.12 (26 Apr 2011 16:40:20 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Tue, 26 Apr 2011 16:40:20 +0000 (UTC) Cc: Eli Zaretskii To: emacs-bidi@gnu.org, emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Tue Apr 26 18:40:13 2011 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([140.186.70.17]) by lo.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1QElJ3-0007eV-F0 for ged-emacs-devel@m.gmane.org; Tue, 26 Apr 2011 18:40:09 +0200 Original-Received: from localhost ([::1]:35674 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QElJ2-0005iB-Sz for ged-emacs-devel@m.gmane.org; Tue, 26 Apr 2011 12:40:09 -0400 Original-Received: from eggs.gnu.org ([140.186.70.92]:40105) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QEd8L-0002gL-7P for emacs-devel@gnu.org; Tue, 26 Apr 2011 03:56:38 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1QEd8H-0004NP-28 for emacs-devel@gnu.org; Tue, 26 Apr 2011 03:56:33 -0400 Original-Received: from 0016.bacs.by-star.net ([198.62.92.166]:45293) by eggs.gnu.org with smtp (Exim 4.71) (envelope-from ) id 1QEd8G-0004NE-OB for emacs-devel@gnu.org; Tue, 26 Apr 2011 03:56:29 -0400 Original-Received: (qmail 11155 invoked from network); 26 Apr 2011 00:52:21 -0700 Original-Received: from 192.168.0.187 ([192.168.0.187]) by 0016.bacs.by-star.net ([198.62.92.166]) with ESMTP via TCP; 26 Apr 2011 07:52:21 -0000 User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.0.50 (gnu/linux) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 2) X-Received-From: 198.62.92.166 X-Mailman-Approved-At: Tue, 26 Apr 2011 12:40:04 -0400 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:138795 gmane.emacs.bidi:880 Archived-At: Attached below is a quail file that I have developed for Persian/Farsi keybaord input. I'd like for it to become part of emacs24. Would you kindly please include it in emacs? Thanks. ...Mohsen ;;; quail-persian-isiri9147.el --- Quail package for inputting Persian/Far= si keyboard -*- coding: utf-8;-*- ;; Author: Mohsen BANAN ;; Keywords: input method, Farsi, Persian, keyboard ;; ;; This is a Halaal Poly-Existential intended to remain perpetually Halaal.= =20 ;; ;; Copyleft Mohsen BANAN -- Subject to GPLv3. ;;=20 ;; The author wishes for this file to become part of emacs24=20 ;; and is happy to transfer copyright to FSF as needed. ;; ;;; Commentary: ;; ;; The keyboard mapping defined here is based on: ;; ;; Institute of Standards and Industrial Research of Iran ;; Information Technology =E2=80=93 Layout of Persian Letters and Symbols= on Computer Keyboards ;; ISIRI 9147 ;; http://www.isiri.org/UserStd/DownloadStd.aspx?id=3D9147 ;; ;; The mappings here have not been adequately tested yet. ;; At this time. this is intended to be a starting point. ;; ;; ;;; ;;; Code: (require 'quail) (quail-define-package "farsi" "Farsi" " =D9=81" nil "Farsi input method. Based on Farsi table in X Keyboard Configuration DB. " nil t t t t nil nil nil nil nil t) ;; =D8=B0=D9=91 1! 2@ 3# 4$ 5% 6^ 7& 8* 9) 0( -_ =3D+ ;; =D8=B6=D9=8E =D8=B5=D9=8B =D8=AB=D9=8F =D9=82=D9=8C =D9=81=EF=BB=B9= =D8=BA=D8=A5 =D8=B9` =D9=87=C3=B7 =D8=AE=C3=97 =D8=AD=D8=9B =D8=AC< =D8=AF= > <> ;; =D8=B4=D9=90 =D8=B3=D9=8D =D9=8A] =D8=A8[ =D9=84=EF=BB=B7 =D8=A7= =D8=A3 =D8=AA=D9=80 =D9=86=D8=8C =D9=85/ =D9=83: =D8=B7" ;; =D8=A6~ =D8=A1=D9=92 =D8=A4} =D8=B1{ =EF=BB=BB=EF=BB=B5 =D9=89=D8= =A2 =D8=A9' =D9=88, =D8=B2. =D8=B8=D8=9F ;; (quail-define-rules ("`" ?=D8=B0) ("~" ?=D9=91) ("Q" ?=D9=8E) ("W" ?=D9=8B) ("E" ?=D9=8F) ("R" ?=D9=8C) ("T" ["=D9=84=D8=A5"]) ("Y" ?=D8=A5) ("U" ?`) ("I" ?=C3=B7) ("O" ?=C3=97) ("P" ?=D8=9B) ("{" ?<) ("}" ?>) ("A" ?=D9=90) ("S" ?=D9=8D) ("D" ?\]) ("F" ?\[) ("G" ["=D9=84=D8=A3"]) ("H" ?=D8=A3) ("J" ?=D9=80) ("K" ?=D8=8C) ("L" ?/) ("Z" ?~) ("X" ?=D9=92) ("C" ?}) ("V" ?{) ("B" ["=D9=84=D8=A2"]) ("N" ?=D8=A2) ("M" ?') ("<" ?,) (">" ?.) ("?" ?=D8=9F) ("q" ?=D8=B6) ("w" ?=D8=B5) ("e" ?=D8=AB) ("r" ?=D9=82) ("t" ?=D9=81) ("y" ?=D8=BA) ("u" ?=D8=B9) ("i" ?=D9=87) ("o" ?=D8=AE) ("p" ?=D8=AD) ("[" ?=D8=AC) ("]" ?=D8=AF) ("a" ?=D8=B4) ("s" ?=D8=B3) ("d" ?=D9=8A) ("f" ?=D8=A8) ("g" ?=D9=84) ("h" ?=D8=A7) ("j" ?=D8=AA) ("k" ?=D9=86) ("l" ?=D9=85) (";" ?=D9=83) ("'" ?=D8=B7) ("z" ?=D8=A6) ("x" ?=D8=A1) ("c" ?=D8=A4) ("v" ?=D8=B1) ("b" ["=D9=84=D8=A7"]) ("n" ?=D9=89) ("m" ?=D8=A9) ("," ?=D9=88) ("." ?=D8=B2) ("/" ?=D8=B8) ("1" ?=DB=B1) ("2" ?=DB=B2) ("3" ?=DB=B3) ("4" ?=DB=B4) ("5" ?=DB=B5) ("6" ?=DB=B6) ("7" ?=DB=B7) ("8" ?=DB=B8) ("9" ?=DB=B9) ("0" ?=DB=B0) ) (provide 'quail-persian-isiri9147) ;;; quail-persian-isiri9147.el