#! /usr/bin/python # To change this template, choose Tools | Templates # and open the template in the editor. __author__="bjschuma" __date__ ="$Feb 17, 2010 9:18:50 PM$" import sys import getopt from event import Event global events events = Event() from settings import Settings from aliases import Alias from bt.file import * from bt.message import write from manager import Manager from bt import proc from bt import dict global alias global settings global manager global vars vars = dict.Dict() def setSession(): write("Finding session...",2) path = settings["appdir"] mkdir(path) path = join(path,"session") mkdir(path) settings["session"] = path write("Using session: " + path,2) def parseInput(): from bt import scripting input = sys.argv[1:] optc = "vp:s:" long = ["verbose", "path=", "script="] # Attempt to parse user input try: opts, args = getopt.getopt(input, optc, long) settings["verbose"] = 0 settings["plugpath"] = [] for opt in opts: if (opt[0]=="-p") or (opt[0]=="--path"): settings["plugpath"] += [opt[1]] elif (opt[0]=="-s") or (opt[0]=="--script"): scripting.add(opt[1]) elif (opt[0]=="-v") or (opt[0]=="--verbose"): settings["verbose"] += 1 for arg in args: events.start("scion-process-args",arg) #settings["args"] = args except getopt.GetoptError, e: write(e.msg) write(input,2) write("User input has been processed",1) settings = Settings() parseInput() # We want to configure settings as early as possible settings.setdefaults() manager = Manager() alias = Alias() # Register functions to call when all plugins have been loaded events.invite("scion-plugins-loaded", proc.setup, 0) events.invite("scion-plugins-loaded", setSession, 1)