From b7a2308d4cca1bd08f515b2db0095e1255f8e078 Mon Sep 17 00:00:00 2001 From: rizkyilhampra Date: Thu, 8 Feb 2024 18:23:29 +0800 Subject: [PATCH] feat: add Noice and Pets plugin --- lazy-lock.json | 4 +- lua/aquila/plugins/noice.lua | 95 ++++++++++++++++++++++++++++++++++++ lua/aquila/plugins/pets.lua | 22 +++++++++ 3 files changed, 120 insertions(+), 1 deletion(-) create mode 100644 lua/aquila/plugins/noice.lua create mode 100644 lua/aquila/plugins/pets.lua diff --git a/lazy-lock.json b/lazy-lock.json index 001c558..8fb5f52 100644 --- a/lazy-lock.json +++ b/lazy-lock.json @@ -14,6 +14,7 @@ "gitsigns.nvim": { "branch": "main", "commit": "2c2463dbd82eddd7dbab881c3a62cfbfbe3c67ae" }, "harpoon": { "branch": "harpoon2", "commit": "a38be6e0dd4c6db66997deab71fc4453ace97f9c" }, "hlsearch.nvim": { "branch": "main", "commit": "fdeb60b890d15d9194e8600042e5232ef8c29b0e" }, + "hologram.nvim": { "branch": "main", "commit": "c91aa77121162d8ff554b18a487a3f60677447f2" }, "hover.nvim": { "branch": "main", "commit": "4d04667cf3d6b22379e02ccef6a2fdc6e8837d56" }, "indent-blankline.nvim": { "branch": "master", "commit": "12e92044d313c54c438bd786d11684c88f6f78cd" }, "lazy.nvim": { "branch": "main", "commit": "aedcd79811d491b60d0a6577a9c1701063c2a609" }, @@ -27,6 +28,7 @@ "neo-tree.nvim": { "branch": "v3.x", "commit": "77d9f484b88fd380386b46ed9206e5374d69d9d8" }, "neoconf.nvim": { "branch": "main", "commit": "ccf3c1c9bf7f4dbd5d26158b8934a6d8ee631ca2" }, "neodev.nvim": { "branch": "main", "commit": "0ee95ecefc8ea45898a0383364f736e098c8703f" }, + "noice.nvim": { "branch": "main", "commit": "bf67d70bd7265d075191e7812d8eb42b9791f737" }, "none-ls.nvim": { "branch": "main", "commit": "c10b7be7751aee820a02f2d1fafe76bc316fe223" }, "nui.nvim": { "branch": "main", "commit": "35da9ca1de0fc4dda96c2e214d93d363c145f418" }, "nvim-autopairs": { "branch": "master", "commit": "096d0baecc34f6c5d8a6dd25851e9d5ad338209b" }, @@ -41,7 +43,7 @@ "nvim-web-devicons": { "branch": "master", "commit": "313d9e7193354c5de7cdb1724f9e2d3f442780b0" }, "obsidian.nvim": { "branch": "main", "commit": "32de09d0c737d314ff629068902c4657c244d55b" }, "peek.nvim": { "branch": "master", "commit": "4163a48f190d2b2d94840be3eb38b4af83961ebe" }, - "playground": { "branch": "master", "commit": "ba48c6a62a280eefb7c85725b0915e021a1a0749" }, + "pets.nvim": { "branch": "main", "commit": "747eb5e54fe8b10f4c7ce2881637d1c17b04f229" }, "plenary.nvim": { "branch": "master", "commit": "4f71c0c4a196ceb656c824a70792f3df3ce6bb6d" }, "presence.nvim": { "branch": "main", "commit": "87c857a56b7703f976d3a5ef15967d80508df6e6" }, "promise-async": { "branch": "main", "commit": "94f6f03c6c1e2aab551aacdf0c1e597a7269abb6" }, diff --git a/lua/aquila/plugins/noice.lua b/lua/aquila/plugins/noice.lua new file mode 100644 index 0000000..afdd08f --- /dev/null +++ b/lua/aquila/plugins/noice.lua @@ -0,0 +1,95 @@ +return { + "folke/noice.nvim", + event = "VeryLazy", + dependencies = { + "MunifTanjim/nui.nvim", + "rcarriga/nvim-notify", + }, + opts = { + lsp = { + -- override markdown rendering so that **cmp** and other plugins use **Treesitter** + override = { + ["vim.lsp.util.convert_input_to_markdown_lines"] = true, + ["vim.lsp.util.stylize_markdown"] = true, + ["cmp.entry.get_documentation"] = true, -- requires hrsh7th/nvim-cmp + }, + hover = { + enabled = false + }, + signature = { + enabled = false + }, + documentation = { + enabled = false + } + }, + -- you can enable a preset for easier configuration + presets = { + bottom_search = false, -- use a classic bottom cmdline for search + long_message_to_split = true, -- long messages will be sent to a split + inc_rename = false, -- enables an input dialog for inc-rename.nvim + lsp_doc_border = false, -- add a border to hover docs and signature help + command_palette = { + views = { + cmdline_popup = { + position = { + row = "50%", + col = "50%", + }, + size = { + min_width = 60, + width = "auto", + height = "auto", + }, + }, + cmdline_popupmenu = { + position = { + row = "80%", + col = "50%", + }, + }, + }, + }, + }, + views = { + mini = { + win_options = { + winblend = 0, + }, + } + }, + routes = { + { + filter = { event = "msg_show", kind = "search_count" }, + opts = { skip = true }, + }, + { + filter = { + event = "msg_show", + kind = "", + find = "written", + }, + opts = { skip = true }, + }, + { + view = "split", + filter = { event = "msg_show", min_height = 20 }, + }, + }, + }, + config = function(_, opts) + require("noice").setup(opts) + + require("lualine").setup({ + sections = { + lualine_x = { + { + require("noice").api.statusline.mode.get, + cond = require("noice").api.statusline.mode.has, + color = { fg = "#ff9e64" }, + } + }, + }, + }) + end +} diff --git a/lua/aquila/plugins/pets.lua b/lua/aquila/plugins/pets.lua new file mode 100644 index 0000000..15ed6ad --- /dev/null +++ b/lua/aquila/plugins/pets.lua @@ -0,0 +1,22 @@ +return { + "giusgad/pets.nvim", + dependencies = { "MunifTanjim/nui.nvim", "giusgad/hologram.nvim" }, + config = function() + require("pets").setup({ + row = 1, -- the row (height) to display the pet at (higher row means the pet is lower on the screen), must be 1<=row<=10 + col = 0, -- the column to display the pet at (set to high number to have it stay still on the right side) + speed_multiplier = 1, -- you can make your pet move faster/slower. If slower the animation will have lower fps. + default_pet = "dog", -- the pet to use for the PetNew command + default_style = "brown", -- the style of the pet to use for the PetNew command + random = false, -- whether to use a random pet for the PetNew command, overrides default_pet and default_style + death_animation = true, -- animate the pet's death, set to false to feel less guilt -- currently no animations are available + popup = { -- popup options, try changing these if you see a rectangle around the pets + width = "30%", -- can be a string with percentage like "45%" or a number of columns like 45 + winblend = 100, -- winblend value - see :h 'winblend' - only used if avoid_statusline is false + hl = { Normal = "Normal" }, -- hl is only set if avoid_statusline is true, you can put any hl group instead of "Normal" + avoid_statusline = true, -- if winblend is 100 then the popup is invisible and covers the statusline, if that + -- doesn't work for you then set this to true and the popup will use hl and will be spawned above the statusline (hopefully) + } + }) + end +}