fix(pass): reduce fileInfo calls to fit noctalia's CPU budget (#228)

This commit is contained in:
emrtnn
2026-08-03 08:16:43 -04:00
committed by GitHub
parent d3185605b6
commit 502de4605d
2 changed files with 27 additions and 25 deletions
+1 -1
View File
@@ -1,6 +1,6 @@
id = "emrtnn/pass"
name = "Pass"
version = "0.0.1"
version = "0.1.0"
plugin_api = 3
author = "emrtnn"
license = "MIT"
+26 -24
View File
@@ -29,32 +29,34 @@ local function scan(dir, prefix)
for _, name in ipairs(names) do
-- Ignore hidden files/directories (.git, .extensions, .gpg-id, ...)
if name:sub(1, 1) ~= "." then
local full = dir .. "/" .. name
local info = noctalia.fileInfo(full)
-- listDir already proved the name exists, so an entry needs no stat.
-- Only non-entry names get one, to decide whether to recurse.
if name:sub(-4) == ".gpg" then
local path = prefix .. name:sub(1, -5)
if info then
if info.isDir then
local title = path
local subtitle = ""
local lastSlash = path:match("^.*()/")
if lastSlash then
subtitle = path:sub(1, lastSlash - 1)
title = path:sub(lastSlash + 1)
end
table.insert(entries, {
id = path,
path = path,
title = title,
subtitle = subtitle,
})
else
local full = dir .. "/" .. name
local info = noctalia.fileInfo(full)
if info and info.isDir then
scan(full, prefix .. name .. "/")
elseif name:sub(-4) == ".gpg" then
local path = prefix .. name:sub(1, -5)
local title = path
local subtitle = ""
local lastSlash = path:match("^.*()/")
if lastSlash then
subtitle = path:sub(1, lastSlash - 1)
title = path:sub(lastSlash + 1)
end
table.insert(entries, {
id = path,
path = path,
title = title,
subtitle = subtitle,
})
end
end
end