From b77564a51f069a08b0c4cb68c9e1b84e05a24eb3 Mon Sep 17 00:00:00 2001 From: bivashy Date: Sun, 1 Jun 2025 16:03:30 +0500 Subject: [PATCH] Add java snippets powered by LuaSnip --- lua/options.lua | 3 +++ lua/snippets/java.lua | 20 ++++++++++++++++++++ 2 files changed, 23 insertions(+) create mode 100644 lua/snippets/java.lua diff --git a/lua/options.lua b/lua/options.lua index 2e4790e..fb9fe35 100644 --- a/lua/options.lua +++ b/lua/options.lua @@ -1,6 +1,9 @@ require "nvchad.options" +local g = vim.g local o = vim.o o.shiftwidth = 4 o.tabstop = 4 o.softtabstop = 4 + +g.lua_snippets_path = vim.fn.stdpath "config" .. "/lua/snippets" diff --git a/lua/snippets/java.lua b/lua/snippets/java.lua new file mode 100644 index 0000000..d539f77 --- /dev/null +++ b/lua/snippets/java.lua @@ -0,0 +1,20 @@ +local ls = require "luasnip" +local s = ls.snippet +local t = ls.text_node +local i = ls.insert_node +local f = ls.function_node + +-- Function to get the current class name from filename +local function get_class_name() + local filename = vim.fn.expand "%:t:r" -- Get filename without extension + return filename +end + +return { + -- Logger with automatic class name detection + s("logger", { + t "private static final Logger log = LoggerFactory.getLogger(", + f(get_class_name, {}), + t ".class);", + }), +}