From 49ddbcea0ea15399c5a1d0d57c2d43547bc346be Mon Sep 17 00:00:00 2001 From: Felipe Silveira Date: Sun, 17 Mar 2024 00:27:31 +0000 Subject: [PATCH] feat: add tmux integration Former-commit-id: 99d4b68b33e2f93679549724bc68a0dbb62177bf --- nvim/lua/plugins/tmux.lua | 63 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 63 insertions(+) create mode 100644 nvim/lua/plugins/tmux.lua diff --git a/nvim/lua/plugins/tmux.lua b/nvim/lua/plugins/tmux.lua new file mode 100644 index 0000000..929c16b --- /dev/null +++ b/nvim/lua/plugins/tmux.lua @@ -0,0 +1,63 @@ +return { + { + "aserowy/tmux.nvim", + keys = { "", "", "", "", "", "", "", "" }, + opts = { + copy_sync = { + -- enables copy sync. by default, all registers are synchronized. + -- to control which registers are synced, see the `sync_*` options. + enable = true, + + -- ignore specific tmux buffers e.g. buffer0 = true to ignore the + -- first buffer or named_buffer_name = true to ignore a named tmux + -- buffer with name named_buffer_name :) + ignore_buffers = { empty = false }, + + -- TMUX >= 3.2: all yanks (and deletes) will get redirected to system + -- clipboard by tmux + redirect_to_clipboard = false, + + -- offset controls where register sync starts + -- e.g. offset 2 lets registers 0 and 1 untouched + register_offset = 0, + + -- overwrites vim.g.clipboard to redirect * and + to the system + -- clipboard using tmux. If you sync your system clipboard without tmux, + -- disable this option! + sync_clipboard = true, + + -- synchronizes registers *, +, unnamed, and 0 till 9 with tmux buffers. + --sync_registers = true, + sync_registers = false, -- avoid lagging when sync register + + -- syncs deletes with tmux clipboard as well, it is adviced to + -- do so. Nvim does not allow syncing registers 0 and 1 without + -- overwriting the unnamed register. Thus, ddp would not be possible. + sync_deletes = true, + + -- syncs the unnamed register with the first buffer entry from tmux. + sync_unnamed = true, + }, + navigation = { + -- cycles to opposite pane while navigating into the border + cycle_navigation = true, + + -- enables default keybindings (C-hjkl) for normal mode + enable_default_keybindings = true, + + -- prevents unzoom tmux when navigating beyond vim border + persist_zoom = false, + }, + resize = { + -- enables default keybindings (A-hjkl) for normal mode + enable_default_keybindings = true, + + -- sets resize steps for x axis + resize_step_x = 1, + + -- sets resize steps for y axis + resize_step_y = 1, + }, + }, + }, +}