少し前から AstroNvim を使うようになった。 導入するだけで洗練されたUIですぐにnvimを使えるしプラグインもまとまっていてとても良い。
ただ個人的に馴染まなかったのがyankした時にクリップボードにもコピーされること。 yankでクリップボードにコピーされることで、想定してなかったペーストが起きたりでちょいストレスになってた。 AstroNvimのデフォルトに適用しようと頑張ったけど、どうしても手癖を矯正できなかったので、クリップボードへのコピーを無効にした。
デフォルトでクリップボードが有効になっている
vimのオプションに opt.clipboardというのがある。
これに unnamedplus が入っているとyankした時にクリップボードにもコピーされる。
luaのコメント通りSSHセッションではこれは無効化されて、ローカルでの操作のときに unnamedplus が有効になる。
if not vim.env.SSH_TTY then -- only set `clipboard` if in SSH session and in neovim 0.10+ opt.clipboard = "unnamedplus" -- connection to the system clipboard end
無効にする
~/.config/nvim/lua/plugins/astrocore.luaをいかのように修正すればよい。
- 行頭の
if true then return {} endを削除するかコメントアウト vim.opt.clipboardを空にする設定を入れる
❯ cat ~/.config/nvim/lua/plugins/astrocore.lua ⭐️↓を削除 or コメントアウト -- if true then return {} end -- WARN: REMOVE THIS LINE TO ACTIVATE THIS FILE -- AstroCore provides a central place to modify mappings, vim options, autocommands, and more! -- Configuration documentation can be found with `:h astrocore` -- NOTE: We highly recommend setting up the Lua Language Server (`:LspInstall lua_ls`) -- as this provides autocomplete and documentation while editing ---@type LazySpec return { "AstroNvim/astrocore", ---@type AstroCoreOpts opts = { -- Configure core features of AstroNvim ... -- vim options can be configured here options = { opt = { -- vim.opt.<key> relativenumber = true, -- sets vim.opt.relativenumber number = true, -- sets vim.opt.number spell = false, -- sets vim.opt.spell signcolumn = "yes", -- sets vim.opt.signcolumn to yes wrap = false, -- sets vim.opt.wrap ⭐️↓追記 clipboard = "", -- sets vim.opt.clipboard }, ... }, ...
自分は先頭行を思いっきり見落としてて clipboard = "" だけを入れた状態で、なんでクリップボード無効にならないんだ?となって危うくハマるところだった。
先頭行に if true then return {} end と書かれていて強制的にreturnしてこのファイルにある設定を一切取り込まないようになってた。
WARN: REMOVE THIS LINE TO ACTIVATE THIS FILEというコメントが書かれているのに😅