local temp_dir = os.getenv("TEMP") or os.getenv("TMP") or "/tmp" local file_name = temp_dir .. "/bookmark.yazi" local save_bookmark = ya.sync(function(state, idx) local folder = Folder:by_kind(Folder.CURRENT) local file = io.open(file_name, "w") if file then file:write(tostring(folder.cwd)) file:close() end end) local jump_bookmark = ya.sync(function(state, idx) local io = require("io") local file = io.open(file_name, "r") if file then local line = file:read("*line") file:close() ya.manager_emit("cd", { line }) ya.manager_emit("arrow", { -99999999 }) end end) return { entry = function(_, args) local action = args[1] if not action then return end if action == "save" then save_bookmark() elseif action == "jump" then jump_bookmark() end end }