Detect if a module is imported from a DrawBot script?



  • I have an external module that can be imported from commandline, or from inside RoboFont, or from inside DrawBot. How can the module detect it’s being imported from DrawBot?

    For RoboFont, this works:

    try:
        from mojo.drawingTools import *
        inRoboFont = True
    except:
        inRoboFont = False
    


  • OK, I think I got it:

    try:
        from drawBot.drawBotDrawingTools import _drawBotDrawingTool
        strokeWidth = _drawBotDrawingTool.strokeWidth
    except ImportError:
        print("... must be used either inside RoboFont or inside DrawBot")
    

  • admin

    DrawBot could be installed as module, so the import could be available.

    check:

    import AppKit
    
    appName = AppKit.NSBundle.mainBundle().infoDictionary().get("CFBundleDisplayName")
    print(appName)
    

    appName will be DrawBot, RoboFont or None (in terminal)

    good luck!


  • admin

    This post is deleted!