From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Visuwesh Newsgroups: gmane.emacs.bugs Subject: bug#50143: 28.0.50; Various issues with `tamil-itrans' input method Date: Thu, 17 Feb 2022 16:23:06 +0530 Message-ID: <87y229pxwt.fsf@gmail.com> References: <83fsv2x7jt.fsf@gnu.org> <874k509w4k.fsf@gmail.com> <83wnhu1zob.fsf@gnu.org> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="11493"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (gnu/linux) Cc: 50143@debbugs.gnu.org, rameshnedunchezian@outlook.com To: Eli Zaretskii Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Thu Feb 17 11:54:28 2022 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1nKeQe-0002pO-KQ for geb-bug-gnu-emacs@m.gmane-mx.org; Thu, 17 Feb 2022 11:54:28 +0100 Original-Received: from localhost ([::1]:44458 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1nKeQc-0003Kg-S5 for geb-bug-gnu-emacs@m.gmane-mx.org; Thu, 17 Feb 2022 05:54:26 -0500 Original-Received: from eggs.gnu.org ([209.51.188.92]:54130) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nKeQK-0003KW-Ul for bug-gnu-emacs@gnu.org; Thu, 17 Feb 2022 05:54:10 -0500 Original-Received: from debbugs.gnu.org ([209.51.188.43]:56377) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1nKeQD-0007lm-Ut for bug-gnu-emacs@gnu.org; Thu, 17 Feb 2022 05:54:08 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1nKeQD-0003xS-V1 for bug-gnu-emacs@gnu.org; Thu, 17 Feb 2022 05:54:01 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Visuwesh Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 17 Feb 2022 10:54:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 50143 X-GNU-PR-Package: emacs Original-Received: via spool by 50143-submit@debbugs.gnu.org id=B50143.164509520315167 (code B ref 50143); Thu, 17 Feb 2022 10:54:01 +0000 Original-Received: (at 50143) by debbugs.gnu.org; 17 Feb 2022 10:53:23 +0000 Original-Received: from localhost ([127.0.0.1]:50274 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nKePb-0003wY-3C for submit@debbugs.gnu.org; Thu, 17 Feb 2022 05:53:23 -0500 Original-Received: from mail-pl1-f194.google.com ([209.85.214.194]:37840) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1nKePZ-0003wM-QK for 50143@debbugs.gnu.org; Thu, 17 Feb 2022 05:53:22 -0500 Original-Received: by mail-pl1-f194.google.com with SMTP id x4so4326710plb.4 for <50143@debbugs.gnu.org>; Thu, 17 Feb 2022 02:53:21 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=from:to:cc:subject:references:date:in-reply-to:message-id :user-agent:mime-version; bh=aLEdBxc/w89UB4kNdGvX5V6mQty+nICzdeL246ia+/g=; b=OOwtxQDs5/nvoAA7rpwJEMHWAf4eVUelXXlCFOGJPLQVAYs6c1OyConxr9yRU4CXZV eP933zfsBPJVvlPt5MOouQK+FBrQjqERh32wzZAGBtUU4CgAXVwypMi/saZU3goVSutu oo5EZ0/Pn4RLKpBv2FcqNll5F2SnR1ZzSDMilugpxMYjqJxAP2h7bg3XlGIwc1gcPh50 fhDaZK2TKrJgnm2pafdA46AahBcRPckOK4zNt2zzL2EE77E01AHWRt4niNljhdQV4jZF n6vxfBpIxf9M7pdfF43p2zJ0oVB8z7h0H/gAcSSJaoRQYIEyWHK7Kmm/mDcKDQosJryB LBBw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:references:date:in-reply-to :message-id:user-agent:mime-version; bh=aLEdBxc/w89UB4kNdGvX5V6mQty+nICzdeL246ia+/g=; b=LVdrkR1qewq5M7Do2g56vJHSTDMc9cbxk4lK8xkVnqzaX4FVWD9LaTGUgLhgrSeXgW zaX0OrSKawuB2U6nDfTGl/1FkigNkQmOAq2PPvJn7jdgoVaJ0HV33sAqOXQgPbn7lBMt c/YrsTDPQFN1DI1NvOkoVEc7LCIM87+T1klhvZD+I/UoNBYIO0d62uR37uQ0hILIrCtc v8XKsBkexsb9TsoLHytppU80948B4huCTzodihlvfQSX62oxN2i1HmI3YxOZfWKt6vHM +02EbgsGgv8Jg21lYRYXm+TeJeerPjdj42BF16mMtQrGOfWUiXs7tW0wPCBx7i6JpoGF oaKw== X-Gm-Message-State: AOAM530xNYIbefpNxFmDXBHF/Yvd9vDm1mLpysV/rYZa7sCnT8QTXIsS ANT6czOSUETl74JDuaut+B8= X-Google-Smtp-Source: ABdhPJwmdxdau6TFvrOnaLkIyTtRhhzAyEIZTm/VPGNalZW8QRl8xr4BfMfe2PrcMi6YbTO2XcBmUg== X-Received: by 2002:a17:90a:5d97:b0:1b8:5adb:e3f5 with SMTP id t23-20020a17090a5d9700b001b85adbe3f5mr2432156pji.216.1645095195630; Thu, 17 Feb 2022 02:53:15 -0800 (PST) Original-Received: from localhost ([115.240.90.130]) by smtp.gmail.com with ESMTPSA id 17sm46628498pfl.175.2022.02.17.02.53.14 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 17 Feb 2022 02:53:15 -0800 (PST) In-Reply-To: <83wnhu1zob.fsf@gnu.org> (Eli Zaretskii's message of "Wed, 16 Feb 2022 19:36:36 +0200") X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Original-Sender: "bug-gnu-emacs" Xref: news.gmane.io gmane.emacs.bugs:227081 Archived-At: --=-=-= Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable [=E0=AE=AA=E0=AF=81=E0=AE=A4=E0=AE=A9=E0=AF=8D, =E0=AE=AA=E0=AE=BF=E0=AE=AA= =E0=AF=8D=E0=AE=B0=E0=AE=B5=E0=AE=B0=E0=AE=BF 16 2022] Eli Zaretskii wrote: Hi Eli, >> As a native Tamil speaker, I can attest that contemporary text uses the >> Arabic numerals (in fact, Tamil digits are mentioned as a matter of fact >> in schools). I'm not sure about the situation in Sri Lanka, tho. > > It sounds like a better way forward would be to define a separate > input method, so that the existing input method is preserved and can > be used if someone wants the current transliterations. > > So my suggestions would be: > > 1. For your items 1 and 3, just copy indian-tml-base-table to a new > variable, modify it to include the two missing characters and > replace the digits with nil, add a new variable similar to > indian-tml-itrans-v5-hash, and compute its value like we do with > indian-tml-itrans-v5-hash, but using the new table instead of > indian-tml-base-table. Then make a new input method, called, say, > tamil-itrans-alt, which would use the new hash variable instead of > indian-tml-itrans-v5-hash. Submit these changes as patches to > lisp/language/ind-util.el and lisp/leim/quail/indian.el. > Does the attached patch look okay to you? --=-=-= Content-Type: text/x-patch; charset=utf-8 Content-Disposition: inline; filename=tamil-nodigs.patch Content-Transfer-Encoding: quoted-printable diff --git a/lisp/language/ind-util.el b/lisp/language/ind-util.el index 8b1c3d69ae..7b11be60d5 100644 --- a/lisp/language/ind-util.el +++ b/lisp/language/ind-util.el @@ -277,6 +277,29 @@ (;; Inscript-extra (4) (#, $, ^, *, ]) "=E0=AF=8D=E0=AE=B0" "=E0=AE=B0=E0=AF=8D" "=E0=AE=A4=E0=AF=8D=E0=AE= =B0" nil nil))) =20 +(defvar indian-tml-no-digits-base-table + '( + (;; VOWELS + (?=E0=AE=85 nil) (?=E0=AE=86 ?=E0=AE=BE) (?=E0=AE=87 ?=E0=AE=BF) (?= =E0=AE=88 ?=E0=AF=80) (?=E0=AE=89 ?=E0=AF=81) (?=E0=AE=8A ?=E0=AF=82) + nil nil nil (?=E0=AE=8F ?=E0=AF=87) (?=E0=AE=8E ?=E0=AF=86) (?=E0=AE= =90 ?=E0=AF=88) + nil (?=E0=AE=93 ?=E0=AF=8B) (?=E0=AE=92 ?=E0=AF=8A) (?=E0=AE=94 ?=E0= =AF=8C) nil nil) + (;; CONSONANTS + ?=E0=AE=95 nil nil nil ?=E0=AE=99 ;; GUTTRULS + ?=E0=AE=9A nil ?=E0=AE=9C nil ?=E0=AE=9E ;; PALATALS + ?=E0=AE=9F nil nil nil ?=E0=AE=A3 ;; CEREBRALS + ?=E0=AE=A4 nil nil nil ?=E0=AE=A8 ?=E0=AE=A9 ;; DENTALS + ?=E0=AE=AA nil nil nil ?=E0=AE=AE ;; LABIALS + ?=E0=AE=AF ?=E0=AE=B0 ?=E0=AE=B1 ?=E0=AE=B2 ?=E0=AE=B3 ?=E0=AE=B4 ?= =E0=AE=B5 ;; SEMIVOWELS + nil ?=E0=AE=B7 ?=E0=AE=B8 ?=E0=AE=B9 ;; SIBILANTS + nil nil nil nil nil nil nil nil ;; NUKTAS + "=E0=AE=9C=E0=AF=8D=E0=AE=9E" "=E0=AE=95=E0=AF=8D=E0=AE=B7") + (;; Misc Symbols + nil ?=E0=AE=82 ?=E0=AE=83 nil ?=E0=AF=8D nil nil) + (;; Digits + nil nil nil nil nil nil nil nil nil nil) + (;; Inscript-extra (4) (#, $, ^, *, ]) + "=E0=AF=8D=E0=AE=B0" "=E0=AE=B0=E0=AF=8D" "=E0=AE=A4=E0=AF=8D=E0=AE= =B0" nil nil))) + (defvar indian-base-table-to-language-alist '((indian-dev-base-table . "Devanagari") (indian-pnj-base-table . "Punjabi") @@ -286,6 +309,7 @@ (indian-tlg-base-table . "Telugu") (indian-knd-base-table . "Kannada") (indian-mlm-base-table . "Malayalam") + ;; TODO: Change this? (indian-tml-base-table . "Tamil"))) =20 (defvar indian-itrans-v5-table @@ -557,6 +581,10 @@ (defvar indian-tml-itrans-v5-hash (indian-make-hash indian-tml-base-table indian-itrans-v5-table-for-tamil)) + +(defvar indian-tml-itrans-no-digits-v5-hash + (indian-make-hash indian-tml-no-digits-base-table + indian-itrans-v5-table-for-tamil)) ) =20 (defmacro indian-translate-region (from to hashtable encode-p) diff --git a/lisp/language/indian.el b/lisp/language/indian.el index e0adb0de6c..ec0bcb9be9 100644 --- a/lisp/language/indian.el +++ b/lisp/language/indian.el @@ -92,7 +92,7 @@ are supported in this language environment.")) "Tamil" '((charset unicode) (coding-system utf-8) (coding-priority utf-8) - (input-method . "tamil-itrans") + (input-method . "tamil-itrans-nodig") (documentation . "\ South Indian Language Tamil is supported in this language environment.")) '("Indian")) diff --git a/lisp/leim/quail/indian.el b/lisp/leim/quail/indian.el index 23204c0cd3..7788efb941 100644 --- a/lisp/leim/quail/indian.el +++ b/lisp/leim/quail/indian.el @@ -284,9 +284,31 @@ (buffer-string)))) =20 (if nil - (quail-define-package "tamil-itrans" "Tamil" "TmlIT" t "Tamil ITRANS")) + (quail-define-package "tamil-itrans" "Tamil" "TmlIT" t "Tamil ITRANS w= ith digits")) (quail-define-indian-trans-package indian-tml-itrans-v5-hash "tamil-itrans" "Tamil" "TmlIT" + "Tamil transliteration by ITRANS method with Tamil digits. + +You can input characters using the following mapping tables. + Example: To enter =E0=AE=B5=E0=AE=A3=E0=AE=95=E0=AF=8D=E0=AE=95=E0=AE= =AE=E0=AF=8D, type vaNakkam. + +### Basic syllables (consonants + vowels) ### +\\ + +### Miscellaneous (various signs + digits) ### +\\ + +### Others (numerics + symbols) ### + +Characters below have no ITRANS method associated with them. +Their descriptions are included for easy reference. +\\ + +Full key sequences are listed below:") +(if nil + (quail-define-package "tamil-itrans-nodig" "Tamil" "TmlITN" t "Tamil I= TRANS")) +(quail-define-indian-trans-package + indian-tml-itrans-no-digits-v5-hash "tamil-itrans-nodig" "Tamil" "TmlITN" "Tamil transliteration by ITRANS method. =20 You can input characters using the following mapping tables. @@ -473,10 +495,16 @@ Full key sequences are listed below:") (quail-defrule "X" ?=E2=80=8B) =20 (if nil - (quail-define-package "tamil-inscript" "Tamil" "TmlIS" t "Tamil keyboa= rd Inscript")) + (quail-define-package "tamil-inscript" "Tamil" "TmlIS" t "Tamil keyboa= rd Inscript with Tamil digits")) (quail-define-inscript-package indian-tml-base-table inscript-tml-keytable "tamil-inscript" "Tamil" "TmlIS" + "Tamil keyboard Inscript with Tamil digits.") +(if nil + (quail-define-package "tamil-inscript-nodig" "Tamil" "TmlISN" t "Tamil= keyboard Inscript")) +(quail-define-inscript-package + indian-tml-no-digits-base-table inscript-tml-keytable + "tamil-inscript-nodig" "Tamil" "TmlISN" "Tamil keyboard Inscript.") =20 ;; Probhat Input Method --=-=-= Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable The names of the new input methods are bad. IMO, tamil-itrans and tamil-inscript should ideally be renamed to tamil-itrans-digits and tamil-inscript-digits, and the new input methods should be tamil-itrans and tamil-inscript. But I guess such a backwards incompatible change won't fly? > 2. For your item 2, submit a patch that fixes the docstring of the > relevant input methods. About item 2: according to the docstring of `quail-define-package', constructs of the form "\" should be replaced by the VAR: DOCSTRING is the documentation string of this package. The command =E2=80=98describe-input-method=E2=80=99 shows this string while replaci= ng the form \ in the string by the value of VAR. That value should be a string. For instance, the form \ is replaced by a description about how to select a translation from a list of candidates. but this is not the case, I checked the code but don't see a substitution like this happen. Maybe this should be fixed in `describe-input-method' instead? > > Would that work for you? Can you prepare such patches? --=-=-=--