From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Amit Ramon Newsgroups: gmane.emacs.devel Subject: Re: Issues with quail.el Date: Sat, 19 May 2018 15:01:24 +0300 Message-ID: <20180519120124.ee4bompnunw2gxuv@isis.luna> References: <87po21f4dl.fsf@gnu.org> <87fu2qpipm.fsf@gnu.org> NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: quoted-printable X-Trace: blaine.gmane.org 1526731182 17858 195.159.176.226 (19 May 2018 11:59:42 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Sat, 19 May 2018 11:59:42 +0000 (UTC) To: emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Sat May 19 13:59:38 2018 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fK0WP-0004Xm-8x for ged-emacs-devel@m.gmane.org; Sat, 19 May 2018 13:59:37 +0200 Original-Received: from localhost ([::1]:42946 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fK0YW-0004dc-Cv for ged-emacs-devel@m.gmane.org; Sat, 19 May 2018 08:01:48 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:34128) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fK0YP-0004dM-21 for emacs-devel@gnu.org; Sat, 19 May 2018 08:01:42 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fK0YK-0002Be-CN for emacs-devel@gnu.org; Sat, 19 May 2018 08:01:41 -0400 Original-Received: from mx1.riseup.net ([198.252.153.129]:55043) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1fK0YJ-0002Aq-W1 for emacs-devel@gnu.org; Sat, 19 May 2018 08:01:36 -0400 Original-Received: from piha.riseup.net (piha-pn.riseup.net [10.0.1.163]) (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits)) (Client CN "*.riseup.net", Issuer "COMODO RSA Domain Validation Secure Server CA" (verified OK)) by mx1.riseup.net (Postfix) with ESMTPS id 1BBD11A0A87 for ; Sat, 19 May 2018 05:01:34 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=riseup.net; s=squak; t=1526731294; bh=CI8hRWdJsYsHGKcWKRnoIq//Hu1Cersfbs8mKqw5hS4=; h=Date:From:To:Subject:References:In-Reply-To:From; b=SBM+wEfLMEVv1pJg3Db5uChQxwIlPnR9JHPl3DXjflOvyn7WY1wud9ZsLOG/OdYAx SAxSX9+c1TasjogT4Bsh6lw++e8T8FCZxLMcyFdxBkHuycvFl9y37ocWeWS2O6TSrm kqI1dajD9Dp8SAXwCoX9gKe+5uGIWujyA6g653uE= X-Riseup-User-ID: 7E9BC7C5A1429ACED36ED1FAEFD0A217B3C1D8296163980BA0117979F4FEA9DD Original-Received: from [127.0.0.1] (localhost [127.0.0.1]) by piha.riseup.net with ESMTPSA id 3F86627A34 for ; Sat, 19 May 2018 05:01:32 -0700 (PDT) Mail-Followup-To: emacs-devel@gnu.org Content-Disposition: inline In-Reply-To: <87fu2qpipm.fsf@gnu.org> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] [fuzzy] X-Received-From: 198.252.153.129 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.21 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" Xref: news.gmane.org gmane.emacs.devel:225436 Archived-At: Hi, K. Handa [2018-05-17 21:31 +0900]: >Hi, > >In article <87po21f4dl.fsf@gnu.org>, handa@gnu.org (K. Handa) writes: > >> diff --git a/lisp/international/quail.el b/lisp/international/quail.el >> index eece836354..a81244a1db 100644 >> --- a/lisp/international/quail.el >> +++ b/lisp/international/quail.el >> @@ -815,7 +815,7 @@ quail-insert-kbd-layout >> (aref (cdr translation) 0) >> " "))) >> (setq done-list (cons translation done-list))) >> - (setq translation (aref kbd-layout i))) >> + (setq translation ch)) >> (aset layout i translation)) >> (setq i (1+ i))) > >Have you tried the above patch? Did it work? Yes, I've tried this patch with my Dvorak keyboard layout and Hebrew input method and it works great. I've also tried it with atari-german keyboard layout and Hebrew-new input method. There are still some slight issued, for example the quail's definition of the standard keyboard layout is based on VT100 layout, which is different in some minor aspects from a standard PC keyboard (e.g. the location of the tilde key), but this is not related to the problem this patch fixes. >> [...] >> > What I get for the second letter (TET, =D7=98) is: > >> > =D7=98 can't be input by the current input method > >> I confimed this bug, but it seems that fixing take more time. Please= wait. > >Here's the patch to fix it. Could you please try it? I tested this patch with the configurations mentioned above (after fixing the cdr/car typo mentioned by Filipp Gunbin in a different mail in this thread) and, again, it fixes the problem. There are still some issued that are, perhaps, related to a broader question, I'll try to describe them briefly here, but I think they should not stop us from applying your fixes. 1. Key sequences Lets assume I'm using a Dvorak keyboard layout and a Hebrew input method. This input method include some key sequences for typing some special Hebrew signs. For example, for inputting HEBREW PUNCTUATION MAQAF (=D6=BE), one has to type q-p. When the keyboard layout is standard= , there is no problem. When it is Dvorak, C-h I still says you have to type q-p, and it works if you press the keys that are q-p in the standard layout, but since I use Dvoark it is (for me) '-l. Here comes the question of what the input method really wants -- to keep the actual location of the keys you need to type a sequence constant, or that the constant should be the keys themselves (i.e., their meaning). On the other hand, when quail-show-key is asked to find what to type for entering HEBREW PUNCTUATION MAQAF, it says '-l -- this is the actual meaning of the keys need to be typed for a Dvorak layout. 2. Shifted keys This is somewhat similar to the above. If (Hebrew + Dvorak layout) I ask quail-show-key to tell what to type for inputting Z, it tells me "To input 'Z', just type it". But (again, Hebrew input method is active) this is not really true since my keyboard layout is Dvorak -- to enter Z in Hebrew input method I need to press Shift-;, since the key that has ; in Dvorak is the z key in the standard layout. These are, maybe, questions of semantics and context -- when one say that I have to type q-p (to get HEBREW MAQAF), is it in the context of my real keyboard (then it is not true for Dvoark), or is it in the context of a standard keyboard (and then it is confusing people who're using, say, a Dvorak keyboard). It seems to me that these questions need some more thinking, at least for me. In the meantime, I'm just putting them here. Thanks again for the two fixes, Amit P.s. Handa san, I have some technical questions and, perhaps, some suggestions for simplifying some parts of quail.el (assuming I'm not completely misunderstanding it) -- would you be interested to hear? If so, shall I post my questions in this thread or, perhaps, send them directly to you?