From d58d786c83141f030df00faf5d8478a292455fb7 Mon Sep 17 00:00:00 2001 From: Carter Li Date: Tue, 31 Dec 2024 15:43:01 +0800 Subject: [PATCH] Logo (Image): add `--kitty-icat`; honor `--logo-height` if set --- src/data/help.json | 8 ++++++++ src/logo/image/image.c | 13 +++++++------ src/options/logo.c | 5 +++++ 3 files changed, 20 insertions(+), 6 deletions(-) diff --git a/src/data/help.json b/src/data/help.json index de0fbca7b..6acbb17bf 100644 --- a/src/data/help.json +++ b/src/data/help.json @@ -352,6 +352,14 @@ "type": "path" } }, + { + "long": "kitty-icat", + "desc": "Short for --logo-type kitty-icat --logo ", + "remark": "See \"--help logo-type\" for more info", + "arg": { + "type": "path" + } + }, { "long": "iterm", "desc": "Short for --logo-type iterm --logo ", diff --git a/src/logo/image/image.c b/src/logo/image/image.c index cc8f2129e..545460521 100644 --- a/src/logo/image/image.c +++ b/src/logo/image/image.c @@ -190,17 +190,18 @@ static bool printImageKittyIcat(bool printError) { char place[64]; snprintf(place, - ARRAY_SIZE(place), - "--place=%ux9999@%ux%u", - options->width, - options->paddingLeft + 1, - options->paddingTop + 1); + ARRAY_SIZE(place), + "--place=%ux%u@%ux%u", + options->width, + options->height == 0 ? 9999 : options->height, + options->paddingLeft + 1, + options->paddingTop + 1); error = ffProcessAppendStdOut(&buf, (char* []) { "kitten", "icat", "-n", - "--align=left", + "--align=center", place, "--scale-up", options->source.chars, diff --git a/src/options/logo.c b/src/options/logo.c index 7b2d10673..25fc829f2 100644 --- a/src/options/logo.c +++ b/src/options/logo.c @@ -173,6 +173,11 @@ logoType: ffOptionParseString(key, value, &options->source); options->type = FF_LOGO_TYPE_IMAGE_KITTY_DIRECT; } + else if(ffStrEqualsIgnCase(key, "--kitty-icat")) + { + ffOptionParseString(key, value, &options->source); + options->type = FF_LOGO_TYPE_IMAGE_KITTY_ICAT; + } else if(ffStrEqualsIgnCase(key, "--iterm")) { ffOptionParseString(key, value, &options->source);