View file File name : sa-itrans.mim Content :;; sa-itrans.mim -- Sanskrit input method with ITRANS method ;; Copyright (C) 2012 Kencihi Handa <handa@m17n.org> ;; This file is part of the m17n database; a sub-part of the m17n ;; library. ;; The m17n library is free software; you can redistribute it and/or ;; modify it under the terms of the GNU Lesser General Public License ;; as published by the Free Software Foundation; either version 2.1 of ;; the License, or (at your option) any later version. ;; The m17n library 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 ;; Lesser General Public License for more details. ;; You should have received a copy of the GNU Lesser General Public ;; License along with the m17n library; if not, write to the Free ;; Software Foundation, Inc., 51 Franklin Street, Fifth Floor, ;; Boston, MA 02110-1301, USA. ;; This file is branched from hi-itrans.mim. (input-method sa itrans) (description "Sanskrit input method by ITRANS and Harvard-Kyoto transliteration systems. You can use all the standard ITRANS key sequences plus key sequences such as the below. nk->ङ्क्, nkh->ङ्ख्, ng->ङ्ग्, ngh->ङ्घ् nch->ञ्च्, nCh->ञ्छ्, nc->ञ्च्, nC->ञ्छ्, nchh->ञ्छ्, nj->ञ्ज्, njh->ञ्झ्, nT->ण्ट्, nTh->ण्ठ्, nD->ण्ड्, nDh->ण्ढ् c->च्, C->छ्, z->श्, S->ष्, jn->ज्ञ्, R->ऋ _->॑, ''->॒ For motivations and further details, see description of hi-itrans.mim.") (title "क") (variable (trim-last-halant nil 0) (enable-udatta nil 1)) (include (hi itrans) map) (map (udattta ("_" "॒") ("''" "॑"))) (state (init (starter (pushback 1) (shift intermediate)) (udattta) (misc)) (intermediate ;; CANDRA-E-O is set to the character CANDRA E or CANDRA O when "e" ;; or "o" is typed, and in that case, if ".c" is typed, the ;; character set to CANDRA-E-O is inserted. (t (set CANDRA-E-O 0)) ;; LAST-HALANT-POS is set to the position after a consonat + HALANT ;; sequence. If the following key is for non-letter, that HALANT ;; character is removed. (consonant (mark LAST-HALANT-POS) (shift second)) (independent (cond (CANDRA-E-O (shift after-eo)) (1 (shift init)))) (digit (shift init)) (danda (shift init)) (udattta (shift init)) (backspace) (commit-key (shift init))) (second ;; CANDRA-E-O is set to the character CANDRA E or CANDRA O when "e" ;; or "o" is typed, and in that case, if ".c" is typed, the ;; character set to CANDRA-E-O is inserted. (t (set CANDRA-E-O 0)) (consonant (mark LAST-HALANT-POS)) (dependent (cond (CANDRA-E-O (shift after-eo)) (1 (shift init)))) (danda (cond (trim-last-halant (move LAST-HALANT-POS) (delete @-) (move @>))) (shift init)) (udattta (cond (trim-last-halant (move LAST-HALANT-POS) (delete @-) (move @>))) (shift init)) (backspace) (commit-key (shift init)) (nil (cond (trim-last-halant (move LAST-HALANT-POS) (delete @-) (move @>))) (shift init))) (after-eo (t (set DOT 0)) (dot) (eo-dot-c (shift init)) (danda (shift init)) (udattta (shift init)) (commit-key (shift init)) (nil (cond (DOT (delete @-) (pushback 1))) (shift init)))) ;; Local Variables: ;; coding: utf-8 ;; mode: emacs-lisp ;; End: