From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Robert Pluim Newsgroups: gmane.emacs.bugs Subject: bug#52173: =?UTF-8?Q?`=C5=9B'?= character not available using `C-x 8' Date: Mon, 29 Nov 2021 17:52:46 +0100 Message-ID: <875ysa6h0h.fsf@gmail.com> References: <87r1az5a4n.fsf@gmail.com> <87k0grardn.fsf@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="40474"; mail-complaints-to="usenet@ciao.gmane.io" Cc: Tor Kringeland , 52173@debbugs.gnu.org To: =?UTF-8?Q?Andr=C3=A9?= A. Gomes Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Mon Nov 29 17:53:38 2021 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 1mrjuL-000AMz-UC for geb-bug-gnu-emacs@m.gmane-mx.org; Mon, 29 Nov 2021 17:53:37 +0100 Original-Received: from localhost ([::1]:52064 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1mrjuK-0003J7-VN for geb-bug-gnu-emacs@m.gmane-mx.org; Mon, 29 Nov 2021 11:53:36 -0500 Original-Received: from eggs.gnu.org ([209.51.188.92]:51348) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mrjtm-0002wH-Bj for bug-gnu-emacs@gnu.org; Mon, 29 Nov 2021 11:53:02 -0500 Original-Received: from debbugs.gnu.org ([209.51.188.43]:55828) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1mrjtm-0006rJ-3b for bug-gnu-emacs@gnu.org; Mon, 29 Nov 2021 11:53:02 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1mrjtm-00036y-2p for bug-gnu-emacs@gnu.org; Mon, 29 Nov 2021 11:53:02 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Robert Pluim Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Mon, 29 Nov 2021 16:53:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 52173 X-GNU-PR-Package: emacs Original-Received: via spool by 52173-submit@debbugs.gnu.org id=B52173.163820477711950 (code B ref 52173); Mon, 29 Nov 2021 16:53:02 +0000 Original-Received: (at 52173) by debbugs.gnu.org; 29 Nov 2021 16:52:57 +0000 Original-Received: from localhost ([127.0.0.1]:39141 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mrjth-00036f-1G for submit@debbugs.gnu.org; Mon, 29 Nov 2021 11:52:57 -0500 Original-Received: from mail-wr1-f43.google.com ([209.85.221.43]:35784) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mrjte-00036R-OV for 52173@debbugs.gnu.org; Mon, 29 Nov 2021 11:52:55 -0500 Original-Received: by mail-wr1-f43.google.com with SMTP id i5so38271589wrb.2 for <52173@debbugs.gnu.org>; Mon, 29 Nov 2021 08:52:54 -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 :mime-version:content-transfer-encoding; bh=6n0s6pI+2rGAFn3sFAVYNUCvfYjKlMA5yNjBgRmPlCE=; b=ZkV5DpamPqScV/NoDFj8UL9lz+EIyzMf0c2E/6iWr8miu4RlLSVTudZ5eWAg4imMS8 w3/Vwrjcm55UWVAlyx5xZ6C9f7i0m/Cofy7v42llkVz+CdVs5rriTXfH/Wr4BmIpWzdF TeLVv8w1gXtBe3JPujT/IsOoyfUhtjyY5Sr8UkNWGz39l6PdEZAAe6SxIAKK66zkhzVz dGO9heom04SF/trqt3T6zDiXZGs8LyamEKbZghtv26QnkqGLjb7ZbssiWBfxmnwoWYwr 8obSPZKCwVvLa2nCQAPXGEv6xQn80RpCZA0JK+yWluULm27ZL+WYgrkms29lMuO006ap yOqw== 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:mime-version:content-transfer-encoding; bh=6n0s6pI+2rGAFn3sFAVYNUCvfYjKlMA5yNjBgRmPlCE=; b=X53iGW2b31okiK/3x1DkOKhfdJnQcYeBwci9sQh/HnbWI6RdpgBM7aeJDIGRyH/AUF OBrnmduJuJ0uMfgOpzjEbMJgS5Rt4Fj0fWesbd87imEvv2knolPsvVS5fjmLOyp87R/w Drc4sSOF7Z2Tn2CvHX5r+v7ZdtuPdirR+z4L7CK2k+s3D2fy4+n0cthx3uE3/K7n7yLR pvcRjL6/hgjDwVmjmfiKN+n4YkK1yj3cW0JJ1MaXTcueiqvWpfMZd4c7dAlKqRrJwUDU NRZC/WH22jCI2okB08faond5D9v2W+RsDi0JNZzf4AIjcN4bhGtirznbAt5nNtQwOyU3 /FWQ== X-Gm-Message-State: AOAM530A+bnXMXrHrH5HIsZNw2Tv1en/yHgQ5Tb3NtlvIuQATlzRO/fx zS43/af7x+96L+IG0yRC7Pf5W1tX5EU= X-Google-Smtp-Source: ABdhPJxJq8TfsCid2xdmDtdnz2+miKeeTvYHDoUhVZN+jA0pS3STcVP0SFCcmUHWhAuSjBr8t9g3Sw== X-Received: by 2002:adf:f40b:: with SMTP id g11mr34853562wro.296.1638204768384; Mon, 29 Nov 2021 08:52:48 -0800 (PST) Original-Received: from rltb ([2a01:e0a:3f3:fb50:452b:223a:73d6:af90]) by smtp.gmail.com with ESMTPSA id a10sm21286052wmq.27.2021.11.29.08.52.47 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 29 Nov 2021 08:52:47 -0800 (PST) In-Reply-To: <87k0grardn.fsf@gmail.com> ("=?UTF-8?Q?Andr=C3=A9?= A. Gomes"'s message of "Mon, 29 Nov 2021 15:55:16 +0000") 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:221039 Archived-At: >>>>> On Mon, 29 Nov 2021 15:55:16 +0000, Andr=C3=A9 A. Gomes said: Andr=C3=A9> Robert Pluim writes: >> What might be more useful is an input-method ring, so >> you could quickly switch between 2 or more input methods. Andr=C3=A9> I agree. It should be easier to go from any 2 input method= s defined by Andr=C3=A9> quail. Andr=C3=A9> I will add it to my todo. A rough cut. Of course this should probably be part of `toggle-input-method= '. diff --git a/lisp/international/mule-cmds.el b/lisp/international/mule-cmds= .el index b922f192a9..4f385d5b79 100644 --- a/lisp/international/mule-cmds.el +++ b/lisp/international/mule-cmds.el @@ -1553,6 +1553,35 @@ set-input-method (defvar toggle-input-method-active nil "Non-nil inside `toggle-input-method'.") =20 +(if dump-mode + (load "emacs-lisp/ring") + (require 'ring)) +(defvar input-method-ring nil) +(defun update-input-method-ring (variable value) + (when (length> value 0) + (dolist (im value) + (when (not (assoc (symbol-name im) input-method-alist)) + (error "%S is not a known input method" im))) + (setq input-method-ring (ring-convert-sequence-to-ring value))) + (set-default variable value)) + +(defcustom input-method-list nil + "List of input methods to cycle through with `cycle-input-method'." + :type '(choice (const nil) + (repeat :tag "List of input methods" + (symbol :tag "Input method"))) + :group 'mule + :set #'update-input-method-ring + :version "29.1") + +(defun cycle-input-method () + "Cycle through `input-method-ring'." + (interactive) + (if (and current-input-method + (ring-member input-method-ring (intern current-input-method))) + (activate-input-method (ring-next input-method-ring (intern current-= input-method) )) + (activate-input-method (ring-ref input-method-ring 0)))) + (defun toggle-input-method (&optional arg interactive) "Enable or disable multilingual text input method for the current buffer. Only one input method can be enabled at any time in a given buffer. Robert --=20