AstroVimConfig/lua/plugins/user.lua

148 lines
5.8 KiB
Lua
Raw Normal View History

2026-02-22 11:26:18 +00:00
-- if true then return {} end -- WARN: REMOVE THIS LINE TO ACTIVATE THIS FILE
2025-03-29 09:15:27 +00:00
-- You can also add or configure plugins by creating files in this `plugins/` folder
-- PLEASE REMOVE THE EXAMPLES YOU HAVE NO INTEREST IN BEFORE ENABLING THIS FILE
-- Here are some examples:
2026-02-22 11:26:18 +00:00
--@type LazySpec
2025-03-29 09:15:27 +00:00
return {
2026-02-22 11:26:18 +00:00
--
-- -- == Examples of Adding Plugins ==
--
-- "andweeb/presence.nvim",
-- {
-- "ray-x/lsp_signature.nvim",
-- event = "BufRead",
-- config = function() require("lsp_signature").setup() end,
-- },
--
-- -- == Examples of Overriding Plugins ==
--
-- -- customize dashboard options
-- {
-- "folke/snacks.nvim",
-- opts = {
-- dashboard = {
-- preset = {
-- header = table.concat({
-- " █████ ███████ ████████ ██████ ██████ ",
-- "██ ██ ██ ██ ██ ██ ██ ██",
-- "███████ ███████ ██ ██████ ██ ██",
-- "██ ██ ██ ██ ██ ██ ██ ██",
-- "██ ██ ███████ ██ ██ ██ ██████ ",
-- "",
-- "███  ██ ██  ██ ██ ███  ███",
-- "████  ██ ██  ██ ██ ████  ████",
-- "██ ██  ██ ██  ██ ██ ██ ████ ██",
-- "██  ██ ██  ██  ██  ██ ██  ██  ██",
-- "██   ████   ████   ██ ██  ██",
-- }, "\n"),
-- },
-- },
-- },
-- },
--
-- -- You can disable default plugins as follows:
-- { "max397574/better-escape.nvim", enabled = false },
--
-- -- You can also easily customize additional setup of plugins that is outside of the plugin's setup call
-- {
-- "L3MON4D3/LuaSnip",
-- config = function(plugin, opts)
-- require "astronvim.plugins.configs.luasnip"(plugin, opts) -- include the default astronvim config that calls the setup call
-- -- add more custom luasnip configuration such as filetype extend or custom snippets
-- local luasnip = require "luasnip"
-- luasnip.filetype_extend("javascript", { "javascriptreact" })
-- end,
-- },
--
-- {
-- "windwp/nvim-autopairs",
-- config = function(plugin, opts)
-- require "astronvim.plugins.configs.nvim-autopairs"(plugin, opts) -- include the default astronvim config that calls the setup call
-- -- add more custom autopairs configuration such as custom rules
-- local npairs = require "nvim-autopairs"
-- local Rule = require "nvim-autopairs.rule"
-- local cond = require "nvim-autopairs.conds"
-- npairs.add_rules(
-- {
-- Rule("$", "$", { "tex", "latex" })
-- -- don't add a pair if the next character is %
-- :with_pair(cond.not_after_regex "%%")
-- -- don't add a pair if the previous character is xxx
-- :with_pair(
-- cond.not_before_regex("xxx", 3)
-- )
-- -- don't move right when repeat character
-- :with_move(cond.none())
-- -- don't delete if the next character is xx
-- :with_del(cond.not_after_regex "xx")
-- -- disable adding a newline when you press <cr>
-- :with_cr(cond.none()),
-- },
-- -- disable for .vim files, but it work for another filetypes
-- Rule("a", "a", "-vim")
-- )
-- end,
-- },
2025-03-29 09:15:27 +00:00
{
2026-02-22 11:26:18 +00:00
"myakove/homeassistant-nvim",
dependencies = {
"neovim/nvim-lspconfig", -- Required for LSP
"nvim-telescope/telescope.nvim", -- Optional, for entity picker
2025-03-29 09:15:27 +00:00
},
2026-02-22 11:26:18 +00:00
event = { "BufRead", "BufNewFile" }, -- Load on file open
config = function()
require("homeassistant").setup {
lsp = {
enabled = true,
-- LSP server command (default: homeassistant-lsp --stdio)
cmd = { "homeassistant-lsp", "--stdio" },
-- File types to attach LSP to
filetypes = { "yaml", "yaml.homeassistant", "python", "json" },
-- LSP server settings
settings = {
homeassistant = {
host = "ws://192.168.5.249:8123/api/websocket",
token = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiI0MDVjMjY3NzVlMzk0NDhkOTI0NTE0OWNhOGZmMWIwYiIsImlhdCI6MTc2ODQ3ODYyOSwiZXhwIjoyMDgzODM4NjI5fQ.2-mN42_ebqwo7VPRTqwSb7ieBDboipJbnXea-g7Quro",
timeout = 5000,
},
cache = {
enabled = true,
ttl = 300, -- 5 minutes
},
diagnostics = {
enabled = true,
debounce = 500,
},
},
},
-- Optional: UI settings
-- ui = {
-- dashboard = {
-- width = 0.8,
-- height = 0.8,
-- border = "rounded",
-- },
-- },
-- Optional: Custom keymaps (set to false to disable defaults)
-- keymaps = {
-- dashboard = "<leader>hd",
-- picker = "<leader>hp",
-- reload_cache = "<leader>hr",
-- debug = "<leader>hD",
-- edit_dashboard = "<leader>he",
-- },
}
2025-03-29 09:15:27 +00:00
end,
},
{
2026-02-22 11:26:18 +00:00
"nosduco/remote-sshfs.nvim",
dependencies = { "nvim-telescope/telescope.nvim", "nvim-lua/plenary.nvim" },
opts = {
-- Refer to the configuration section below
-- or leave empty for defaults
},
2025-03-29 09:15:27 +00:00
},
}