First custom lua snippets
This commit is contained in:
parent
b8bca37446
commit
9bf991c537
3
init.lua
3
init.lua
@ -23,6 +23,7 @@ require('my_telescope')
|
|||||||
require('my_lspinstall')
|
require('my_lspinstall')
|
||||||
require('my_cmp')
|
require('my_cmp')
|
||||||
require('my_neogen')
|
require('my_neogen')
|
||||||
|
require('my_luasnip')
|
||||||
-------------------- TREE-SITTER ---------------------------
|
-------------------- TREE-SITTER ---------------------------
|
||||||
require('nvim-treesitter.configs').setup({
|
require('nvim-treesitter.configs').setup({
|
||||||
ensure_installed = 'maintained',
|
ensure_installed = 'maintained',
|
||||||
@ -135,8 +136,6 @@ require("project_nvim").setup {
|
|||||||
}
|
}
|
||||||
require('telescope').load_extension('projects')
|
require('telescope').load_extension('projects')
|
||||||
utils.map('n', '<space>p', '<cmd>Telescope projects<cr>')
|
utils.map('n', '<space>p', '<cmd>Telescope projects<cr>')
|
||||||
-------------------- LUASNIP -------------------------------
|
|
||||||
require("luasnip.loaders.from_vscode").load()
|
|
||||||
-------------------- AUTOPAIRS -----------------------------
|
-------------------- AUTOPAIRS -----------------------------
|
||||||
require('nvim-autopairs').setup{}
|
require('nvim-autopairs').setup{}
|
||||||
-------------------- FZF NATIVE ----------------------------
|
-------------------- FZF NATIVE ----------------------------
|
||||||
|
@ -55,6 +55,8 @@ utils.map('v', '<End>', 'g<End>')
|
|||||||
utils.map('v', '<', '<gv')
|
utils.map('v', '<', '<gv')
|
||||||
utils.map('v', '>', '>gv')
|
utils.map('v', '>', '>gv')
|
||||||
|
|
||||||
|
utils.map('n', '<leader>a', '"ayw')
|
||||||
|
|
||||||
-- Highlight word under cursor
|
-- Highlight word under cursor
|
||||||
utils.map('n', 'ü', ":let @/='\\<<C-R>=expand(\"<cword>\")<CR>\\>'<CR>:set hls<CR>", { noremap = true, silent = true })
|
utils.map('n', 'ü', ":let @/='\\<<C-R>=expand(\"<cword>\")<CR>\\>'<CR>:set hls<CR>", { noremap = true, silent = true })
|
||||||
utils.map('v', 'ü', "y:let @/='<C-R>=escape(@\",'/\\')<CR>'<CR>:set hls<CR>") utils.map('v', 'ü', "y:let @/='<C-R>=escape(@\",'/\\')<CR>'<CR>:set hls<CR>", { noremap = true, silent = true })
|
utils.map('v', 'ü', "y:let @/='<C-R>=escape(@\",'/\\')<CR>'<CR>:set hls<CR>") utils.map('v', 'ü', "y:let @/='<C-R>=escape(@\",'/\\')<CR>'<CR>:set hls<CR>", { noremap = true, silent = true })
|
||||||
|
52
lua/my_luasnip.lua
Normal file
52
lua/my_luasnip.lua
Normal file
@ -0,0 +1,52 @@
|
|||||||
|
local ls = require("luasnip")
|
||||||
|
require("luasnip.loaders.from_vscode").load()
|
||||||
|
-- some shorthands...
|
||||||
|
local s = ls.snippet
|
||||||
|
local sn = ls.snippet_node
|
||||||
|
local isn = ls.indent_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 r = ls.restore_node
|
||||||
|
local l = require("luasnip.extras").lambda
|
||||||
|
local rep = 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 fmt = require("luasnip.extras.fmt").fmt
|
||||||
|
local fmta = require("luasnip.extras.fmt").fmta
|
||||||
|
local types = require("luasnip.util.types")
|
||||||
|
local conds = require("luasnip.extras.expand_conditions")
|
||||||
|
|
||||||
|
local function getRegA(capitalize)
|
||||||
|
local clipboard = vim.fn.getreg('a')
|
||||||
|
clipboard = clipboard:gsub('^m_', '')
|
||||||
|
if capitalize then
|
||||||
|
clipboard = clipboard:gsub("^%l", string.upper);
|
||||||
|
end
|
||||||
|
return clipboard
|
||||||
|
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
|
ls.snippets = {
|
||||||
|
cpp = {
|
||||||
|
s('TEST_F_getset',
|
||||||
|
{
|
||||||
|
t('TEST_F('), i(1, 'TestClass'), t(' ,test_'), p(getRegA, false), t({'_set_get)', '{', ' '}),
|
||||||
|
i(2, 'm_object'), t('.set'), p(getRegA, true), t('('), i(3, '32.F'), t({');', ' '}),
|
||||||
|
i(4, 'EXPECT_EQ('), rep(3), t(', '), rep(2), t('.get'), p(getRegA, true), t({'());', ''}),
|
||||||
|
t({'','}', ''})
|
||||||
|
}),
|
||||||
|
s('TEST_fn_getset',
|
||||||
|
{
|
||||||
|
t('TEST_F('), i(1, 'TestClass'), t(' ,test_'), p(getRegA, false), t({'_set_get)', '{', ' '}),
|
||||||
|
i(2, 'm_object'), t('.set'), p(getRegA, true), t('('), i(3, '32.F'), t({');', ' '}),
|
||||||
|
i(4, 'EXPECT_EQ('), rep(3), t(', '), rep(2), t('.get'), p(getRegA, true), t({'());', ''}),
|
||||||
|
t({'','}'})
|
||||||
|
})
|
||||||
|
},
|
||||||
|
}
|
Loading…
x
Reference in New Issue
Block a user