-
snippet-converter.nvim
Bundle snippets from multiple sources and convert them to your format of choice.
Cool, I've been thinking to add LuaSnip as a target format to snippet-converter.nvim but I didn't think it'd be worth it. After all, LuaSnip can load VSCode-style snippets just fine and those cover most of the features that UltiSnips snippets support.
-
Stream
Stream - Scalable APIs for Chat, Feeds, Moderation, & Video. Stream helps developers build engaging apps that scale to millions with performant and flexible Chat, Feeds, Moderation, and Video APIs and SDKs powered by a global edge network and enterprise-grade infrastructure.
-
ultisnips_to_luasnip
Python script that converts simple snippets defined in UltiSnips format to LuaSnip snippets
I have been working on converting some of my Ultisnips snippets to LuaSnips and found the process to be quite tedious. I attempted to automate the process and created a script to do so, which can be found here. Some test cases are included. While it's not possible to fully convert Ultisnips snippets to LuaSnip (as it would require converting from Python to Lua), the script is able to handle relatively simple snippets. Even if the snippet doesn't run correctly at first, it should only require a few adjustments to fix. However, since this is the first time I have written a "parser," I would appreciate any assistance, particularly with the recursive (nested) parts of the script.
-
I first started by reading some tutorials but most of those used parser combinators. For me, parser combinators always caused some issues sooner or later (at least in Lua when trying to parse recursive / nested nodes). An example project that uses this technique is vim-vsnip: https://github.com/hrsh7th/vim-vsnip/blob/master/autoload/vsnip/snippet/parser.vim. Later, I found out that Luacheck uses a different approach which I liked better: https://github.com/lunarmodules/luacheck/blob/master/src/luacheck/parser.lua. That's the project that helped me the most while writing my own parsers for different snippet engines.
-
I first started by reading some tutorials but most of those used parser combinators. For me, parser combinators always caused some issues sooner or later (at least in Lua when trying to parse recursive / nested nodes). An example project that uses this technique is vim-vsnip: https://github.com/hrsh7th/vim-vsnip/blob/master/autoload/vsnip/snippet/parser.vim. Later, I found out that Luacheck uses a different approach which I liked better: https://github.com/lunarmodules/luacheck/blob/master/src/luacheck/parser.lua. That's the project that helped me the most while writing my own parsers for different snippet engines.