···991010Choosing an entry from the menu (by hitting enter) will paste it into the currently open buffer at the cursor position.
11111212+YankBank also offers persistence between sessions, meaning that you won't lose your yanks after closing and reopening a session (see [persistence](#Persistence)).
1313+1214### Screenshots
13151416
···1719It will be populated further for each yank or deletion in that session.
18201921## Installation and Setup
2222+2323+#### Without persistence:
20242125Lazy:
2226```lua
···2832}
2933```
30343131-Packer:
3535+#### With Persistence
3636+3737+Lazy:
3238```lua
3333-use {
3939+{
3440 "ptdewey/yankbank-nvim",
4141+ dependencies = "kkharji/sqlite.lua",
3542 config = function()
3636- require('yankbank').setup()
4343+ require('yankbank').setup({
4444+ persist_type = "sqlite",
4545+ })
3746 end,
3847}
3948```
···5665| registers | table container for register overrides | `{ }` |
5766| registers.yank_register | default register to yank from popup to | `"+"` |
5867| persist_type | string defining persistence type "memory" or "sqlite" | `"memory"` |
5959-| persist_path | string defining path for persistence file/db file | `"~/.local/share/nvim/lazy/yankbank-nvim"` (if installed with lazy) |
606861696270#### Example Configuration
63716472```lua
6565- config = function()
6666- require('yankbank').setup({
6767- max_entries = 9,
6868- sep = "",
6969- num_behavior = "prefix",
7070- focus_gain_poll = true,
7171- keymaps = {
7272- navigation_next = "j",
7373- navigation_prev = "k",
7474- },
7575- num_behavior = "prefix",
7676- persist_type = "sqlite",
7777- registers = {
7878- yank_register = "+",
7979- },
8080- })
8181- end,
7373+config = function()
7474+ require('yankbank').setup({
7575+ max_entries = 9,
7676+ sep = "",
7777+ num_behavior = "prefix",
7878+ focus_gain_poll = true,
7979+ keymaps = {
8080+ paste = "<CR>",
8181+ },
8282+ num_behavior = "prefix",
8383+ persist_type = "sqlite",
8484+ registers = {
8585+ yank_register = "+",
8686+ },
8787+ })
8888+end,
8289```
83908491If no separator is desired, pass in an empty string for `sep`
···8895- `num_behavior = "jump"` jumps to entry matching the pressed number key (i.e. '3' jumps to entry 3)
8996 - Note: If 'max_entries' is a two-digit number, there will be a delay upon pressing numbers that prefix a valid entry.
90979191-#### Persistence
9898+### Persistence
9299If persistence between sessions is desired, sqlite.lua will be used to create a persistent store for recent yanks in the plugin root directory.
93100To utilize sqlite persistence, `"kkharji/sqlite.lua"` must be added as a dependency in your config, and `persist_type` must be set to `"sqlite"`:
94101
+34-23
doc/yankbank-nvim.txt
···2929Choosing an entry from the menu (by hitting enter) will paste it into the
3030currently open buffer at the cursor position.
31313232+YankBank also offers persistence between sessions, meaning that you won’t
3333+lose your yanks after closing and reopening a session (see
3434+|yankbank-nvim-persistence|.
3535+32363337SCREENSHOTS ~
3438···39434044INSTALLATION AND SETUP *yankbank-nvim-yankbank-installation-and-setup*
41454646+4747+WITHOUT PERSISTENCE:
4848+4249Lazy:
43504451>lua
···5057 }
5158<
52595353-Packer:
6060+6161+WITH PERSISTENCE
6262+6363+Lazy:
54645565>lua
5656- use {
6666+ {
5767 "ptdewey/yankbank-nvim",
6868+ dependencies = "kkharji/sqlite.lua",
5869 config = function()
5959- require('yankbank').setup()
7070+ require('yankbank').setup({
7171+ persist_type = "sqlite",
7272+ })
6073 end,
6174 }
6275<
···7790| | registers | table container for register overrides | `{ }` | |
7891registers.yank_register | default register to yank from popup to | `"+"` | |
7992persist_type | string defining persistence type "memory" or "sqlite" |
8080-`"memory"` | | persist_path | string defining path for persistence file/db file
8181-| `"~/.local/share/nvim/lazy/yankbank-nvim"` (if installed with lazy) |
9393+`"memory"` |
829483958496EXAMPLE CONFIGURATION
85978698>lua
8787- config = function()
8888- require('yankbank').setup({
8989- max_entries = 9,
9090- sep = "",
9191- num_behavior = "prefix",
9292- focus_gain_poll = true,
9393- keymaps = {
9494- navigation_next = "j",
9595- navigation_prev = "k",
9696- },
9797- num_behavior = "prefix",
9898- persist_type = "sqlite",
9999- registers = {
100100- yank_register = "+",
101101- },
102102- })
103103- end,
9999+ config = function()
100100+ require('yankbank').setup({
101101+ max_entries = 9,
102102+ sep = "",
103103+ num_behavior = "prefix",
104104+ focus_gain_poll = true,
105105+ keymaps = {
106106+ paste = "<CR>",
107107+ },
108108+ num_behavior = "prefix",
109109+ persist_type = "sqlite",
110110+ registers = {
111111+ yank_register = "+",
112112+ },
113113+ })
114114+ end,
104115<
105116106117If no separator is desired, pass in an empty string for `sep`
···113124upon pressing numbers that prefix a valid entry.
114125115126116116-PERSISTENCE
127127+PERSISTENCE ~
117128118129If persistence between sessions is desired, sqlite.lua will be used to create a
119130persistent store for recent yanks in the plugin root directory. To utilize