From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Paul Pogonyshev Newsgroups: gmane.emacs.bugs Subject: bug#43830: keyboard layout handling incompatible with rest of the OS Date: Tue, 6 Oct 2020 23:05:20 +0200 Message-ID: References: <87h7r78a5y.fsf@mail.linkov.net> <87imbn2iwm.fsf@mail.linkov.net> Mime-Version: 1.0 Content-Type: multipart/alternative; boundary="000000000000953f9905b106f5a9" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="21006"; mail-complaints-to="usenet@ciao.gmane.io" Cc: 43830@debbugs.gnu.org To: Juri Linkov Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Tue Oct 06 23:06:30 2020 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 1kPuAH-0005LY-Ht for geb-bug-gnu-emacs@m.gmane-mx.org; Tue, 06 Oct 2020 23:06:29 +0200 Original-Received: from localhost ([::1]:43750 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kPuAG-0008PW-E8 for geb-bug-gnu-emacs@m.gmane-mx.org; Tue, 06 Oct 2020 17:06:28 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:58916) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kPu9q-0008PJ-Ki for bug-gnu-emacs@gnu.org; Tue, 06 Oct 2020 17:06:02 -0400 Original-Received: from debbugs.gnu.org ([209.51.188.43]:42725) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1kPu9q-0007Ld-Bh for bug-gnu-emacs@gnu.org; Tue, 06 Oct 2020 17:06:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1kPu9q-0001e9-6U for bug-gnu-emacs@gnu.org; Tue, 06 Oct 2020 17:06:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Paul Pogonyshev Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Tue, 06 Oct 2020 21:06:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 43830 X-GNU-PR-Package: emacs Original-Received: via spool by 43830-submit@debbugs.gnu.org id=B43830.16020183406297 (code B ref 43830); Tue, 06 Oct 2020 21:06:02 +0000 Original-Received: (at 43830) by debbugs.gnu.org; 6 Oct 2020 21:05:40 +0000 Original-Received: from localhost ([127.0.0.1]:54271 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kPu9T-0001dV-OR for submit@debbugs.gnu.org; Tue, 06 Oct 2020 17:05:40 -0400 Original-Received: from mail-wm1-f52.google.com ([209.85.128.52]:50892) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kPu9R-0001dH-H5 for 43830@debbugs.gnu.org; Tue, 06 Oct 2020 17:05:38 -0400 Original-Received: by mail-wm1-f52.google.com with SMTP id 13so249013wmf.0 for <43830@debbugs.gnu.org>; Tue, 06 Oct 2020 14:05:37 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=bfVhaLPDARAtzP4vZ8/xuI31Eh+di9Xrkwmqjld9xjs=; b=aK6SmqJuv79nVOK0vkzfojDiXvX/PxcV88B2nITglGXNQWVA4C+L2Q4xcopGiEQVfZ wGG7s3l0j5nsYQMsGGMguOrd99GsUCEinn72s7G4jEpl7pbSQ9cJtL2BXXB2OCOqgu+U cJyFXGPhynK4v3hoi97hiWHqzOzPErOfkQ2Bue8uM6+csOHDvpE2vtsZoK4l4/M8i2Xw Wi5RJ72nqvdGr9nDInXYhYqswEOT6feBF+074bmLsEY4Kq+vXS7SP+tM0WOw5OtQmFJB vAOsnLkl7IVuYutXHDghjRHv6rFiu2pbkttVTxHN9WjJERs4p4S5ekDpTFCu4dkjc/l+ puRQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=bfVhaLPDARAtzP4vZ8/xuI31Eh+di9Xrkwmqjld9xjs=; b=A3elRpTzUs4ELf19FlntoNNHA7A0no2U0ZteGqw0IvEvtwBtB6KIDZ7kj9/Q3CM+sU rUKWzHfhD3EEqV/uKhkWVfBWvmwQbMFinUBL14yGvgEn59GUe+ByO6mFFhoIm+gKnXcj n8obYeebdgN6umM/sqP7zAEy0gpBq/Hb27UmveaJc/WUGqP2JQtMQI0FbkiI5UjuwzlP yTCZ+lG24lnjYi1qN8uMpx8ubTZAdl6Ne8XJz18+wfR/s40zmGsPcP94+mnIs65TR9cp iDCypQ+DNT1ByE441r4dv/1BjsnY2UkMqZjNAZyK+KFIeu+U3DG0tfTkv0OsE8WE9s9b sO0A== X-Gm-Message-State: AOAM532sx9g2o3CDdHCODuKRuNPg5m4rKRLP/pZc8F0Dpqb0Sgra6jGw yQcmVgHubkxZBJoKuywsiV59RnEKkKJmIZB9+w== X-Google-Smtp-Source: ABdhPJzzjC1jhMfbaAdpbCEgAhggZTcq8sDngNlHIvpL0gujcJqv+b7fIgyMtIhVI3u2H+Q4Z0VX2WNqCnVgFWfT4v4= X-Received: by 2002:a1c:98d4:: with SMTP id a203mr7133623wme.83.1602018331671; Tue, 06 Oct 2020 14:05:31 -0700 (PDT) In-Reply-To: <87imbn2iwm.fsf@mail.linkov.net> 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:189943 Archived-At: --000000000000953f9905b106f5a9 Content-Type: text/plain; charset="UTF-8" > When your X xkb layout has some differences from an Emacs input method, > you need to adjust these mismatched keys, but this is not a big problem. It doesn't. With switching Emacs input methods between English and Russian I also get English '/' == Russian '.'. And so C-. in Russian input method works as C-/ in English, because it's the same physical key. > Hack or not, but it works fine for many users (the git repo has 57 stars). Yeah, one of those is mine. It doesn't work "fine", it works much better than nothing. But still not exactly fine. I rebound C-. as a workaround, because anyway it has no standard binding. But I cannot do the same for M-. for example. Also, the same goes for many S-M-[digit] combinations, because characters on the digit row are often different in Russian layout. For example, S-M-6 in English layout translates to M-^, `delete-indentation', but in Russian S-M-6 becomes M-:, `eval-expression'. And so on. So, it is a good workaround that *mostly* works. But it doesn't solve the underlying issue. Which was successfully solved by other applications tens of years ago. Paul On Tue, 6 Oct 2020 at 22:37, Juri Linkov wrote: > >> You can use the package https://github.com/a13/reverse-im.el > > > > Mostly works fine, but e.g. C-. in Russian doesn't work as C-/ (undo) for > > me > > (in Russian layout '.' is on the same key as '/' in English). > > When your X xkb layout has some differences from an Emacs input method, > you need to adjust these mismatched keys, but this is not a big problem. > > > Pretty sure the correct way would be for Emacs to support this natively, > > not hack from Elisp side, which has no information about physical keys, > > only typed characters. > > Hack or not, but it works fine for many users (the git repo has 57 stars). > --000000000000953f9905b106f5a9 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
> When your X xkb layout has some differences from an E= macs input method,
> you need to adjust these mismatched keys, but th= is is not a big problem.

It doesn't. With switch= ing Emacs input methods between English and Russian
I also get En= glish '/' =3D=3D Russian '.'. And so C-. in Russian input m= ethod works
as C-/ in English, because it's the same physical= key.

> Hack or not, but it works fine for many= users (the git repo has 57 stars).

Yeah, one of t= hose is mine. It doesn't work "fine", it works much better th= an
nothing. But still not exactly fine. I rebound C-. as a workar= ound, because
anyway it has no standard binding. But I cannot do = the same for M-. for
example.

Also, the = same goes for many S-M-[digit] combinations, because characters
o= n the digit row are often different in Russian layout. For example, S-M-6 i= n
English layout translates to M-^, `delete-indentation', but= in Russian=C2=A0S-M-6
becomes M-:, `eval-expression'. And so= on.

So, it is a good workaround that *mostly* wor= ks. But it doesn't solve the
underlying issue. Which was succ= essfully solved by other applications tens
of years ago.

Paul


On Tue, 6 Oct 2020 at 22:37, Juri= Linkov <juri@linkov.net> wrot= e:
>> You = can use the package https://github.com/a13/reverse-im.el
>
> Mostly works fine, but e.g. C-. in Russian doesn't work as C-/ (un= do) for
> me
> (in Russian layout '.' is on the same key as '/' in En= glish).

When your X xkb layout has some differences from an Emacs input method,
you need to adjust these mismatched keys, but this is not a big problem.
> Pretty sure the correct way would be for Emacs to support this nativel= y,
> not hack from Elisp side, which has no information about physical keys= ,
> only typed characters.

Hack or not, but it works fine for many users (the git repo has 57 stars).<= br>
--000000000000953f9905b106f5a9--