From 631f909b7c6544e3391bdecb4139e7e2015ae69e Mon Sep 17 00:00:00 2001 From: John Benediktsson Date: Thu, 8 Sep 2022 13:46:42 -0700 Subject: [PATCH] editors.aquamacs: use find-native-bundle. This allows Aquamacs.app to be installed in other locations besides /Applications. --- basis/editors/aquamacs/aquamacs.factor | 33 +++++++++++++++----------- 1 file changed, 19 insertions(+), 14 deletions(-) diff --git a/basis/editors/aquamacs/aquamacs.factor b/basis/editors/aquamacs/aquamacs.factor index b058d762a1..fb21090071 100644 --- a/basis/editors/aquamacs/aquamacs.factor +++ b/basis/editors/aquamacs/aquamacs.factor @@ -4,24 +4,29 @@ ! Description: Another fine Factor file! ! Copyright (C) 2017 Dave Carlton. ! See http://factorcode.org/license.txt for BSD license. - -USING: combinators.short-circuit editors io.standard-paths -kernel make math.parser namespaces sequences system ; +USING: editors io.pathnames io.standard-paths kernel make +math.parser namespaces sequences system ; IN: editors.aquamacs SINGLETON: aquamacs -aquamacs editor-class set-global -HOOK: find-aquamacs os ( -- path ) +editor-class [ aquamacs ] initialize -M: object find-aquamacs ( -- path ) - "aquamacs" ?find-in-path ; +HOOK: find-aquamacs-path os ( -- path ) -M: aquamacs editor-command ( file line -- command ) - drop - [ - "/Applications/Aquamacs.app/Contents/MacOS/bin/aquamacs" , - , - ] { } make - ; +M: object find-aquamacs-path f ; + +M: macosx find-aquamacs-path + "org.gnu.Aquamacs" find-native-bundle [ + "Contents/MacOS/bin/aquamacs" append-path + ] [ + f + ] if* ; +: aquamacs-path ( -- path ) + \ aquamacs-path get [ + find-aquamacs-path [ "aquamacs" ?find-in-path ] unless* + ] unless* ; + +M: aquamacs editor-command ( file line -- command ) + [ aquamacs-path , drop , ] { } make ; -- 2.34.1