#!/usr/bin/env ruby $YOURCODE = STDIN.read print <<-HTML Run Javascript #{ENV['TM_FILENAME']} HTML requirements = [] requirements << ['tm-file://'+ ENV['TM_BUNDLE_SUPPORT']+ '/run_js.js?1234'] requirements << ENV['TM_WEB_FRAMEWORK'] if ENV['TM_WEB_FRAMEWORK'] requirements += $YOURCODE.scan(/@require (?:"([^"]*)"|'([^']*)')/).map { |e| e.first || e[1] } requirements.flatten! requirements.uniq! requirements = requirements.map do |requirement| requirement = 'http://ajax.googleapis.com/ajax/libs/mootools/1.2.3/mootools.js' if requirement == 'mootools' requirement = 'http://ajax.googleapis.com/ajax/libs/jquery/1.3/jquery.js' if requirement == 'jquery' if requirement == 'jsspec' requirement = [ 'tm-file://'+ ENV['TM_BUNDLE_SUPPORT']+ '/JSSpec/'+ 'JSSpec.css', 'tm-file://'+ ENV['TM_BUNDLE_SUPPORT']+ '/JSSpec/'+ 'diff_match_patch.js', 'tm-file://'+ ENV['TM_BUNDLE_SUPPORT']+ '/JSSpec/'+ 'JSSpec.js' ] end requirement end.flatten requirements.uniq.each do |requirement| requirement = 'tm-file://' + File.dirname(ENV['TM_FILEPATH']||ENV['HOME']) +'/'+ requirement if requirement =~ /^(?!\/|https?:|(tm-)?file:\/\/)/ print %{\n} unless requirement =~ /\.css$/ print <<-CSS if requirement =~ /\.css$/ CSS end print <<-HTML HTML __END__