{"id":18865134,"url":"https://github.com/delapouite/kakoune-buffers","last_synced_at":"2026-02-06T07:07:33.746Z","repository":{"id":47029140,"uuid":"93647849","full_name":"Delapouite/kakoune-buffers","owner":"Delapouite","description":"Ease navigation between opened buffers","archived":false,"fork":false,"pushed_at":"2023-09-28T15:07:09.000Z","size":216,"stargazers_count":68,"open_issues_count":14,"forks_count":8,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-05-30T12:29:05.658Z","etag":null,"topics":["buffers","kakoune","plugin"],"latest_commit_sha":null,"homepage":"http://kakoune.org","language":"KakouneScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Delapouite.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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-06-07T15:00:10.000Z","updated_at":"2025-04-07T05:52:25.000Z","dependencies_parsed_at":"2024-04-16T01:45:46.430Z","dependency_job_id":"9d17bc1f-920f-4a87-a6db-361186a3c282","html_url":"https://github.com/Delapouite/kakoune-buffers","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Delapouite/kakoune-buffers","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Delapouite%2Fkakoune-buffers","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Delapouite%2Fkakoune-buffers/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Delapouite%2Fkakoune-buffers/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Delapouite%2Fkakoune-buffers/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Delapouite","download_url":"https://codeload.github.com/Delapouite/kakoune-buffers/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Delapouite%2Fkakoune-buffers/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":267093819,"owners_count":24034951,"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","status":"online","status_checked_at":"2025-07-25T02:00:09.625Z","response_time":70,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":["buffers","kakoune","plugin"],"created_at":"2024-11-08T04:45:57.872Z","updated_at":"2026-02-06T07:07:33.719Z","avatar_url":"https://github.com/Delapouite.png","language":"KakouneScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# kakoune-buffers\n\n[kakoune](http://kakoune.org) plugin to ease navigation between opened buffers.\n\n## Install\n\nAdd `buffers.kak` to your autoload dir: `~/.config/kak/autoload/`.\n\nOr via [plug.kak](https://github.com/andreyorst/plug.kak):\n\n```\nplug 'delapouite/kakoune-buffers' %{\n  map global normal ^ q\n  map global normal \u003ca-^\u003e Q\n  map global normal q b\n  map global normal Q B\n  map global normal \u003ca-q\u003e \u003ca-b\u003e\n  map global normal \u003ca-Q\u003e \u003ca-B\u003e\n  map global normal b ': enter-buffers-mode\u003cret\u003e' -docstring 'buffers'\n  map global normal B ': enter-user-mode -lock buffers\u003cret\u003e' -docstring 'buffers (lock)'\n}\n```\n\n## Usage\n\nRun the `info-buffers` command. It will display an info box with a numbered list of opened buffers.\n\n- The current buffer is prefixed by a `\u003e`.\n- The alt buffer is prefixed by a `#` (use `ga` to reach it).\n- Modified buffers are prefixed by a `+`.\n\nIf this list gets too big, decrease the `max_list_buffers` option (42 entries by default).\n\nTo jump to a specific buffer index use the `buffer-by-index n` command.\nUse `buffer-first` and `buffer-last` to move to the ends of the list.\nWith `buffer-first-modified`, jump to the first modified buffer.\n\nTo delete all buffers except the current one, use `buffer-only` or the more destructive `buffer-only-force` version.\nYou can also delete all buffers except the ones in the same dir as the current buffer with `buffer-only-directory`.\n\n## User mode\n\nAll these commands are grouped in a dedicated `buffers` user-mode.\n\nWhile opened in `lock` mode, it means that you can press `p` or `n` many times to cycle through your buffers.\nPress `\u003cesc\u003e` to leave this mode.\n\n```\n# Suggested hook\n\nhook global WinDisplay .* info-buffers\n\n# Suggested mappings\n\nmap global user b ':enter-buffers-mode\u003cret\u003e'              -docstring 'buffers…'\nmap global user B ':enter-user-mode -lock buffers\u003cret\u003e'   -docstring 'buffers (lock)…'\n\n# Suggested aliases\n\nalias global bd delete-buffer\nalias global bf buffer-first\nalias global bl buffer-last\nalias global bo buffer-only\nalias global bo! buffer-only-force\n```\n\n## More controversial mappings\n\nAsk yourself: how often do you use macros? If you're like me, not so much thanks to all the cool interactive ways \nto accomplish a task with Kakoune. But they waste a nice spot on the `q` key! Time to free it for something else.\n\nWhat about moving the `b` actions, (*moving word backward*) here instead? It makes sense on a `qwerty` keyboard.\nThe `q` is on the left of `w` which goes the opposite direction. The `q`, `w` and `e` actions are now finally together\njust under your left hand like the 3 musketeers.\n\nTherefore your `b` key is free and you can now use it for `buffer` actions:\n\n```\n# ciao macros\nmap global normal ^ q\nmap global normal \u003ca-^\u003e Q\n\nmap global normal q b\nmap global normal Q B\nmap global normal \u003ca-q\u003e \u003ca-b\u003e\nmap global normal \u003ca-Q\u003e \u003ca-B\u003e\n\nmap global normal b ':enter-buffers-mode\u003cret\u003e'              -docstring 'buffers…'\nmap global normal B ':enter-user-mode -lock buffers\u003cret\u003e'   -docstring 'buffers (lock)…'\n```\n\n## Screenshots\n\n*info* displayed by the `info-buffers` command:\n\n![info-buffers](https://raw.githubusercontent.com/delapouite/kakoune-buffers/master/list-buffers.jpg)\n\n*info* displayed by the `buffers` user-mode:\n\n![mode-buffers](https://raw.githubusercontent.com/delapouite/kakoune-buffers/master/mode-buffers.jpg)\n\n## See also\n\n- [kakoune-cd](https://github.com/Delapouite/kakoune-cd)\n- [kakoune-registers](https://github.com/Delapouite/kakoune-registers)\n- [explore.kak](https://github.com/alexherbo2/explore.kak)\n- [ncurses implementation of a buffer list](https://github.com/mawww/kakoune/pull/1065)\n- [sidetree](https://github.com/topisani/sidetree)\n- [kakoune-buffer-switcher](https://github.com/occivink/kakoune-buffer-switcher)\n\n## Licence\n\nMIT\n\nThanks a lot to [danr](https://github.com/danr) and [occivink](https://github.com/occivink)\nfor the original implementation: https://github.com/occivink/config/blob/master/.config/kak/buflist.kak\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdelapouite%2Fkakoune-buffers","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdelapouite%2Fkakoune-buffers","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdelapouite%2Fkakoune-buffers/lists"}