X-Git-Url: https://gitweb.factorcode.org/gitweb.cgi?p=factor.git;a=blobdiff_plain;f=basis%2Feditors%2Faquamacs%2Faquamacs.factor;h=fb21090071f3ec6f3edada9312d20e5eb6205f55;hp=b058d762a1666f0f575eaedeac0d5d2a46c2338a;hb=631f909b7c6544e3391bdecb4139e7e2015ae69e;hpb=98900490c6e61f31e1500bbd92aedb0a96a4509e 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 ;