Code: Select all
Notice: Undefined offset: 0 in D:\wwwJobs\my_project\app\themes\default\admin.tpl.php on line 117
Code: Select all
Clipboard.Open;
var clipContent = Clipboard.AsText;
Clipboard.Close;
if (clipContent == "") {
ShowMessage("*** Clipboard is empty!");
}
else {
var regex1 = "in [C-Z]:\\\\([a-zA-Z0-9\-\_\.\\\\]*)";
var regex2 = "on line [0-9]{1,5}";
var n1, n2;
var fileNameStr = "";
var lineNumberStr = "";
n1 = ScriptUtils.RegExPos(regex1, clipContent, fileNameStr);
if (n1 > 0) {
var fileName = Copy(fileNameStr, 4, Length(fileNameStr));
n2 = ScriptUtils.RegExPos(regex2, clipContent, lineNumberStr);
if (n2 > 0) {
var lineNumber = Copy(lineNumberStr, 9, Length(lineNumberStr));
lineNumber = StrToInt(lineNumber);
// open file
MainApp.OpenFile(fileName);
Document.CursorY = lineNumber + 15;
Document.CursorY = lineNumber - 1;
Clipboard.Clear;
}
else {
ShowMessage("ERROR: Line number not found in the clipboard content!");
}
}
}
You may need to tweak it a bit, though, namely change regex1 and regex2 variables (if error messages in the programming language you use look differently), and then second arguments of two Copy() calls.
Btw. these two lines
Code: Select all
Document.CursorY = lineNumber + 15;
Document.CursorY = lineNumber - 1;
Finally, when it is possible to run this script on program focus, message stating that clipboard is empty would be a nuisance (obviously), so it should be removed.
I hope you'll find it useful.