summaryrefslogtreecommitdiff
path: root/ar/.config/TheSiahxyz/lua
diff options
context:
space:
mode:
Diffstat (limited to 'ar/.config/TheSiahxyz/lua')
-rw-r--r--ar/.config/TheSiahxyz/lua/TheSiahxyz/plugins/ai.lua2
-rw-r--r--ar/.config/TheSiahxyz/lua/TheSiahxyz/plugins/image.lua4
-rw-r--r--ar/.config/TheSiahxyz/lua/TheSiahxyz/plugins/snippets.lua8
-rw-r--r--ar/.config/TheSiahxyz/lua/TheSiahxyz/snippets/diary.lua33
4 files changed, 40 insertions, 7 deletions
diff --git a/ar/.config/TheSiahxyz/lua/TheSiahxyz/plugins/ai.lua b/ar/.config/TheSiahxyz/lua/TheSiahxyz/plugins/ai.lua
index ee97612..90b62e2 100644
--- a/ar/.config/TheSiahxyz/lua/TheSiahxyz/plugins/ai.lua
+++ b/ar/.config/TheSiahxyz/lua/TheSiahxyz/plugins/ai.lua
@@ -349,7 +349,7 @@ return {
vim.keymap.set({ "n", "x" }, "<C-q>", function()
require("opencode").ask("@this: ", { submit = true })
end, { desc = "Ask opencode" })
- vim.keymap.set({ "n", "x" }, "<C-x>", function()
+ vim.keymap.set({ "n", "x" }, "<C-CR>", function()
require("opencode").select()
end, { desc = "Execute opencode action…" })
vim.keymap.set({ "n", "t" }, "<C-.>", function()
diff --git a/ar/.config/TheSiahxyz/lua/TheSiahxyz/plugins/image.lua b/ar/.config/TheSiahxyz/lua/TheSiahxyz/plugins/image.lua
index a4f126f..81fa28b 100644
--- a/ar/.config/TheSiahxyz/lua/TheSiahxyz/plugins/image.lua
+++ b/ar/.config/TheSiahxyz/lua/TheSiahxyz/plugins/image.lua
@@ -64,9 +64,9 @@ return {
local absolute_image_path = current_file_path .. "/" .. image_path
-- Check if the image exists in the current path
if not file_exists(absolute_image_path) then
- -- If not found, search ../Screenshots/
+ -- If not found, search ../screenshots/
local fallback_path = vim.fn.fnamemodify(current_file_path, ":h")
- .. "/Screenshots/"
+ .. "/screenshots/"
.. image_path
if file_exists(fallback_path) then
absolute_image_path = fallback_path
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" }, "<A-L>", function()
+ vim.keymap.set({ "i", "x" }, "<C-L>", 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" }, "<A-H>", function()
+ vim.keymap.set({ "i", "x" }, "<C-H>", function()
if ls.jumpable(-1) then
ls.jump(-1)
end
end, { silent = true, desc = "Previous spot in the snippet" })
- vim.keymap.set({ "i", "x" }, "<A-l>", function()
+ vim.keymap.set({ "i", "s" }, "<C-j>", function()
if ls.choice_active() then
ls.change_choice(1)
end
end, { silent = true, desc = "Next snippet choice" })
- vim.keymap.set({ "i", "x" }, "<A-h>", function()
+ vim.keymap.set({ "i", "s" }, "<C-k>", 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 90528a1..4f233d1 100644
--- a/ar/.config/TheSiahxyz/lua/TheSiahxyz/snippets/diary.lua
+++ b/ar/.config/TheSiahxyz/lua/TheSiahxyz/snippets/diary.lua
@@ -3,15 +3,47 @@ local ls = require("luasnip")
local s = ls.snippet
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_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()
+
+ 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
+
+ if #choices == 0 then
+ return sn(nil, { i(1, "bgm") })
+ end
+
+ return sn(nil, { c(1, choices) })
+ end
+end
+
local diary_snippet = s(
"diary",
fmt(
[[---
title: <title>
date: <date>
+bgm: <bgm>
---
<story>
@@ -21,6 +53,7 @@ date: <date>
date = f(function()
return os.date("%Y-%m-%d")
end, {}),
+ bgm = d(2, bgm_node_generator(), {}),
story = i(3),
}
)