Package: emacs;
Reported by: Thierry Volpiatto <thierry.volpiatto <at> gmail.com>
Date: Mon, 16 Mar 2015 07:47:02 UTC
Severity: normal
Tags: patch
Found in version 24.4.91
Done: Stefan Monnier <monnier <at> IRO.UMontreal.CA>
Bug is archived. No further changes may be made.
View this message in rfc822 format
From: help-debbugs <at> gnu.org (GNU bug Tracking System) To: Thierry Volpiatto <thierry.volpiatto <at> gmail.com> Subject: bug#20116: closed (Re: bug#20116: 24.4.91; [PATCH]Don't use iswitchb in erc.) Date: Mon, 16 Mar 2015 18:50:04 +0000
[Message part 1 (text/plain, inline)]
Your bug report #20116: 24.4.91; [PATCH]Don't use iswitchb in erc. which was filed against the emacs package, has been closed. The explanation is attached below, along with your original report. If you require more details, please reply to 20116 <at> debbugs.gnu.org. -- 20116: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=20116 GNU Bug Tracking System Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
From: Stefan Monnier <monnier <at> IRO.UMontreal.CA> To: Thierry Volpiatto <thierry.volpiatto <at> gmail.com> Cc: 20116-done <at> debbugs.gnu.org Subject: Re: bug#20116: 24.4.91; [PATCH]Don't use iswitchb in erc. Date: Mon, 16 Mar 2015 14:49:25 -0400> IOW you suggest using something that doesn't exists yet, sorry, but this > is out of my scope, well you have my patch "A titre informatif" in case > somebody wants to make this change (I personally don't use erc, but I > have users that do use it). I believe it's now done, Stefan
[Message part 3 (message/rfc822, inline)]
From: Thierry Volpiatto <thierry.volpiatto <at> gmail.com> To: bug-gnu-emacs <at> gnu.org Subject: 24.4.91; [PATCH]Don't use iswitchb in erc. Date: Mon, 16 Mar 2015 08:45:32 +0100Hi, erc is still using iswitchb which is deprecated, thus using this directly does not allow other packages (at least helm) to use their own completion. Using completing-read allow ido user to use ido, helm users helm etc... 8c03a0e7352eeb3e40d94897623a5ce5d68a0789 HEAD erc_no_iswitchb Author: Thierry Volpiatto <thierry.volpiatto <at> gmail.com> Date: Mon Mar 16 08:37:59 2015 +0100 Don't use iswitchb in erc. * lisp/erc/erc.el (erc-switch-to-buffer): Renamed from erc-iswitchb. Use completing-read. (erc-mode-map): Bind it. 1 file changed, 13 insertions(+), 31 deletions(-) lisp/erc/erc.el | 44 +++++++++++++------------------------------- Modified lisp/erc/erc.el diff --git a/lisp/erc/erc.el b/lisp/erc/erc.el index a84f9f0..e76becd 100644 --- a/lisp/erc/erc.el +++ b/lisp/erc/erc.el @@ -1110,7 +1110,7 @@ which the local user typed." (define-key map "\C-a" 'erc-bol) (define-key map [home] 'erc-bol) (define-key map "\C-c\C-a" 'erc-bol) - (define-key map "\C-c\C-b" 'erc-iswitchb) + (define-key map "\C-c\C-b" 'erc-switch-to-buffer) (define-key map "\C-c\C-c" 'erc-toggle-interpret-controls) (define-key map "\C-c\C-d" 'erc-input-action) (define-key map "\C-c\C-e" 'erc-toggle-ctcp-autoresponse) @@ -1697,40 +1697,22 @@ nil." ;; a variable. res))) -;; (iswitchb-mode) will autoload iswitchb.el -(defvar iswitchb-temp-buflist) -(declare-function iswitchb-read-buffer "iswitchb" - (prompt &optional default require-match start matches-set)) -(defvar iswitchb-make-buflist-hook) - -(defun erc-iswitchb (&optional arg) - "Use `iswitchb-read-buffer' to prompt for a ERC buffer to switch to. +(defun erc-switch-to-buffer (&optional arg) + "Prompt for a ERC buffer to switch to. When invoked with prefix argument, use all erc buffers. Without prefix ARG, allow only buffers related to same session server. If `erc-track-mode' is in enabled, put the last element of -`erc-modified-channels-alist' in front of the buffer list. - -Due to some yet unresolved reason, global function `iswitchb-mode' -needs to be active for this function to work." +`erc-modified-channels-alist' in front of the buffer list." (interactive "P") - (let ((enabled (bound-and-true-p iswitchb-mode))) - (or enabled (iswitchb-mode 1)) - (unwind-protect - (let ((iswitchb-make-buflist-hook - (lambda () - (setq iswitchb-temp-buflist - (mapcar 'buffer-name - (erc-buffer-list - nil - (when arg erc-server-process))))))) - (switch-to-buffer - (iswitchb-read-buffer - "Switch-to: " - (if (boundp 'erc-modified-channels-alist) - (buffer-name (caar (last erc-modified-channels-alist))) - nil) - t))) - (or enabled (iswitchb-mode -1))))) + (switch-to-buffer + (completing-read "Switch-to: " + (mapcar 'buffer-name + (erc-buffer-list + nil + (when arg erc-server-process))) + nil t nil nil + (when (boundp 'erc-modified-channels-alist) + (buffer-name (caar (last erc-modified-channels-alist))))))) (defun erc-channel-list (proc) "Return a list of channel buffers. In GNU Emacs 24.4.91.1 (x86_64-unknown-linux-gnu, X toolkit) of 2015-03-12 on dell-14z Repository revision: b21a56ac91e39e75051ad07bb608c39af057adee Windowing system distributor `The X.Org Foundation', version 11.0.11501000 System Description: Ubuntu 14.04.2 LTS Configured using: `configure --with-x-toolkit=lucid --without-toolkit-scroll-bars --without-gconf --without-gsettings' Important settings: value of $LANG: fr_FR.UTF-8 locale-coding-system: utf-8-unix Major mode: Emacs-Lisp Minor modes in effect: magit-auto-revert-mode: t erc-list-mode: t erc-menu-mode: t erc-autojoin-mode: t erc-ring-mode: t erc-networks-mode: t erc-pcomplete-mode: t erc-track-mode: t erc-track-minor-mode: t erc-match-mode: t erc-button-mode: t erc-fill-mode: t erc-stamp-mode: t erc-netsplit-mode: t erc-irccontrols-mode: t erc-noncommands-mode: t erc-move-to-prompt-mode: t erc-readonly-mode: t diff-auto-refine-mode: t git-gutter-mode: t psession-mode: t golden-ratio-mode: t winner-mode: t global-undo-tree-mode: t undo-tree-mode: t auto-image-file-mode: t eldoc-in-minibuffer-mode: t show-paren-mode: t display-time-mode: t recentf-mode: t savehist-mode: t eldoc-mode: t minibuffer-depth-indicate-mode: t helm-descbinds-mode: t helm-mode: t shell-dirtrack-mode: t helm-adaptive-mode: t helm-match-plugin-mode: t helm-autoresize-mode: t tooltip-mode: t mouse-wheel-mode: t file-name-shadow-mode: t global-font-lock-mode: t font-lock-mode: t auto-composition-mode: t auto-encryption-mode: t auto-compression-mode: t column-number-mode: t line-number-mode: t transient-mark-mode: t Recent messages: Running git commit -- When done with a buffer, type C-c C-c Type C-c C-c to commit (C-c C-k to abort). Auto-saving...done Saving file /home/thierry/labo/emacs/.git/COMMIT_EDITMSG... Wrote /home/thierry/labo/emacs/.git/COMMIT_EDITMSG Git finished Type a prefix key to toggle it. Run 'actions' with their prefixes. '?' for more help. Mark set Saved text from "8c03a0e7352eeb3e40d94897623a5ce5d68a0789" Load-path shadows: /home/thierry/.emacs.d/elpa/emms-20150310.458/tq hides /usr/local/share/emacs/24.4.91/lisp/emacs-lisp/tq ~/elisp/auctex/lpath hides ~/elisp/emacs-wget/lpath Features: (shadow emacsbug magit-key-mode magit view help-mode autorevert filenotify git-rebase-mode git-commit-mode log-edit add-log helm-ls-git vc vc-dispatcher cl-indent helm-ring mail-extr helm-dabbrev epa-mail smiley gnus-art mm-uu mml2015 mm-view mml-smime smime dig mule-util network-stream starttls tls erc-list erc-menu erc-join erc-ring erc-networks erc-pcomplete erc-track erc-match erc-button erc-fill erc-stamp erc-netsplit erc-goodies erc erc-backend erc-compat helm-command helm-elisp helm-eval package-build lisp-mnt org-element org-rmail org-mhe org-irc org-info org-gnus org-docview org-bibtex bibtex org-bbdb org-w3m sh-script smie executable conf-mode make-mode cc-langs cc-mode cc-fonts cc-guess cc-menus cc-cmds cc-styles cc-align cc-engine cc-vars cc-defs markdown-mode vc-rcs diff-mode vc-git naquadah-theme em-unix em-script em-prompt em-ls em-hist em-pred em-glob em-dirs em-cmpl em-basic em-banner em-alias align-let git-gutter server psession golden-ratio winner undo-tree diff slime-xref-browser slime-banner slime-tramp slime-asdf slime-fancy slime-trace-dialog slime-fontifying-fu slime-package-fu slime-references slime-compiler-notes-tree slime-scratch slime-presentations bridge slime-fuzzy slime-fancy-trace slime-fancy-inspector slime-c-p-c slime-editing-commands slime-autodoc slime-repl slime-parse slime etags arc-mode archive-mode image-file xdvi-search preview-latex tex-site auto-loads pcomplete-extension pcmpl-unix pcmpl-gnu em-term term disp-table ehelp python eldoc-eval warnings whitespace paren time recentf tree-widget savehist mu4e-config org-mu4e helm-mu mu4e-contrib mu4e mu4e-speedbar speedbar sb-image ezimage dframe mu4e-main mu4e-view mu4e-headers mu4e-compose mu4e-draft mu4e-actions ido rfc2368 mu4e-mark mu4e-message html2text mu4e-proc mu4e-utils mu4e-lists mu4e-about mu4e-vars hl-line mu4e-meta gnus-dired nnir gnus-sum gnus-group gnus-undo nnmail mail-source gnus-start gnus-spec gnus-int gnus-range gnus-win nnoo config-w3m w3m-search w3m doc-view jka-compr image-mode timezone w3m-hist w3m-fb bookmark-w3m w3m-ems w3m-ccl ccl w3m-favicon w3m-image w3m-proc w3m-util smtpmail-async smtpmail sendmail dired-async iterator lacarte iedit-rect iedit iedit-lib smallurl mm-url gnus gnus-ems nnheader wid-edit rectangle-utils rect ledger-config ledger esh-var esh-io esh-cmd esh-opt esh-ext esh-proc eldoc esh-groups eshell esh-module esh-mode esh-arg esh-util tv-utils pcvs vc-cvs pcvs-parse pcvs-info pcvs-defs pcvs-util ewoc mb-depth cl-info hyperspec esh-toggle flymake no-word htmlize cl dired-extension emms-vlc-config emms-librefm-stream emms-librefm-scrobbler emms-playlist-limit emms-volume emms-volume-amixer emms-i18n emms-history emms-score emms-stream-info emms-metaplaylist-mode emms-bookmarks emms-cue emms-mode-line-icon emms-browser sort emms-playlist-sort emms-last-played emms-player-xine emms-player-mpd tq emms-playing-time emms-lyrics emms-url emms-tag-editor emms-mark emms-mode-line emms-cache emms-info-ogginfo emms-info-mp3info emms-playlist-mode emms-player-vlc emms-player-mplayer emms-info emms-streams later-do emms-source-playlist emms-source-file locate emms-player-simple emms-setup emms emms-compat org-config-thierry ob-sh org-crypt appt diary-lib diary-loaddefs org-annotation-helper addressbook-bookmark message rfc822 mml mml-sec mm-decode mm-bodies mm-encode mail-parse rfc2231 rfc2047 rfc2045 ietf-drums mailabbrev mail-utils gmm-utils mailheader bookmark-firefox-handler bookmark-extensions init-helm-thierry helm-descbinds helm-extensions-autoloads helm-mode helm-files image-dired tramp tramp-compat tramp-loaddefs trampver shell dired-x dired-aux ffap thingatpt helm-buffers helm-elscreen helm-tags helm-bookmark helm-adaptive helm-info bookmark pp helm-locate helm-help helm-org org-location-google-maps org-agenda google-maps google-maps-static google-maps-geocode google-maps-base json org org-macro org-footnote org-pcomplete pcomplete org-list org-faces org-entities noutline outline org-version ob-emacs-lisp ob ob-tangle ob-ref ob-lob ob-table ob-exp org-src ob-keys ob-comint ob-core ob-eval org-compat org-macs org-loaddefs format-spec find-func cal-menu calendar cal-loaddefs helm-match-plugin helm-grep wgrep-helm wgrep helm-regexp helm-plugin grep helm-external helm-net browse-url xml url url-proxy url-privacy url-expand url-methods url-history url-cookie url-domsuf url-util url-parse url-vars mailcap helm-utils dired compile comint ansi-color ring helm easy-mmode helm-source helm-config helm-autoloads async-bytecomp async helm-aliases epa-file epa derived epg auth-source eieio byte-opt bytecomp byte-compile cl-extra cconv eieio-core gnus-util mm-util mail-prsvr password-cache cl-macs gv slime-autoloads package epg-config time-date avoid cus-start cus-load w3m-wget info easymenu edmacro kmacro advice help-fns net-utils cl-loaddefs cl-lib tooltip electric uniquify ediff-hook vc-hooks lisp-float-type mwheel x-win x-dnd tool-bar dnd fontset image regexp-opt fringe tabulated-list newcomment lisp-mode prog-mode register page menu-bar rfn-eshadow timer select scroll-bar mouse jit-lock font-lock syntax facemenu font-core frame cham georgian utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao korean japanese hebrew greek romanian slovak czech european ethiopic indian cyrillic chinese case-table epa-hook jka-cmpr-hook help simple abbrev minibuffer nadvice loaddefs button faces cus-face macroexp files text-properties overlay sha1 md5 base64 format env code-pages mule custom widget hashtable-print-readable backquote make-network-process dbusbind gfilenotify dynamic-setting font-render-setting x-toolkit x multi-tty emacs) Memory information: ((conses 16 630268 48383) (symbols 48 67566 0) (miscs 40 2227 1485) (strings 32 178215 24587) (string-bytes 1 5234753) (vectors 16 68597) (vector-slots 8 1767252 27510) (floats 8 1828 1180) (intervals 56 7470 1145) (buffers 960 185) (heap 1024 62416 3341)) -- Thierry Get my Gnupg key: gpg --keyserver pgp.mit.edu --recv-keys 59F29997
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.