✨ feat(nvim): Add divider comment snippets
This commit is contained in:
parent
6278a9ce37
commit
aa883fbe22
4 changed files with 44 additions and 0 deletions
|
@ -1,3 +1,14 @@
|
||||||
-- Autocmds are automatically loaded on the VeryLazy event
|
-- Autocmds are automatically loaded on the VeryLazy event
|
||||||
-- Default autocmds that are always set: https://github.com/LazyVim/LazyVim/blob/main/lua/lazyvim/config/autocmds.lua
|
-- Default autocmds that are always set: https://github.com/LazyVim/LazyVim/blob/main/lua/lazyvim/config/autocmds.lua
|
||||||
-- Add any additional autocmds here
|
-- Add any additional autocmds here
|
||||||
|
|
||||||
|
-- Open help window in a vertical split to the right.
|
||||||
|
vim.api.nvim_create_autocmd("BufWinEnter", {
|
||||||
|
group = vim.api.nvim_create_augroup("help_window_right", {}),
|
||||||
|
pattern = { "*.txt" },
|
||||||
|
callback = function()
|
||||||
|
if vim.o.filetype == "help" then
|
||||||
|
vim.cmd.wincmd("L")
|
||||||
|
end
|
||||||
|
end,
|
||||||
|
})
|
||||||
|
|
|
@ -2,9 +2,13 @@ local ls = require("luasnip")
|
||||||
local s = ls.snippet
|
local s = ls.snippet
|
||||||
local t = ls.text_node
|
local t = ls.text_node
|
||||||
local i = ls.insert_node
|
local i = ls.insert_node
|
||||||
|
local f = ls.function_node
|
||||||
local fmt = require("luasnip.extras.fmt").fmt
|
local fmt = require("luasnip.extras.fmt").fmt
|
||||||
|
local fill = require("snippets.helpers").fill
|
||||||
|
|
||||||
return {
|
return {
|
||||||
|
s({ trig = "dc", desc = "divider comment" }, f(fill, {}, { user_args = { "#% -" } })),
|
||||||
|
|
||||||
s({ trig = "#!", desc = "shebang" }, t("#!/usr/bin/env fish")),
|
s({ trig = "#!", desc = "shebang" }, t("#!/usr/bin/env fish")),
|
||||||
|
|
||||||
s(
|
s(
|
||||||
|
|
21
.config/nvim/lua/snippets/helpers.lua
Normal file
21
.config/nvim/lua/snippets/helpers.lua
Normal file
|
@ -0,0 +1,21 @@
|
||||||
|
local M = {}
|
||||||
|
|
||||||
|
M.fill = function(_, _, args)
|
||||||
|
local chars = {}
|
||||||
|
|
||||||
|
for str in string.gmatch(args, "([^%%]+)") do
|
||||||
|
table.insert(chars, str)
|
||||||
|
end
|
||||||
|
|
||||||
|
local snip = chars[1]
|
||||||
|
|
||||||
|
local _, c = unpack(vim.api.nvim_win_get_cursor(0))
|
||||||
|
|
||||||
|
while #snip < (vim.bo.tw - c - 1) do
|
||||||
|
snip = snip .. chars[2]
|
||||||
|
end
|
||||||
|
|
||||||
|
return snip
|
||||||
|
end
|
||||||
|
|
||||||
|
return M
|
8
.config/nvim/lua/snippets/lua.lua
Normal file
8
.config/nvim/lua/snippets/lua.lua
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
local ls = require("luasnip")
|
||||||
|
local s = ls.snippet
|
||||||
|
local f = ls.function_node
|
||||||
|
local fill = require("snippets.helpers").fill
|
||||||
|
|
||||||
|
return {
|
||||||
|
s({ trig = "dc", desc = "divider comment" }, f(fill, {}, { user_args = { "--% --" } })),
|
||||||
|
}
|
Loading…
Reference in a new issue