Merge branch 'main' into last_dir_mode

This commit is contained in:
Diogo Duarte
2025-02-26 10:21:12 +00:00
2 changed files with 38 additions and 12 deletions

View File

@@ -1,3 +1,4 @@
--- @since 25.2.7
-- stylua: ignore
local SUPPORTED_KEYS = {
{ on = "0"}, { on = "1"}, { on = "2"}, { on = "3"}, { on = "4"},
@@ -125,9 +126,7 @@ end)
local get_last_mode = ya.sync(function(state) return state.last_mode end)
local save_last_dir = ya.sync(function(state)
ps.sub("cd", function()
_save_last(state.last_persist, false)
end)
ps.sub("cd", function() _save_last(state.last_persist, false) end)
ps.sub("hover", function()
local file = _get_bookmark_file()
@@ -136,19 +135,17 @@ local save_last_dir = ya.sync(function(state)
end)
end)
local save_last_jump = ya.sync(function(state)
_save_last(state.last_persist, true)
end)
local save_last_jump = ya.sync(function(state) _save_last(state.last_persist, true) end)
local save_last_mark = ya.sync(function(state)
_save_last(state.last_persist, true)
end)
local save_last_mark = ya.sync(function(state) _save_last(state.last_persist, true) end)
local _is_custom_desc_input_enabled = ya.sync(function(state) return state.custom_desc_input end)
-- ***********************************************
-- **============= C O M M A N D S =============**
-- ***********************************************
local save_bookmark = ya.sync(function(state, idx)
local save_bookmark = ya.sync(function(state, idx, custom_desc)
local file = _get_bookmark_file()
state.bookmarks = state.bookmarks or {}
@@ -158,9 +155,14 @@ local save_bookmark = ya.sync(function(state, idx)
_idx = #state.bookmarks + 1
end
local bookmark_desc = tostring(file.url)
if custom_desc then
bookmark_desc = tostring(custom_desc)
end
state.bookmarks[_idx] = {
on = SUPPORTED_KEYS[idx].on,
desc = _generate_description(file),
desc = bookmark_desc,
path = tostring(file.url),
is_parent = file.is_parent,
}
@@ -256,6 +258,19 @@ return {
if action == "save" then
local key = ya.which { cands = SUPPORTED_KEYS, silent = true }
if key then
if _is_custom_desc_input_enabled() then
local value, event = ya.input {
title = "Save with custom description:",
position = { "top-center", y = 3, w = 60 },
value = tostring(_get_bookmark_file().url),
}
if event ~= 1 then
return
end
save_bookmark(key, value)
return
end
save_bookmark(key)
end
return
@@ -331,6 +346,10 @@ return {
state.file_pick_mode = "hover"
end
if type(args.custom_desc_input) == "boolean" then
state.custom_desc_input = args.custom_desc_input
end
state.notify = {
enable = false,
timeout = 1,