-- coding:utf-8 OutputSciTE = EventClass:new(Common) MARKER_JUMP = 0 editor:MarkerDefine(MARKER_JUMP, SC_MARK_SHORTARROW) OutputSciTE.OnDoubleClick = function(self) if editor.Focus then return end -- Fokus muss auf output sein local pos = output.CurrentPos local line = output:LineFromPosition(pos) local text = output:GetLine(line) -- Text der angeklickten Zeile -- Parsen nach Sprungmarke local jumpmark = '@@' local pattLC = '^[%+%-<>!]'..jumpmark..'[^(]+%((%d+),(%d+)%)' local pattL = '^[%+%-<>!]'..jumpmark..'[^(]+%((%d+)%)' local l, c = text:match(pattLC) if not l then l = text:match(pattL) end if l ~= nil then self:JumpLineCol(l, c) end end OutputSciTE.JumpLineCol = function(self, line, col) local home = editor:PositionFromLine(line-1) local pos = home if col ~= nil then pos = home + col -1 end editor:GotoPos(pos) editor:GrabFocus() editor:MarkerAdd(line-1, MARKER_JUMP) end