mirror of
https://github.com/DefectingCat/nvim
synced 2025-07-15 16:51:33 +00:00
add filetypes source for snacks
This commit is contained in:
@ -1,15 +1,15 @@
|
||||
{
|
||||
"LazyVim": { "branch": "main", "commit": "25abbf546d564dc484cf903804661ba12de45507" },
|
||||
"SchemaStore.nvim": { "branch": "main", "commit": "ba7bad63cb96dae5a82e48310beada18e8eeafe5" },
|
||||
"SchemaStore.nvim": { "branch": "main", "commit": "386bdbf18abb6ca103495c5bdbab65e46f3c361d" },
|
||||
"blink.cmp": { "branch": "main", "commit": "022521a8910a5543b0251b21c9e1a1e989745796" },
|
||||
"bufferline.nvim": { "branch": "main", "commit": "655133c3b4c3e5e05ec549b9f8cc2894ac6f51b3" },
|
||||
"catppuccin": { "branch": "main", "commit": "1bf070129c0b6f77cc23f6a2212dcdc868308c52" },
|
||||
"conform.nvim": { "branch": "master", "commit": "2b2b30260203af3b93a7470ac6c8457ddd6e32d9" },
|
||||
"conform.nvim": { "branch": "master", "commit": "a4bb5d6c4ae6f32ab13114e62e70669fa67745b9" },
|
||||
"crates.nvim": { "branch": "main", "commit": "25f31372ab6f504d4fd7cfee836ad459caed8e68" },
|
||||
"flash.nvim": { "branch": "main", "commit": "3c942666f115e2811e959eabbdd361a025db8b63" },
|
||||
"friendly-snippets": { "branch": "main", "commit": "572f5660cf05f8cd8834e096d7b4c921ba18e175" },
|
||||
"gitsigns.nvim": { "branch": "main", "commit": "e399f9748d7cfd8859747c8d6c4e9c8b4d50a1bd" },
|
||||
"grug-far.nvim": { "branch": "main", "commit": "176ba4c42924f4d84ee7d19c9f0081c538f84a88" },
|
||||
"gitsigns.nvim": { "branch": "main", "commit": "39e0d1cd44eafed5f30c372e377ab1cb1781ec9f" },
|
||||
"grug-far.nvim": { "branch": "main", "commit": "7df08fff7da6ee08006fe8eaccc3407b89da368b" },
|
||||
"hop.nvim": { "branch": "v2", "commit": "90db1b2c61b820e230599a04fedcd2679e64bd07" },
|
||||
"lazy.nvim": { "branch": "main", "commit": "6c3bda4aca61a13a9c63f1c1d1b16b9d3be90d7a" },
|
||||
"lazydev.nvim": { "branch": "main", "commit": "2367a6c0a01eb9edb0464731cc0fb61ed9ab9d2c" },
|
||||
@ -32,7 +32,7 @@
|
||||
"persistence.nvim": { "branch": "main", "commit": "166a79a55bfa7a4db3e26fc031b4d92af71d0b51" },
|
||||
"plenary.nvim": { "branch": "master", "commit": "857c5ac632080dba10aae49dba902ce3abf91b35" },
|
||||
"render-markdown.nvim": { "branch": "main", "commit": "a1b0988f5ab26698afb56b9c2f0525a4de1195c1" },
|
||||
"rustaceanvim": { "branch": "master", "commit": "cb532f57c1ed2463c66df683468eb3994e554002" },
|
||||
"rustaceanvim": { "branch": "master", "commit": "3567efce84c223519d0dcbe19ebbfb24683ec493" },
|
||||
"snacks.nvim": { "branch": "main", "commit": "bc0630e43be5699bb94dadc302c0d21615421d93" },
|
||||
"supermaven-nvim": { "branch": "main", "commit": "07d20fce48a5629686aefb0a7cd4b25e33947d50" },
|
||||
"todo-comments.nvim": { "branch": "main", "commit": "304a8d204ee787d2544d8bc23cd38d2f929e7cc5" },
|
||||
|
@ -14,7 +14,8 @@ local function set_filetype(patterns, filetype)
|
||||
pattern = patterns,
|
||||
callback = function()
|
||||
local buf = vim.api.nvim_get_current_buf()
|
||||
vim.api.nvim_buf_set_option(buf, "filetype", filetype)
|
||||
-- vim.api.nvim_buf_set_option(buf, "filetype", filetype)
|
||||
vim.bo[buf].filetype = filetype
|
||||
end,
|
||||
})
|
||||
end
|
||||
@ -25,12 +26,17 @@ set_filetype({ "*.mdx" }, "markdown")
|
||||
-- 设置 env 文件为 sh 类型
|
||||
set_filetype({ ".env.example", ".env.local", ".env.development", ".env.production" }, "sh")
|
||||
|
||||
-- 设置 json 文件夹为 jsonc 类型
|
||||
set_filetype({ "*.json" }, "jsonc")
|
||||
|
||||
-- 设置终端相关选项
|
||||
local autocmd = vim.api.nvim_create_autocmd
|
||||
autocmd({ "TermOpen" }, {
|
||||
callback = function()
|
||||
local buf = vim.api.nvim_get_current_buf()
|
||||
-- vim.bo[buf].relativenumber = false
|
||||
vim.api.nvim_buf_set_option(buf, "relativenumber", false)
|
||||
-- vim.bo[buf].number = false
|
||||
vim.api.nvim_buf_set_option(buf, "number", false)
|
||||
end,
|
||||
})
|
||||
@ -180,6 +186,7 @@ local function update_winbar(bufnr)
|
||||
-- vim.opt.winbar = winbar
|
||||
-- 检查缓冲区是否支持设置 winbar
|
||||
if vim.api.nvim_buf_is_valid(bufnr) then
|
||||
-- vim.bo[bufnr].winbar = winbar
|
||||
vim.api.nvim_buf_set_option(bufnr, "winbar", winbar)
|
||||
end
|
||||
-- 检查 old_buf 是否有效
|
||||
|
@ -89,3 +89,12 @@ map("n", "<leader>fb", function()
|
||||
},
|
||||
})
|
||||
end, { desc = "Grep Open Buffers" })
|
||||
map("n", "<leader>ct", function()
|
||||
Snacks.picker.pick({
|
||||
source = "filetypes",
|
||||
layout = {
|
||||
preview = "main",
|
||||
preset = "ivy",
|
||||
},
|
||||
})
|
||||
end, { desc = "Change file type" })
|
||||
|
@ -179,6 +179,7 @@ return {
|
||||
-- https://github.com/folke/snacks.nvim/discussions/860#discussioncomment-12027395
|
||||
picker = {
|
||||
sources = {
|
||||
-- change explorer to right
|
||||
explorer = {
|
||||
include = { "ignored", "hidden" },
|
||||
layout = {
|
||||
@ -187,6 +188,34 @@ return {
|
||||
},
|
||||
},
|
||||
},
|
||||
-- add filetypes source
|
||||
filetypes = {
|
||||
name = "filetypes",
|
||||
format = "text",
|
||||
preview = "none",
|
||||
layout = {
|
||||
preview = "main",
|
||||
preset = "ivy",
|
||||
},
|
||||
confirm = function(picker, item)
|
||||
picker:close()
|
||||
if item then
|
||||
vim.schedule(function()
|
||||
vim.cmd("setfiletype " .. item.text)
|
||||
end)
|
||||
end
|
||||
end,
|
||||
finder = function()
|
||||
local items = {}
|
||||
local filetypes = vim.fn.getcompletion("", "filetype")
|
||||
for _, type in ipairs(filetypes) do
|
||||
items[#items + 1] = {
|
||||
text = type,
|
||||
}
|
||||
end
|
||||
return items
|
||||
end,
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
|
Reference in New Issue
Block a user