feat: nvim snippets for rust
This commit is contained in:
parent
339df0770b
commit
fd1592e035
66
roles/nvim/files/lua/snippets/rust.lua
Normal file
66
roles/nvim/files/lua/snippets/rust.lua
Normal file
@ -0,0 +1,66 @@
|
||||
local ls = require("luasnip")
|
||||
local s = ls.snippet
|
||||
local sn = ls.snippet_node
|
||||
local t = ls.text_node
|
||||
local i = ls.insert_node
|
||||
local f = ls.function_node
|
||||
local c = ls.choice_node
|
||||
local d = ls.dynamic_node
|
||||
local l = require("luasnip.extras").lambda
|
||||
local r = require("luasnip.extras").rep
|
||||
local p = require("luasnip.extras").partial
|
||||
local m = require("luasnip.extras").match
|
||||
local n = require("luasnip.extras").nonempty
|
||||
local dl = require("luasnip.extras").dynamic_lambda
|
||||
local types = require("luasnip.util.types")
|
||||
|
||||
return {
|
||||
s('derivedebug', t '#[derive(Debug)]'),
|
||||
|
||||
s(':turbofish', { t { '::<' }, i(0), t { '>' } }),
|
||||
|
||||
s('print', {
|
||||
-- t {'println!("'}, i(1), t {' {:?}", '}, i(0), t {');'}}),
|
||||
t { 'println!("' }, i(1), t { ' {' }, i(0), t { ':?}");' } }),
|
||||
|
||||
s('for',
|
||||
{
|
||||
t { 'for ' }, i(1), t { ' in ' }, i(2), t { ' {', '' },
|
||||
i(0),
|
||||
t { '}', '' },
|
||||
}),
|
||||
|
||||
s('struct',
|
||||
{
|
||||
t { '#[derive(Debug)]', '' },
|
||||
t { 'struct ' }, i(1), t { ' {', '' },
|
||||
i(0),
|
||||
t { '}', '' },
|
||||
}),
|
||||
|
||||
s('test',
|
||||
{
|
||||
t { '#[test]', '' },
|
||||
t { 'fn ' }, i(1), t { '() {', '' },
|
||||
t { ' assert' }, i(0), t { '', '' },
|
||||
t { '}' },
|
||||
}),
|
||||
|
||||
s('testcfg',
|
||||
{
|
||||
t { '#[cfg(test)]', '' },
|
||||
t { 'mod ' }, i(1), t { ' {', '' },
|
||||
t { ' #[test]', '' },
|
||||
t { ' fn ' }, i(2), t { '() {', '' },
|
||||
t { ' assert' }, i(0), t { '', '' },
|
||||
t { ' }', '' },
|
||||
t { '}' },
|
||||
}),
|
||||
|
||||
s('if',
|
||||
{
|
||||
t { 'if ' }, i(1), t { ' {', '' },
|
||||
i(0),
|
||||
t { '}' },
|
||||
}),
|
||||
}
|
Loading…
Reference in New Issue
Block a user