annotate leim/quail/indian.el @ 47576:b31c8ab7336a

Sync with version 2.0.20. Lengthy ChangeLog follows: 2002-09-22 Kai Gro?ohann <grossjoh@ls6.informatik.uni-dortmund.de> Version 2.0.20 released. 2002-09-20 Kai Gro?ohann <grossjoh@ls6.informatik.uni-dortmund.de> * net/tramp.el (tramp-completion-function-alist): Escape open paren in docstring. (tramp-user-regexp, tramp-host-regexp): Allow empty strings. (tramp-handle-insert-file-contents): Call tramp-message-for-buffer instead of tramp-message. (tramp-open-connection-rsh): Handle empty string as user name. (tramp-open-connection-su): Handle empty string as host name. Handle nil user name. (tramp-handle-file-local-copy, tramp-handle-write-region) (tramp-completion-handle-file-name-all-completions) (tramp-open-connection-telnet, tramp-open-connection-rsh) (tramp-open-connection-su, tramp-post-connection) (tramp-maybe-open-connection, tramp-method-out-of-band-p) (tramp-get-connection-function, tramp-get-remote-sh) (tramp-get-rsh-program, tramp-get-rsh-args) (tramp-get-rcp-program, tramp-get-rcp-args) (tramp-get-rcp-keep-date-arg, tramp-get-su-program) (tramp-get-su-args, tramp-get-telnet-program) (tramp-get-telnet-args): Use `tramp-find-method', perhaps require additional args USER, HOST. (tramp-action-password, tramp-open-connection-telnet) (tramp-open-connection-su, tramp-open-connection-multi) (tramp-method-out-of-band-p): `tramp-method-out-of-band-p' now takes USER and HOST arguments, to be able to use `tramp-find-method'. Update callers. (tramp-find-method): New function. 2002-09-20 Kai Gro?ohann <Kai.Grossjohann@CS.Uni-Dortmund.DE> * net/tramp.el (tramp-handle-insert-directory): Handle "--dired" in SWITCHES (by removing it). 2002-09-18 Kai Gro?ohann <Kai.Grossjohann@CS.Uni-Dortmund.DE> * net/tramp.el (tramp-file-name-handler): Add `file-remote-p' property. 2002-09-17 Kai Gro?ohann <Kai.Grossjohann@CS.Uni-Dortmund.DE> * net/tramp.el (top-level): Maybe autoload uudecode-decode-region. 2002-09-16 Kai Gro?ohann <Kai.Grossjohann@CS.Uni-Dortmund.DE> * net/tramp.el (tramp-bug): Add tramp-methods. 2002-09-16 Kai Gro?ohann <Kai.Grossjohann@CS.Uni-Dortmund.DE> * net/tramp.el (tramp-methods): Update docstring: tramp-encoding-command, tramp-decoding-command, tramp-encoding-function and tramp-decoding-function are not parameters anymore. (tramp-uuencode-region): Autoload it. 2002-09-13 Kai Gro?ohann <Kai.Grossjohann@CS.Uni-Dortmund.DE> Version 2.0.19 released. * net/tramp-uu.el: New file, implements uuencode in Lisp. * net/tramp.el (tramp-coding-commands): Use `tramp-uuencode-region' as local encoder for the uuencode based entries. 2002-09-13 Kai Gro?ohann <Kai.Grossjohann@CS.Uni-Dortmund.DE> * net/tramp.el (tramp-handle-write-region): Wrong parens. 2002-09-13 Kai Gro?ohann <Kai.Grossjohann@CS.Uni-Dortmund.DE> Version 2.0.18 released. * net/tramp.el (tramp-perl-decode): Perl changes to accomodate older versions of Perl. Now tested with 5.004. Suggestion from Michael Albinus. 2002-09-12 Kai Gro?ohann <Kai.Grossjohann@CS.Uni-Dortmund.DE> * net/tramp.el (tramp-find-inline-encoding): Call tramp-call-local-coding-command with nil for INPUT and OUTPUT. (tramp-call-local-coding-command): OUTPUT equals nil means to discard the output. INPUT equals nil means /dev/null. 2002-09-12 Kai Gro?ohann <Kai.Grossjohann@CS.Uni-Dortmund.DE> * net/tramp.el (tramp-encoding-shell): Default to environment variable COMSPEC on Windows. (tramp-handle-write-region): More debugging output. (tramp-find-inline-encoding): Ditto. 2002-09-11 Michael Albinus <Michael.Albinus@alcatel.de> * net/tramp.el (tramp-completion-handle-file-name-all-completions): Define `result1'. (tramp-parse-hosts-group): Discard IPv6 entries. 2002-09-11 Kai Gro?ohann <grossjoh@ls6.informatik.uni-dortmund.de> * net/tramp.el (tramp-post-connection): Only send Perl mime-encode/decode implementations when using inline method. (tramp-handle-file-local-copy) (tramp-handle-write-region, tramp-post-connection) (tramp-coding-commands, tramp-find-inline-encoding): For the inline encodings, distinguish between local and remote commands, instead of between commands and functions. (The local commands can be functions, too.) If the local host is a Windows machine, we can't expect the same commands to work there as on the remote host. (tramp-call-local-coding-command): New function for calling local encoding and decoding commands. (tramp-set-remote-encoding, tramp-get-remote-encoding) (tramp-set-remote-decoding, tramp-get-remote-decoding) (tramp-set-local-encoding, tramp-get-local-encoding) (tramp-set-local-decoding, tramp-get-local-decoding): New functions. (tramp-get-encoding-command, tramp-set-encoding-command) (tramp-get-decoding-command, tramp-set-decoding-command) (tramp-get-encoding-function, tramp-set-encoding-function) (tramp-get-decoding-function, tramp-set-decoding-function): Old functions, removed. 2002-09-10 Kai Gro?ohann <Kai.Grossjohann@CS.Uni-Dortmund.DE> * net/tramp.el (tramp-open-connection-setup-interactive-shell): Change command to invoke /bin/sh slightly to make it compatible with the `rc' shell. Suggested by Daniel Pittman. 2002-09-10 Michael Albinus <Michael.Albinus@alcatel.de> * net/tramp.el (tramp-handle-write-region): Added missing `)'. Hope it's the right place. 2002-09-09 Kai Gro?ohann <Kai.Grossjohann@CS.Uni-Dortmund.DE> * net/tramp.el (tramp-open-connection-setup-interactive-shell): Do "exec env PS1='$ ' /bin/sh" instead of just "exec /bin/sh" in order to get a sane shell prompt. If people have ${CWD}, say, in their shell prompt, then the default login shell might display something harmless, but the /bin/sh will display a dollar sign which confused the subsequent prompt recognition. (tramp-multi-action-password): More debugging output. (tramp-encoding-shell): Renamed from tramp-sh-program. More documentation. Default to cmd.exe on Windows NT. (tramp-encoding-command-switch): New variable. Use instead of hard-wired "-c" which is only good for /bin/sh. (tramp-encoding-reads-stdin): New variable. If t, commands are called like "/bin/sh -c COMMAND <INPUT", if nil, they are called like "/bin/sh -c COMMAND INPUT", ie the input file is the last argument. (tramp-multi-sh-program): Always default to tramp-encoding-shell. (tramp-handle-file-local-copy, tramp-handle-write-region): Respect tramp-encoding-shell and friends. (tramp-find-inline-encoding): Use new-style calls for checking if the local commands work. 2002-09-07 Michael Albinus <Michael.Albinus@alcatel.de> * net/tramp.el (tramp-methods): Remove `tramp-completion-function' entries. They are handled now by `tramp-completion-function-alist'. (tramp-completion-function): Defvar removed. I've never used it. Hmm. (tramp-get-completion-function) (tramp-get-completion-rsh, tramp-get-completion-ssh) (tramp-get-completion-telnet, tramp-get-completion-su): Functions removed as well. Not necessary any longer due to extended customization means. (tramp-completion-function-alist): New defcustom. Holds all FUNCTION FILE pairs used for user and host name completion relevant for METHOD. (tramp-completion-function-alist-rsh) (tramp-completion-function-alist-ssh) (tramp-completion-function-alist-telnet) (tramp-completion-function-alist-su): Defconst for initializing `tramp-completion-function-alist'. Unfortunately, mainly UNIX-like values are known for me until now. Needs to be completed for at least VMS++ like operating systems. (tramp-set-completion-function) (tramp-get-completion-function): New functions for configuration of `tramp-completion-function-alist'. The old definition of `tramp-get-completion-function' has been discarded. (tramp-completion-handle-file-name-all-completions): Change function call for user/host completion according to definition in `tramp-completion-function-alist'. (tramp-parse-passwd): Added exception handling for "root", because `tramp-get-completion-su' (the previous place for this stuff) doesn't exist any longer. 2002-09-07 Kai Gro?ohann <Kai.Grossjohann@CS.Uni-Dortmund.DE> * net/tramp.el (tramp-enter-password): Use `tramp-password-end-of-line' to terminate the line. (tramp-bug): Include new variable `tramp-password-end-of-line'. (tramp-password-end-of-line): New variable. People who use plink under Windows might have to issue "\r\n" after the password, but they need to send just "\n" after the other commands. So this variable was introduced to complement `tramp-rsh-end-of-line'. (tramp-wait-for-output, tramp-post-connection): Allow "\r" at end of line of the output delimiter. 2002-09-06 Kai Gro?ohann <Kai.Grossjohann@CS.Uni-Dortmund.DE> * net/tramp.el (tramp-handle-file-local-copy, tramp-find-shell) (tramp-open-connection-setup-interactive-shell): Add some comments about Douglas Grey Stephen's suggestions to make Tramp work better with plink under Windows. I'm not sure what to think of them, but now I have a guinea pig to try it out on. Said guinea pig is having other problems, though... Also remove some commented-out code. 2002-09-06 Michael Albinus <Michael.Albinus@alcatel.de> * net/tramp.el (tramp-get-completion-methods): Algorithm slightly tuned. (tramp-get-completion-user-host): Accept user names as they are if typed until "@". (tramp-completion-mode): Replace `last-input-char' by modern `last-input-event'. Check for `event-modifiers'. 2002-09-06 Kai Gro?ohann <Kai.Grossjohann@CS.Uni-Dortmund.DE> * net/tramp.el (file-expand-wildcards): Corrected check to see if advising is necessary. 2002-09-05 Michael Albinus <Michael.Albinus@alcatel.de> * net/tramp.el (tramp-postfix-single-method-format) (tramp-postfix-multi-method-format) (tramp-postfix-multi-hop-format) (tramp-postfix-user-format): New format strings. (tramp-postfix-single-method-regexp) (tramp-postfix-multi-method-regexp) (tramp-postfix-multi-hop-regexp) (tramp-postfix-user-regexp) (tramp-make-multi-tramp-file-format) (tramp-make-tramp-file-name): Apply them. (tramp-completion-handle-file-name-all-completions): Fix for invoking ange-ftp in case of "/ftp:xxx" file names. 2002-09-04 Michael Albinus <Michael.Albinus@alcatel.de> * net/tramp.el (tramp-prefix-format) (tramp-postfix-host-format): New format strings. (tramp-prefix-regexp, tramp-method-regexp) (tramp-postfix-single-method-regexp) (tramp-postfix-multi-method-regexp) (tramp-postfix-multi-hop-regexp) (tramp-user-regexp, tramp-postfix-user-regexp) (tramp-host-regexp, tramp-postfix-host-regexp) (tramp-path-regexp): New atomar regular expressions. If corresponding format strings exist, derived from them. (tramp-file-name-structure) (tramp-multi-file-name-structure) (tramp-multi-file-name-hop-structure) (tramp-make-multi-tramp-file-format) (tramp-completion-mode) (tramp-completion-dissect-file-name) (tramp-parse-rhosts-group) (tramp-parse-shosts-group) (tramp-parse-hosts-group) (tramp-parse-passwd-group): Apply these expressions. (tramp-file-name-structure-unified) (tramp-file-name-structure-separate) (tramp-make-tramp-file-format-unified) (tramp-make-tramp-file-format-separate) (tramp-make-tramp-file-format) (tramp-make-tramp-file-user-nil-format-unified) (tramp-make-tramp-file-user-nil-format-separate) (tramp-make-tramp-file-user-nil-format) (tramp-multi-file-name-structure-unified) (tramp-multi-file-name-structure-separate) (tramp-multi-file-name-hop-structure-unified) (tramp-multi-file-name-hop-structure-separate) (tramp-make-multi-tramp-file-format-unified) (tramp-make-multi-tramp-file-format-separate): Removed. (tramp-make-tramp-file-name): Allow partial tramp file names. Generate tramp file format on-the-fly depending on parameters. Apply atomar format strings resp expressions. (tramp-get-completion-methods) (tramp-get-completion-user-host): Apply `tramp-make-tramp-file-name'. (tramp-parse-hosts-group): Take all host names and IP addresses into account. (tramp-bug): Remove `tramp-make-tramp-file-format'. 2002-09-01 Michael Albinus <Michael.Albinus@alcatel.de> * net/tramp.el (tramp-methods): Add `tramp-completion-function' for "su" and "sudo". (tramp-get-completion-telnet): Implement it. (tramp-parse-hosts) (tramp-parse-hosts-group) (tramp-get-completion-su) (tramp-parse-passwd) (tramp-parse-passwd-group): New functions. 2002-08-31 Michael Albinus <Michael.Albinus@alcatel.de> * net/tramp.el (tramp-completion-mode): Check for `last-input-char'. (tramp-completion-file-name-handler-alist): Add handler for `file-exists-p. (tramp-completion-handle-file-exists-p): New function. (tramp-completion-handle-file-name-completion): Simplified. (tramp-completion-dissect-file-name): Regexp's reorganised. (tramp-completion-handle-file-name-all-completions): Call completion-function only if `user' or `host' is given. (tramp-get-completion-user-host): New function. (tramp-get-completion-rsh) (tramp-get-completion-ssh): Apply it. 2002-08-29 Michael Albinus <Michael.Albinus@alcatel.de> * net/tramp.el (tramp-completion-file-name-handler-alist): Add handler for `expand-file-name'. (tramp-completion-handle-expand-file-name): New function. 2002-08-26 Michael Albinus <Michael.Albinus@alcatel.de> * net/tramp.el (tramp-completion-mode): New function. (tramp-completion-handle-file-name-directory) (tramp-completion-handle-file-name-all-completions): Apply it. (tramp-methods): Remove double definition of `ssh1-old' and `ssh2-old'. (tramp-point-at-eol): New defalias. (tramp-parse-rhosts-group) (tramp-parse-shosts-group):: Apply it. 2002-08-25 Michael Albinus <Michael.Albinus@alcatel.de> * net/tramp.el (tramp-get-completion-methods) (tramp-get-completion-rsh) (tramp-get-completion-ssh): Add "[" for Xemacs. (tramp-completion-file-name-regexp-separate): Expression adapted. (tramp-completion-file-name-handler-alist): Add handler for `file-name-directory' and `file-name-nondirectory'. (tramp-completion-handle-file-name-directory) (tramp-completion-handle-file-name-nondirectory) (tramp-completion-run-real-handler): New functions. (tramp-completion-file-name-handler) (tramp-completion-handle-file-name-all-completions): Apply `tramp-completion-run-real-handler'. (tramp-parse-rhosts) (tramp-parse-shosts): Use `with-temp-buffer'. `result? renamed to `res' (otherwise side effects in XEmacs). 2002-08-24 Michael Albinus <Michael.Albinus@alcatel.de> * net/tramp.el (tramp-completion-file-name-regexp) (tramp-completion-file-name-handler-alist) (tramp-flatten-list) (tramp-completion-dissect-file-name) (tramp-get-completion-rsh) (tramp-parse-rhosts) (tramp-parse-rhosts-group) (tramp-get-completion-ssh): Doc string tuned. (tramp-methods): Doc string and custom type extended for `tramp-completion-function'. (tramp-completion-function): Variable added. Is it really used? Other variables like `tramp-completion-function' aren't used. (tramp-completion-file-name-handler-alist): Add handler for `file-name-completion'. (tramp-completion-handle-file-name-completion): New function. 2002-08-18 Michael Albinus <Michael.Albinus@alcatel.de> * net/tramp.el (tramp-parse-rhosts) (tramp-parse-rhosts-group) (tramp-parse-shosts) (tramp-parse-shosts-group): New functions. 2002-08-17 Michael Albinus <Michael.Albinus@alcatel.de> * net/tramp.el (tramp-completion-dissect-file-name) (tramp-completion-dissect-file-name1): New functions. 2002-08-16 Michael Albinus <Michael.Albinus@alcatel.de> * net/tramp.el (tramp-get-completion-function) (tramp-get-completion-rsh) (tramp-get-completion-ssh) (tramp-get-completion-telnet): New functions. (tramp-methods): Add `tramp-completion-function' for all methods. 2002-08-15 Michael Albinus <Michael.Albinus@alcatel.de> * net/tramp.el (tramp-get-completion-methods): New function. (tramp-find-default-method): Allow host to be nil (like user). 2002-08-14 Michael Albinus <Michael.Albinus@alcatel.de> * net/tramp.el (tramp-completion-file-name-regexp-unified) (tramp-completion-file-name-regexp-separate) (tramp-completion-file-name-regexp) (tramp-completion-file-name-handler-alist): New defcustoms. (tramp-completion-file-name-handler): New function. Add `tramp-completion-file-name-handler' to `file-name-handler-alist'. (tramp-run-real-handler): Add `tramp-completion-file-name-handler' to `inhibit-file-name-handlers'. (tramp-completion-handle-file-name-all-completions) (tramp-completion-handle-file-name-completion): New functions. 2002-08-12 Michael Albinus <Michael.Albinus@alcatel.de> * net/tramp.el (tramp-invoke-ange-ftp): `tramp-disable-ange-ftp' must be called again after activating `ange-ftp'. (tramp-ange-ftp-file-name-p): Check for Xemacs. 2002-08-08 Michael Albinus <Michael.Albinus@alcatel.de> * net/tramp.el (tramp-do-copy-or-rename-file): Don't pass KEEP-DATE to tramp-invoke-ange-ftp 'rename. (tramp-handle-write-region): Don't pass LOCKNAME and CONFIRM to tramp-invoke-ange-ftp 'write-region. (tramp-handle-set-file-modes): Change order of FILENAME and MODE passing to tramp-invoke-ange-ftp 'set-file-modes. (tramp-flatten-list): New function. Maybe this functionality does exist already elsewhere in the libraries. (tramp-invoke-ange-ftp): Apply `tramp-flatten-list' to parameter list in order to avoid nested lists, f.e. when invoked from `tramp-handle-dired-call-process'. 2002-09-05 Kai Gro?ohann <Kai.Grossjohann@CS.Uni-Dortmund.DE> * net/tramp.el (tramp-chunksize): New kluge variable. (tramp-send-region): If tramp-chunksize is non-nil, send region in parts and sleep 0.1 seconds between chunks. 2002-09-03 Kai Gro?ohann <Kai.Grossjohann@CS.Uni-Dortmund.DE> * net/tramp.el (tramp-handle-insert-directory): Use `insert-buffer-substring' instead of `insert-buffer', which is not supposed to be used from Lisp. Remember old point in a variable instead of using `mark'. Suggestion from Stefan Monnier. (tramp-unified-filenames): New variable. Use it in default value of other filename variables. (file-expand-wildcards): Don't advise unless "[" and "]" are used in the filename format. 2002-09-01 Kai Gro?ohann <Kai.Grossjohann@CS.Uni-Dortmund.DE> * net/tramp.el (tramp-methods): Remove duplicate definition of ssh1-old and ssh2-old.
author Kai Großjohann <kgrossjo@eu.uu.net>
date Sun, 22 Sep 2002 13:23:36 +0000
parents 79db4c465ef6
children 9155d2fdd73c 552fd1c40da7
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
42293
f31eab2cf8ae Fix headers.
Pavel Janík <Pavel@Janik.cz>
parents: 42038
diff changeset
1 ;;; indian.el --- Quail packages for inputting Indian
41464
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
3 ;; Copyright (C) 2000, 2001 Free Software Foundation, Inc.
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
4
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
5 ;; Author: KAWABATA, Taichi <kawabata@m17n.org>
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
6
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
7 ;; Keywords: multilingual, input method, Indian, Devanagari
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
8
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
9 ;; This file is part of GNU Emacs.
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
10
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
11 ;; GNU Emacs is free software; you can redistribute it and/or modify
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
12 ;; it under the terms of the GNU General Public License as published by
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
13 ;; the Free Software Foundation; either version 2, or (at your option)
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
14 ;; any later version.
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
15
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
16 ;; GNU Emacs is distributed in the hope that it will be useful,
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
17 ;; but WITHOUT ANY WARRANTY; without even the implied warranty of
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
18 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
19 ;; GNU General Public License for more details.
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
20
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
21 ;; You should have received a copy of the GNU General Public License
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
22 ;; along with GNU Emacs; see the file COPYING. If not, write to the
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
23 ;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
24 ;; Boston, MA 02111-1307, USA.
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
25
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
26 ;;; Commentary:
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
27
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
28 ;; History:
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
29
42038
69c2ba4ebc59 Don't require cl.
Dave Love <fx@gnu.org>
parents: 41464
diff changeset
30 ;; 2000.12.12
69c2ba4ebc59 Don't require cl.
Dave Love <fx@gnu.org>
parents: 41464
diff changeset
31 ;; Totally re-written from devanagari.el to handle multiple Indian Scripts.
41464
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
32
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
33 ;;; Code:
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
34
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
35 (require 'quail)
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
36 (require 'devan-util)
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
37 (require 'ind-util)
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
38
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
39 (defun quail-indian-preceding-char-position (position)
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
40 "Return the position of preceding composite character."
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
41 (let (prec-composed)
42038
69c2ba4ebc59 Don't require cl.
Dave Love <fx@gnu.org>
parents: 41464
diff changeset
42 (if (char-valid-p (char-before position)) ;; range o.k.
41464
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
43 (if (setq prec-composed (find-composition (1- position)))
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
44 (car prec-composed)
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
45 (1- position))
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
46 nil)))
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
47
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
48 (defvar quail-indian-update-preceding-char nil)
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
49 (make-variable-frame-local 'quail-indian-update-preceding-char)
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
50
42038
69c2ba4ebc59 Don't require cl.
Dave Love <fx@gnu.org>
parents: 41464
diff changeset
51 ;;; update function
41464
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
52
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
53 ;; CONTROL-FLAG is integer (n)
42038
69c2ba4ebc59 Don't require cl.
Dave Love <fx@gnu.org>
parents: 41464
diff changeset
54 ;; quail-current-key :: keyboard input.
41464
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
55 ;; Only first n can be translated.
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
56 ;; quail-current-string :: corresonding string. Translated when last
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
57 ;; time CONTROL-FLAG is nil.
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
58 ;; todo :: (1) put last (len-n) char to unrread-command-event.
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
59 ;; (2) put translated string to quail-current-string.
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
60 ;;
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
61 ;; CONTROL-FLAG is t (terminate) or nil (proceed the translation)
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
62 ;; quail-current-key :: keyboard input.
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
63 ;; quail-current-string :: corresponding string. Created by database.
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
64 ;; todo :: (1) put modified translated string to quail-current-string.
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
65
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
66 (defun quail-indian-update-translation (control-flag)
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
67 ;;(message "input control-flag=%s, string=%s, key=%s"
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
68 ;; control-flag quail-current-str quail-current-key)
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
69 ;; make quail-current-str string when possible.
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
70 (if (char-valid-p quail-current-str)
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
71 (setq quail-current-str (char-to-string quail-current-str)))
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
72 ;; reset quail-indian-update-preceding-char if it's initial.
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
73 (if (= (overlay-start quail-overlay) (overlay-end quail-overlay))
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
74 (setq quail-indian-update-preceding-char nil))
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
75 ;; set quial-indian-update-preceding-char if appropriate.
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
76 (let* (prec-char-position composition-regexp
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
77 prec-char-str candidate-str match-pos match-end)
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
78 (when (and quail-current-str
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
79 (null input-method-use-echo-area)
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
80 (null input-method-exit-on-first-char)
42038
69c2ba4ebc59 Don't require cl.
Dave Love <fx@gnu.org>
parents: 41464
diff changeset
81 (setq prec-char-position
41464
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
82 (quail-indian-preceding-char-position
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
83 (overlay-start quail-overlay)))
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
84 (setq composition-regexp
42038
69c2ba4ebc59 Don't require cl.
Dave Love <fx@gnu.org>
parents: 41464
diff changeset
85 (if prec-char-position
69c2ba4ebc59 Don't require cl.
Dave Love <fx@gnu.org>
parents: 41464
diff changeset
86 (caar (elt composition-function-table
41464
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
87 (char-after prec-char-position)))))
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
88 ;; (null quail-indian-update-preceding-char)
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
89 (setq prec-char-str
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
90 (buffer-substring prec-char-position
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
91 (overlay-start quail-overlay))
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
92 candidate-str (concat prec-char-str quail-current-str)
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
93 match-pos (string-match composition-regexp candidate-str)
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
94 match-end (match-end 0))
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
95 (> match-end (length prec-char-str)))
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
96 (setq quail-indian-update-preceding-char prec-char-str)
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
97 (delete-region prec-char-position
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
98 (overlay-start quail-overlay))))
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
99 ;; make quail-current-str string when possible.
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
100 (if (null quail-current-str)
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
101 (setq quail-current-str ""))
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
102 ;; set quail-current-str unless control-flag is number.
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
103 (if (numberp control-flag)
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
104 (setq quail-indian-update-preceding-char nil
42038
69c2ba4ebc59 Don't require cl.
Dave Love <fx@gnu.org>
parents: 41464
diff changeset
105 quail-current-str
41464
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
106 (if (equal quail-current-str "")
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
107 (substring quail-current-key 0 control-flag)
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
108 (indian-compose-string quail-current-str))
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
109 unread-command-events
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
110 (string-to-list
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
111 (substring quail-current-key control-flag)))
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
112 (if quail-indian-update-preceding-char
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
113 (setq quail-current-str
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
114 (concat quail-indian-update-preceding-char
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
115 quail-current-str)))
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
116 (setq quail-current-str
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
117 (indian-compose-string quail-current-str)))
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
118 (when (eq t control-flag)
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
119 ;; reset preceding-char if translation is terminated.
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
120 (setq quail-indian-update-preceding-char nil))
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
121 ;; compose to previous char if it looks possible.
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
122 ;;(message " out control-flag=%s, string=%s, key=%s"
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
123 ;; control-flag quail-current-str quail-current-key)
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
124 control-flag)
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
125
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
126 ;;;
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
127 ;;; Input by transliteration
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
128 ;;;
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
129
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
130 (defun quail-define-indian-trans-package (hashtbls pkgname
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
131 lang title doc)
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
132 (funcall 'quail-define-package pkgname lang title t doc
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
133 nil nil nil nil nil nil t nil
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
134 'quail-indian-update-translation)
42038
69c2ba4ebc59 Don't require cl.
Dave Love <fx@gnu.org>
parents: 41464
diff changeset
135 (maphash
42463
87a33bffaf3c (quail-define-indian-trans-package): Unquote
Dave Love <fx@gnu.org>
parents: 42293
diff changeset
136 (lambda (key val)
87a33bffaf3c (quail-define-indian-trans-package): Unquote
Dave Love <fx@gnu.org>
parents: 42293
diff changeset
137 (quail-defrule key (if (= (length val) 1)
87a33bffaf3c (quail-define-indian-trans-package): Unquote
Dave Love <fx@gnu.org>
parents: 42293
diff changeset
138 (string-to-char val)
87a33bffaf3c (quail-define-indian-trans-package): Unquote
Dave Love <fx@gnu.org>
parents: 42293
diff changeset
139 (vector val))))
41464
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
140 (cdr hashtbls)))
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
141
44699
79db4c465ef6 Replace commented-out lines with a condition that is always false.
Eli Zaretskii <eliz@gnu.org>
parents: 42463
diff changeset
142 ;; This needs to be seen by quail-update-leim-list-file, but cannot be
79db4c465ef6 Replace commented-out lines with a condition that is always false.
Eli Zaretskii <eliz@gnu.org>
parents: 42463
diff changeset
143 ;; commented out because quail-update-leim-list-file ignores
79db4c465ef6 Replace commented-out lines with a condition that is always false.
Eli Zaretskii <eliz@gnu.org>
parents: 42463
diff changeset
144 ;; commented-out lines.
79db4c465ef6 Replace commented-out lines with a condition that is always false.
Eli Zaretskii <eliz@gnu.org>
parents: 42463
diff changeset
145 (if nil
79db4c465ef6 Replace commented-out lines with a condition that is always false.
Eli Zaretskii <eliz@gnu.org>
parents: 42463
diff changeset
146 (quail-define-package "devanagari-itrans" "Devanagari" "DevIT" t "Devanagari ITRANS"))
41464
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
147 (quail-define-indian-trans-package
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
148 indian-dev-itrans-v5-hash "devanagari-itrans" "Devanagari" "DevIT"
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
149 "Devanagari transliteration by ITRANS method.")
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
150
44699
79db4c465ef6 Replace commented-out lines with a condition that is always false.
Eli Zaretskii <eliz@gnu.org>
parents: 42463
diff changeset
151 (if nil
79db4c465ef6 Replace commented-out lines with a condition that is always false.
Eli Zaretskii <eliz@gnu.org>
parents: 42463
diff changeset
152 (quail-define-package "devanagari-kyoto-harvard" "Devanagari" "DevKH" t "Devanagari Kyoto-Harvard"))
41464
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
153 (quail-define-indian-trans-package
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
154 indian-dev-kyoto-harvard-hash
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
155 "devanagari-kyoto-harvard" "Devanagari" "DevKH"
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
156 "Devanagari transliteration by Kyoto-Harvard method.")
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
157
44699
79db4c465ef6 Replace commented-out lines with a condition that is always false.
Eli Zaretskii <eliz@gnu.org>
parents: 42463
diff changeset
158 (if nil
79db4c465ef6 Replace commented-out lines with a condition that is always false.
Eli Zaretskii <eliz@gnu.org>
parents: 42463
diff changeset
159 (quail-define-package "devanagari-aiba" "Devanagari" "DevAB" t "Devanagari Aiba"))
41464
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
160 (quail-define-indian-trans-package
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
161 indian-dev-aiba-hash "devanagari-aiba" "Devanagari" "DevAB"
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
162 "Devanagari transliteration by Aiba-method.")
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
163
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
164 ;;;
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
165 ;;; Input by Inscript
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
166 ;;;
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
167
42038
69c2ba4ebc59 Don't require cl.
Dave Love <fx@gnu.org>
parents: 41464
diff changeset
168 (defun quail-indian-flatten-list (lst)
41464
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
169 "Flatten the nested LIST so that there would be no innner list."
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
170 (if (listp lst)
42038
69c2ba4ebc59 Don't require cl.
Dave Love <fx@gnu.org>
parents: 41464
diff changeset
171 (apply 'append (mapcar 'quail-indian-flatten-list lst))
41464
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
172 (list lst)))
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
173
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
174 (defun quail-define-inscript-package (char-table key-table pkgname lang title
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
175 docstring)
42038
69c2ba4ebc59 Don't require cl.
Dave Love <fx@gnu.org>
parents: 41464
diff changeset
176 (setq char-table (quail-indian-flatten-list char-table))
69c2ba4ebc59 Don't require cl.
Dave Love <fx@gnu.org>
parents: 41464
diff changeset
177 (setq key-table (quail-indian-flatten-list key-table))
41464
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
178 (funcall 'quail-define-package pkgname lang title nil docstring
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
179 nil nil nil nil nil nil nil nil
42463
87a33bffaf3c (quail-define-indian-trans-package): Unquote
Dave Love <fx@gnu.org>
parents: 42293
diff changeset
180 'quail-indian-update-translation)
87a33bffaf3c (quail-define-indian-trans-package): Unquote
Dave Love <fx@gnu.org>
parents: 42293
diff changeset
181 (dolist (key key-table)
87a33bffaf3c (quail-define-indian-trans-package): Unquote
Dave Love <fx@gnu.org>
parents: 42293
diff changeset
182 (let ((val (pop char-table)))
87a33bffaf3c (quail-define-indian-trans-package): Unquote
Dave Love <fx@gnu.org>
parents: 42293
diff changeset
183 (if (and key val)
87a33bffaf3c (quail-define-indian-trans-package): Unquote
Dave Love <fx@gnu.org>
parents: 42293
diff changeset
184 (quail-defrule
41464
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
185 (if (char-valid-p key) (char-to-string key) key)
42463
87a33bffaf3c (quail-define-indian-trans-package): Unquote
Dave Love <fx@gnu.org>
parents: 42293
diff changeset
186 (if (stringp val) (vector val) val))))))
41464
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
187
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
188 ;;
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
189
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
190 (defvar inscript-dev-keytable
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
191 '(
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
192 (;; VOWELS (18)
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
193 (?D nil) (?E ?e) (?F ?f) (?R ?r) (?G ?g) (?T ?t)
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
194 (?+ ?=) ("F]" "f]") (?! ?@) (?Z ?z) (?S ?s) (?W ?w)
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
195 (?| ?\\) (?~ ?`) (?A ?a) (?Q ?q) ("+]" "=]") ("R]" "r]"))
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
196 (;; CONSONANTS (42)
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
197 ?k ?K ?i ?I ?U ;; GRUTTALS
42038
69c2ba4ebc59 Don't require cl.
Dave Love <fx@gnu.org>
parents: 41464
diff changeset
198 ?\; ?: ?p ?P ?} ;; PALATALS
69c2ba4ebc59 Don't require cl.
Dave Love <fx@gnu.org>
parents: 41464
diff changeset
199 ?' ?\" ?\[ ?{ ?C ;; CEREBRALS
69c2ba4ebc59 Don't require cl.
Dave Love <fx@gnu.org>
parents: 41464
diff changeset
200 ?l ?L ?o ?O ?v ?V ;; DENTALS
69c2ba4ebc59 Don't require cl.
Dave Love <fx@gnu.org>
parents: 41464
diff changeset
201 ?h ?H ?y ?Y ?c ;; LABIALS
41464
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
202 ?/ ?j ?J ?n ?N "N]" ?b ;; SEMIVOWELS
42038
69c2ba4ebc59 Don't require cl.
Dave Love <fx@gnu.org>
parents: 41464
diff changeset
203 ?M ?< ?m ?u ;; SIBILANTS
69c2ba4ebc59 Don't require cl.
Dave Love <fx@gnu.org>
parents: 41464
diff changeset
204 "k]" "K]" "i]" "p]" "[]" "{]" "H]" "/]" ;; NUKTAS
41464
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
205 ?% ?&)
42038
69c2ba4ebc59 Don't require cl.
Dave Love <fx@gnu.org>
parents: 41464
diff changeset
206 (;; Misc Symbols (7)
41464
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
207 ?X ?x ?_ ">]" ?d "X]" ?>)
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
208 (;; Digits
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
209 ?0 ?1 ?2 ?3 ?4 ?5 ?6 ?7 ?8 ?9)
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
210 (;; Inscripts
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
211 ?# ?$ ?^ ?* ?\])))
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
212
44699
79db4c465ef6 Replace commented-out lines with a condition that is always false.
Eli Zaretskii <eliz@gnu.org>
parents: 42463
diff changeset
213 (if nil
79db4c465ef6 Replace commented-out lines with a condition that is always false.
Eli Zaretskii <eliz@gnu.org>
parents: 42463
diff changeset
214 (quail-define-package "devanagari-inscript" "Devanagari" "DevIS" t "Devanagari keyboard Inscript"))
42038
69c2ba4ebc59 Don't require cl.
Dave Love <fx@gnu.org>
parents: 41464
diff changeset
215 (quail-define-inscript-package
41464
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
216 indian-dev-base-table inscript-dev-keytable
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
217 "devanagari-inscript" "Devanagari" "DevIS"
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
218 "Devanagari keyboard Inscript.")
93957ea66b86 Renamed from devanagari.el, and completely re-written.
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
219
42293
f31eab2cf8ae Fix headers.
Pavel Janík <Pavel@Janik.cz>
parents: 42038
diff changeset
220 ;;; indian.el ends here