78 lines
1.7 KiB
Python
78 lines
1.7 KiB
Python
#! /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)
|