use my own snippets

This commit is contained in:
DanRoscigno 2023-06-08 14:32:52 -04:00
parent 0d3c6c9e2b
commit e1588a6eef
2 changed files with 66 additions and 2 deletions

View File

@ -106,7 +106,7 @@ require('lazy').setup({
'hrsh7th/cmp-nvim-lsp',
-- Adds a number of user-friendly snippets
'rafamadriz/friendly-snippets',
--'rafamadriz/friendly-snippets',
},
},
@ -472,8 +472,14 @@ mason_lspconfig.setup_handlers {
-- See `:help cmp`
local cmp = require 'cmp'
local luasnip = require 'luasnip'
-- This next line, along with a line earlier which provides a collection
-- of snippets from GitHub: 'rafamadriz/friendly-snippets' loads a bunch of snippets.
-- I prefer to write my own.
--
--require('luasnip.loaders.from_vscode').lazy_load()
--require("luasnip.loaders.from_vscode").lazy_load({ paths = { "/home/droscigno/.config/nvim/my-cool-snippets/markdown.json" } })
require("luasnip.loaders.from_lua").load({ paths = "~/.config/nvim/snippets/" })
luasnip.config.setup {}
cmp.setup {

58
snippets/markdown.lua Normal file
View File

@ -0,0 +1,58 @@
require("luasnip.session.snippet_collection").clear_snippets "text"
local ls = require "luasnip"
local s = ls.s
local i = ls.insert_node
local fmta = require("luasnip.extras.fmt").fmta
ls.add_snippets("markdown", {
s(
"ytv",
fmta(
[[
<div class='vimeo-container'>
<iframe src="//www.youtube.com/embed/[youtubecode]"
width="640"
height="360"
frameborder="0"
allow="autoplay;
fullscreen;
picture-in-picture"
allowfullscreen>
</iframe>
</div>
]],
{
youtubecode = i(1),
},
{ delimiters = "[]" }
)
),
s(
"trl",
fmta(
[[
<div class='transparent-table'>
|||
|------|----|
|<img src={require('./images/%courseimage+.png').default} class="image" alt="course logo" style={{width: '16rem', 'background-color': 'transparent'}}/>|ClickHouse provides free training on %coursetopic+ and many other topics. The [%coursetopic2+ training course](https://learn.clickhouse.com/visitor_catalog_class/show/%coursecode+/?utm_source=clickhouse&utm_medium=docs) is a good place to start.|
</div>
]],
{
courseimage = i(1),
coursetopic = i(2),
coursetopic2 = i(3),
coursecode = i(4),
},
{ delimiters = "%+" }
)
),
})