From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Eli Zaretskii Newsgroups: gmane.emacs.bugs Subject: bug#56323: 29.0.50; [v2] Add new customisable phonetic Tamil input method Date: Sat, 02 Jul 2022 11:39:47 +0300 Message-ID: <83edz3di24.fsf@gnu.org> References: <87pmiqe4da.fsf@gmail.com> <878rpdq99n.fsf@gmail.com> <83fsjldl2b.fsf@gnu.org> <87tu81osgp.fsf@gmail.com> <83czepdj0z.fsf@gnu.org> <87pmioq51w.fsf@gmail.com> <831qv4erwf.fsf@gnu.org> <87r134aiwd.fsf@gmail.com> <83mtdsc86u.fsf@gnu.org> <87czeoj68q.fsf@gmail.com> Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="12465"; mail-complaints-to="usenet@ciao.gmane.io" Cc: 56323@debbugs.gnu.org To: Visuwesh Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Sat Jul 02 10:41:11 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 1o7Ygh-00039M-61 for geb-bug-gnu-emacs@m.gmane-mx.org; Sat, 02 Jul 2022 10:41:11 +0200 Original-Received: from localhost ([::1]:36484 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1o7Ygf-0006tj-Rg for geb-bug-gnu-emacs@m.gmane-mx.org; Sat, 02 Jul 2022 04:41:09 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:56142) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1o7YgY-0006qo-5T for bug-gnu-emacs@gnu.org; Sat, 02 Jul 2022 04:41:02 -0400 Original-Received: from debbugs.gnu.org ([209.51.188.43]:45826) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1o7YgX-0006OH-T3 for bug-gnu-emacs@gnu.org; Sat, 02 Jul 2022 04:41:01 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1o7YgX-0000f4-ON for bug-gnu-emacs@gnu.org; Sat, 02 Jul 2022 04:41:01 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Eli Zaretskii Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sat, 02 Jul 2022 08:41:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 56323 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch Original-Received: via spool by 56323-submit@debbugs.gnu.org id=B56323.16567512032423 (code B ref 56323); Sat, 02 Jul 2022 08:41:01 +0000 Original-Received: (at 56323) by debbugs.gnu.org; 2 Jul 2022 08:40:03 +0000 Original-Received: from localhost ([127.0.0.1]:39720 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1o7Yfb-0000cz-05 for submit@debbugs.gnu.org; Sat, 02 Jul 2022 04:40:03 -0400 Original-Received: from eggs.gnu.org ([209.51.188.92]:42778) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1o7YfW-0000cM-9o for 56323@debbugs.gnu.org; Sat, 02 Jul 2022 04:40:02 -0400 Original-Received: from fencepost.gnu.org ([2001:470:142:3::e]:46034) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1o7YfQ-0005xH-SE; Sat, 02 Jul 2022 04:39:52 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=NeiMyY0FrvJoEVDgG0CGb6D0TVmbE5BU2EtWLHL60n0=; b=ltONEJL8tR9T 2okBnqMYm5VNwLqHxpZuRPw2GsyhspWjNY179ltGFH5WbPmkAHoFd1F/rNew87UHz8BHqVJM2aKot wExVMGQZbA6qR2WY0gpKsajnoTUr5K7lfHHRGTHpv6eisub/0qpxYGVafNuWY84hwXmXATbYAxZ6n sswHZDB88VmQXmzSQvIV/Ce7LplImpeE8S5nvio6hZpnOpTKP8cvk6z/6neoQRT74trfNc7KJWSpV lMEo0vYecQYa6LCJLW9yoK5wAKCkfnFZdEHyvHMXqi8PiRPxzukssveLHdMkf8rXTumsD8UgOsSu2 RxddbJuG4Poq+peTndwY+g==; Original-Received: from [87.69.77.57] (port=2010 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1o7YfP-0002GE-Ph; Sat, 02 Jul 2022 04:39:52 -0400 In-Reply-To: <87czeoj68q.fsf@gmail.com> (message from Visuwesh on Sat, 02 Jul 2022 13:28:29 +0530) 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:235861 Archived-At: > From: Visuwesh > Cc: 56323@debbugs.gnu.org > Date: Sat, 02 Jul 2022 13:28:29 +0530 > > >> Also, I would like to know if there's a better to write the :set > >> function for the defcustoms tamil-vowel-translation, > >> tamil-consonant-translation, tamil-misc-translation, tamil-native-digits > >> without the boundp check chain below, > >> > >> (defun tamil--set-variable (sym val) > >> (set-default sym val) > >> (when (and (boundp 'tamil-vowel-translation) > >> (boundp 'tamil-consonant-translation) > >> (boundp 'tamil-misc-translation) > >> (boundp 'tamil-native-digits)) > >> (tamil--update-quail-rules))) > > > > Why do you need a single function for all of them? Would a separate > > setter function for each defcustom do the job? > > > > Because it is harder to clear the old translation rules and add the new > translation rules than clearing ALL translation rules and starting over > again. When the user changes tamil-vowel-translation, then not only > does the translation rule for the vowels change, we also need to change > the translation rules for consonant+vowel pairs so that means we need to > check if the consonant var is bound. (The translation rules for > consonant+vowel pairs are auto-generated based on the rules for vowels > and consonants.) If the rules are generated based on both defcustom's, then shouldn't we have just one defcustom for both? IOW, what is the purpose of having two separate defcustom's here? > > I also don't understand the need for the boundp tests -- the function > > will live on the same indian.el file as the defcustoms, so if the > > function is defined, the defcustoms are also bound, no? > > > > IIUC, when we load indian.el, first, the vowel defcustom will be bound, > then the consonant defcustom and so on. So this boundp test is needed, > I think? Wouldn't that be fixed by having the setter function defined before the defcustom's? > See above for why the defcustoms have a "dependency" on each > other. When the vowel defcustom is loaded, then its job _sometimes_ > depends on the consonant defcustom being bound as well. Since the defcustom's have their default value, I don't think I see the problem. Did you actually see any problems, and if so, in which scenario, and what were the error messages? > I thought the subject could be "Translation rules for the Tamil input > method." If you think the group name is too general, then "tamil-im" > could work? tamil-input, perhaps?