It's a very great experience.
To set up, fill following as in images:
^(?P.+?):(?P \d+):(?P .*)$
git grep %(w:orask:Search Term) -- "%(ask:File Pattern:*)"The result will be parsed and display in Komodo-style find results. I can even click on it to open the files!
Right click project structure to to mkdir is not a straight way at all. Finally I was able to create a folder using keyboard by this JS macro! I set it to Shift + Cmd + N
var koView = ko.views.manager.currentView;
if (koView) {
var folder = koView.koDoc.file.dirName;
var names = ko.dialogs.prompt("New folder at: " + folder);
if (!names) return;
var path = folder + '/' + names;
ko.run.runEncodedCommand(window, 'mkdir -p "' + path + '"');
} else {
ko.places.viewMgr.addNewFolder();
}
// Another way - reference: https://github.com/Komodo/KomodoEdit/blob/trunk/src/components/koIOs.idl
// var os = Components.classes["@activestate.com/koOs;1"].getService(Components.interfaces.koIOs);
// os.mkdir(path);
By the similar way, I also created 1 macro for creating file within current project folder or current file folder (if available)
var koView = ko.views.manager.currentView;
if (koView) {
var folder = koView.koDoc.file.dirName;
// Reference: https://github.com/Komodo/KomodoEdit/blob/trunk/src/views/koIFileEx.idl
var file = Components.classes["@activestate.com/koFileEx;1"].createInstance(Components.interfaces.koIFileEx);
var name = ko.dialogs.prompt("New file at: " + folder);
if (!name) {
return;
}
var path = folder + '/' + name;
file.URI = ko.uriparse.pathToURI(path);
file.open("w");
file.close();
ko.open.URI(path);
} else {
ko.places.viewMgr.addNewFile();
}
