From 623c78966d43615a1701bf6e6ed4147b4a98b5ce Mon Sep 17 00:00:00 2001 From: TheSiahxyz <164138827+TheSiahxyz@users.noreply.github.com> Date: Wed, 14 Jan 2026 08:44:53 +0900 Subject: modified plugins/snippets.lua, modified snippets/diary.lua, modified bin/fzffiles --- .../TheSiahxyz/lua/TheSiahxyz/plugins/snippets.lua | 8 ++-- .../TheSiahxyz/lua/TheSiahxyz/snippets/diary.lua | 45 +++++++++++----------- ar/.local/bin/fzffiles | 4 +- 3 files changed, 29 insertions(+), 28 deletions(-) (limited to 'ar') diff --git a/ar/.config/TheSiahxyz/lua/TheSiahxyz/plugins/snippets.lua b/ar/.config/TheSiahxyz/lua/TheSiahxyz/plugins/snippets.lua index 96c52a7..aff6f62 100644 --- a/ar/.config/TheSiahxyz/lua/TheSiahxyz/plugins/snippets.lua +++ b/ar/.config/TheSiahxyz/lua/TheSiahxyz/plugins/snippets.lua @@ -33,25 +33,25 @@ return { vim.cmd.runtime({ args = { "lua/TheSiahxyz/snippets/*.lua" }, bang = true }) -- load custom snippets - vim.keymap.set({ "i", "x" }, "", function() + vim.keymap.set({ "i", "x" }, "", function() if ls.expand_or_jumpable() then ls.expand_or_jump() end end, { silent = true, desc = "Expand snippet or jump to the next snippet node" }) - vim.keymap.set({ "i", "x" }, "", function() + vim.keymap.set({ "i", "x" }, "", function() if ls.jumpable(-1) then ls.jump(-1) end end, { silent = true, desc = "Previous spot in the snippet" }) - vim.keymap.set({ "i", "x" }, "", function() + vim.keymap.set({ "i", "s" }, "", function() if ls.choice_active() then ls.change_choice(1) end end, { silent = true, desc = "Next snippet choice" }) - vim.keymap.set({ "i", "x" }, "", function() + vim.keymap.set({ "i", "s" }, "", function() if ls.choice_active() then ls.change_choice(-1) end diff --git a/ar/.config/TheSiahxyz/lua/TheSiahxyz/snippets/diary.lua b/ar/.config/TheSiahxyz/lua/TheSiahxyz/snippets/diary.lua index f1c636b..4f233d1 100644 --- a/ar/.config/TheSiahxyz/lua/TheSiahxyz/snippets/diary.lua +++ b/ar/.config/TheSiahxyz/lua/TheSiahxyz/snippets/diary.lua @@ -5,37 +5,38 @@ local i = ls.insert_node local f = ls.function_node local c = ls.choice_node local t = ls.text_node +local d = ls.dynamic_node +local sn = ls.snippet_node local fmt = require("luasnip.extras.fmt").fmta -local function bgm_list() - local handle = io.popen("ssh root@thesiah.xyz 'ls /var/www/thesiah/bgm/' 2>/dev/null") - if not handle then - return nil - end +local function bgm_node_generator() + return function() + local handle = io.popen("ssh root@thesiah.xyz 'ls /var/www/thesiah/bgm/' 2>/dev/null") + if not handle then + return sn(nil, { i(1, "bgm") }) + end - local result = handle:read("*a") - handle:close() + local result = handle:read("*a") + handle:close() - if not result or result == "" then - return nil - end + if not result or result == "" then + return sn(nil, { i(1, "bgm") }) + end - local choices = {} - for filename in result:gmatch("[^\r\n]+") do - table.insert(choices, t(filename)) - end + local choices = {} + for filename in result:gmatch("[^\r\n]+") do + table.insert(choices, t(filename)) + end - if #choices == 0 then - return nil - end + if #choices == 0 then + return sn(nil, { i(1, "bgm") }) + end - return choices + return sn(nil, { c(1, choices) }) + end end -local bgm_choices = bgm_list() -local bgm_node = bgm_choices and c(2, bgm_choices) or i(2, "bgm") - local diary_snippet = s( "diary", fmt( @@ -52,7 +53,7 @@ bgm: date = f(function() return os.date("%Y-%m-%d") end, {}), - bgm = bgm_node, + bgm = d(2, bgm_node_generator(), {}), story = i(3), } ) diff --git a/ar/.local/bin/fzffiles b/ar/.local/bin/fzffiles index 9f5cd90..64c7a6d 100755 --- a/ar/.local/bin/fzffiles +++ b/ar/.local/bin/fzffiles @@ -11,7 +11,7 @@ IFS=' files=$(fzf-tmux \ --header "^a pwd ^b public ^d .dotfiles ^f configs ^g git ^h home ^k desktop ^r scripts ^s suckless ^u staged files ^v private ^/ help" \ --preview "selection={}; - clean=\$(printf '%s' \"\$selection\" | sed -e 's/^📄 //' -e 's/^✏️ //' -e 's/^✅ //' -e 's/^❌ //' -e 's/^🔀 //' -e 's/^❓ //'); + clean=\$(printf '%s' \"\$selection\" | sed -e 's/^📄 //' -e 's/^✏ //' -e 's/^✅ //' -e 's/^❌ //' -e 's/^🔀 //' -e 's/^❓ //'); [ -z \"\$clean\" ] && { echo 'No selection'; exit 0; } target=\$(readlink -f \"\$clean\" 2>/dev/null || printf '%s' \"\$clean\"); if [ -z \"\$target\" ]; then @@ -65,7 +65,7 @@ files=$(fzf-tmux \ else if (staged == \"!\" && unstaged == \"!\") icon=\"❌\"; else if (staged != \" \" && staged != \"?\" && unstaged != \" \" && unstaged != \"?\") icon=\"🔀\"; else if (staged != \" \" && staged != \"?\") icon=\"✅\"; - else if (unstaged != \" \") icon=\"✏️\"; + else if (unstaged != \" \") icon=\"✏\"; else icon=\"❓\"; print icon \" \" root \"/\" file }'; else echo 'This is not a git repository.'; fi)" \ -- cgit v1.2.3