From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp0.migadu.com ([2001:41d0:303:e224::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms13.migadu.com with LMTPS id cDiLHMDdcGaebwEAqHPOHw:P1 (envelope-from ) for ; Tue, 18 Jun 2024 01:07:12 +0000 Received: from aspmx1.migadu.com ([2001:41d0:303:e224::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp0.migadu.com with LMTPS id cDiLHMDdcGaebwEAqHPOHw (envelope-from ) for ; Tue, 18 Jun 2024 03:07:12 +0200 X-Envelope-To: larch@yhetil.org Authentication-Results: aspmx1.migadu.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=Mdm+C8Dd; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (aspmx1.migadu.com: domain of "emacs-orgmode-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="emacs-orgmode-bounces+larch=yhetil.org@gnu.org" ARC-Seal: i=1; s=key1; d=yhetil.org; t=1718672722; a=rsa-sha256; cv=none; b=pTTuU6Glemf58zXORggLDDK0rljQVf0a5F1XUIa/alYhApPWwd2S/K1KZFD+FWh0CunQHe RG453G9UTtPr8RTm/7+sYFw1OWsaMLhiWMeibW0yAnhHs0X46k3w6BmGb0no341FXV8pjF YJgfeK9iCwWw8iYQkD+vR52KDsvcbuVdpOyun/PaPFMv8+HoxgrJ7oa4ybX2/fyaGgvqC6 E7W5g7az4oqx6D1UzzQ+g9WvDKZdrJwqieeSdD6ajlGXy2/GRxKziqBB6UjkfcM6V1HQ03 OC0iiSnteA2TufswzYKpbTIK9FKTONI/N93xB/wxX/8FGpgPntDrZu0fNEQEpA== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=Mdm+C8Dd; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (aspmx1.migadu.com: domain of "emacs-orgmode-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="emacs-orgmode-bounces+larch=yhetil.org@gnu.org" ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1718672722; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type:in-reply-to:in-reply-to: references:references:list-id:list-help:list-unsubscribe: list-subscribe:list-post:dkim-signature; bh=4j/Xr2ad9Tk9bFQLb6+YiEFMd+vzjZUgRPWkPT4ebQY=; b=M2XWyztqE21LhEsvYlR40kuPY775qD4itfY1xQjEFUZ7SVl0JJyyReR3TW/XUeXd9TMCOA ABECwfbXmtiHi//A0Lua0NawTZ711kjQmNFhsXwBVe2vB5rBN817+NKEPHwmwhNZ9WCsEr JFv+rcOsU9OnFwvvXrHH206fReLgb8ZCe1D//M41/y6eAgBBZn8N4M1jf1Xkqt3jo2LkhP sd48xTJ1v9R6IeB2plLd/NwR+e/qimS/4CReshgquA7AyEwyg/PKLNSb07Hv4h8Mzgc7uF Im5LqlaBzu1bk5//EG7MLqdzWYP0lcHONJP+Ml9AX9r3Wr3ipA/7YpNthUHShw== Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id 2C4B916B2E for ; Tue, 18 Jun 2024 03:05:22 +0200 (CEST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1sJNGk-0000Xx-FM; Mon, 17 Jun 2024 21:04:18 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1sJNGh-0000Xb-QH for emacs-orgmode@gnu.org; Mon, 17 Jun 2024 21:04:15 -0400 Received: from mail-yw1-x112e.google.com ([2607:f8b0:4864:20::112e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1sJNGe-0007Eu-Ry for emacs-orgmode@gnu.org; Mon, 17 Jun 2024 21:04:15 -0400 Received: by mail-yw1-x112e.google.com with SMTP id 00721157ae682-62cddff7f20so48937047b3.3 for ; Mon, 17 Jun 2024 18:04:12 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1718672651; x=1719277451; darn=gnu.org; h=references:to:cc:in-reply-to:date:subject:mime-version:message-id :from:from:to:cc:subject:date:message-id:reply-to; bh=4j/Xr2ad9Tk9bFQLb6+YiEFMd+vzjZUgRPWkPT4ebQY=; b=Mdm+C8DdlNx3m1Uoo1y7TxWDK1VSoTLTgf8LhUC2VHLD77jG9oW75XpVU2TYW15rPV Bwcn1+Y8vN06h2NWLfSHq1moF0uQB4YkhoyHhbfdaWXEbnXKFP4WDVlL4hDXCdXo0RFI 4dY++P8NjyekqvAdhPllEK7K+hNh2bocK5CVONgIKoPtpOdlTg/ndom/ZFns1w29gXPF 3oAacHZjcTY0kxqxlyg5lHlgOP7icZxkxR58YCSFgBjUQEKfEykXhP6qwlAFNVCGzwr4 FbxfJMSyvJkT4J9gl5HeQEPBWX5/FG/DG1AENSd3v4HU7J1kIiHjKS1HNmnHJ51XTOan nTTw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1718672651; x=1719277451; h=references:to:cc:in-reply-to:date:subject:mime-version:message-id :from:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=4j/Xr2ad9Tk9bFQLb6+YiEFMd+vzjZUgRPWkPT4ebQY=; b=ccvBCcZLNvuKeCQLhIyXV1gdoHS5eimjSSt1CtJvQEJGcVwyP3Vunqv2AeuH8oz7NV N3bMLnVVe0rysWz9EYRh/wbdwJLUnF3+j/liZzgLXKA/ZrErtohJTht6ODDJ9cUoD8Rr QhceARiMUPaxpdT2VSEQvwJj243E7J4n16hgYv875aOJgY3vxQJmhznI/r+KaPmM0SS/ 5vWAdnYENS4tLbP6seftk47OebKi9Johs27k7HdLd4kNfEH2zYf8+hK8mWnvoG5koHWC 9igVMj4TZzci4urkoSXCMiMtZybygvpXDS44B8pG9u24LnLi1B861Z8BAY/W+pntMMoY /A2Q== X-Forwarded-Encrypted: i=1; AJvYcCUUCGw0WlHg+HBSdUhRy2xpiFk5I7Z6/Bfe3LW4/BdxzzcnVPCBv8Ij7o7fJBZafnp0ui6cs/puUEteZoAeX9mtovc16Pw= X-Gm-Message-State: AOJu0YwU+/MfKMyeiiqNrmAn7bkbthvuYqrXNeK+9Lb1BGBKZg4ZKQZ3 hGMigwEM+AmCq5+oQVKWkFQ9718f3iJhESsoSnOMN/kdiro6CJzx X-Google-Smtp-Source: AGHT+IGBMSk6gjJgfwdFYVReWKzzUKYQjfSaqpZvMtAMJOXjAbq/Lnlwv3TjSVUMl9V2LKV1Y/34JA== X-Received: by 2002:a81:7144:0:b0:62c:e74d:8152 with SMTP id 00721157ae682-632224543b5mr90634837b3.19.1718672651302; Mon, 17 Jun 2024 18:04:11 -0700 (PDT) Received: from smtpclient.apple (cm-24-53-187-34.buckeyecom.net. [24.53.187.34]) by smtp.gmail.com with ESMTPSA id 6a1803df08f44-6b2a5efd278sm61532496d6.128.2024.06.17.18.04.10 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Mon, 17 Jun 2024 18:04:10 -0700 (PDT) From: JD Smith Message-Id: <7E5BE2B1-9A3C-48ED-82B9-F012E5CEF9F2@gmail.com> Content-Type: multipart/alternative; boundary="Apple-Mail=_2A846ED5-524D-43AC-A189-A7812AE01883" Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3774.600.62\)) Subject: Re: [ANN] Org mode 9.7 is out Date: Mon, 17 Jun 2024 21:03:59 -0400 In-Reply-To: <3d5ce16e-c0fe-4059-a4b3-ebbc03ba3211@gmx.net> Cc: Ihor Radchenko , Visuwesh , emacs-orgmode@gnu.org To: Juergen Fenn References: <87jzj7adfd.fsf@localhost> <87wmn7mv3h.fsf@web.de> <87h6eba6pm.fsf@localhost> <574bab16-4183-49f9-9691-c9e1665ffc4f@gmx.net> <878qzn1j1r.fsf@localhost> <0d0df2a7-0bd9-4985-8442-a205571fca66@gmx.net> <875xur1aql.fsf@localhost> <484850d7-6d2a-4178-9e30-f13b718ffc92@gmx.net> <8734pv14w6.fsf@localhost> <797a3e0a-b641-4a03-a024-ae055adb5380@gmx.net> <87plsy8vjb.fsf@gmail.com> <57b56164-65ec-4675-bb71-a1f4d4a3cd6d@gmx.net> <877cf47wso.fsf@gmail.com> <871q5b79oq.fsf@localhost> <8734pq8uej.fsf@gmail.com> <7c25bbd5-b98a-4aa7-841f-539b6f67dd35@gmx.net> <87tti6gky3.fsf@localhost> <3d5ce16e-c0fe-4059-a4b3-ebbc03ba3211@gmx.net> X-Mailer: Apple Mail (2.3774.600.62) Received-SPF: pass client-ip=2607:f8b0:4864:20::112e; envelope-from=jdtsmith@gmail.com; helo=mail-yw1-x112e.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: emacs-orgmode@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-orgmode-bounces+larch=yhetil.org@gnu.org Sender: emacs-orgmode-bounces+larch=yhetil.org@gnu.org X-Migadu-Flow: FLOW_IN X-Migadu-Country: US X-Migadu-Spam-Score: -9.70 X-Migadu-Scanner: mx12.migadu.com X-Spam-Score: -9.70 X-Migadu-Queue-Id: 2C4B916B2E X-TUID: XeQ5KDM/+5pD --Apple-Mail=_2A846ED5-524D-43AC-A189-A7812AE01883 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=utf-8 > On Jun 6, 2024, at 4:41=E2=80=AFPM, Juergen Fenn = wrote: >=20 >=20 >=20 > Am 06.06.24 um 17:17 Uhr schrieb Ihor Radchenko: >> Juergen Fenn writes: >>=20 >>> Am 06.06.24 um 08:20 Uhr schrieb Visuwesh: >>>> Thanks for the analysis. Given that Alan says GNUStep cannot = handle >>>> non-text clipboard items, I cannot propose anything myself. It = would be >>>> nice if a Mac user can write a report and send it to the Emacs >>>> developers. Perhaps Juergen can do it? >>>=20 >>> Of course, I /could/ do this, but given the fact that you have = already >>> found out about /some/ internals wouldn't it be better a = macOS/NextStep >>> developer would look into this in the first place and hence write = the >>> report with some somre insight? >>=20 >> Unfortunately, there are no MacOS developers among Org mode = maintainers. >> I personally do not even have access to MacOS for testing. >>=20 >> Since you at least can test things on MacOS, it would be helpful if = you >> can create the recipe suitable for Emacs devs to reproduce the >> problem. They may also ask extra information from your MacOS. >>=20 >=20 > I see. Thanks for explaining. So, I will write a bug report that draws > on our discussion and send it to emacs-devel over the weekend. >=20 > My switch from Ventura to Sonoma shortly may make things more > complicated, as I cannot foresee in howmuch the two platforms differ > under the hood, but I'm afraid I cannot postpone the upgrade. A few years ago, I wrote a small package for pasting PNG and PDF data = from the Mac clipboard into org documents as attachments, which I still = use: https://github.com/jdtsmith/org-mac-image-paste.=20 With the recent work on yank-media I'm hopeful I can retire this package = soon. I found I could pull PDF data to file from the clipboard via = AppleScript (and display in the emacs-mac build using its image-io = backend), but used pngpaste[1] tool for PNG data. When an image is on = the clipboard, PNG data are indeed available from the clipboard (=C2=ABcla= ss PNGf=C2=BB), as can be seen via AppleScript. You can use AppleScript = to inquire about the state of the clipboard. For example, after taking = a screenshot, I see: % osascript -e "clipboard info" =C2=ABclass PNGf=C2=BB, 121849, =C2=ABclass 8BPS=C2=BB, 401974, GIF = picture, 21636, =C2=ABclass jp2 =C2=BB, 21831, JPEG picture, 35062, TIFF = picture, 369790, =C2=ABclass BMP =C2=BB, 366218, =C2=ABclass TPIC=C2=BB, = 285265 On copying an image from a website, I get: % osascript -e "clipboard info" TIFF picture, 91686, URL, 81, =C2=ABclass urln=C2=BB, 6, =C2=ABclass = utf8=C2=BB, 81, =C2=ABclass rtfd=C2=BB, 2652, =C2=ABclass weba=C2=BB, = 5679, =C2=ABclass HTML=C2=BB, 800, =C2=ABclass 8BPS=C2=BB, 103154, GIF = picture, 681, =C2=ABclass jp2 =C2=BB, 5455, JPEG picture, 1059, =C2=ABclas= s PNGf=C2=BB, 6282, =C2=ABclass BMP =C2=BB, 44298, =C2=ABclass TPIC=C2=BB,= 8066, =C2=ABclass ut16=C2=BB, 164, string, 81, Unicode text, 162 For images grabbed from web-pages, you can actually get the URL = information if you like and include that in or near the attachment link. = =20 Here's after copying a GIF file from the Finder: % osascript -e "clipboard info" =C2=ABclass furl=C2=BB, 41, =C2=ABclass ut16=C2=BB, 24, =C2=ABclass = utf8=C2=BB, 11, =C2=ABclass icns=C2=BB, 1137764, Unicode text, 22, = string, 11, =C2=ABclass 8BPS=C2=BB, 1295026, GIF picture, 74698, =C2=ABcla= ss jp2 =C2=BB, 110628, JPEG picture, 62209, TIFF picture, 4198020, = =C2=ABclass PNGf=C2=BB, 305211, =C2=ABclass BMP =C2=BB, 4194442, =C2=ABcla= ss TPIC=C2=BB, 796024 Notice the file-URL there, which you can get (here using the = JXA=3Djavascript flavor of AppleScript, with a UTI for the file-url, = which is apparently the more modern way to do it): % osascript -l JavaScript -e 'ObjC.import("AppKit"); = $.NSPasteboard.generalPasteboard.stringForType("public.file-url");' file:///Users/xxyz/Desktop/output.gif You can even coerce the clipboard to be in a certain format: % osascript -e "clipboard info" TIFF picture, 35766, URL, 37, =C2=ABclass urln=C2=BB, 7, =C2=ABclass = utf8=C2=BB, 37, =C2=ABclass rtfd=C2=BB, 1082, =C2=ABclass weba=C2=BB, = 3643, =C2=ABclass HTML=C2=BB, 820, =C2=ABclass 8BPS=C2=BB, 9884, GIF = picture, 434, =C2=ABclass jp2 =C2=BB, 4617, JPEG picture, 1268, =C2=ABclas= s PNGf=C2=BB, 1527, =C2=ABclass BMP =C2=BB, 32538, =C2=ABclass TPIC=C2=BB,= 2446, =C2=ABclass ut16=C2=BB, 76, string, 37, Unicode text, 74 % osascript -e "set the clipboard to (the clipboard as JPEG picture)" % osascript -e "clipboard info" =20 JPEG picture, 1268, =C2=ABclass 8BPS=C2=BB, 8622, GIF picture, 687, = =C2=ABclass jp2 =C2=BB, 4671, TIFF picture, 27704, =C2=ABclass PNGf=C2=BB,= 2508, =C2=ABclass BMP =C2=BB, 24534, =C2=ABclass TPIC=C2=BB, 4372 My knowledge doesn't go any deeper than that but thought I'd share what = I know. =20 [1] The code for pngpaste might be informative: = https://github.com/jcsalterego/pngpaste/blob/main/pngpaste.m.=09= --Apple-Mail=_2A846ED5-524D-43AC-A189-A7812AE01883 Content-Transfer-Encoding: quoted-printable Content-Type: text/html; charset=utf-8


On Jun 6, 2024, at 4:41=E2=80=AFPM, Juergen Fenn = <jfenn@gmx.net> wrote:



Am 06.06.24 um = 17:17 Uhr schrieb Ihor Radchenko:
Juergen = Fenn <jfenn@gmx.net> writes:

Am = 06.06.24 um 08:20 Uhr schrieb Visuwesh:
Thanks for the analysis.  Given that Alan says = GNUStep cannot handle
non-text clipboard items, I cannot propose = anything myself.  It would be
nice if a Mac user can write a = report and send it to the Emacs
developers.  Perhaps Juergen can = do it?

Of course, I /could/ do this, but given the = fact that you have already
found out about /some/ internals wouldn't = it be better a macOS/NextStep
developer would look into this in the = first place and hence write the
report with some somre = insight?

Unfortunately, there are no MacOS = developers among Org mode maintainers.
I personally do not even have = access to MacOS for testing.

Since you at least can test things = on MacOS, it would be helpful if you
can create the recipe suitable = for Emacs devs to reproduce the
problem. They may also ask extra = information from your MacOS.


I see. Thanks for = explaining. So, I will write a bug report that draws
on our = discussion and send it to emacs-devel over the weekend.

My switch = from Ventura to Sonoma shortly may make things more
complicated, as I = cannot foresee in howmuch the two platforms differ
under the hood, = but I'm afraid I cannot postpone the = upgrade.

A few years ago, I = wrote a small package for pasting PNG and PDF data from the Mac = clipboard into org documents as attachments, which I still use:  https://github.co= m/jdtsmith/org-mac-image-paste

With = the recent work on yank-media I'm hopeful I can retire this package = soon.  I found I could pull PDF data to file from the clipboard via = AppleScript (and display in the emacs-mac build using its image-io = backend), but used pngpaste[1] tool for PNG data.  When an image is = on the clipboard, PNG data are indeed available from the clipboard = (=C2=ABclass PNGf=C2=BB), as can be seen via AppleScript.  You can = use AppleScript to inquire about the state of the clipboard.  For = example, after taking a screenshot, I see:

% osascript -e = "clipboard info"
=C2=ABclass PNGf=C2=BB, 121849, =C2=ABclas= s 8BPS=C2=BB, 401974, GIF picture, 21636, =C2=ABclass jp2 =C2=BB, 21831, = JPEG picture, 35062, TIFF picture, 369790, =C2=ABclass BMP =C2=BB, = 366218, =C2=ABclass TPIC=C2=BB, 285265

On copying an image = from a website, I get:

% osascript -e "clipboard = info"
TIFF = picture, 91686, URL, 81, =C2=ABclass urln=C2=BB, 6, =C2=ABclass utf8=C2=BB= , 81, =C2=ABclass rtfd=C2=BB, 2652, =C2=ABclass weba=C2=BB, 5679, = =C2=ABclass HTML=C2=BB, 800, =C2=ABclass 8BPS=C2=BB, 103154, GIF = picture, 681, =C2=ABclass jp2 =C2=BB, 5455, JPEG picture, 1059, =C2=ABclas= s PNGf=C2=BB, 6282, =C2=ABclass BMP =C2=BB, 44298, =C2=ABclass TPIC=C2=BB,= 8066, =C2=ABclass ut16=C2=BB, 164, string, 81, Unicode text, = 162

For images grabbed from = web-pages, you can actually get the URL information if you like and = include that in or near the attachment link. =  

Here's after copying a GIF file from the = Finder:

% osascript -e "clipboard = info"
=C2=ABclass furl=C2=BB, 41, =C2=ABclass = ut16=C2=BB, 24, =C2=ABclass utf8=C2=BB, 11, =C2=ABclass icns=C2=BB, = 1137764, Unicode text, 22, string, 11, =C2=ABclass 8BPS=C2=BB, 1295026, = GIF picture, 74698, =C2=ABclass jp2 =C2=BB, 110628, JPEG picture, 62209, = TIFF picture, 4198020, =C2=ABclass PNGf=C2=BB, 305211, =C2=ABclass BMP = =C2=BB, 4194442, =C2=ABclass TPIC=C2=BB, = 796024

Notice the file-URL there, which = you can get (here using the JXA=3Djavascript flavor of AppleScript, with = a UTI for the file-url, which is apparently the more modern way to do = it):

% = osascript -l JavaScript -e 'ObjC.import("AppKit"); = $.NSPasteboard.generalPasteboard.stringForType("public.file-url");'
<= /div>
file:///Users/xxyz/Desktop/output.gif
<= /div>

You can even coerce the = clipboard to be in a certain = format:

% osascript -e "clipboard = info"
TIFF = picture, 35766, URL, 37, =C2=ABclass urln=C2=BB, 7, =C2=ABclass utf8=C2=BB= , 37, =C2=ABclass rtfd=C2=BB, 1082, =C2=ABclass weba=C2=BB, 3643, = =C2=ABclass HTML=C2=BB, 820, =C2=ABclass 8BPS=C2=BB, 9884, GIF picture, = 434, =C2=ABclass jp2 =C2=BB, 4617, JPEG picture, 1268, =C2=ABclass = PNGf=C2=BB, 1527, =C2=ABclass BMP =C2=BB, 32538, =C2=ABclass TPIC=C2=BB, = 2446, =C2=ABclass ut16=C2=BB, 76, string, 37, Unicode text, = 74

% osascript -e "set the = clipboard to (the clipboard as JPEG picture)"

% osascript -e "clipboard = info"                   =                   =  
JPEG = picture, 1268, =C2=ABclass 8BPS=C2=BB, 8622, GIF picture, 687, =C2=ABclass= jp2 =C2=BB, 4671, TIFF picture, 27704, =C2=ABclass PNGf=C2=BB, 2508, = =C2=ABclass BMP =C2=BB, 24534, =C2=ABclass TPIC=C2=BB, = 4372

My knowledge doesn't go any deeper = than that but thought I'd share what I know. =  

[1] The code for pngpaste might be = informative: http= s://github.com/jcsalterego/pngpaste/blob/main/pngpaste.m. =
= --Apple-Mail=_2A846ED5-524D-43AC-A189-A7812AE01883--