diff options
author | C. McEnroe | 2020-02-05 22:25:34 -0500 |
---|---|---|
committer | C. McEnroe | 2020-02-05 22:25:34 -0500 |
commit | 6ca54617ce1fe0ac4dbd8094e13b38a0aa375200 (patch) | |
tree | a0643dbcaffa9e0ac9f993b8c8c27d901dc07447 | |
parent | f4868fc90642928358fae0d8d245a4fc5db7d12e (diff) |
Add /window name variant
-rw-r--r-- | catgirl.1 | 2 | ||||
-rw-r--r-- | command.c | 10 |
2 files changed, 10 insertions, 2 deletions
diff --git a/catgirl.1 b/catgirl.1 index e6d8efa..fb031c2 100644 --- a/catgirl.1 +++ b/catgirl.1 @@ -115,6 +115,8 @@ Send a raw IRC command. . .Ss UI Commands .Bl -tag -width Ds +.It Ic /window Ar name +Switch to window by name. .It Ic /window Ar num , Ic / Ns Ar num Switch to window by number. .El diff --git a/command.c b/command.c index f9362dc..e4f035f 100644 --- a/command.c +++ b/command.c @@ -14,6 +14,7 @@ * along with this program. If not, see <https://www.gnu.org/licenses/>. */ +#include <ctype.h> #include <stdio.h> #include <stdlib.h> @@ -64,8 +65,13 @@ static void commandQuit(size_t id, char *params) { } static void commandWindow(size_t id, char *params) { - (void)id; - if (params) uiShowNum(strtoul(params, NULL, 10)); + if (!params) return; + if (isdigit(params[0])) { + uiShowNum(strtoul(params, NULL, 10)); + } else { + id = idFind(params); + if (id) uiShowID(id); + } } static const struct Handler { |