diff options
author | C. McEnroe | 2021-06-17 18:43:26 -0400 |
---|---|---|
committer | C. McEnroe | 2021-06-17 18:52:47 -0400 |
commit | 0d888b88d0d8e4853e0d23e00b3183a7b60ab877 (patch) | |
tree | 42c2cb300ce6439a9d00e0293e2acb1c1a5abc38 /command.c | |
parent | a8c1f0297657e34b825cdce4dbe32e56c9a50984 (diff) |
Match windows by substring in /window
This could just iterate over idNames instead, but using complete means more recently used windows will match first.
Diffstat (limited to 'command.c')
-rw-r--r-- | command.c | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/command.c b/command.c index b345e11..84cb68f 100644 --- a/command.c +++ b/command.c @@ -379,7 +379,17 @@ static void commandWindow(uint id, char *params) { uiShowNum(strtoul(params, NULL, 10)); } else { id = idFind(params); - if (id) uiShowID(id); + if (id) { + uiShowID(id); + return; + } + for (const char *match; (match = completeSubstr(None, params));) { + id = idFind(match); + if (!id) continue; + completeAccept(); + uiShowID(id); + break; + } } } |