Add application-scoped snippets with global fallback and scope-aware sync

This commit is contained in:
agrynco committed 2026-11-06 10:37:01 +02:00
1 parent c18148a574
commit a124e030ab
10 files changed
+215 -18

No files matched your search

+4
View File
@@ -919,9 +919,12 @@ void App::keyboard(const KBDLLHOOKSTRUCT &k, UINT mods)
if (busy || settings.snippets.empty())
return;
auto keys = lower(run.keys);
auto snippetProcess = processName(fg);
for (int priority : {2, 1})
for (size_t i = 0; i < settings.snippets.size(); ++i)
{
auto &sn = settings.snippets[i];
if (snippetAppPriority(sn, snippetProcess) != priority) continue;
std::vector<std::wstring> variants{lower(sn.trigger)};
for (auto &l : layouts)
{
@@ -1473,6 +1476,7 @@ void App::transform(int command, int snippet)
if (snippet >= (int)config.snippets.size() || recent.window != target)
return;
const auto &sn = config.snippets[snippet];
if (!snippetAppPriority(sn, processName(target))) return;
if (recent.keys.size() < sn.trigger.size())
return;
result = parseTemplate(sn.text).text;