add: } 
context: function ss_tabcomplete (e){    var selStart = e.target.selectionStart;    var selEnd   = e.target.selectionEnd;                var v        = e.target.value;        if (selStart != selEnd)     {        /* text is highlighted, just move caret to end and exit */        e.target.selectionStart = e.target.selectionEnd = v.length;        return;    }    var firstSpace = v.indexOf(" ");    if (firstSpace == -1)        firstSpace = v.length;    var pfx;    var d;    if ((selStart <= firstSpace))    {        /* The cursor is positioned before the first space, so we're completing         * a command         */        var startPos;        var slash;                if (console.prefs["sessionView.requireSlash"])        {            if (v[0] != "/")                return;            startPos = 1;            slash = "/";        }        else        {            startPos = 0;            slash = "";        }                    var partialCommand = v.substring(startPos, firstSpace).toLowerCase();        var cmds = console.commandManager.listNames(partialCommand, CMD_CONSOLE);        if (!cmds)            /* partial didn't match a thing */            display (getMsg(MSN_NO_CMDMATCH, partialCommand), MT_ERROR);        else if (cmds.length == 1)        {            /* partial matched exactly one command */            pfx = slash + cmds[0];            if (firstSpace == v.length)                v =  pfx + " ";            else                v = pfx + v.substr (firstSpace);                        e.target.value = v;            e.target.selectionStart = e.target.selectionEnd = pfx.length + 1;        }        else if (cmds.length > 1)        {            /* partial matched more than one command */            d = new Date();            if ((d - this.lastTabUp) <= console.prefs["sessionView.dtabTime"])                display (getMsg (MSN_CMDMATCH,                                 [partialCommand, cmds.join(MSG_COMMASP)]));            else                this.lastTabUp = d;                        pfx = slash + getCommonPfx(cmds);            if (firstSpace == v.length)                v =  pfx;            else                v = pfx + v.substr (firstSpace);                        e.target.value = v;            e.target.selectionStart = e.target.selectionEnd = pfx.length;                    }                    }}
meta: 10234	/local1/tlutelli/issta_data/temp/all_js/javascript/2006_temp/2006/10234/1933b3ad0585992de65c0c7d7d8fed7757aa70e6/venkman-views.js/buggy/extensions/venkman/resources/content/venkman-views.js