local args, _ = ... local id = "" local spawn = "" for i, arg in ipairs(args) do if i <= 1 then id = arg else spawn = spawn .. " " .. arg end end local function exists(id) local is_in_array = false local cons = scroll.scratchpad_get_containers() for _, con in ipairs(cons) do local views = scroll.container_get_views(con) for _, view in ipairs(views) do local app_id = scroll.view_get_app_id(view) if (app_id == id) then is_in_array = true end end end return is_in_array end local function is_focused(id) local view = scroll.focused_view() local app_id = scroll.view_get_app_id(view) return app_id == id end if (not exists(id)) then scroll.command(nil, "exec kitty --class " .. id .. spawn) end if (is_focused(id)) then scroll.command(nill, "scratchpad show") else scroll.command(nil, "[app_id=\"" .. id .. "\"] scratchpad show") end