rem: var firstPos = document.firstChar(line); 
add: var firstPos = document.firstCharPos(line); var lastPos = document.lastCharPos(line); 
context: function indentChar(c){    // todo: add maybe ":", for "public:, private:" etc    if (c != '{' && c != '}')        return;    readSettings();    var line = view.cursorLine();    var column = view.cursorColumnReal();    var firstPos = document.firstChar(line);    debug("firstPos: " + firstPos);    debug("column..: " + column);    if (firstPos == column - 1 && c == '{') {        // todo: look for if etc.        var filler = tryBrace(line);        if (filler == -1)            filler = tryCComment(line); // checks, whether we had a "*/"        if (filler == -1)            filler = keepIndentation(line);        if (filler != -1) {            var newColumn = column - (firstPos - filler.length);            document.editBegin();            if (firstPos > 0)                document.removeText(line, 0, line, firstPos);            document.insertText(line, 0, filler);            view.setCursorPosition(line, newColumn);            document.editEnd();        }    } else if (firstPos == column - 1 && c == '}') {        var filler = findOpeningBrace(line, column);        if (filler != -1) {            var newColumn = column - (firstPos - filler.length);            document.editBegin();            if (firstPos > 0)                document.removeText(line, 0, line, firstPos);            document.insertText(line, 0, filler);            view.setCursorPosition(line, newColumn);            document.editEnd();        }    }}
meta: 1078	/local1/tlutelli/issta_data/temp/all_js/javascript/2006_temp/2006/1078/cf2ffaa32d876fe8f95a098900ec8c956af8ab1e/script-indent-c-test.js/clean/kate/scripts/script-indent-c-test.js