Hi Alex,
Rename ~/Application Support/Sublime Text 2/phillipkoebbe-DetectSyntax to ~/Application Support/Sublime Text 2/DetectSyntax and it should work. The function rule looks for the file in User/ and then DetectSyntax/ and because it didn’t find it, it raised an error. If you try it again with the twig rule after the function rule, and view your console, you should see it. When I wrote the function processing part, I originally had exception handling in there to catch stuff like that and just return false, but then I decided to remove that in favor of letting the exceptions bubble up so those writing functions would get feedback when things didn’t work right. I think I’ll add an option in the settings that controls whether exceptions are handled gracefully or bubble up. I’ll default to handling errors properly so the average user won’t experience this problem.
I will also look for a way to determine the plugin’s directory at runtime. That would have also avoided your pain.
Thanks for helping work out the bugs!