From 93f31ce4e062acd8ea6e87ea8023707b9e4b383b Mon Sep 17 00:00:00 2001 From: "F. Jason Park" Date: Thu, 4 May 2023 00:01:11 -0700 Subject: [PATCH 5/5] [5.6] Add new ERC modules bufbar and nickbar * doc/misc/erc.texi: Add `bufbar' and `nickbar' to known modules. * erc/ERC-NEWS: Mention erc-status-sidebar and erc-speedbar improvements. * lisp/erc/erc.el (erc-modules): Add `bufbar' and `nickbar' to selection of offered modules. * test/lisp/erc/erc-tests.el (erc-tests--modules): Add `bufbar' and `nickbar'. --- doc/misc/erc.texi | 9 +++++++++ etc/ERC-NEWS | 16 ++++++++++++++++ lisp/erc/erc.el | 2 ++ test/lisp/erc/erc-tests.el | 4 ++-- 4 files changed, 29 insertions(+), 2 deletions(-) diff --git a/doc/misc/erc.texi b/doc/misc/erc.texi index f7036e57638..7c625c2fd02 100644 --- a/doc/misc/erc.texi +++ b/doc/misc/erc.texi @@ -418,6 +418,10 @@ Modules @item bbdb Integrate with the Big Brother Database +@cindex modules, bufbar +@item bufbar +List ERC buffers belonging to a live connection in a side window + @cindex modules, button @item button Buttonize URLs, nicknames, and other text @@ -463,6 +467,11 @@ Modules @item nicks Automatically colorize nicks +@cindex modules, nickbar +@item nickbar +List participating nicks for the current target buffer in a side +window + @cindex modules, noncommands @item noncommands Don't display non-IRC commands after evaluation diff --git a/etc/ERC-NEWS b/etc/ERC-NEWS index 41af8b88277..6922ae22482 100644 --- a/etc/ERC-NEWS +++ b/etc/ERC-NEWS @@ -72,6 +72,22 @@ widget has been an age-old annoyance for new users. Previously ineffective, this method now actually works, but it also admonishes users to edit the 'erc-modules' widget instead. +** ERC's status-sidebar now has an accompanying module. +Users can now add 'bufbar' to 'erc-modules' to achieve the same effect +as toggling 'erc-status-sidebar-open' manually at the start of an IRC +session. The module has also been outfitted to show channels and +queries under their respective servers by default. To avoid +confusion, the major mode used for the sidebar buffer itself, +'erc-status-sidebar-mode', is no longer available interactively. + +** A new spin on a classic integration in erc-speedbar. +Add 'nickbar' to 'erc-modules' to spawn a dynamically updating side +window listing all the users in any target buffer. It's powered by +the same speedbar.el integration you've always known, except this +one's optionally accessible from the keyboard, just like any other +side window. Hit '' over a nick to spawn a "/QUERY" or a +"Lastlog" (Occur) session. See 'erc-nickbar-mode' for more. + ** The option 'erc-timestamp-use-align-to' is more versatile. While this option has always offered to right-align stamps via the 'display' text property, it's now more effective at doing so when set diff --git a/lisp/erc/erc.el b/lisp/erc/erc.el index 5a3b312b53b..2f26985f74d 100644 --- a/lisp/erc/erc.el +++ b/lisp/erc/erc.el @@ -2006,6 +2006,7 @@ erc-modules :greedy t (const :tag "autoaway: Set away status automatically" autoaway) (const :tag "autojoin: Join channels automatically" autojoin) + (const :tag "bufbar: Show ERC buffers in a side window" bufbar) (const :tag "button: Buttonize URLs, nicknames, and other text" button) (const :tag "capab: Mark unidentified users on servers supporting CAPAB" capab-identify) @@ -2026,6 +2027,7 @@ erc-modules move-to-prompt) (const :tag "netsplit: Detect netsplits" netsplit) (const :tag "networks: Provide data about IRC networks" networks) + (const :tag "nickbar: Show nicknames in a dyamic side window" nickbar) (const :tag "nicks: Uniquely colorize nicknames in target buffers" nicks) (const :tag "noncommands: Don't display non-IRC commands after evaluation" noncommands) diff --git a/test/lisp/erc/erc-tests.el b/test/lisp/erc/erc-tests.el index de472527bde..4432dc58082 100644 --- a/test/lisp/erc/erc-tests.el +++ b/test/lisp/erc/erc-tests.el @@ -1951,9 +1951,9 @@ erc-handle-irc-url (kill-buffer "#chan"))) (defconst erc-tests--modules - '( autoaway autojoin button capab-identify completion dcc fill identd + '( autoaway autojoin bufbar button capab-identify completion dcc fill identd imenu irccontrols keep-place list log match menu move-to-prompt netsplit - networks nicks noncommands notifications notify page readonly + networks nickbar nicks noncommands notifications notify page readonly replace ring sasl scrolltobottom services smiley sound spelling stamp track truncate unmorse xdcc)) -- 2.40.0