Stream: Mirror: Isabelle Users Mailing List

Topic: [isabelle] macOS app launcher


view this post on Zulip Email Gateway (Oct 04 2021 at 13:56):

From: Makarius <makarius@sketis.net>
I am reluctant to dismantle the macOS app launcher that emerged spontaneously
for the Isabelle2021 release --- the best launcher we've ever had so far. It
is based on a plain shell script, instead of fancy binaries that nobody
understands --- especially after some years later: Apple is changing things
occasionally in obscure ways.

Moreover, the real-time delays in your Apple script look a bit strange for
something that is supposed to be based on well-defined events.

If you can tell me how to have the shell script application accept the
file-open event, I can improve on that in a conservative manner.

Note that drag-and-drop of text files on the running editor works properly,
but that is a different mechanism.

Makarius

view this post on Zulip Email Gateway (Oct 04 2021 at 14:27):

From: Makarius <makarius@sketis.net>
Here are the relevant changes:

https://isabelle.sketis.net/repos/isabelle/rev/e7437085e589

https://isabelle.sketis.net/repos/isabelle/rev/b8e12e94cfca

So there is an outer executable (produced from Admin/Isabelle_app/Isabelle.c)
and an inner shell script lib/scripts/Isabelle_app).

I guess that further Apple event magic needs to go into Isabelle.c ---
presently, it is just plain Unix (uniform for macOS and Linux).

Makarius

view this post on Zulip Email Gateway (Oct 04 2021 at 19:30):

From: Frédéric Boulanger <frederic.boulanger@centralesupelec.fr>
If I remember well, you need an executable to manage the rights to access different parts of the file system in MacOS.
Your solution with only a script failed to open files in the "Documents" folder for instance.

You could handle the Apple events in the executable.

The delays in my ScriptEditor application are here to handle the variable launch delay when the Isabelle application is not already running.
You would not have this issue if Apple events were handled in the executable.

Anyway, this is not critical at all!

Frédéric

Frédéric Boulanger
CentraleSupélec - Département Informatique Laboratoire Méthodes Formelles (LMF)
3 rue Joliot-Curie, 91192 Gif-sur-Yvette cedex Bât. 650 - 1 rue Raimond Castaing, 91190 Gif-sur-Yvette
+33 [0]1 69 85 14 84

view this post on Zulip Email Gateway (Oct 04 2021 at 20:29):

From: Makarius <makarius@sketis.net>
On 04/10/2021 21:29, Frédéric Boulanger wrote:

If I remember well, you need an executable to manage the rights to access
different parts of the file system in MacOS.
Your solution with only a script failed to open files in the "Documents"
folder for instance.

This does work in Isabelle2021, and is the reason to have an outer executable
that runs the main script.

You could handle the Apple events in the executable.

The delays in my ScriptEditor application are here to handle the variable
launch delay when the Isabelle application is not already running.
You would not have this issue if Apple events were handled in the executable.

Anyway, this is not critical at all!

My proposal was actually that you implement that for Isabelle.c, since you
are the expert on macOS.

(I am only a part-time macOS user to ensure that the Isabelle distribution
actually works on this difficult platform.)

Makarius

view this post on Zulip Email Gateway (Oct 04 2021 at 21:02):

From: Frédéric Boulanger <frederic.boulanger@centralesupelec.fr>
I am definitely not an expert on MacOS, just someone who once developed some MacOS applications and has kept an interest for the platform.

The only MacOS specific stuff I can do now is to write sketchy AppleScript applications to process AppleEvents by calling the isabelle executable... I guess I will just be able to adapt my script to the new version of Isabelle.

Best regards,

Frédéric

Frédéric Boulanger
CentraleSupélec - Département Informatique Laboratoire Méthodes Formelles (LMF)
3 rue Joliot-Curie, 91192 Gif-sur-Yvette cedex Bât. 650 - 1 rue Raimond Castaing, 91190 Gif-sur-Yvette
+33 [0]1 69 85 14 84


Last updated: Dec 05 2021 at 22:18 UTC