From: Tomas Hlavaty <tom@logand.com>
To: Eli Zaretskii <eliz@gnu.org>
Cc: jao@gnu.org, emacs-devel@gnu.org
Subject: Re: Implementing image support for kitty terminal
Date: Thu, 08 Sep 2022 22:03:41 +0200 [thread overview]
Message-ID: <875yhxeiqq.fsf@logand.com> (raw)
In-Reply-To: <837d2dekao.fsf@gnu.org>
On Thu 08 Sep 2022 at 22:30, Eli Zaretskii <eliz@gnu.org> wrote:
>> From: Tomas Hlavaty <tom@logand.com>
>> Cc: emacs-devel@gnu.org
>> Date: Thu, 08 Sep 2022 21:15:37 +0200
>>
>> The problem is, that that capability is not available in tty emacs:
>
> Yes, it _is_ available. We just suppress it.
Interesting, is it possible to somehow "un-suppress" it?
>> (image-size (create-image "/tmp/a.jpg"))
>> => (error "Window system frame should be used")
>
> This is us deliberately failing image-size early on, because we don't
> want complications down the road, and because we know images cannot be
> displayed on TTY frames.
I am asking emacs to tell me the size of the image.
I am not asking emacs to display it.
>> Would it be possible to fix that?
>
> I don't see why it would be hard. E.g., this works just fine in a -nw
> session:
>
> (create-image "/tmp/a.jpg")
Why does create-image work and image-size does not?
Why is this not "us deliberately failing create-image early on, because
we don't want complications down the road, and because we know images
cannot be displayed on TTY frames."?
Also this returns:
(image :type jpeg :file "/tmp/a.jpg" :scale 1 :transform-smoothing t)
which does not tell me image width and height that I'd like to know.
>> > and, if
>> > those libraries are not available, a call to "file foo.png" is (at least
>> > in my system) telling me the size of foo.png... kind of hacky, of
>> > course, but as a first step maybe good enough.
>>
>> This is the easy part. Then you need to change the existing emacs C
>> code to actually call that.
>>
>> (btw isn't the file program potential security issue?)
>
> We don't need 'file',
Yes, that was my point.
> Emacs already knows how to compute the size of an image.
So how do I get the size of an image?
My tty emacs does not know that, I get this error:
(image-size (create-image "/tmp/a.jpg"))
=> (error "Window system frame should be used")
Maybe tty emacs already knows how to compute the size of an image, but I
have not figured a way of asking my tty emacs to share that information
with me. Is there a way?
next prev parent reply other threads:[~2022-09-08 20:03 UTC|newest]
Thread overview: 106+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-09-07 15:50 Implementing image support for kitty terminal Jose Antonio Ortega Ruiz
2022-09-07 17:10 ` Tomas Hlavaty
2022-09-07 18:11 ` Eli Zaretskii
2022-09-07 18:49 ` Jose A Ortega Ruiz
2022-09-07 19:41 ` Eli Zaretskii
2022-09-07 20:09 ` Jose A Ortega Ruiz
2022-09-08 6:51 ` Eli Zaretskii
2022-09-07 20:11 ` Stefan Monnier
2022-09-08 5:30 ` Eli Zaretskii
2022-09-08 12:47 ` Gerd Möllmann
2022-09-08 13:54 ` Eli Zaretskii
2022-09-08 14:03 ` Gerd Möllmann
2022-09-08 14:24 ` Gerd Möllmann
2022-09-08 16:04 ` Eli Zaretskii
2022-09-09 4:59 ` Gerd Möllmann
2022-09-09 12:19 ` Stefan Monnier
2022-09-09 12:53 ` Eli Zaretskii
2022-09-09 12:59 ` Gerd Möllmann
2022-09-09 13:17 ` tomas
2022-09-09 14:10 ` Gerd Möllmann
2022-09-09 14:20 ` Eli Zaretskii
2022-09-09 14:27 ` Gerd Möllmann
2022-09-09 15:12 ` Stefan Monnier
2022-09-10 7:52 ` Gerd Möllmann
2022-09-10 14:13 ` Optimizing tty display update (was: Implementing image support for kitty terminal) Stefan Monnier
2022-09-10 14:17 ` Gerd Möllmann
2022-09-10 14:25 ` Eli Zaretskii
2022-09-10 14:29 ` Gerd Möllmann
2022-09-10 15:14 ` Optimizing tty display update Stefan Monnier
2022-09-11 10:21 ` Gerd Möllmann
2022-09-11 1:09 ` Po Lu
2022-09-11 4:44 ` Gerd Möllmann
2022-09-11 5:32 ` VCS forensics (was: Optimizing tty display update) Eli Zaretskii
2022-09-11 5:51 ` VCS forensics Gerd Möllmann
2022-09-10 16:54 ` Optimizing tty display update Lars Ingebrigtsen
2022-09-10 8:06 ` Implementing image support for kitty terminal Kyaw Thu Soe
2022-09-09 13:27 ` Stefan Monnier
2022-09-08 16:00 ` Eli Zaretskii
2022-09-09 4:58 ` Gerd Möllmann
2022-09-07 18:56 ` Tomas Hlavaty
2022-09-07 19:51 ` Eli Zaretskii
2022-09-08 18:30 ` Tomas Hlavaty
2022-09-08 18:45 ` Eli Zaretskii
2022-09-08 19:45 ` Tomas Hlavaty
2022-09-08 20:33 ` Jose A Ortega Ruiz
2022-09-08 20:29 ` Jose A Ortega Ruiz
2022-09-08 20:52 ` Tomas Hlavaty
2022-09-08 21:47 ` Jose A Ortega Ruiz
2022-09-08 22:21 ` Óscar Fuentes
2022-09-08 22:46 ` Tomas Hlavaty
2022-09-09 5:48 ` Jose A Ortega Ruiz
2022-09-08 22:43 ` Tomas Hlavaty
2022-09-08 23:32 ` Jose A Ortega Ruiz
2022-09-09 1:43 ` Po Lu
2022-09-09 5:52 ` Jose A Ortega Ruiz
2022-09-09 7:25 ` Po Lu
2022-09-09 6:06 ` Eli Zaretskii
2022-09-09 6:21 ` Jose A Ortega Ruiz
2022-09-09 6:43 ` Eli Zaretskii
2022-09-09 14:56 ` Jose A Ortega Ruiz
2022-09-09 15:20 ` chad
2022-09-09 15:34 ` Jose A Ortega Ruiz
2022-09-10 2:56 ` Tomas Hlavaty
2022-09-10 3:35 ` Visuwesh
2022-09-10 6:01 ` Tomas Hlavaty
2022-09-10 6:51 ` Po Lu
2022-09-10 19:52 ` Tomas Hlavaty
2022-09-09 15:25 ` Stefan Monnier
2022-09-09 16:15 ` Eli Zaretskii
2022-09-10 0:45 ` Jose A Ortega Ruiz
2022-09-10 6:15 ` Eli Zaretskii
2022-09-09 1:41 ` Po Lu
2022-09-09 5:53 ` Jose A Ortega Ruiz
2022-09-22 17:31 ` Memory problems update (was: Implementing image support for kitty terminal) Jose Antonio Ortega Ruiz
2022-09-23 0:29 ` Memory problems update Po Lu
2022-09-23 1:11 ` Jose A Ortega Ruiz
2022-09-23 6:08 ` Eli Zaretskii
2022-09-23 21:46 ` Jose A Ortega Ruiz
2022-09-23 21:57 ` Jose A Ortega Ruiz
2022-09-23 23:32 ` Jose A Ortega Ruiz
2022-09-24 0:20 ` Po Lu
2022-09-24 12:59 ` Jose A Ortega Ruiz
2022-09-23 5:33 ` Memory problems update (was: Implementing image support for kitty terminal) Eli Zaretskii
2022-09-23 22:01 ` Jose A Ortega Ruiz
2022-09-24 6:25 ` Eli Zaretskii
2022-09-24 6:33 ` Memory problems update Po Lu
2022-09-24 12:53 ` Jose A Ortega Ruiz
2022-09-09 1:40 ` Implementing image support for kitty terminal Po Lu
2022-09-09 5:56 ` Jose A Ortega Ruiz
2022-09-07 19:59 ` Jose A Ortega Ruiz
2022-09-08 11:13 ` Akib Azmain Turja
2022-09-08 13:25 ` Jose A Ortega Ruiz
2022-09-08 19:26 ` Tomas Hlavaty
2022-09-08 19:15 ` Tomas Hlavaty
2022-09-08 19:30 ` Eli Zaretskii
2022-09-08 20:03 ` Tomas Hlavaty [this message]
2022-09-09 5:43 ` Eli Zaretskii
2022-09-10 3:02 ` Tomas Hlavaty
2022-09-08 10:59 ` Akib Azmain Turja
2022-09-08 13:44 ` Eli Zaretskii
2022-09-08 9:13 ` Akib Azmain Turja
2022-09-08 19:31 ` Tomas Hlavaty
-- strict thread matches above, loose matches on Subject: below --
2022-09-10 10:15 xenodasein--- via Emacs development discussions.
2022-09-10 10:38 ` Eli Zaretskii
2022-09-10 11:06 ` xenodasein--- via Emacs development discussions.
2022-09-10 11:13 ` Akib Azmain Turja
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://www.gnu.org/software/emacs/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=875yhxeiqq.fsf@logand.com \
--to=tom@logand.com \
--cc=eliz@gnu.org \
--cc=emacs-devel@gnu.org \
--cc=jao@gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/emacs.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).