{"id":13443427,"url":"https://github.com/drewbarbs/erc-status-sidebar","last_synced_at":"2025-03-20T16:31:17.937Z","repository":{"id":149728531,"uuid":"113926811","full_name":"drewbarbs/erc-status-sidebar","owner":"drewbarbs","description":"A hexchat-like activity overview for ERC channels","archived":true,"fork":false,"pushed_at":"2020-09-07T17:04:14.000Z","size":1890,"stargazers_count":11,"open_issues_count":1,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2024-10-28T06:58:16.744Z","etag":null,"topics":["emacs","erc"],"latest_commit_sha":null,"homepage":null,"language":"Emacs Lisp","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/drewbarbs.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2017-12-12T01:15:24.000Z","updated_at":"2024-03-26T08:33:41.000Z","dependencies_parsed_at":null,"dependency_job_id":"cff20684-4244-423a-9a5d-95b0caae9e6a","html_url":"https://github.com/drewbarbs/erc-status-sidebar","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/drewbarbs%2Ferc-status-sidebar","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/drewbarbs%2Ferc-status-sidebar/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/drewbarbs%2Ferc-status-sidebar/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/drewbarbs%2Ferc-status-sidebar/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/drewbarbs","download_url":"https://codeload.github.com/drewbarbs/erc-status-sidebar/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244649830,"owners_count":20487502,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["emacs","erc"],"created_at":"2024-07-31T03:02:00.575Z","updated_at":"2025-03-20T16:31:17.296Z","avatar_url":"https://github.com/drewbarbs.png","language":"Emacs Lisp","funding_links":[],"categories":["Emacs Lisp"],"sub_categories":[],"readme":"# `erc-status-sidebar`\n\n[![MELPA](https://melpa.org/packages/erc-status-sidebar-badge.svg)](https://melpa.org/#/erc-status-sidebar)\n\nA [hexchat](https://hexchat.github.io/)-like activity overview for ERC\nchannels. This an alternative view for the `erc-track` module. It\ndisplays all the same information `erc-track` puts in the mode line, but\ncan be relegated to a single frame dedicated to IRC.\n\n![Demo GIF of erc-status-sidebar](demo.gif)\n\n## Installation\n\n### From MELPA\n\n1. Follow the guide at https://melpa.org/#/getting-started to add the\n   MELPA package repository\n2. Run `M-x package-list-packages` and select/install the `erc-status-sidebar` package\n\n### Manually\n\n1. Fetch the `erc-status-sidebar.el` repository\n\n   ```bash\n   git clone https://github.com/drewbarbs/erc-status-sidebar.git\n   ```\n\n2. Load it in your emacs init file\n\n   ```el\n   (add-to-list 'load-path \"/path/to/erc-status-sidebar\")\n   (require 'erc-status-sidebar)\n   ```\n\n## Usage\n\nTo open the ERC status sidebar in the current frame use `M-x\nerc-status-sidebar-open` (or `erc-status-sidebar-toggle`). Ensure the\n`erc-track` module is active (a member of `erc-modules`). This is the\ndefault setting for ERC.\n\nTo close the sidebar on the current frame use `M-x\nerc-status-sidebar-close` (or `erc-status-sidebar-toggle`). Provide a\nprefix argument to close the sidebar on all frames.\n\nTo kill the sidebar buffer and close the sidebar on all frames, use\n`M-x erc-status-sidebar-kill`.\n\n## Configuration\n\nTo specify a list message types that *do not* update the status\nsidebar (e.g. `JOIN` and `PART` messages), update the \"Erc Track\nExclude Types\" custom setting: `M-x customize-group \u003cRET\u003e erc-track`.\n\n### Using a single window for ERC buffers\nSometimes (very often in Emacs 26.1), the\n`switch-to-buffer-other-window` function used by `erc-status-sidebar`\nto display chat buffers will split an existing ERC window like this:\n\n![ERC window being split against our wishes](winsplit.gif)\n\nThe intent of this package is to provide\na hexchat-like experience for ERC users, and hexchat only has the\nequivalent of one chat window, so this is undesirable.\n\nTo direct Emacs to use an existing ERC window (rather than creating a\nnew one) add something like the following to your emacs init file:\n\n```el\n(defun my/erc-window-reuse-condition (buf-name action)\n  (with-current-buffer buf-name\n    (if (eq major-mode 'erc-mode)\n        ;; Don't override an explicit action\n        (not action))))\n\n(add-to-list 'display-buffer-alist\n             '(my/erc-window-reuse-condition .\n               ;; NOTE: display-buffer-reuse-mode-window only\n               ;; available in Emacs 26+\n               (display-buffer-reuse-mode-window\n                (inhibit-same-window . t)\n                (inhibit-switch-frame . t)\n                (mode . erc-mode))))\n```\n\nIf using Emacs \u003c 26, you can copy an implementation of\n`display-buffer-reuse-mode-window` (called\n`display-buffer-reuse-major-mode-window`) from\nhttps://stackoverflow.com/a/28311686/756104\n\n## Acknowledgments\n\nCredit to [`sidebar.el`](https://github.com/sebastiencs/sidebar.el)\nand [`outline-toc.el`](https://github.com/abingham/outline-toc.el),\nfrom which all the sidebar window management ideas were lifted.\n\n## License\n\n[GNU General Public License v3](https://www.gnu.org/licenses/gpl-3.0.en.html)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdrewbarbs%2Ferc-status-sidebar","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdrewbarbs%2Ferc-status-sidebar","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdrewbarbs%2Ferc-status-sidebar/lists"}