{"id":21071883,"url":"https://github.com/iron-e/nvim-bufmode","last_synced_at":"2025-05-16T05:32:07.969Z","repository":{"id":54297849,"uuid":"312167913","full_name":"Iron-E/nvim-bufmode","owner":"Iron-E","description":"A mode for manipulating buffers in Neovim.","archived":false,"fork":false,"pushed_at":"2023-02-17T20:04:21.000Z","size":36,"stargazers_count":10,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-04-03T20:51:15.360Z","etag":null,"topics":["buffer-management","buffers","lua","luajit","mode","neovim","nvim","nvim-libmodal","plugin"],"latest_commit_sha":null,"homepage":"","language":"Lua","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Iron-E.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,"publiccode":null,"codemeta":null}},"created_at":"2020-11-12T04:33:34.000Z","updated_at":"2025-03-06T21:50:03.000Z","dependencies_parsed_at":"2024-11-19T18:54:52.414Z","dependency_job_id":null,"html_url":"https://github.com/Iron-E/nvim-bufmode","commit_stats":null,"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Iron-E%2Fnvim-bufmode","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Iron-E%2Fnvim-bufmode/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Iron-E%2Fnvim-bufmode/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Iron-E%2Fnvim-bufmode/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Iron-E","download_url":"https://codeload.github.com/Iron-E/nvim-bufmode/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254474482,"owners_count":22077293,"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":["buffer-management","buffers","lua","luajit","mode","neovim","nvim","nvim-libmodal","plugin"],"created_at":"2024-11-19T18:54:30.207Z","updated_at":"2025-05-16T05:32:04.963Z","avatar_url":"https://github.com/Iron-E.png","language":"Lua","readme":"# nvim-bufmode\n\n`nvim-bufmode` is a plugin that provides a new mode in Neovim for managing buffers.\n\n## Installation\n\nEither use `packadd` or any package manager. I recommend using [lazy.nvim](https://github.com/folke/lazy.nvim).\n\n### Requirements\n\n* Neovim 0.7+\n* [nvim-libmodal](https://github.com/Iron-E/nvim-libmodal)\n\n### Examples\n\n`lazy.nvim`:\n\n```lua\n{'Iron-E/nvim-bufmode',\n  cmd = 'BufmodeEnter', -- don't load until using this command\n  config = true, -- automatically call `bufmode.setup()`; not needed if you specify `opts`\n  dependencies = {\n    'Iron-E/nvim-libmodal',\n    -- 'akinsho/bufferline.nvim', (optional)\n    -- 'romgrk/barbar.nvim', (optional)\n  },\n  keys = {{'\u003cLeader\u003eb', desc = 'Enter buffer mode', mode = 'n'}}, -- don't load until pressing these keys\n  -- opts = {}, (put `setup` options here, e.g. `opts = {enter_mapping = false}`\n},\n```\n\nOther examples:\n\n* [dein.vim](https://github.com/Shougo/dein.vim):\n  * Add `call dein#add('https://github.com/Iron-E/nvim-bufmode')` to `~/.config/nvim/init.vim`\n  * `:call dein#install()`\n* [NeoBundle](https://github.com/Shougo/neobundle.vim):\n  * Add `NeoBundle 'https://github.com/Iron-E/nvim-bufmode'` to `~/.config/nvim/init.vim`\n  * Re-open vim or execute `:source ~/.vimrc`\n* [vim-plug](https://github.com/junegunn/vim-plug):\n  * Add `Plug 'https://github.com/Iron-E/nvim-bufmode'` to `~/.config/nvim/init.vim`\n  * `:PlugInstall` or `$ vim +PlugInstall +qall`\n* [Vundle](https://github.com/gmarik/vundle):\n  * Add `Plugin 'https://github.com/Iron-E/nvim-bufmode'` to `~/.config/nvim/init.vim`\n  * `:PluginInstall` or `$ vim +PluginInstall +qall`\n\n## Usage\n\nEnter `nvim-bufmode` with `\u003cLeader\u003eb` or `:BufmodeEnter`.\n\n| Key                                                | Use                               |\n|:--------------------------------------------------:|:---------------------------------:|\n| `\u003cEsc\u003e`                                            | Leave `bufmode`                   |\n| `?`                                                | Show help message                 |\n| `^`,`0`,`\u003cHome\u003e`,`\u003cUp\u003e`                            | Go to beginning of buffer list.   |\n| `$`,`\u003cEnd\u003e`,`\u003cDown\u003e`                               | Go to end of buffer list.         |\n| `b`,`j`,`h`,`\u003cLeft\u003e`,`\u003cPageUp\u003e`                    | Go to buffer left.                |\n| `w`,`k`,`l`,`\u003cRight\u003e`,`\u003cPageDown\u003e`                 | Go to buffer right.               |\n| `\u003cS-b\u003e`,`\u003cS-j\u003e`,`\u003cS-h\u003e`,`\u003cS-Left\u003e`,`\u003cS-PageUp\u003e`    | Move current buffer to the left.  |\n| `\u003cS-w\u003e`,`\u003cS-k\u003e`,`\u003cS-l\u003e`,`\u003cS-Right\u003e`,`\u003cS-PageDown\u003e` | Move current buffer to the right. |\n| `d`                                                | Delete the current buffer.        |\n| `f`,`g`,`t`                                        | Goto buffer by name.              |\n| `p`                                                | Pick buffer for current window.   |\n| `r`                                                | Replace current buffer with new.  |\n\nSee `:help bufmode-usage` for additional details.\n\n## Configuration\n\nTo customize the plugin, set `vim.g.bufmode_mappings` before loading it, or call\n`setup` after:\n\n```vim\nlet g:bufmode_mappings = {\n  \\ '$': 'blast',\n  \\ '0': 'bfirst',\n  \\ '?': 'help bufmode-usage',\n  \\ 'b': 'bprevious',\n  \\ 'd': 'silent! bdelete',\n  \\ 'w': 'bnext',\n}\n```\n```lua\nrequire('bufmode').setup {\n  enter_mapping = '\u003cleader\u003eb', -- false to disable\n  bufferline = false, -- add bufferline.nvim keymaps\n  barbar = false, -- add barbar.nvim keymaps\n  keymaps = { -- defaults:\n    ['$'] = 'blast',\n    ['0'] = 'bfirst',\n    ['?'] = 'help bufmode-usage',\n    ['b'] = 'bprevious',\n    ['d'] = 'silent! bdelete',\n    ['w'] = 'bnext',\n  }\n}\n```\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Firon-e%2Fnvim-bufmode","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Firon-e%2Fnvim-bufmode","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Firon-e%2Fnvim-bufmode/lists"}