On 7 Oct 2007, at 01:57, Chris Thomas wrote:
I like this idea – I’ve implemented it but I’m not certain if I’ve used the best methods for getting the project package path, so I’ve attached a diff instead of committing. |
Index: Commands/Jump to Next Error.tmCommand
===================================================================
--- Commands/Jump to Next Error.tmCommand (revision 8240)
+++ Commands/Jump to Next Error.tmCommand (working copy)
@@ -9,8 +9,10 @@
require ENV['TM_SUPPORT_PATH'] + '/lib/textmate'
-LogFile = ENV['TM_PROJECT_DIRECTORY'] + '/.tm_build_errors'
+project_file = ENV['XCODE_PROJECT_FILE'] || %x{ruby --
"${TM_BUNDLE_SUPPORT}/bin/find_xcode_project.rb"}.strip
+LogFile = project_file + '/' + ENV['LOGNAME'] + '.tm_build_errors'
+
abort "No errors found" unless File.exists?(LogFile)
errors = []
Index: Support/bin/parse_build.rb
===================================================================
--- Support/bin/parse_build.rb (revision 8264)
+++ Support/bin/parse_build.rb (working copy)
@@ -96,7 +96,8 @@
last_line = ""
#seen_first_line = false
-error_log = File.open(ENV['TM_PROJECT_DIRECTORY'] + '/.tm_build_errors', 'w')
+LogFile = ENV['PROJECT_FILE'] + '/' + ENV['LOGNAME'] + '.tm_build_errors'
rescue nil
+error_log = File.open(LogFile, 'w') if LogFile
formatter.start
@@ -147,7 +148,7 @@
line_number = $2
error_desc = $3
- error_log << [$1, $2, $3].join('|') + "\n"
+ error_log << [$1, $2, $3].join('|') + "\n" if error_log
# if the file doesn't exist, we probably snagged
something that's not an error
if File.exist?(path)
@@ -190,7 +191,7 @@
end
end
-error_log.close
+error_log.close if error_log
# report success/failure
success = /\*\* ((BUILD|CLEAN) SUCCEEDED) \*\*/.match(last_line)
_______________________________________________ textmate-dev mailing list [email protected] http://lists.macromates.com/mailman/listinfo/textmate-dev
