From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.ciao.gmane.io!not-for-mail From: stardiviner Newsgroups: gmane.emacs.bugs Subject: bug#29533: Fwd: [Feature Request] ERC: let erc-join-channel support to select channels from history or a defined list Date: Wed, 13 May 2020 19:37:06 +0800 Message-ID: <87ftc4ukv1.fsf@gmail.com> References: <87eez3kebf.fsf@gnus.org> <87v9lbykbp.fsf@stefankangas.se> <87tv0veuyh.fsf@gmail.com> <87eerzyhbi.fsf@stefankangas.se> <87r1vpogto.fsf@gmail.com> Reply-To: numbchild@gmail.com Mime-Version: 1.0 Content-Type: text/plain Content-Transfer-Encoding: quoted-printable Injection-Info: ciao.gmane.io; posting-host="ciao.gmane.io:159.69.161.202"; logging-data="128107"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: mu4e 1.4; emacs 28.0.50 Cc: stardiviner , Lars Ingebrigtsen , 29533@debbugs.gnu.org To: Stefan Kangas Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Wed May 13 14:11:11 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 1jYqE9-000XAM-Pw for geb-bug-gnu-emacs@m.gmane-mx.org; Wed, 13 May 2020 14:11:09 +0200 Original-Received: from localhost ([::1]:38472 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jYqE8-0002NQ-Nz for geb-bug-gnu-emacs@m.gmane-mx.org; Wed, 13 May 2020 08:11:08 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:35190) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1jYqE2-0002Mu-Tm for bug-gnu-emacs@gnu.org; Wed, 13 May 2020 08:11:02 -0400 Original-Received: from debbugs.gnu.org ([209.51.188.43]:46007) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1jYqE2-0000k9-Kx for bug-gnu-emacs@gnu.org; Wed, 13 May 2020 08:11:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1jYqE2-0004lW-Fz for bug-gnu-emacs@gnu.org; Wed, 13 May 2020 08:11:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: stardiviner Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Wed, 13 May 2020 12:11:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 29533 X-GNU-PR-Package: emacs Original-Received: via spool by 29533-submit@debbugs.gnu.org id=B29533.158937185218300 (code B ref 29533); Wed, 13 May 2020 12:11:02 +0000 Original-Received: (at 29533) by debbugs.gnu.org; 13 May 2020 12:10:52 +0000 Original-Received: from localhost ([127.0.0.1]:57553 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1jYqDr-0004l5-Km for submit@debbugs.gnu.org; Wed, 13 May 2020 08:10:51 -0400 Original-Received: from [183.249.138.107] (port=9357 helo=dark.localdomain) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1jYqDn-0004ki-Qx for 29533@debbugs.gnu.org; Wed, 13 May 2020 08:10:50 -0400 Original-Received: by dark.localdomain (Postfix, from userid 1000) id BF1DD2416C8; Wed, 13 May 2020 19:37:06 +0800 (HKT) In-reply-to: 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:180149 Archived-At: =2D----BEGIN PGP SIGNED MESSAGE----- Hash: SHA256 Stefan Kangas writes: > stardiviner writes: > >> Hi, Stefan, I'm afraid I can't submit patch soon. This task is not >> priority on my tasks now. Because this patch is long time agon, I barely >> use ERC recently. I still keep this task waited, when I got time to deal >> with it, and finished it, I will send it here. Sorry about this. > > Thank you. There is no particular rush, but it would be good to get the > patch merged eventually. I have a question, I have code like bellowing: #+begin_src emacs-lisp ;;; original code (defun erc-join-channel (channel &optional key) "Join CHANNEL. If `point' is at the beginning of a channel name, use that as default." (interactive (list (let ((chnl (if (looking-at "\\([&#+!][^ \n]+\\)") (match-string 1) "")) (table (when (erc-server-buffer-live-p) (set-buffer (process-buffer erc-server-process)) erc-channel-list))) (completing-read "Join channel: " table nil nil nil nil chnl)) (when (or current-prefix-arg erc-prompt-for-channel-key) (read-from-minibuffer "Channel key (RET for none): " nil)))) (erc-cmd-JOIN channel (when (>=3D (length key) 1) key))) ;;=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D (defcustom erc-join-channels-alist nil "Alist of channels to select when you join channels. Every element in the alist has the form (SERVER . CHANNELS). SERVER is a regexp matching the server, and channels is the list of channels to join. If the channel(s) require channel keys for joining, the passwords are found via auth-source. For instance, if you use ~/.authinfo as your auth-source backend, then put something like the following in that file: machine irc.example.net login \"#fsf\" password sEcReT Customize this variable to set the value for your first connect. Once you are connected and join and part channels, this alist keeps track of what channels you are on, and will join them again when you get disconnected. When you restart Emacs, however, those changes are lost, and the customization you saved the last time is used again." :group 'erc-join :type '(repeat (cons :tag "Server" (regexp :tag "Name") (repeat :tag "Channels" (string :tag "Name"))))) (setq erc-join-channels-alist '((".*\\.freenode.net" ; "freenode.net" "#emacs" "#org-mode" "#lisp" "#clojure" "#clojure-beginners" "#archlinux" "#swift-lang" "#docker" "#hackerrank"))) (defun erc-join-channel-select (args) "Select a channel to join from alist of channels to." (let ((channel (completing-read "Select a channel: " (cdr (assoc (completing-read "Select a server: " (mapcar 'car erc-join-channels-ali= st)) erc-join-channels-alist))))) (setq args (list channel)))) (advice-add 'erc-join-channel :filter-args 'erc-join-channel-select) (advice-remove 'erc-join-channel 'erc-join-channel-select) #+end_src When I press [C-c C-j] (erc-join-channel), the advice is added on function, but seems not working. Don't know why, do you have any clue? > > Best regards, > Stefan Kangas =2D --=20 [ stardiviner ] I try to make every word tell the meaning that I want to express. Blog: https://stardiviner.github.io/ IRC(freenode): stardiviner, Matrix: stardiviner GPG: F09F650D7D674819892591401B5DF1C95AE89AC3 =20=20=20=20=20=20 =2D----BEGIN PGP SIGNATURE----- iQFIBAEBCAAyFiEE8J9lDX1nSBmJJZFAG13xyVromsMFAl672+IUHG51bWJjaGls ZEBnbWFpbC5jb20ACgkQG13xyVromsMAIwf/XPYrBcVkSGyUPTS/8jtwGHwh2vE9 n+lQnTJbd0+9J88D9Hr2lyULOuxtCArBnVYCIHeQSEY8PKvAsXir+Dkw0Jdu50wu nxnm5YB4vpeerTzZubVuTwiecZqIlu92ZhpNM7Dwh8UZar+R/MxeuBs5u7O84e8p R4BFEwQC9u5GDfy8TmcGaJocbXEOo0a4XMC81Yqgrukxn1qwRyLq9IYdQzFZTaaq qzuhmDTmjsvF7AS3nz4E+wuu2VTmLYZ7+60KA+2XPP9NJ6IzmrAiWyltpSzBFkf4 Y48DuFr/PT3R3jpwQfWdwaJVGPjDH0WPFNisEGpq5eAISqMZesuBZiCB7w=3D=3D =3DItr2 =2D----END PGP SIGNATURE-----