diff --git a/README b/README index e5340c2f2..f7f28c3b9 100644 --- a/README +++ b/README @@ -48,6 +48,11 @@ install it and all of its dependencies: $ sudo ./bootstrap.sh +Editors +------------ +The Cappuccino TextMate Bundle: http://github.com/malkomalko/Cappuccino.tmbundle +The Cappuccino Xcode Plugin: http://github.com/rbartolome/xcode-cappuccino + Getting Help ------------ If you need help with Cappuccino, you can get help from the following sources: diff --git a/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/.gitignore b/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/.gitignore deleted file mode 100644 index 90ec22bee..000000000 --- a/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/.gitignore +++ /dev/null @@ -1 +0,0 @@ -.svn diff --git a/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Commands/CPLog() for Current Method.tmCommand b/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Commands/CPLog() for Current Method.tmCommand deleted file mode 100644 index ec6f3d84f..000000000 --- a/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Commands/CPLog() for Current Method.tmCommand +++ /dev/null @@ -1,70 +0,0 @@ - - - - - beforeRunningCommand - nop - command - #!/usr/bin/env ruby - -proto_re = / - ^\s* # Start of the line and optional space - [+-]\s* # a plus or minus for method specifier - \([^)]+\) # the return type in brackets - ((?:\n|[^{])*) - (?m:.*?) - \{ - /x - -previous_lines = STDIN.readlines[1..ENV['TM_LINE_NUMBER'].to_i - 1] -invocation_line = previous_lines[-1] - -proto = previous_lines.join.scan(proto_re)[-1] - -exit if proto.nil? or proto.empty? - -last_proto_sel_with_types = proto[0].strip.sub(/^\s+/, '').sub(%r{\s*//.*$}, '').gsub(/\n\s*/, ' ') - -params = [] -params = last_proto_sel_with_types.scan(/(.+?):\((.+?)\)(\w+)/) - -def format_specifier_for_type(type) - %w[int bool BOOL long].each { |t| return('%d') if type.include? t } - return '%c' if type == 'char' - return '%C' if type == 'unichar' - return '%s' if type == 'char*' - '%@' -end - -def transformer_for(type, name) - return "CPStringFromRect(#{name})" if type == 'CPRect' - return "CPStringFromPoint(#{name})" if type == 'CPPoint' - return "CPStringFromSize(#{name})" if type == 'CPSize' - return "CPStringFromSelector(#{name})" if type == 'SEL' - name -end - -print 'CPLog("[%@ ' -if params.empty? - print last_proto_sel_with_types -else - print params.map { |param, type, name| param + ':' + format_specifier_for_type(type) }.join -end -print ']", [self class]' -print ', ' + params.map { |param, type, name| transformer_for(type, name) }.join(', ') unless params.empty? -print ");" - - input - document - name - CPLog() for Current Method - output - insertAsSnippet - scope - source.js.objj meta.scope.implementation - tabTrigger - logm - uuid - F220FEE6-6522-4281-8091-CF8C66AED44F - - diff --git a/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Commands/Help.tmCommand b/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Commands/Help.tmCommand deleted file mode 100644 index 43f1a9784..000000000 --- a/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Commands/Help.tmCommand +++ /dev/null @@ -1,29 +0,0 @@ - - - - - beforeRunningCommand - nop - command - -. "$TM_SUPPORT_PATH/lib/webpreview.sh" - -html_header "Objective-J Bundle Help" "Objective-J" - -"$TM_SUPPORT_PATH/lib/markdown_to_help.rb" "$TM_BUNDLE_SUPPORT/help/help.markdown" - -html_footer - input - none - keyEquivalent - - name - Help - output - showAsHTML - scope - source.js.objj - uuid - AF27A8B3-C87F-410A-915B-D83271FDDC00 - - diff --git a/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Commands/Insert Matching Start Bracket.tmCommand b/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Commands/Insert Matching Start Bracket.tmCommand deleted file mode 100644 index 2fa24f653..000000000 --- a/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Commands/Insert Matching Start Bracket.tmCommand +++ /dev/null @@ -1,320 +0,0 @@ - - - - - beforeRunningCommand - nop - bundleUUID - 4679484F-6227-11D9-BFB1-000D93589AF6 - command - #!/usr/bin/env ruby -require "#{ENV['TM_SUPPORT_PATH']}/lib/escape" -require ENV['TM_SUPPORT_PATH'] + "/lib/exit_codes" - -class Lexer - include Enumerable - def initialize - @label = nil - @pattern = nil - @handler = nil - @input = nil - - reset - - yield self if block_given? - end - - def input(&reader) - if @input.is_a? self.class - @input.input(&reader) - else - class << reader - alias_method :next, :call - end - - @input = reader - end - end - - def add_token(label, pattern, &handler) - unless @label.nil? - @input = clone - end - - @label = label - @pattern = /(#{pattern})/ - @handler = handler || lambda { |label, match| [label, match] } - - reset - end - - def next(peek = false) - while @tokens.empty? and not @finished - new_input = @input.next - if new_input.nil? or new_input.is_a? String - @buffer += new_input unless new_input.nil? - new_tokens = @buffer.split(@pattern) - while new_tokens.size > 2 or (new_input.nil? and not new_tokens.empty?) - @tokens << new_tokens.shift - @tokens << @handler[@label, new_tokens.shift] unless new_tokens.empty? - end - @buffer = new_tokens.join - @finished = true if new_input.nil? - else - separator, new_token = @buffer.split(@pattern) - new_token = @handler[@label, new_token] unless new_token.nil? - @tokens.push( *[ separator, - new_token, - new_input ].select { |t| not t.nil? and t != "" } ) - reset(:buffer) - end - end - peek ? @tokens.first : @tokens.shift - end - - def peek - self.next(true) - end - - def each - while token = self.next - yield token - end - end - - private - - def reset(*attrs) - @buffer = String.new if attrs.empty? or attrs.include? :buffer - @tokens = Array.new if attrs.empty? or attrs.include? :tokens - @finished = false if attrs.empty? or attrs.include? :finished - end -end - - -class ObjcParser - - attr_reader :list - def initialize(args) - @list = args - end - - def get_position - return nil,nil if @list.empty? - has_message = true - - a = @list.pop - endings = [:close,:post_op,:at_string,:at_selector,:identifier] -openings = [:open,:return,:control] - if a.tt == :identifier && !@list.empty? && endings.include?(@list[-1].tt) - insert_point = find_object_start - else - @list << a - has_message = false unless methodList - insert_point = find_object_start - end -return insert_point, has_message - end - - def methodList - old = Array.new(@list) - - a = selector_loop(@list) - if !a.nil? && a.tt == :selector - if file_contains_selector? a.text - return true - else - internal = Array.new(@list) - b = a.text - until internal.empty? - tmp = selector_loop(internal) - return true if tmp.nil? - b = tmp.text + b - if file_contains_selector? b - @list = internal - return true - end - end - end - else - end -@list = old -return false - end - - def file_contains_selector?(methodName) - fileNames = ["#{ENV['TM_BUNDLE_SUPPORT']}/cocoa.txt.gz"] - userMethods = "#{ENV['TM_PROJECT_DIRECTORY']}/.methods.TM_Completions.txt.gz" - - fileNames += [userMethods] if File.exists? userMethods - candidates = [] - fileNames.each do |fileName| - zGrepped = %x{zgrep ^#{e_sh methodName }[[:space:]] #{e_sh fileName }} - candidates += zGrepped.split("\n") - end - - return !candidates.empty? - end - - def selector_loop(l) - until l.empty? - obj = l.pop - case obj.tt - when :selector - return obj - when :close - return nil if match_bracket(obj.text,l).nil? - when :open - return nil - end - end - return nil - end - - def match_bracket(type,l) - partner = {"]"=>"[",")"=>"(","}"=>"{"}[type] - up = 1 - until l.empty? - obj = l.pop - case obj.text - when type - up +=1 - when partner - up -=1 - end - return obj.beg if up == 0 - end - end - - def find_object_start - openings = [:operator,:selector,:open,:return,:control] - until @list.empty? || openings.include?(@list[-1].tt) - obj = @list.pop - case obj.tt - when :close - tmp = match_bracket(obj.text, @list) - b = tmp unless tmp.nil? - when :star - b, ate = eat_star(b,obj.beg) - return b unless ate - when :nil - b = nil - else - b = obj.beg - end - end - return b - end - - def eat_star(prev, curr) - openings = [:operator,:selector,:open,:return,:control,:star] - if @list.empty? || openings.include?(@list[-1].tt) - return curr, true - else - return prev, false - end - end -end - -if __FILE__ == $PROGRAM_NAME - require "stringio" - line = ENV['TM_CURRENT_LINE'] - caret_placement =ENV['TM_LINE_INDEX'].to_i - 1 - - up = 0 - pat = /"(?:\\.|[^"\\])*"|\[|\]/ - line.scan(pat).each do |item| - case item - when "[" - up+=1 - when "]" - up -=1 - end - end - if caret_placement ==-1 - print "]$0" + e_sn(line[caret_placement+1..-1]) - TextMate.exit_insert_snippet - end - - if up != 0 - print e_sn(line[0..caret_placement])+"]$0"+e_sn(line[caret_placement+1..-1]) - TextMate.exit_insert_snippet - end - - to_parse = StringIO.new(line[0..caret_placement]) - lexer = Lexer.new do |l| - l.add_token(:return, /\breturn\b/) - l.add_token(:nil, /\bnil\b/) - l.add_token(:control, /\b(?:if|while|for|do)(?:\s*)\(/)# /\bif|while|for|do(?:\s*)\(/) - l.add_token(:at_string, /"(?:\\.|[^"\\])*"/) - l.add_token(:selector, /\b[A-Za-z_0-9]+:/) - l.add_token(:identifier, /\b[A-Za-z_0-9]+\b/) - l.add_token(:bind, /(?:->)|\./) - l.add_token(:post_op, /\+\+|\-\-/) - l.add_token(:at, /@/) - l.add_token(:star, /\*/) - l.add_token(:close, /\)|\]|\}/) - l.add_token(:open, /\(|\[|\{/) - l.add_token(:operator, /[&-+\/=%!:\,\?;<>\|\~\^]/) - - l.add_token(:terminator, /;\n*|\n+/) - l.add_token(:whitespace, /\s+/) - l.add_token(:unknown, /./) - - l.input { to_parse.gets } - #l.input {STDIN.read} - end - - offset = 0 - tokenList = [] - A = Struct.new(:tt, :text, :beg) - - lexer.each do |token| - tokenList << A.new(*(token<<offset)) unless [:whitespace,:terminator].include? token[0] - offset +=token[1].length - end - if tokenList.empty? - print e_sn(line[0..caret_placement])+"]$0"+e_sn(line[caret_placement+1..-1]) - TextMate.exit_insert_snippet - end - - par = ObjcParser.new(tokenList) - b, has_message = par.get_position - - if !line[caret_placement+1].nil? && line[caret_placement+1].chr == "]" - if b.nil? || par.list.empty? || par.list[-1].text == "[" - print e_sn(line[0..caret_placement])+"]$0"+e_sn(line[caret_placement+2..-1]) - TextMate.exit_insert_snippet - end - end - - if b.nil? - print e_sn(line[0..caret_placement])+"]$0"+e_sn(line[caret_placement+1..-1]) - elsif !has_message && (b < caret_placement ) - print e_sn(line[0..b-1]) unless b == 0 - ins = (/\s/ =~ line[caret_placement].chr ? "$0]" : " $0]") - print "[" +e_sn(line[b..caret_placement]) + ins +e_sn(line[caret_placement+1..-1]) - elsif b < caret_placement - print e_sn(line[0..b-1]) unless b == 0 - print "[" +e_sn(line[b..caret_placement]) +"]$0"+e_sn(line[caret_placement+1..-1]) - else - print e_sn(line[0..caret_placement])+"]$0"+e_sn(line[caret_placement+1..-1]) - end -end - - fallbackInput - line - input - selection - keyEquivalent - ] - name - Insert Matching Start Bracket - output - insertAsSnippet - scope - source.js.objj - uuid - CD025B3E-36B9-4E16-A81E-8DB6E8466CD1 - - diff --git a/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Commands/Insert [[… alloc] init].tmCommand b/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Commands/Insert [[… alloc] init].tmCommand deleted file mode 100644 index 2b3137e5e..000000000 --- a/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Commands/Insert [[… alloc] init].tmCommand +++ /dev/null @@ -1,42 +0,0 @@ - - - - - beforeRunningCommand - nop - command - #!/usr/bin/env ruby - -def e (str); str.gsub(/[$`\\]/, '\\\\\0'); end - -line = STDIN.read -col = ENV['TM_LINE_INDEX'].to_i - -left, right = line[0...col], line[col..-1] - -if left =~ /(.*?)(\[)?(\w+)\s+$/ then - lead, bracket, cl = $1, $2, $3 - right = line[col+1..-1] unless bracket.nil? - print "#{e lead}${1/.+/[/}[[#{e cl} alloc] init$0]" - print right.empty? ? ";" : "#{e right}" -else - # this is only if we were not able to interpret the line - print "#{e left}$0#{e right}" -end - - fallbackInput - line - input - selection - name - Insert [[… alloc] init] - output - insertAsSnippet - scope - source.js.objj - tabTrigger - alloc - uuid - DF55A80D-E733-4CE2-A318-D56789B18406 - - diff --git a/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Commands/Open Document in Running Browser(s).tmCommand b/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Commands/Open Document in Running Browser(s).tmCommand deleted file mode 100644 index c36fb7301..000000000 --- a/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Commands/Open Document in Running Browser(s).tmCommand +++ /dev/null @@ -1,67 +0,0 @@ - - - - - beforeRunningCommand - nop - command - #!/usr/bin/env ruby -wKU -# -# Open Document in Running Browser(s) -# v3 - November 22, 2007 -# -# Now supports multiple running versions of a single browser along -# with a range of new/old browsers. Bring back support for Firefox. -# -# Options: Set TM_PROJECT_SITEURL in your TM Project Window Info Button -# in the following form: "http://example.com/" - -require "#{ENV['TM_SUPPORT_PATH']}/lib/escape.rb" - -if ENV['TM_PROJECT_SITEURL'] - url = "#{ENV['TM_PROJECT_SITEURL']}" + ENV['TM_FILEPATH'].sub(/^#{Regexp.escape(ENV['TM_PROJECT_DIRECTORY'])}\//, '') -else - url = "file://#{ENV['TM_PROJECT_DIRECTORY']}/index.html" -end - -proclist = `ps -x -o command` -active = [] -os = `defaults read /System/Library/CoreServices/SystemVersion ProductVersion` - -browsers = %w[ Safari OmniWeb Camino Shiira firefox-bin Xyle\ scope Opera Internet\ Explorer flock-bin iCab Sunrise seamonkey-bin navigator-bin ].join('|') - -# Build paths to each active browser -# -# Notes: -# - 'WebKit' look ahead is to rule it out so we can use the working -# rule below. -# - 'LaunchCFMApp' portion is so iCab works. -active = proclist.scan(%r{^(?:/.*LaunchCFMApp )?(/.*\.app)(?=/Contents/MacOS/(?:#{browsers})\b(?!\s-WebKit))}) - -# Special check for WebKit as it appears as Safari -# Note: Only supports one running instance of WebKit, picked at random. -if proclist =~ %r{/Contents/MacOS/Safari.*-WebKit(DeveloperExtras|ScriptDebuggerEnabled)} - active << "WebKit" -end - -# TODO: Change when Leopard Only -# On Leopard use the -g option to open in background. -if os =~ /^10\.(5|6)/ - active.each {|p| `open -g -a #{e_sh(p)} #{e_sh(url)}` } -else - active.each {|p| `open -a #{e_sh(p)} #{e_sh(url)}` } -end - input - none - keyEquivalent - @R - name - Run in Browsers - output - discard - scope - source.js.objj - uuid - 36FD3695-1051-401E-8536-89FB9CEEEAB4 - - diff --git a/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Commands/Refresh Running Browser(s).tmCommand b/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Commands/Refresh Running Browser(s).tmCommand deleted file mode 100644 index 8de201dcd..000000000 --- a/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Commands/Refresh Running Browser(s).tmCommand +++ /dev/null @@ -1,49 +0,0 @@ - - - - - beforeRunningCommand - nop - command - ### Refresh All Active Browsers - OmniWeb, Safari, Firefox & IE -### v1.0. 2005-03-29 -### - -# Check if Internet Explorer is running, if so refresh -ps -xc|grep -sq "Internet Explorer" && osascript -e 'tell app "Internet Explorer"' -e 'activate' -e 'OpenURL "JavaScript:window.location.reload();" toWindow -1' -e 'end tell' - -# Check if OmniWeb is running, if so refresh -ps -xc|grep -sq OmniWeb && osascript -e 'tell app "OmniWeb"' -e 'activate' -e 'reload first browser' -e 'end tell' - -# Check if Firefox is running, if so refresh -ps -xc|grep -sqi firefox && osascript <<'APPLESCRIPT' - tell app "Firefox" to activate - tell app "System Events" - if UI elements enabled then - keystroke "r" using command down - -- Fails if System Preferences > Universal access > "Enable access for assistive devices" is not on - else - tell app "Firefox" to Get URL "JavaScript:window.location.reload();" inside window 1 - -- Fails if Firefox is set to open URLs from external apps in new tabs. - end if - end tell -APPLESCRIPT - -# Check if Safari is running, if so refresh -ps -xc|grep -sq Safari && osascript -e 'tell app "Safari"' -e 'activate' -e 'do JavaScript "window.location.reload();" in first document' -e 'end tell' - -# Check if Camino is running, if so refresh -ps -xc|grep -sq Camino && osascript -e 'tell app "Camino"' -e 'activate' -e 'tell app "System Events" to keystroke "r" using {command down}' -e 'end tell' - - input - none - name - Refresh Running Browser(s) - output - discard - scope - source.js.objj - uuid - 033BC36A-97DA-4F48-9ACB-B58C80D1A689 - - diff --git a/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Commands/Run.tmCommand b/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Commands/Run.tmCommand deleted file mode 100644 index ad231d9a0..000000000 --- a/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Commands/Run.tmCommand +++ /dev/null @@ -1,60 +0,0 @@ - - - - - beforeRunningCommand - saveActiveFile - command - -[[ ! -z $TM_OBJJ_MASTER_FILE ]] && INDEXFILE="$TM_OBJJ_MASTER_FILE" - -[[ ! -z $TM_PROJECT_DIRECTORY ]] && INDEXFILE="$TM_PROJECT_DIRECTORY/index.html" - -[[ ! -z $TM_DIRECTORY ]] && INDEXFILE="$TM_DIRECTORY/index.html" - -if [ -z "$INDEXFILE" ]; then - D=`dirname "$TM_FILEPATH"` - while [ -z `find "$D" -name index.html` ]; do - D=`dirname "$D"` - done - INDEXFILE="${D}/index.html" -fi - -[[ -z $INDEXFILE ]] && echo "No start file found. Please set the shell variable 'OBJJ_MASTER_FILE'" && exit 206 - -cat <<-HTML - <script type="text/javascript" charset="utf-8"> - try { - if (TextMate.system("", function (task) { })) { - var __TM_confirm_Status; - alert = function(s){TextMate.system("\"$DIALOG\" -e -p '{messageTitle=\"JavaScript\";informativeText=\""+s.toString().replace(/\x27/g,"’").replace(/\"/g,'\\\"')+"\";}'",null);}; - confirm = function(s){TextMate.system("\"$DIALOG\" -e -p '{messageTitle=\"JavaScript\";informativeText=\""+s.toString().replace(/\x27/g,"’").replace(/\"/g,'\\\"')+"\";buttonTitles=(\"OK\",\"Cancel\");}'",null).onreadoutput=function(s){__TM_confirm_Status = s != 1;};return(__TM_confirm_Status)}; - } - } catch(e) {} - </script> -<base href="file://${INDEXFILE// /%20}"> -HTML -cat "$INDEXFILE" -[[ ! -z $(grep 'objj_exception_setOutputStream' "$INDEXFILE") ]] && exit 205 -cat <<-JS -<script type="text/javascript" charset="utf-8"> -objj_exception_setOutputStream(function(aString) { console.log(aString);alert(aString) }); -</script> -JS - -exit 205 - - input - none - keyEquivalent - @r - name - Run - output - showAsTooltip - scope - source.js.objj - uuid - 0C55A19B-3B2D-418F-B7FD-7E64B736F379 - - diff --git a/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Commands/Show Documentation.tmCommand b/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Commands/Show Documentation.tmCommand deleted file mode 100644 index 7c80f41e4..000000000 --- a/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Commands/Show Documentation.tmCommand +++ /dev/null @@ -1,27 +0,0 @@ - - - - - beforeRunningCommand - nop - command - cat <<-HTM -<body onload='javascript:window.location.href="http://cappuccino.org/learn/documentation/"'> -</body> -HTM -exit 205 - - input - none - keyEquivalent - ^H - name - Show Documentation - output - showAsTooltip - scope - source.js.objj - uuid - 344244D8-67A3-4F23-8270-397BD1696AC4 - - diff --git a/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Commands/Show Obj-J Documentation for Word.tmCommand b/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Commands/Show Obj-J Documentation for Word.tmCommand deleted file mode 100644 index e639d6888..000000000 --- a/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Commands/Show Obj-J Documentation for Word.tmCommand +++ /dev/null @@ -1,214 +0,0 @@ - - - - - beforeRunningCommand - nop - command - [[ -z $OBJJ_HOME ]] && echo "OBJJ_HOME wasn't set!" && exit 206 -[[ ! -d "$OBJJ_HOME/Documentation" ]] && echo "Please copy the folder ‘Documentation’ to $OBJJ_HOME" && exit 206 - -function showUpClassPage { -cat <<-HTM -<body onload='javascript:window.location.href="tm-file://$OBJJ_HOME/Documentation/class$1"'> -</body> -HTM -exit 205 -} - -function showUpPage { -cat <<-HTM -<body onload='javascript:window.location.href="tm-file://$1"'> -</body> -HTM -exit 205 -} - - -DOCHEAD=$(perl -e ' - #$line_nr = defined($ENV{"TM_INPUT_START_LINE"}) ? $ENV{"TM_INPUT_START_LINE"} : 1; - $line_nr = 1; - $cur_line_nr = $ENV{"TM_LINE_NUMBER"}; - $header = ""; - while($cur_line_nr-->$line_nr) {$header.=<>;} - $tail = <>; - $header .= substr($tail,0,$ENV{"TM_LINE_INDEX"}); - print $header; -') - -# caret is inside of a class name -if [ `echo $TM_SCOPE | grep -c 'support.class.cappuccino'` -gt 0 ]; then - n=$(echo $TM_CURRENT_WORD | perl -pe 's/(.)(.)(.*)/_$1_$2_$3/;s/(?<!_)([A-Z])(?!_)/_$1/g;s/_{2,}/_/g') - showUpClassPage "$n.html" -fi - -# caret is inside of a foundation class name -if [ `echo $TM_SCOPE | grep -c 'support.variable.cappuccino.foundation'` -gt 0 ]; then - [[ "$TM_CURRENT_WORD" == "CPApp" ]] && showUpClassPage "_C_P_Application.html" -fi - -# caret is inside of a objj function -if [ `echo $TM_SCOPE | grep -c 'support.function.cappuccino'` -gt 0 ]; then - FILE=$(ruby -e ' - require File.join(ENV["TM_SUPPORT_PATH"], "lib/ui.rb") - require File.join(ENV["TM_SUPPORT_PATH"], "lib/exit_codes.rb") - cur_word = "" - cur_word << ENV["TM_CURRENT_WORD"] - cur_word.sub!("CG", "C[GP]") if cur_word[0..1] == "CG" or cur_word[0..1] == "CP" - lg = %x{egrep -rl "C[GP]RectMake" '$OBJJ_HOME/Documentation'} - urls = lg.split(/\n/).sort - if urls.length == 1 - print urls.first - else - display = urls.map{|x| x.split("/").last.sub!(".html","")} - index=TextMate::UI.menu(display) - if index != nil - print urls[index] - else - TextMate.exit_discard() - end - end - ') - FUNC=$(echo -en $TM_CURRENT_WORD | perl -pe 's/^(C[PG])(.*)/C[PG]$2/') - ANKER=`cat "$FILE" | egrep -o "\"#$FUNC.*?\"" | sed -e 's/^"//;s/".*//' | head -n 1` - [[ ! -z "$ANKER" ]] && showUpPage "$FILE$ANKER" - [[ ! -z $FILE ]] && showUpPage "$FILE" && exit 206 -fi - -# caret is inside of a constant -if [ `echo $TM_SCOPE | grep -c 'support.constant.cappuccino'` -gt 0 ]; then - FILE=$(ruby -e ' - require File.join(ENV["TM_SUPPORT_PATH"], "lib/ui.rb") - require File.join(ENV["TM_SUPPORT_PATH"], "lib/exit_codes.rb") - lg = %x{egrep -rl #{ENV["TM_CURRENT_WORD"]} '$OBJJ_HOME/Documentation'} - urls = lg.split(/\n/).sort - if urls.length == 1 - print urls.first - else - display = urls.map{|x| x.split("/").last.sub!(".html","")} - index=TextMate::UI.menu(display) - if index != nil - print urls[index] - else - TextMate.exit_discard() - end - end - ') - [[ ! -z $FILE ]] && showUpPage "$FILE" && exit 206 -fi - -# caret is inside of [method] -if [ `echo $TM_SCOPE | grep -c 'meta.bracketed.js.objj'` -gt 0 ]; then - # find [] - DECL=$(echo -en "$DOCHEAD" | perl -e ' - undef $/; - $header = <>; - $header=~s/\n/ /g; - @arr=split(//,$header);$c=0; - for($i=$#arr;$i>-1;$i--){$c-- if($arr[$i] eq "]");$c++ if($arr[$i] eq "[");last if $c>0;} - if($i==-1) { - print ""; - } else { - print substr($header,$i+1); - } - ') - - # find the class for a method - CLASS=$(echo -en "$DECL" | perl -e ' - undef $/; - $header = <>; - substr($header,0) =~ m/^\s*(\w+).*/; - $f = $1; - if (defined($f)) { - if($f=~m/CPApp/) { - print "CPApplication"; - } else { - print $f; - } - } else { - substr($header,1) =~ m/^\s*(\w+).*/; - $f = $1; - if(defined($f)) { - if($f=~m/CPApp/) { - print "CPApplication"; - } else { - print $f; - } - } - } - ') - if [ ! -e "$OBJJ_HOME/Documentation/classes/$CLASS.html" ]; then - CLASS=$(echo -en "$DOCHEAD" | ruby -e ' - require File.join(ENV["TM_SUPPORT_PATH"], "lib/ui.rb") - require File.join(ENV["TM_SUPPORT_PATH"], "lib/exit_codes.rb") - known_classes = [] - classes = [] - lg = %x{cd '$OBJJ_HOME/Documentation/classes'; egrep -rl #{ENV["TM_CURRENT_WORD"]} .} - known_classes = lg.split(/\n/).map{|x| x.sub("\.html","").sub("./","") }.sort - if known_classes.empty? - lg = %x{ls '$OBJJ_HOME/Documentation/classes'} - known_classes = lg.split(/\n/).map{|x| x.sub("\.html","").sub("./","") }.sort - end - STDIN.read().scan(/\b[_]{0,2}[NC][APS]\w+(?=[^\.])\b/) {|c| classes << c if ! classes.include?(c) && known_classes.include?(c)} - classes.sort! - if classes != known_classes - classes << "--" - classes += known_classes - end - if classes.length == 1 - if classes.first != "--" - print classes.first - else - TextMate.exit_discard() - end - else - index=TextMate::UI.menu(classes) - if index != nil - print classes[index] - else - TextMate.exit_discard() - end - end - ') - fi - [[ -z $CLASS ]] && exit 200 - [[ ! -e "$OBJJ_HOME/Documentation/classes/$CLASS.html" ]] && echo "Nothing for '$CLASS'!" && exit 206 - # tries to find only the first method for 'method1: method2: etc' - FIRSTMETHOD=$(echo -en "$DECL" | perl -e ' - undef $/;$d = <>; - $d=~m/\s*(\w+):/m; - print $1; - ') - METHOD=${FIRSTMETHOD:-$TM_CURRENT_WORD} - - # find the correct anker within CLASS.html - ANKER=`cat "$OBJJ_HOME/Documentation/classes/$CLASS.html" | egrep -o "\"#$METHOD.*?\"" | sed -e 's/^"//;s/".*//' | head -n 1` - [[ ! -z "$ANKER" ]] && showUpClassPage "$CLASS.html$ANKER" - - # check for inherited methods - ANKER=`cat "$OBJJ_HOME/Documentation/classes/$CLASS.html" | egrep -o "[^#\"]+?html#$METHOD" | head -n 1` -# echo $CLASS; echo $METHOD; echo $ANKER; exit 206 - - CLASS=$(echo -en "$ANKER" | perl -pe 's/(.*?)\.html.*/$1/;') - # find the correct anker within the new CLASS.html - ANKER=`cat "$OBJJ_HOME/Documentation/classes/$CLASS.html" | egrep -o "\"#$METHOD.*?\"" | sed -e 's/^"//;s/".*//' | head -n 1` - [[ ! -z "$ANKER" ]] && showUpClassPage "$CLASS.html$ANKER" - # [[ ! -z "$ANKER" ]] && showUpClassPage "$ANKER" - -fi - -exit 205 - input - selection - keyEquivalent - ^h - name - Documentation for Word - output - replaceSelectedText - scope - support.class.cappuccino, support.variable.cappuccino.foundation, meta.bracketed.js.objj, support.function.cappuccino - uuid - 2D05A28A-2ED7-4A9A-9A5C-8625466BC77C - - diff --git a/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Preferences/Symbol List: Method.tmPreferences b/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Preferences/Symbol List: Method.tmPreferences deleted file mode 100644 index 5a9a01fda..000000000 --- a/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Preferences/Symbol List: Method.tmPreferences +++ /dev/null @@ -1,23 +0,0 @@ - - - - - name - Symbol List: Method - scope - meta.function.js.objj - settings - - showInSymbolList - 1 - symbolTransformation - - s/^([-+])\s*\(.*?\)\s*/ $1 /; # strip result type - s/:\s*\(.*?\)\s*\w+\s*/:/g; # strip argument variables - s/\s*;?$//g; # strip terminating ws + semi-colon - - - uuid - E65A721C-192D-4BCC-AD35-5ED5CB0DA5BE - - diff --git a/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Snippets/@selector(…).tmSnippet b/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Snippets/@selector(…).tmSnippet deleted file mode 100644 index 71e84bbe0..000000000 --- a/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Snippets/@selector(…).tmSnippet +++ /dev/null @@ -1,16 +0,0 @@ - - - - - content - @selector(${1:method}:) - name - @selector(…) - scope - source.js.objj - tabTrigger - sel - uuid - 13D9F280-A78F-4A4C-BE99-0DE13235738D - - diff --git a/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Snippets/Accessors.tmSnippet b/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Snippets/Accessors.tmSnippet deleted file mode 100644 index af1db66ff..000000000 --- a/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Snippets/Accessors.tmSnippet +++ /dev/null @@ -1,24 +0,0 @@ - - - - - content - - (${1:id})${2:thing} -{ - return $2; -} - -- (void)set${2/./\u$0/}:($1)aValue -{ - $2 = aValue; -} - name - Accessors - scope - source.js.objj - tabTrigger - acc - uuid - AA41BEF8-5F81-4A5A-85DE-2E81A112778B - - diff --git a/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Snippets/Archiving.tmSnippet b/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Snippets/Archiving.tmSnippet deleted file mode 100644 index d54419fb4..000000000 --- a/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Snippets/Archiving.tmSnippet +++ /dev/null @@ -1,31 +0,0 @@ - - - - - content - @implementation ${1:CLASS} (CPCoding) - -- (id)initWithCoder:(CPCoder)aCoder -{ - if (self = [super initWithCoder:aCoder]) - { - ${2:IVAR} = [aCoder decodeObjectForKey:${3:KEY}]; - } - return self; -} - -- (void)encodeWithCoder:(CPCoder)aCoder -{ - [super encodeWithCoder:aCoder]; - - [aCoder encodeObject:${2:IVAR} forKey:${3:KEY}]; -} - -@end - - name - Archiving - uuid - A840A98A-0C5B-49CB-8235-2CCD1BF7AFC1 - - diff --git a/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Snippets/CPLog(…).tmSnippet b/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Snippets/CPLog(…).tmSnippet deleted file mode 100644 index 29cfad4db..000000000 --- a/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Snippets/CPLog(…).tmSnippet +++ /dev/null @@ -1,16 +0,0 @@ - - - - - content - CPLog("$1"${1/[^%]*(%)?.*/(?1:, :\);)/}$2${1/[^%]*(%)?.*/(?1:\);)/} - name - CPLog(…) - scope - source.js.objj - tabTrigger - log - uuid - C268A928-5C8E-4284-9BAB-4FDFB07B983A - - diff --git a/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Snippets/Category.tmSnippet b/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Snippets/Category.tmSnippet deleted file mode 100644 index a85cfcf16..000000000 --- a/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Snippets/Category.tmSnippet +++ /dev/null @@ -1,21 +0,0 @@ - - - - - content - @interface ${1:NSObject} (${2:Category}) -@end - -@implementation ${1:NSObject} (${2:Category}) -$0 -@end - name - Category - scope - source.js.objj - tabTrigger - cat - uuid - 8C001067-8A50-4BAB-9A88-BA957A84E8CF - - diff --git a/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Snippets/Class.tmSnippet b/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Snippets/Class.tmSnippet deleted file mode 100644 index 4877a2ca8..000000000 --- a/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Snippets/Class.tmSnippet +++ /dev/null @@ -1,29 +0,0 @@ - - - - - content - @implementation ${1:class} : ${2:CPObject} -{ -} - -- (id)init -{ - if(self = [super init]) - {$0 - } - return self; -} - -@end - - name - Class - scope - source.js.objj - tabTrigger - objj - uuid - 96C39647-4346-4750-9F96-58070F24EDE6 - - diff --git a/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Snippets/Delegate Responds to Selector.tmSnippet b/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Snippets/Delegate Responds to Selector.tmSnippet deleted file mode 100644 index 6cebd060f..000000000 --- a/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Snippets/Delegate Responds to Selector.tmSnippet +++ /dev/null @@ -1,18 +0,0 @@ - - - - - content - if([${1:[self delegate]} respondsToSelector:@selector(${2:selfDidSomething:})]) - [$1 ${3:${2/((^\s*([A-Za-z0-9_]*:)\s*)|(:\s*$)|(:\s*))/(?2:$2self :\:<>)(?4::)(?5: :)/g}}]; - - name - Delegate Responds to Selector - scope - source.js.objj - tabTrigger - delegate - uuid - 3B5B858C-645E-499C-813B-BBEEED943E9B - - diff --git a/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Snippets/Delegate.tmSnippet b/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Snippets/Delegate.tmSnippet deleted file mode 100644 index e897bfe8e..000000000 --- a/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Snippets/Delegate.tmSnippet +++ /dev/null @@ -1,24 +0,0 @@ - - - - - content - - (id)delegate -{ - return $1; -} - -- (void)setDelegate:(id)aDelegate -{ - ${1:delegate} = aDelegate; -} - name - Delegate - scope - source.js.objj - tabTrigger - delacc - uuid - 0B3D4C4C-7D75-49E6-9CEC-E4BF4069223A - - diff --git a/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Snippets/New CPTextField.tmSnippet b/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Snippets/New CPTextField.tmSnippet deleted file mode 100644 index e6c258d1d..000000000 --- a/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Snippets/New CPTextField.tmSnippet +++ /dev/null @@ -1,21 +0,0 @@ - - - - - content - ${1:name} = [[CPTextField alloc] initWithFrame:CGRectMakeZero()]; -[$1 setStringValue:${2:@"${3:string}"}]; -${4:[$1 setEditable:${5:YES}]; -}${6:[$1 setFont:[CPFont systemFontOfSize:${7:12.0}]]; -}${8:[$1 sizeToFit]; -}${0:} - name - New CPTextField - scope - source.js.objj - tabTrigger - textf - uuid - C7340B17-F9EC-403F-9781-E2487023ED01 - - diff --git a/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Snippets/Responds to Selector.tmSnippet b/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Snippets/Responds to Selector.tmSnippet deleted file mode 100644 index 0adcd9e64..000000000 --- a/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Snippets/Responds to Selector.tmSnippet +++ /dev/null @@ -1,20 +0,0 @@ - - - - - content - ${TM_COMMENT_START} ${4:Send $2 to $1, if $1 supports it}${TM_COMMENT_END} -if ([${1:self} respondsToSelector:@selector(${2:someSelector:})]) -{ - [$1 ${3:${2/((:\s*$)|(:\s*))/:<>(?3: )/g}}]; -} - name - Responds to Selector - scope - source.js.objj - tabTrigger - responds - uuid - D79EC699-9839-406E-AF60-DE51F78153CB - - diff --git a/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Snippets/_Accessors.tmSnippet b/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Snippets/_Accessors.tmSnippet deleted file mode 100644 index 424a7c2e8..000000000 --- a/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Snippets/_Accessors.tmSnippet +++ /dev/null @@ -1,24 +0,0 @@ - - - - - content - - (${1:id})${2:thing} -{ - return _$2; -} - -- (void)set${2/./\u$0/}:($1)aValue -{ - _$2 = aValue; -} - name - _Accessors - scope - source.js.objj - tabTrigger - _acc - uuid - 85B0746B-AE1C-47B3-8B9A-2B9A95F4C71E - - diff --git a/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Snippets/import <…>.tmSnippet b/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Snippets/import <…>.tmSnippet deleted file mode 100644 index 6ebc31bc9..000000000 --- a/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Snippets/import <…>.tmSnippet +++ /dev/null @@ -1,17 +0,0 @@ - - - - - content - @import <${1:`"$DIALOG" -u -p "{menuItems=({title=Foundation;},{title=AppKit;});}" | perl -e 'undef $/;$a=<>;$a=~m/<key>title(.|\n)+?<string>(.*?)</;print $2;'`}/${2:CP}$3.j> - - name - import <…> - scope - source.js.objj - tabTrigger - Imp - uuid - BE0553C0-B73B-4160-814C-840FC2B84C32 - - diff --git a/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Snippets/import … (with File Menu).tmSnippet b/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Snippets/import … (with File Menu).tmSnippet deleted file mode 100644 index 3e6738852..000000000 --- a/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Snippets/import … (with File Menu).tmSnippet +++ /dev/null @@ -1,17 +0,0 @@ - - - - - content - @import "${1:`"$TM_BUNDLE_SUPPORT/bin/import_FileMenu.sh" ".j"`}" - - name - import "…" (with File Menu) - scope - source.js.objj - tabTrigger - impp - uuid - 9BABD784-3DBE-4DA3-8A70-4E32FC7FDBB8 - - diff --git a/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Snippets/import ….tmSnippet b/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Snippets/import ….tmSnippet deleted file mode 100644 index f06d97c36..000000000 --- a/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Snippets/import ….tmSnippet +++ /dev/null @@ -1,17 +0,0 @@ - - - - - content - @import "${1:}" - - name - import "…" - scope - source.js.objj - tabTrigger - imp - uuid - 686B995F-3183-418B-A15F-CA517DFEFE2E - - diff --git a/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Support/bin/import_FileMenu.sh b/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Support/bin/import_FileMenu.sh deleted file mode 100755 index 298e062a9..000000000 --- a/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Support/bin/import_FileMenu.sh +++ /dev/null @@ -1,36 +0,0 @@ -EXTENSION="$1" - -CURRENTDIR=`dirname $TM_FILEPATH` - -if [ -z $TM_PROJECT_DIRECTORY ]; then - - L=$((${#CURRENTDIR}+1)) - - MENUITEMS=$(find -s "$CURRENTDIR" -name "*$EXTENSION" | perl -pe "s/^.{$L}(.*?)$/{title=\"\$1\";}/" | paste -sd ',' -) - [[ -z $MENUITEMS ]] && exit 200 - "$DIALOG" -u -p "{menuItems=($MENUITEMS);}" | perl -e 'undef $/;$a=<>;$a=~m/title(.|\n)+?(.*?);$a=~m/title(.|\n)+?(.*?)Any feedback about bugs or improvements is highly welcomed! - -# Introduction - -Cappuccino cappuccino.org is an open source framework that makes it easy to build desktop-caliber applications that run in a web browser. - -# Commands - -## Run - -Run the current cappuccino web application in TextMate's HTML output window. - -If you are inside of an Objective-J file (file extension .j) this command will look for a file `index.html` starting at the current folder and upwards within the file hierarchy or if you are working with a project it will look for it at the project's root path. - -If the start HTML site differs you can set the shell variable `TM_OBJJ_MASTER_FILE` within a project. - -## Run in Browser - -Run the current cappuccino web application in the default web browser. - -If you are inside of an Objective-J file (file extension .j) this command will look for a file `index.html` starting at the current folder and upwards within the file hierarchy or if you are working with a project it will look for it at the project's root path. - -If the start HTML site differs you can set the shell variable `TM_OBJJ_MASTER_FILE` within a project. - -# Shell Variables # - -## TM_OBJJ_MASTER_FILE ## - -This variable contains the path to the application's start HTML site. - - -# Main Bundle Maintainer - -***Date: Sep 7 2009*** - -
--  Tom Robinson tom@280north.com
--  Hans-Jörg Bibiko  bibiko@eva.mpg.de
-
- diff --git a/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Syntaxes/Objective-J.tmLanguage b/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Syntaxes/Objective-J.tmLanguage deleted file mode 100644 index b750cb206..000000000 --- a/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/Syntaxes/Objective-J.tmLanguage +++ /dev/null @@ -1,642 +0,0 @@ - - - - - fileTypes - - j - J - - foldingStartMarker - (?x) - /\*\*(?!\*) - |^(?![^{]*?//|[^{]*?/\*(?!.*?\*/.*?\{)).*?\{\s*($|//|/\*(?!.*?\*/.*\S)) - |^@(interface|protocol|implementation)\b - - foldingStopMarker - (?<!\*)\*\*/|^\s*\}|^@end\b - name - Objective-J - patterns - - - begin - ((@)(interface|protocol))(?!.+;)\s+([_A-Za-z][_A-Za-z0-9]*)\s*((:)(?:\s*)([_A-Za-z][_A-Za-z0-9]*))?(\s|\n)? - captures - - 1 - - name - storage.type.js.objj - - 2 - - name - punctuation.definition.storage.type.js.objj - - 4 - - name - entity.name.type.js.objj - - 6 - - name - punctuation.definition.entity.other.inherited-class.js.objj - - 7 - - name - entity.other.inherited-class.js.objj - - 8 - - name - meta.divider.js.objj - - 9 - - name - meta.inherited-class.js.objj - - - contentName - meta.scope.interface.js.objj - end - ((@)end)\b - name - meta.interface-or-protocol.js.objj - patterns - - - include - #protocol_list - - - include - #method - - - include - $base - - - - - begin - ((@)(implementation))\s+([_A-Za-z][_A-Za-z0-9]*)\s*(?::\s*([_A-Za-z][_A-Za-z0-9]*))? - captures - - 1 - - name - storage.type.js.objj - - 2 - - name - punctuation.definition.storage.type.js.objj - - 4 - - name - entity.name.type.js.objj - - 5 - - name - entity.other.inherited-class.js.objj - - - contentName - meta.scope.implementation.js.objj - end - ((@)end)\b - name - meta.implementation.js.objj - patterns - - - include - #special_variables - - - include - #method - - - include - $base - - - - - begin - @" - beginCaptures - - 0 - - name - punctuation.definition.string.begin.js.objj - - - end - " - endCaptures - - 0 - - name - punctuation.definition.string.end.js.objj - - - name - string.quoted.double.js.objj - patterns - - - match - \\(\\|[abefnrtv'"?]|[0-3]\d{,2}|[4-7]\d?|x[a-zA-Z0-9]+) - name - constant.character.escape.js.objj - - - match - \\. - name - invalid.illegal.unknown-escape.js.objj - - - - - begin - \b(id)\s*(?=<) - beginCaptures - - 1 - - name - storage.type.js.objj - - - end - (?<=>) - name - meta.id-with-protocol.js.objj - patterns - - - include - #protocol_list - - - - - match - \b(CP_DURING|CP_HANDLER|CP_ENDHANDLER)\b - name - keyword.control.macro.js.objj - - - captures - - 1 - - name - punctuation.definition.keyword.js.objj - - - match - (@)(try|catch|finally|throw)\b - name - keyword.control.exception.js.objj - - - captures - - 1 - - name - punctuation.definition.keyword.js.objj - - - match - (@)(synchronized)\b - name - keyword.control.synchronize.js.objj - - - captures - - 1 - - name - punctuation.definition.keyword.js.objj - - - match - (@)(defs|encode)\b - name - keyword.other.js.objj - - - captures - - 2 - - name - meta.id-type.js.objj - - - match - \b(IBOutlet|IBAction|BOOL|SEL|id(?!\s?<)|unichar|IMP|Class)\b - name - storage.type.js.objj - - - captures - - 1 - - name - punctuation.definition.storage.type.js.objj - - - match - (@)(class|selector|protocol)\b - name - storage.type.js.objj - - - captures - - 1 - - name - punctuation.definition.storage.modifier.js.objj - - - match - (@)(synchronized|public|private|protected)\b - name - storage.modifier.js.objj - - - match - \b(YES|NO|Nil|nil)\b - name - constant.language.js.objj - - - match - \bCPApp\b - name - support.variable.cappuccino.foundation - - - match - \bCP(R(ound(DownToMultipleOfPageSize|UpToMultipleOfPageSize)|un(CriticalAlertPanel(RelativeToWindow)?|InformationalAlertPanel(RelativeToWindow)?|AlertPanel(RelativeToWindow)?)|e(set(MapTable|HashTable)|c(ycleZone|t(Clip(List)?|F(ill(UsingOperation|List(UsingOperation|With(Grays|Colors(UsingOperation)?))?)?|romString))|ordAllocationEvent)|turnAddress|leaseAlertPanel|a(dPixel|l(MemoryAvailable|locateCollectable))|gisterServicesProvider)|angeFromString)|Get(SizeAndAlignment|CriticalAlertPanel|InformationalAlertPanel|UncaughtExceptionHandler|FileType(s)?|WindowServerMemory|AlertPanel)|M(i(n(X|Y)|d(X|Y))|ouseInRect|a(p(Remove|Get|Member|Insert(IfAbsent|KnownAbsent)?)|ke(R(ect|ange)|Size|Point)|x(Range|X|Y)))|B(itsPer(SampleFromDepth|PixelFromDepth)|e(stDepth|ep|gin(CriticalAlertSheet|InformationalAlertSheet|AlertSheet)))|S(ho(uldRetainWithZone|w(sServicesMenuItem|AnimationEffect))|tringFrom(R(ect|ange)|MapTable|S(ize|elector)|HashTable|Class|Point)|izeFromString|e(t(ShowsServicesMenuItem|ZoneName|UncaughtExceptionHandler|FocusRingStyle)|lectorFromString|archPathForDirectoriesInDomains)|wap(Big(ShortToHost|IntToHost|DoubleToHost|FloatToHost|Long(ToHost|LongToHost))|Short|Host(ShortTo(Big|Little)|IntTo(Big|Little)|DoubleTo(Big|Little)|FloatTo(Big|Little)|Long(To(Big|Little)|LongTo(Big|Little)))|Int|Double|Float|L(ittle(ShortToHost|IntToHost|DoubleToHost|FloatToHost|Long(ToHost|LongToHost))|ong(Long)?)))|H(ighlightRect|o(stByteOrder|meDirectory(ForUser)?)|eight|ash(Remove|Get|Insert(IfAbsent|KnownAbsent)?)|FSType(CodeFromFileType|OfFile))|N(umberOfColorComponents|ext(MapEnumeratorPair|HashEnumeratorItem))|C(o(n(tainsRect|vert(GlyphsToPackedGlyphs|Swapped(DoubleToHost|FloatToHost)|Host(DoubleToSwapped|FloatToSwapped)))|unt(MapTable|HashTable|Frames|Windows(ForContext)?)|py(M(emoryPages|apTableWithZone)|Bits|HashTableWithZone|Object)|lorSpaceFromDepth|mpare(MapTables|HashTables))|lassFromString|reate(MapTable(WithZone)?|HashTable(WithZone)?|Zone|File(namePboardType|ContentsPboardType)))|TemporaryDirectory|I(s(ControllerMarker|EmptyRect|FreedObject)|n(setRect|crementExtraRefCount|te(r(sect(sRect|ionR(ect|ange))|faceStyleForKey)|gralRect)))|Zone(Realloc|Malloc|Name|Calloc|Fr(omPointer|ee))|O(penStepRootDirectory|ffsetRect)|D(i(sableScreenUpdates|videRect)|ottedFrameRect|e(c(imal(Round|Multiply|S(tring|ubtract)|Normalize|Co(py|mpa(ct|re))|IsNotANumber|Divide|Power|Add)|rementExtraRefCountWasZero)|faultMallocZone|allocate(MemoryPages|Object))|raw(Gr(oove|ayBezel)|B(itmap|utton)|ColorTiledRects|TiledRects|DarkBezel|W(hiteBezel|indowBackground)|LightBezel))|U(serName|n(ionR(ect|ange)|registerServicesProvider)|pdateDynamicServices)|Java(Bundle(Setup|Cleanup)|Setup(VirtualMachine)?|Needs(ToLoadClasses|VirtualMachine)|ClassesF(orBundle|romPath)|ObjectNamedInPath|ProvidesClasses)|P(oint(InRect|FromString)|erformService|lanarFromDepth|ageSize)|E(n(d(MapTableEnumeration|HashTableEnumeration)|umerate(MapTable|HashTable)|ableScreenUpdates)|qual(R(ects|anges)|Sizes|Points)|raseRect|xtraRefCount)|F(ileTypeForHFSTypeCode|ullUserName|r(ee(MapTable|HashTable)|ame(Rect(WithWidth(UsingOperation)?)?|Address)))|Wi(ndowList(ForContext)?|dth)|Lo(cationInRange|g(v|PageSize)?)|A(ccessibility(R(oleDescription(ForUIElement)?|aiseBadArgumentException)|Unignored(Children(ForOnlyChild)?|Descendant|Ancestor)|PostNotification|ActionDescription)|pplication(Main|Load)|vailableWindowDepths|ll(MapTable(Values|Keys)|HashTableObjects|ocate(MemoryPages|Collectable|Object))))\b - name - support.function.cappuccino - - - match - \bCP(R(u(nLoop|ler(Marker|View))|e(sponder|cursiveLock|lativeSpecifier)|an(domSpecifier|geSpecifier))|G(etCommand|lyph(Generator|Storage|Info)|raphicsContext)|XML(Node|D(ocument|TD(Node)?)|Parser|Element)|M(iddleSpecifier|ov(ie(View)?|eCommand)|utable(S(tring|et)|C(haracterSet|opying)|IndexSet|D(ictionary|ata)|URLRequest|ParagraphStyle|A(ttributedString|rray))|e(ssagePort(NameServer)?|nu(Item(Cell)?|View)?|t(hodSignature|adata(Item|Query(ResultGroup|AttributeValueTuple)?)))|a(ch(BootstrapServer|Port)|trix))|B(itmapImageRep|ox|u(ndle|tton(Cell)?)|ezierPath|rowser(Cell)?)|S(hadow|c(anner|r(ipt(SuiteRegistry|C(o(ercionHandler|mmand(Description)?)|lassDescription)|ObjectSpecifier|ExecutionContext|WhoseTest)|oll(er|View)|een))|t(epper(Cell)?|atus(Bar|Item)|r(ing|eam))|imple(HorizontalTypesetter|CString)|o(cketPort(NameServer)?|und|rtDescriptor)|p(e(cifierTest|ech(Recognizer|Synthesizer)|ll(Server|Checker))|litView)|e(cureTextField(Cell)?|t(Command)?|archField(Cell)?|rializer|gmentedC(ontrol|ell))|lider(Cell)?|avePanel)|H(ost|TTP(Cookie(Storage)?|URLResponse)|elpManager)|N(ib(Con(nector|trolConnector)|OutletConnector)?|otification(Center|Queue)?|u(ll|mber(Formatter)?)|etService(Browser)?|ameSpecifier)|C(ha(ngeSpelling|racterSet)|o(n(stantString|nection|trol(ler)?|ditionLock)|d(ing|er)|unt(Command|edSet)|pying|lor(Space|P(ick(ing(Custom|Default)|er)|anel)|Well|List)?|m(p(oundPredicate|arisonPredicate)|boBox(Cell)?))|u(stomImageRep|rsor)|IImageRep|ell|l(ipView|o(seCommand|neCommand)|assDescription)|a(ched(ImageRep|URLResponse)|lendar(Date)?)|reateCommand)|T(hread|ypesetter|ime(Zone|r)|o(olbar(Item(Validations)?)?|kenField(Cell)?)|ext(Block|Storage|Container|Tab(le(Block)?)?|Input|View|Field(Cell)?|List|Attachment(Cell)?)?|a(sk|b(le(Header(Cell|View)|Column|View)|View(Item)?))|reeController)|I(n(dex(S(pecifier|et)|Path)|put(Manager|S(tream|erv(iceProvider|er(MouseTracker)?)))|vocation)|gnoreMisspelledWords|mage(Rep|Cell|View)?)|O(ut(putStream|lineView)|pen(GL(Context|Pixel(Buffer|Format)|View)|Panel)|bj(CTypeSerializationCallBack|ect(Controller)?))|D(i(st(antObject(Request)?|ributed(NotificationCenter|Lock))|ctionary|rectoryEnumerator)|ocument(Controller)?|e(serializer|cimalNumber(Behaviors|Handler)?|leteCommand)|at(e(Components|Picker(Cell)?|Formatter)?|a)|ra(wer|ggingInfo))|U(ser(InterfaceValidations|Defaults(Controller)?)|RL(Re(sponse|quest)|Handle(Client)?|C(onnection|ache|redential(Storage)?)|Download(Delegate)?|Prot(ocol(Client)?|ectionSpace)|AuthenticationChallenge(Sender)?)?|n(iqueIDSpecifier|doManager|archiver))|P(ipe|o(sitionalSpecifier|pUpButton(Cell)?|rt(Message|NameServer|Coder)?)|ICTImageRep|ersistentDocument|DFImageRep|a(steboard|nel|ragraphStyle|geLayout)|r(int(Info|er|Operation|Panel)|o(cessInfo|tocolChecker|perty(Specifier|ListSerialization)|gressIndicator|xy)|edicate))|E(numerator|vent|PSImageRep|rror|x(ception|istsCommand|pression))|V(iew(Animation)?|al(idated(ToobarItem|UserInterfaceItem)|ue(Transformer)?))|Keyed(Unarchiver|Archiver)|Qui(ckDrawView|tCommand)|F(ile(Manager|Handle|Wrapper)|o(nt(Manager|Descriptor|Panel)?|rm(Cell|atter)))|W(hoseSpecifier|indow(Controller)?|orkspace)|L(o(c(k(ing)?|ale)|gicalTest)|evelIndicator(Cell)?|ayoutManager)|A(ssertionHandler|nimation|ctionCell|ttributedString|utoreleasePool|TSTypesetter|ppl(ication|e(Script|Event(Manager|Descriptor)))|ffineTransform|lert|r(chiver|ray(Controller)?)))\b - name - support.class.cappuccino - - - match - \bCP(R(ect(Edge)?|ange)|G(lyph(Relation|LayoutMode)?|radientType)|M(odalSession|a(trixMode|p(Table|Enumerator)))|B(itmapImageFileType|orderType|uttonType|ezelStyle|ackingStoreType|rowserColumnResizingType)|S(cr(oll(er(Part|Arrow)|ArrowPosition)|eenAuxiliaryOpaque)|tringEncoding|ize|ocketNativeHandle|election(Granularity|Direction|Affinity)|wapped(Double|Float)|aveOperationType)|Ha(sh(Table|Enumerator)|ndler(2)?)|C(o(ntrol(Size|Tint)|mp(ositingOperation|arisonResult))|ell(State|Type|ImagePosition|Attribute))|T(hreadPrivate|ypesetterGlyphInfo|i(ckMarkPosition|tlePosition|meInterval)|o(ol(TipTag|bar(SizeMode|DisplayMode))|kenStyle)|IFFCompression|ext(TabType|Alignment)|ab(State|leViewDropOperation|ViewType)|rackingRectTag)|ImageInterpolation|Zone|OpenGL(ContextAuxiliary|PixelFormatAuxiliary)|D(ocumentChangeType|atePickerElementFlags|ra(werState|gOperation))|UsableScrollerParts|P(oint|r(intingPageOrder|ogressIndicator(Style|Th(ickness|readInfo))))|EventType|KeyValueObservingOptions|Fo(nt(SymbolicTraits|TraitMask|Action)|cusRingType)|W(indow(OrderingMode|Depth)|orkspace(IconCreationOptions|LaunchOptions)|ritingDirection)|L(ineBreakMode|ayout(Status|Direction))|A(nimation(Progress|Effect)|ppl(ication(TerminateReply|DelegateReply|PrintReply)|eEventManagerSuspensionID)|ffineTransformStruct|lertStyle))\b - name - support.type.cappuccino - - - match - \bCP(NotFound|Ordered(Ascending|Descending|Same))\b - name - support.constant.cappuccino - - - match - \bCP(Menu(Did(RemoveItem|SendAction|ChangeItem|EndTracking|AddItem)|WillSendAction)|S(ystemColorsDidChange|plitView(DidResizeSubviews|WillResizeSubviews))|C(o(nt(extHelpModeDid(Deactivate|Activate)|rolT(intDidChange|extDid(BeginEditing|Change|EndEditing)))|lor(PanelColorDidChange|ListDidChange)|mboBox(Selection(IsChanging|DidChange)|Will(Dismiss|PopUp)))|lassDescriptionNeededForClass)|T(oolbar(DidRemoveItem|WillAddItem)|ext(Storage(DidProcessEditing|WillProcessEditing)|Did(BeginEditing|Change|EndEditing)|View(DidChange(Selection|TypingAttributes)|WillChangeNotifyingTextView))|ableView(Selection(IsChanging|DidChange)|ColumnDid(Resize|Move)))|ImageRepRegistryDidChange|OutlineView(Selection(IsChanging|DidChange)|ColumnDid(Resize|Move)|Item(Did(Collapse|Expand)|Will(Collapse|Expand)))|Drawer(Did(Close|Open)|Will(Close|Open))|PopUpButton(CellWillPopUp|WillPopUp)|View(GlobalFrameDidChange|BoundsDidChange|F(ocusDidChange|rameDidChange))|FontSetChanged|W(indow(Did(Resi(ze|gn(Main|Key))|M(iniaturize|ove)|Become(Main|Key)|ChangeScreen(|Profile)|Deminiaturize|Update|E(ndSheet|xpose))|Will(M(iniaturize|ove)|BeginSheet|Close))|orkspace(SessionDid(ResignActive|BecomeActive)|Did(Mount|TerminateApplication|Unmount|PerformFileOperation|Wake|LaunchApplication)|Will(Sleep|Unmount|PowerOff|LaunchApplication)))|A(ntialiasThresholdChanged|ppl(ication(Did(ResignActive|BecomeActive|Hide|ChangeScreenParameters|U(nhide|pdate)|FinishLaunching)|Will(ResignActive|BecomeActive|Hide|Terminate|U(nhide|pdate)|FinishLaunching))|eEventManagerWillProcessFirstEvent)))Notification\b - name - support.constant.notification.cappuccino - - - match - \bCP(R(GB(ModeColorPanel|ColorSpaceModel)|ight(Mouse(D(own(Mask)?|ragged(Mask)?)|Up(Mask)?)|T(ext(Movement|Alignment)|ab(sBezelBorder|StopType))|ArrowFunctionKey)|ound(RectBezelStyle|Bankers|ed(BezelStyle|TokenStyle|DisclosureBezelStyle)|Down|Up|Plain|Line(CapStyle|JoinStyle))|un(StoppedResponse|ContinuesResponse|AbortedResponse)|e(s(izableWindowMask|et(CursorRectsRunLoopOrdering|FunctionKey))|ce(ssedBezelStyle|iver(sCantHandleCommandScriptError|EvaluationScriptError))|turnTextMovement|doFunctionKey|quiredArgumentsMissingScriptError|l(evancyLevelIndicatorStyle|ative(Before|After))|gular(SquareBezelStyle|ControlSize)|moveTraitFontAction)|a(n(domSubelement|geDateMode)|tingLevelIndicatorStyle|dio(ModeMatrix|Button)))|G(IFFileType|lyph(Below|Inscribe(B(elow|ase)|Over(strike|Below)|Above)|Layout(WithPrevious|A(tAPoint|gainstAPoint))|A(ttribute(BidiLevel|Soft|Inscribe|Elastic)|bove))|r(ooveBorder|eaterThan(Comparison|OrEqualTo(Comparison|PredicateOperatorType)|PredicateOperatorType)|a(y(ModeColorPanel|ColorSpaceModel)|dient(None|Con(cave(Strong|Weak)|vex(Strong|Weak)))|phiteControlTint)))|XML(N(o(tationDeclarationKind|de(CompactEmptyElement|IsCDATA|OptionsNone|Use(SingleQuotes|DoubleQuotes)|Pre(serve(NamespaceOrder|C(haracterReferences|DATA)|DTD|Prefixes|E(ntities|mptyElements)|Quotes|Whitespace|A(ttributeOrder|ll))|ttyPrint)|ExpandEmptyElement))|amespaceKind)|CommentKind|TextKind|InvalidKind|D(ocument(X(MLKind|HTMLKind|Include)|HTMLKind|T(idy(XML|HTML)|extKind)|IncludeContentTypeDeclaration|Validate|Kind)|TDKind)|P(arser(GTRequiredError|XMLDeclNot(StartedError|FinishedError)|Mi(splaced(XMLDeclarationError|CDATAEndStringError)|xedContentDeclNot(StartedError|FinishedError))|S(t(andaloneValueError|ringNot(StartedError|ClosedError))|paceRequiredError|eparatorRequiredError)|N(MTOKENRequiredError|o(t(ationNot(StartedError|FinishedError)|WellBalancedError)|DTDError)|amespaceDeclarationError|AMERequiredError)|C(haracterRef(In(DTDError|PrologError|EpilogError)|AtEOFError)|o(nditionalSectionNot(StartedError|FinishedError)|mment(NotFinishedError|ContainsDoubleHyphenError))|DATANotFinishedError)|TagNameMismatchError|In(ternalError|valid(HexCharacterRefError|C(haracter(RefError|InEntityError|Error)|onditionalSectionError)|DecimalCharacterRefError|URIError|Encoding(NameError|Error)))|OutOfMemoryError|D(ocumentStartError|elegateAbortedParseError|OCTYPEDeclNotFinishedError)|U(RI(RequiredError|FragmentError)|n(declaredEntityError|parsedEntityError|knownEncodingError|finishedTagError))|P(CDATARequiredError|ublicIdentifierRequiredError|arsedEntityRef(MissingSemiError|NoNameError|In(Internal(SubsetError|Error)|PrologError|EpilogError)|AtEOFError)|r(ocessingInstructionNot(StartedError|FinishedError)|ematureDocumentEndError))|E(n(codingNotSupportedError|tity(Ref(In(DTDError|PrologError|EpilogError)|erence(MissingSemiError|WithoutNameError)|LoopError|AtEOFError)|BoundaryError|Not(StartedError|FinishedError)|Is(ParameterError|ExternalError)|ValueRequiredError))|qualExpectedError|lementContentDeclNot(StartedError|FinishedError)|xt(ernalS(tandaloneEntityError|ubsetNotFinishedError)|raContentError)|mptyDocumentError)|L(iteralNot(StartedError|FinishedError)|T(RequiredError|SlashRequiredError)|essThanSymbolInAttributeError)|Attribute(RedefinedError|HasNoValueError|Not(StartedError|FinishedError)|ListNot(StartedError|FinishedError)))|rocessingInstructionKind)|E(ntity(GeneralKind|DeclarationKind|UnparsedKind|P(ar(sedKind|ameterKind)|redefined))|lement(Declaration(MixedKind|UndefinedKind|E(lementKind|mptyKind)|Kind|AnyKind)|Kind))|Attribute(N(MToken(sKind|Kind)|otationKind)|CDATAKind|ID(Ref(sKind|Kind)|Kind)|DeclarationKind|En(tit(yKind|iesKind)|umerationKind)|Kind))|M(i(n(XEdge|iaturizableWindowMask|YEdge|uteCalendarUnit)|terLineJoinStyle|ddleSubelement|xedState)|o(nthCalendarUnit|deSwitchFunctionKey|use(Moved(Mask)?|E(ntered(Mask)?|ventSubtype|xited(Mask)?))|veToBezierPathElement|mentary(ChangeButton|Push(Button|InButton)|Light(Button)?))|enuFunctionKey|a(c(intoshInterfaceStyle|OSRomanStringEncoding)|tchesPredicateOperatorType|ppedRead|x(XEdge|YEdge))|ACHOperatingSystem)|B(MPFileType|o(ttomTabsBezelBorder|ldFontMask|rderlessWindowMask|x(Se(condary|parator)|OldStyle|Primary))|uttLineCapStyle|e(zelBorder|velLineJoinStyle|low(Bottom|Top)|gin(sWith(Comparison|PredicateOperatorType)|FunctionKey))|lueControlTint|ack(spaceCharacter|tabTextMovement|ingStore(Retained|Buffered|Nonretained)|TabCharacter|wardsSearch|groundTab)|r(owser(NoColumnResizing|UserColumnResizing|AutoColumnResizing)|eakFunctionKey))|S(h(ift(JISStringEncoding|KeyMask)|ow(ControlGlyphs|InvisibleGlyphs)|adowlessSquareBezelStyle)|y(s(ReqFunctionKey|tem(D(omainMask|efined(Mask)?)|FunctionKey))|mbolStringEncoding)|c(a(nnedOption|le(None|ToFit|Proportionally))|r(oll(er(NoPart|Increment(Page|Line|Arrow)|Decrement(Page|Line|Arrow)|Knob(Slot)?|Arrows(M(inEnd|axEnd)|None|DefaultSetting))|Wheel(Mask)?|LockFunctionKey)|eenChangedEventType))|t(opFunctionKey|r(ingDrawing(OneShot|DisableScreenFontSubstitution|Uses(DeviceMetrics|FontLeading|LineFragmentOrigin))|eam(Status(Reading|NotOpen|Closed|Open(ing)?|Error|Writing|AtEnd)|Event(Has(BytesAvailable|SpaceAvailable)|None|OpenCompleted|E(ndEncountered|rrorOccurred)))))|i(ngle(DateMode|UnderlineStyle)|ze(DownFontAction|UpFontAction))|olarisOperatingSystem|unOSOperatingSystem|pecialPageOrder|e(condCalendarUnit|lect(By(Character|Paragraph|Word)|i(ng(Next|Previous)|onAffinity(Downstream|Upstream))|edTab|FunctionKey)|gmentSwitchTracking(Momentary|Select(One|Any)))|quareLineCapStyle|witchButton|ave(ToOperation|Op(tions(Yes|No|Ask)|eration)|AsOperation)|mall(SquareBezelStyle|C(ontrolSize|apsFontMask)|IconButtonBezelStyle))|H(ighlightModeMatrix|SBModeColorPanel|o(ur(Minute(SecondDatePickerElementFlag|DatePickerElementFlag)|CalendarUnit)|rizontalRuler|meFunctionKey)|TTPCookieAcceptPolicy(Never|OnlyFromMainDocumentDomain|Always)|e(lp(ButtonBezelStyle|KeyMask|FunctionKey)|avierFontAction)|PUXOperatingSystem)|Year(MonthDa(yDatePickerElementFlag|tePickerElementFlag)|CalendarUnit)|N(o(n(StandardCharacterSetFontMask|ZeroWindingRule|activatingPanelMask|LossyASCIIStringEncoding)|Border|t(ification(SuspensionBehavior(Hold|Coalesce|D(eliverImmediately|rop))|NoCoalescing|CoalescingOn(Sender|Name)|DeliverImmediately|PostToAllSessions)|PredicateType|EqualToPredicateOperatorType)|S(cr(iptError|ollerParts)|ubelement|pecifierError)|CellMask|T(itle|opLevelContainersSpecifierError|abs(BezelBorder|NoBorder|LineBorder))|I(nterfaceStyle|mage)|UnderlineStyle|FontChangeAction)|u(ll(Glyph|CellType)|m(eric(Search|PadKeyMask)|berFormatter(Round(Half(Down|Up|Even)|Ceiling|Down|Up|Floor)|Behavior(10|Default)|S(cientificStyle|pellOutStyle)|NoStyle|CurrencyStyle|DecimalStyle|P(ercentStyle|ad(Before(Suffix|Prefix)|After(Suffix|Prefix))))))|e(t(Services(BadArgumentError|NotFoundError|C(ollisionError|ancelledError)|TimeoutError|InvalidError|UnknownError|ActivityInProgress)|workDomainMask)|wlineCharacter|xt(StepInterfaceStyle|FunctionKey))|EXTSTEPStringEncoding|a(t(iveShortGlyphPacking|uralTextAlignment)|rrowFontMask))|C(hange(ReadOtherContents|GrayCell(Mask)?|BackgroundCell(Mask)?|Cleared|Done|Undone|Autosaved)|MYK(ModeColorPanel|ColorSpaceModel)|ircular(BezelStyle|Slider)|o(n(stantValueExpressionType|t(inuousCapacityLevelIndicatorStyle|entsCellMask|ain(sComparison|erSpecifierError)|rol(Glyph|KeyMask))|densedFontMask)|lor(Panel(RGBModeMask|GrayModeMask|HSBModeMask|C(MYKModeMask|olorListModeMask|ustomPaletteModeMask|rayonModeMask)|WheelModeMask|AllModesMask)|ListModeColorPanel)|reServiceDirectory|m(p(osite(XOR|Source(In|O(ut|ver)|Atop)|Highlight|C(opy|lear)|Destination(In|O(ut|ver)|Atop)|Plus(Darker|Lighter))|ressedFontMask)|mandKeyMask))|u(stom(SelectorPredicateOperatorType|PaletteModeColorPanel)|r(sor(Update(Mask)?|PointingDevice)|veToBezierPathElement))|e(nterT(extAlignment|abStopType)|ll(State|H(ighlighted|as(Image(Horizontal|OnLeftOrBottom)|OverlappingImage))|ChangesContents|Is(Bordered|InsetButton)|Disabled|Editable|LightsBy(Gray|Background|Contents)|AllowsMixedState))|l(ipPagination|o(s(ePathBezierPathElement|ableWindowMask)|ckAndCalendarDatePickerStyle)|ear(ControlTint|DisplayFunctionKey|LineFunctionKey))|a(seInsensitive(Search|PredicateOption)|n(notCreateScriptCommandError|cel(Button|TextMovement))|chesDirectory|lculation(NoError|Overflow|DivideByZero|Underflow|LossOfPrecision)|rriageReturnCharacter)|r(itical(Request|AlertStyle)|ayonModeColorPanel))|T(hick(SquareBezelStyle|erSquareBezelStyle)|ypesetter(Behavior|HorizontalTabAction|ContainerBreakAction|ZeroAdvancementAction|OriginalBehavior|ParagraphBreakAction|WhitespaceAction|L(ineBreakAction|atestBehavior))|i(ckMark(Right|Below|Left|Above)|tledWindowMask|meZoneDatePickerElementFlag)|o(olbarItemVisibilityPriority(Standard|High|User|Low)|pTabsBezelBorder|ggleButton)|IFF(Compression(N(one|EXT)|CCITTFAX(3|4)|OldJPEG|JPEG|PackBits|LZW)|FileType)|e(rminate(Now|Cancel|Later)|xt(Read(InapplicableDocumentTypeError|WriteErrorM(inimum|aximum))|Block(M(i(nimum(Height|Width)|ddleAlignment)|a(rgin|ximum(Height|Width)))|B(o(ttomAlignment|rder)|aselineAlignment)|Height|TopAlignment|P(ercentageValueType|adding)|Width|AbsoluteValueType)|StorageEdited(Characters|Attributes)|CellType|ured(RoundedBezelStyle|BackgroundWindowMask|SquareBezelStyle)|Table(FixedLayoutAlgorithm|AutomaticLayoutAlgorithm)|Field(RoundedBezel|SquareBezel|AndStepperDatePickerStyle)|WriteInapplicableDocumentTypeError|ListPrependEnclosingMarker))|woByteGlyphPacking|ab(Character|TextMovement|le(tP(oint(Mask|EventSubtype)?|roximity(Mask|EventSubtype)?)|Column(NoResizing|UserResizingMask|AutoresizingMask)|View(ReverseSequentialColumnAutoresizingStyle|GridNone|S(olid(HorizontalGridLineMask|VerticalGridLineMask)|equentialColumnAutoresizingStyle)|NoColumnAutoresizing|UniformColumnAutoresizingStyle|FirstColumnOnlyAutoresizingStyle|LastColumnOnlyAutoresizingStyle)))|rackModeMatrix)|I(n(sert(CharFunctionKey|FunctionKey|LineFunctionKey)|t(Type|ernalS(criptError|pecifierError))|dexSubelement|validIndexSpecifierError|formational(Request|AlertStyle)|PredicateOperatorType)|talicFontMask|SO(2022JPStringEncoding|Latin(1StringEncoding|2StringEncoding))|dentityMappingCharacterCollection|llegalTextMovement|mage(R(ight|ep(MatchesDevice|LoadStatus(ReadingHeader|Completed|InvalidData|Un(expectedEOF|knownType)|WillNeedAllData)))|Below|C(ellType|ache(BySize|Never|Default|Always))|Interpolation(High|None|Default|Low)|O(nly|verlaps)|Frame(Gr(oove|ayBezel)|Button|None|Photo)|L(oadStatus(ReadError|C(ompleted|ancelled)|InvalidData|UnexpectedEOF)|eft)|A(lign(Right|Bottom(Right|Left)?|Center|Top(Right|Left)?|Left)|bove)))|O(n(State|eByteGlyphPacking|OffButton|lyScrollerArrows)|ther(Mouse(D(own(Mask)?|ragged(Mask)?)|Up(Mask)?)|TextMovement)|SF1OperatingSystem|pe(n(GL(GO(Re(setLibrary|tainRenderers)|ClearFormatCache|FormatCacheSize)|PFA(R(obust|endererID)|M(inimumPolicy|ulti(sample|Screen)|PSafe|aximumPolicy)|BackingStore|S(creenMask|te(ncilSize|reo)|ingleRenderer|upersample|ample(s|Buffers|Alpha))|NoRecovery|C(o(lor(Size|Float)|mpliant)|losestPolicy)|OffScreen|D(oubleBuffer|epthSize)|PixelBuffer|VirtualScreenCount|FullScreen|Window|A(cc(umSize|elerated)|ux(Buffers|DepthStencil)|l(phaSize|lRenderers))))|StepUnicodeReservedBase)|rationNotSupportedForKeyS(criptError|pecifierError))|ffState|KButton|rPredicateType|bjC(B(itfield|oolType)|S(hortType|tr(ingType|uctType)|electorType)|NoType|CharType|ObjectType|DoubleType|UnionType|PointerType|VoidType|FloatType|Long(Type|longType)|ArrayType))|D(i(s(c(losureBezelStyle|reteCapacityLevelIndicatorStyle)|playWindowRunLoopOrdering)|acriticInsensitivePredicateOption|rect(Selection|PredicateModifier))|o(c(ModalWindowMask|ument(Directory|ationDirectory))|ubleType|wn(TextMovement|ArrowFunctionKey))|e(s(cendingPageOrder|ktopDirectory)|cimalTabStopType|v(ice(NColorSpaceModel|IndependentModifierFlagsMask)|eloper(Directory|ApplicationDirectory))|fault(ControlTint|TokenStyle)|lete(Char(acter|FunctionKey)|FunctionKey|LineFunctionKey)|moApplicationDirectory)|a(yCalendarUnit|teFormatter(MediumStyle|Behavior(10|Default)|ShortStyle|NoStyle|FullStyle|LongStyle))|ra(wer(Clos(ingState|edState)|Open(ingState|State))|gOperation(Generic|Move|None|Copy|Delete|Private|Every|Link|All)))|U(ser(CancelledError|D(irectory|omainMask)|FunctionKey)|RL(Handle(NotLoaded|Load(Succeeded|InProgress|Failed))|CredentialPersistence(None|Permanent|ForSession))|n(scaledWindowMask|cachedRead|i(codeStringEncoding|talicFontMask|fiedTitleAndToolbarWindowMask)|d(o(CloseGroupingRunLoopOrdering|FunctionKey)|e(finedDateComponent|rline(Style(Single|None|Thick|Double)|Pattern(Solid|D(ot|ash(Dot(Dot)?)?)))))|known(ColorSpaceModel|P(ointingDevice|ageOrder)|KeyS(criptError|pecifierError))|boldFontMask)|tilityWindowMask|TF8StringEncoding|p(dateWindowsRunLoopOrdering|TextMovement|ArrowFunctionKey))|J(ustifiedTextAlignment|PEG(2000FileType|FileType)|apaneseEUC(GlyphPacking|StringEncoding))|P(o(s(t(Now|erFontMask|WhenIdle|ASAP)|iti(on(Replace|Be(fore|ginning)|End|After)|ve(IntType|DoubleType|FloatType)))|pUp(NoArrow|ArrowAt(Bottom|Center))|werOffEventType|rtraitOrientation)|NGFileType|ush(InCell(Mask)?|OnPushOffButton)|e(n(TipMask|UpperSideMask|PointingDevice|LowerSideMask)|riodic(Mask)?)|P(S(caleField|tatus(Title|Field)|aveButton)|N(ote(Title|Field)|ame(Title|Field))|CopiesField|TitleField|ImageButton|OptionsButton|P(a(perFeedButton|ge(Range(To|From)|ChoiceMatrix))|reviewButton)|LayoutButton)|lainTextTokenStyle|a(useFunctionKey|ragraphSeparatorCharacter|ge(DownFunctionKey|UpFunctionKey))|r(int(ing(ReplyLater|Success|Cancelled|Failure)|ScreenFunctionKey|erTable(NotFound|OK|Error)|FunctionKey)|o(p(ertyList(XMLFormat|MutableContainers(AndLeaves)?|BinaryFormat|Immutable|OpenStepFormat)|rietaryStringEncoding)|gressIndicator(BarStyle|SpinningStyle|Preferred(SmallThickness|Thickness|LargeThickness|AquaThickness)))|e(ssedTab|vFunctionKey))|L(HeightForm|CancelButton|TitleField|ImageButton|O(KButton|rientationMatrix)|UnitsButton|PaperNameButton|WidthForm))|E(n(terCharacter|d(sWith(Comparison|PredicateOperatorType)|FunctionKey))|v(e(nOddWindingRule|rySubelement)|aluatedObjectExpressionType)|qualTo(Comparison|PredicateOperatorType)|ra(serPointingDevice|CalendarUnit|DatePickerElementFlag)|x(clude(10|QuickDrawElementsIconCreationOption)|pandedFontMask|ecuteFunctionKey))|V(i(ew(M(in(XMargin|YMargin)|ax(XMargin|YMargin))|HeightSizable|NotSizable|WidthSizable)|aPanelFontAction)|erticalRuler|a(lidationErrorM(inimum|aximum)|riableExpressionType))|Key(SpecifierEvaluationScriptError|Down(Mask)?|Up(Mask)?|PathExpressionType|Value(MinusSetMutation|SetSetMutation|Change(Re(placement|moval)|Setting|Insertion)|IntersectSetMutation|ObservingOption(New|Old)|UnionSetMutation|ValidationError))|QTMovie(NormalPlayback|Looping(BackAndForthPlayback|Playback))|F(1(1FunctionKey|7FunctionKey|2FunctionKey|8FunctionKey|3FunctionKey|9FunctionKey|4FunctionKey|5FunctionKey|FunctionKey|0FunctionKey|6FunctionKey)|7FunctionKey|i(nd(PanelAction(Replace(A(ndFind|ll(InSelection)?))?|S(howFindPanel|e(tFindString|lectAll(InSelection)?))|Next|Previous)|FunctionKey)|tPagination|le(Read(No(SuchFileError|PermissionError)|CorruptFileError|In(validFileNameError|applicableStringEncodingError)|Un(supportedSchemeError|knownError))|HandlingPanel(CancelButton|OKButton)|NoSuchFileError|ErrorM(inimum|aximum)|Write(NoPermissionError|In(validFileNameError|applicableStringEncodingError)|OutOfSpaceError|Un(supportedSchemeError|knownError))|LockingError)|xedPitchFontMask)|2(1FunctionKey|7FunctionKey|2FunctionKey|8FunctionKey|3FunctionKey|9FunctionKey|4FunctionKey|5FunctionKey|FunctionKey|0FunctionKey|6FunctionKey)|o(nt(Mo(noSpaceTrait|dernSerifsClass)|BoldTrait|S(ymbolicClass|criptsClass|labSerifsClass|ansSerifClass)|C(o(ndensedTrait|llectionApplicationOnlyMask)|larendonSerifsClass)|TransitionalSerifsClass|I(ntegerAdvancementsRenderingMode|talicTrait)|O(ldStyleSerifsClass|rnamentalsClass)|DefaultRenderingMode|U(nknownClass|IOptimizedTrait)|Panel(S(hadowEffectModeMask|t(andardModesMask|rikethroughEffectModeMask)|izeModeMask)|CollectionModeMask|TextColorEffectModeMask|DocumentColorEffectModeMask|UnderlineEffectModeMask|FaceModeMask|All(ModesMask|EffectsModeMask))|ExpandedTrait|VerticalTrait|F(amilyClassMask|reeformSerifsClass)|Antialiased(RenderingMode|IntegerAdvancementsRenderingMode))|cusRing(Below|Type(None|Default|Exterior)|Only|Above)|urByteGlyphPacking|rm(attingError(M(inimum|aximum))?|FeedCharacter))|8FunctionKey|unction(ExpressionType|KeyMask)|3(1FunctionKey|2FunctionKey|3FunctionKey|4FunctionKey|5FunctionKey|FunctionKey|0FunctionKey)|9FunctionKey|4FunctionKey|P(RevertButton|S(ize(Title|Field)|etButton)|CurrentField|Preview(Button|Field))|l(oat(ingPointSamplesBitmapFormat|Type)|agsChanged(Mask)?)|axButton|5FunctionKey|6FunctionKey)|W(heelModeColorPanel|indow(s(NTOperatingSystem|CP125(1StringEncoding|2StringEncoding|3StringEncoding|4StringEncoding|0StringEncoding)|95(InterfaceStyle|OperatingSystem))|M(iniaturizeButton|ovedEventType)|Below|CloseButton|ToolbarButton|ZoomButton|Out|DocumentIconButton|ExposedEventType|Above)|orkspaceLaunch(NewInstance|InhibitingBackgroundOnly|Default|PreferringClassic|WithoutA(ctivation|ddingToRecents)|A(sync|nd(Hide(Others)?|Print)|llowingClassicStartup))|eek(day(CalendarUnit|OrdinalCalendarUnit)|CalendarUnit)|a(ntsBidiLevels|rningAlertStyle)|r(itingDirection(RightToLeft|Natural|LeftToRight)|apCalendarComponents))|L(i(stModeMatrix|ne(Moves(Right|Down|Up|Left)|B(order|reakBy(C(harWrapping|lipping)|Truncating(Middle|Head|Tail)|WordWrapping))|S(eparatorCharacter|weep(Right|Down|Up|Left))|ToBezierPathElement|DoesntMove|arSlider)|teralSearch|kePredicateOperatorType|ghterFontAction|braryDirectory)|ocalDomainMask|e(ssThan(Comparison|OrEqualTo(Comparison|PredicateOperatorType)|PredicateOperatorType)|ft(Mouse(D(own(Mask)?|ragged(Mask)?)|Up(Mask)?)|T(ext(Movement|Alignment)|ab(sBezelBorder|StopType))|ArrowFunctionKey))|a(yout(RightToLeft|NotDone|CantFit|OutOfGlyphs|Done|LeftToRight)|ndscapeOrientation)|ABColorSpaceModel)|A(sc(iiWithDoubleByteEUCGlyphPacking|endingPageOrder)|n(y(Type|PredicateModifier|EventMask)|choredSearch|imation(Blocking|Nonblocking(Threaded)?|E(ffect(DisappearingItemDefault|Poof)|ase(In(Out)?|Out))|Linear)|dPredicateType)|t(Bottom|tachmentCharacter|omicWrite|Top)|SCIIStringEncoding|d(obe(GB1CharacterCollection|CCP1CharacterCollection|Japan(1CharacterCollection|2CharacterCollection)|Korea1CharacterCollection)|dTraitFontAction|minApplicationDirectory)|uto(saveOperation|Pagination)|pp(lication(SupportDirectory|D(irectory|e(fined(Mask)?|legateReply(Success|Cancel|Failure)|activatedEventType))|ActivatedEventType)|KitDefined(Mask)?)|l(ternateKeyMask|pha(ShiftKeyMask|NonpremultipliedBitmapFormat|FirstBitmapFormat)|ert(SecondButtonReturn|ThirdButtonReturn|OtherReturn|DefaultReturn|ErrorReturn|FirstButtonReturn|AlternateReturn)|l(ScrollerParts|DomainsMask|PredicateModifier|LibrariesDirectory|ApplicationsDirectory))|rgument(sWrongScriptError|EvaluationScriptError)|bove(Bottom|Top)|WTEventType))\b - name - support.constant.cappuccino - - - include - #bracketed_content - - - include - source.js - - - repository - - bracketed_content - - begin - \[ - captures - - 0 - - name - punctuation.section.scope.js.objj - - - end - \] - name - meta.bracketed.js.objj - patterns - - - begin - (?=\w)(?<=[\w\])"] )(\w+(?:(:)|(?=\]))) - beginCaptures - - 1 - - name - support.function.any-method.js.objj - - 2 - - name - punctuation.separator.arguments.js.objj - - - end - (?=\]) - name - meta.function-call.js.objj - patterns - - - captures - - 1 - - name - punctuation.separator.arguments.js.objj - - - match - \b\w+(:) - name - support.function.any-method.name-of-parameter.js.objj - - - include - #special_variables - - - include - $base - - - - - include - #special_variables - - - include - $base - - - - comment - - patterns - - - begin - /\* - captures - - 0 - - name - punctuation.definition.comment.js.objj - - - end - \*/ - name - comment.block.js.objj - - - begin - // - beginCaptures - - 0 - - name - punctuation.definition.comment.js.objj - - - end - $\n? - name - comment.line.double-slash.js.objj - patterns - - - match - (?>\\\s*\n) - name - punctuation.separator.continuation.js.objj - - - - - - method - - begin - ^(-|\+)\s* - end - (?=\{)|; - name - meta.function.js.objj - patterns - - - begin - (\() - captures - - 1 - - name - punctuation.definition.type.js.objj - - 2 - - name - entity.name.function.js.objj - - - end - (\))\s*(\w+\b) - name - meta.return-type.js.objj - patterns - - - include - #protocol_list - - - include - #protocol_type_qualifier - - - include - $base - - - - - match - \b\w+(?=:) - name - entity.name.function.name-of-parameter.js.objj - - - begin - ((:))\s*(\() - beginCaptures - - 1 - - name - entity.name.function.name-of-parameter.js.objj - - 2 - - name - punctuation.separator.arguments.js.objj - - 3 - - name - punctuation.definition.type.js.objj - - - end - (\))\s*(\w+\b)? - endCaptures - - 1 - - name - punctuation.definition.type.js.objj - - 2 - - name - variable.parameter.function.js.objj - - - name - meta.argument-type.js.objj - patterns - - - include - #protocol_list - - - include - #protocol_type_qualifier - - - include - $base - - - - - include - #comment - - - - protocol_list - - begin - (<) - beginCaptures - - 1 - - name - punctuation.section.scope.begin.js.objj - - - end - (>) - endCaptures - - 1 - - name - punctuation.section.scope.end.js.objj - - - name - meta.protocol-list.js.objj - patterns - - - match - \bCP(GlyphStorage|M(utableCopying|enuItem)|C(hangeSpelling|o(ding|pying|lorPicking(Custom|Default)))|T(oolbarItemValidations|ext(Input|AttachmentCell))|I(nputServ(iceProvider|erMouseTracker)|gnoreMisspelledWords)|Obj(CTypeSerializationCallBack|ect)|D(ecimalNumberBehaviors|raggingInfo)|U(serInterfaceValidations|RL(HandleClient|DownloadDelegate|ProtocolClient|AuthenticationChallengeSender))|Validated(ToobarItem|UserInterfaceItem)|Locking)\b - name - support.other.protocol.js.objj - - - - protocol_type_qualifier - - match - \b(in|out|inout|oneway|bycopy|byref)\b - name - storage.modifier.protocol.js.objj - - special_variables - - patterns - - - match - \b_cmd\b - name - variable.other.selector.js.objj - - - match - \b(self|super)\b - name - variable.language.js.objj - - - - - scopeName - source.js.objj - uuid - 58D4B98A-2110-423E-9C80-CC9E202816E7 - - diff --git a/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/info.plist b/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/info.plist deleted file mode 100644 index b2d7b4cab..000000000 --- a/Tools/Editors/TextMate/JavaScript Objective-J.tmbundle/info.plist +++ /dev/null @@ -1,142 +0,0 @@ - - - - - contactEmailRot13 - gbz@280abegu.pbz - contactName - Tom Robinson - deleted - - 4689ADD7-C88A-4235-B69A-84C720034296 - - description - <a href="http://cappuccino.org/">Cappuccino</a> is an open source framework that makes it easy to build desktop-caliber applications that run in a web browser. - mainMenu - - excludedItems - - CD025B3E-36B9-4E16-A81E-8DB6E8466CD1 - 2D05A28A-2ED7-4A9A-9A5C-8625466BC77C - - items - - 0C55A19B-3B2D-418F-B7FD-7E64B736F379 - 36FD3695-1051-401E-8536-89FB9CEEEAB4 - 033BC36A-97DA-4F48-9ACB-B58C80D1A689 - ------------------------------------ - ------------------------------------ - AF27A8B3-C87F-410A-915B-D83271FDDC00 - 344244D8-67A3-4F23-8270-397BD1696AC4 - ------------------------------------ - 9BC0151E-82E8-4F2C-8AC1-7D4E6EC8FC80 - 3ABE883F-3236-4876-91E0-E899F5DE9B29 - B226514A-4024-49EA-B4BD-4307C72F7EE3 - A4BB7CC7-B06B-4034-B125-A646A22C0813 - 94B213AC-4DB1-400F-B78A-8FBCF3F93E44 - 28C6F02F-13D0-4B5B-AB6A-6F23E2CFBD5B - ------------------------------------ - - submenus - - 28C6F02F-13D0-4B5B-AB6A-6F23E2CFBD5B - - items - - C7340B17-F9EC-403F-9781-E2487023ED01 - - name - UI - - 3ABE883F-3236-4876-91E0-E899F5DE9B29 - - items - - AA41BEF8-5F81-4A5A-85DE-2E81A112778B - 85B0746B-AE1C-47B3-8B9A-2B9A95F4C71E - 0B3D4C4C-7D75-49E6-9CEC-E4BF4069223A - - name - Accessor Methods For - - 94B213AC-4DB1-400F-B78A-8FBCF3F93E44 - - items - - 13D9F280-A78F-4A4C-BE99-0DE13235738D - DF55A80D-E733-4CE2-A318-D56789B18406 - - name - Misc - - 9BC0151E-82E8-4F2C-8AC1-7D4E6EC8FC80 - - items - - BE0553C0-B73B-4160-814C-840FC2B84C32 - 686B995F-3183-418B-A15F-CA517DFEFE2E - 9BABD784-3DBE-4DA3-8A70-4E32FC7FDBB8 - ------------------------------------ - 96C39647-4346-4750-9F96-58070F24EDE6 - 8C001067-8A50-4BAB-9A88-BA957A84E8CF - A840A98A-0C5B-49CB-8235-2CCD1BF7AFC1 - - name - Language Boilerplate - - A4BB7CC7-B06B-4034-B125-A646A22C0813 - - items - - D79EC699-9839-406E-AF60-DE51F78153CB - 3B5B858C-645E-499C-813B-BBEEED943E9B - - name - Idioms - - B226514A-4024-49EA-B4BD-4307C72F7EE3 - - items - - C268A928-5C8E-4284-9BAB-4FDFB07B983A - F220FEE6-6522-4281-8091-CF8C66AED44F - - name - Common Method Calls - - - - name - JavaScript Objective-J - ordering - - 0C55A19B-3B2D-418F-B7FD-7E64B736F379 - 36FD3695-1051-401E-8536-89FB9CEEEAB4 - 033BC36A-97DA-4F48-9ACB-B58C80D1A689 - AF27A8B3-C87F-410A-915B-D83271FDDC00 - 344244D8-67A3-4F23-8270-397BD1696AC4 - 2D05A28A-2ED7-4A9A-9A5C-8625466BC77C - BE0553C0-B73B-4160-814C-840FC2B84C32 - 686B995F-3183-418B-A15F-CA517DFEFE2E - 9BABD784-3DBE-4DA3-8A70-4E32FC7FDBB8 - 96C39647-4346-4750-9F96-58070F24EDE6 - 8C001067-8A50-4BAB-9A88-BA957A84E8CF - AA41BEF8-5F81-4A5A-85DE-2E81A112778B - 85B0746B-AE1C-47B3-8B9A-2B9A95F4C71E - 0B3D4C4C-7D75-49E6-9CEC-E4BF4069223A - A840A98A-0C5B-49CB-8235-2CCD1BF7AFC1 - C268A928-5C8E-4284-9BAB-4FDFB07B983A - F220FEE6-6522-4281-8091-CF8C66AED44F - D79EC699-9839-406E-AF60-DE51F78153CB - 3B5B858C-645E-499C-813B-BBEEED943E9B - C7340B17-F9EC-403F-9781-E2487023ED01 - 13D9F280-A78F-4A4C-BE99-0DE13235738D - CD025B3E-36B9-4E16-A81E-8DB6E8466CD1 - DF55A80D-E733-4CE2-A318-D56789B18406 - 58D4B98A-2110-423E-9C80-CC9E202816E7 - E65A721C-192D-4BCC-AD35-5ED5CB0DA5BE - - uuid - 1FB3D538-84E1-4002-AA46-5705529A27E1 - - diff --git a/Tools/Editors/Xcode/ObjectiveJ.xclangspec b/Tools/Editors/Xcode/ObjectiveJ.xclangspec deleted file mode 100644 index 60c390227..000000000 --- a/Tools/Editors/Xcode/ObjectiveJ.xclangspec +++ /dev/null @@ -1,752 +0,0 @@ -// Objective-J language -( - -/****************************************************************************/ -// MARK: Strings and Characters -/****************************************************************************/ - - { - Identifier = "xcode.lang.string.objj"; - Syntax = { - Start = "@\""; - EscapeChar = "\\"; - End = "\""; - Type = "xcode.syntax.string"; - }; - }, - - -/****************************************************************************/ -// MARK: Objective-J keywords -/****************************************************************************/ - - { - Identifier = "xcode.lang.objj.identifier"; - Syntax = { - StartChars = "@abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ_"; - Chars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789_"; - Words = ( - // keywords from JavaScript - "break", - "case", - "catch", - "continue", - "default", - "delete", - "do", - "else", - "false", - "finally", - "for", - "function", - "if", - "in", - "instanceof", - "new", - "null", - "return", - "switch", - "this", - "throw", - "true", - "try", - "typeof", - "var", - "void", - "while", - "with", - "class", - "window", - "document", - - // Select keywords from Objective-C - "@end", - "@implementation", - "@import", - "@private", - "@property", - "@protected", - "@protocol", - "@public", - "@selector", - "@accessors", - "@action", - "@outlet", - "in", - "inout", - "oneway", - "out", - "BOOL", - "IBAction", - "IBOutlet", - "IMP", - "NO", - "Nil", - "SEL", - "YES", - "id", - "nil", - "self", - "super", - ); - Type = "xcode.syntax.keyword"; - AltType = "xcode.syntax.identifier"; // non-keywords are identifiers - }; - }, - -/****************************************************************************/ -// MARK: Objective-J Top-Level -/****************************************************************************/ - - { - Identifier = "xcode.lang.objj"; - Description = "Objective-J Coloring"; - BasedOn = "xcode.lang.javascript"; - IncludeInMenu = YES; - Name = "Objective-J"; - Syntax = { - Tokenizer = "xcode.lang.objj.lexer.toplevel"; - IncludeRules = ( - "xcode.lang.objj.block", - "xcode.lang.objj.bracketexpr", - "xcode.lang.objj.parenexpr", - "xcode.lang.objj.interface", - "xcode.lang.objj.implementation", - "xcode.lang.objj.protocol.declaration", - "xcode.lang.objj.protocol", - "xcode.lang.objj.function.declaration", - "xcode.lang.objj.function.definition", - "xcode.lang.objj.initializer", - ); - Type = "xcode.syntax.plain"; - }; - }, - -/****************************************************************************/ -// MARK: Lexers -/****************************************************************************/ - - // The following rule returns tokens to the other rules - { - Identifier = "xcode.lang.objj.lexer"; - Syntax = { - IncludeRules = ( - "xcode.lang.comment.headerdoc", - "xcode.lang.comment", - "xcode.lang.comment.singleline", - "xcode.lang.c.preprocessor", - "xcode.lang.string.objj", - "xcode.lang.string", - "xcode.lang.character", - "xcode.lang.completionplaceholder", - "xcode.lang.objj.identifier", - "xcode.lang.number", - ); - }; - }, - { - Identifier = "xcode.lang.objj.lexer.toplevel"; - Syntax = { - IncludeRules = ( - "xcode.lang.comment.headerdoc", - "xcode.lang.comment", - "xcode.lang.comment.singleline", - "xcode.lang.c.preprocessor", - "xcode.lang.string.objj", - "xcode.lang.string", - "xcode.lang.character", - "xcode.lang.completionplaceholder", - "xcode.lang.objj.interface.declarator", - "xcode.lang.objj.implementation.declarator", - "xcode.lang.objj.protocol.declarator", - "xcode.lang.objj.property.declarator", - "xcode.lang.objj.identifier", - "xcode.lang.number", - ); - }; - }, - - { - Identifier = "xcode.lang.objj.lexer.attribute"; - Syntax = { - IncludeRules = ( - "xcode.lang.comment.headerdoc", - "xcode.lang.comment", - "xcode.lang.comment.singleline", - "xcode.lang.c.preprocessor", - "xcode.lang.string.objj", - "xcode.lang.string", - "xcode.lang.character", - "xcode.lang.completionplaceholder", - "xcode.lang.objj.identifier", - "xcode.lang.number", - ); - }; - }, - { - Identifier = "xcode.lang.objj.parenexpr.attribute"; - Syntax = { - Tokenizer = "xcode.lang.objj.lexer.attribute"; - Start = "("; - End = ")"; - Recursive = YES; - }; - }, - - { - Identifier = "xcode.lang.objj.implementation.declarator"; - Syntax = { - Tokenizer = "xcode.lang.objj.lexer"; - Rules = ( - "@implementation", - "xcode.lang.objj.classnameclause", - ); - Type = "xcode.syntax.name.tree"; - }; - }, - { - Identifier = "xcode.lang.objj.interface.declarator"; - Syntax = { - Tokenizer = "xcode.lang.objj.lexer"; - Rules = ( - "@interface", - "xcode.lang.objj.classnameclause", - ":?", - "xcode.lang.objj.classname?", - "xcode.lang.objj.protocolclause?", - ); - Type = "xcode.syntax.name.tree"; - }; - }, - { - Identifier = "xcode.lang.objj.protocol.declarator"; - Syntax = { - Tokenizer = "xcode.lang.objj.lexer"; - Rules = ( - "@protocol", - "xcode.lang.objj.protocolname", - ); - Type = "xcode.syntax.name.tree"; - }; - }, - { - Identifier = "xcode.lang.objj.classnameclause"; - Syntax = { - Tokenizer = "xcode.lang.objj.lexer"; - Rules = ( - "xcode.lang.objj.classname", - "xcode.lang.objj.categoryclause?", - ); - Type = "xcode.syntax.name.tree"; - }; - }, - { - Identifier = "xcode.lang.objj.classname"; - Syntax = { - Tokenizer = "xcode.lang.objj.lexer"; - Rules = ( - "xcode.lang.objj.identifier", - ); - Type = "xcode.syntax.name.partial"; - }; - }, - { - Identifier = "xcode.lang.objj.protocolname"; - Syntax = { - Tokenizer = "xcode.lang.objj.lexer"; - Rules = ( - "xcode.lang.objj.identifier", - ); - Type = "xcode.syntax.name.partial"; - }; - }, - { - Identifier = "xcode.lang.objj.protocol.openangle"; - Syntax = { - Tokenizer = "xcode.lang.objj.lexer"; - Rules = ( - "<", - ); - Type = "xcode.syntax.name.partial"; - }; - }, - { - Identifier = "xcode.lang.objj.protocol.closeangle"; - Syntax = { - Tokenizer = "xcode.lang.objj.lexer"; - Rules = ( - ">", - ); - Type = "xcode.syntax.name.partial"; - }; - }, - { - Identifier = "xcode.lang.objj.protocolclause"; - Syntax = { - Tokenizer = "xcode.lang.objj.lexer"; - Rules = ( - "xcode.lang.objj.protocol.openangle", - "xcode.lang.objj.protocolname", - "xcode.lang.objj.protocol.protocollist*", - "xcode.lang.objj.protocol.closeangle", - ); - }; - }, - { - Identifier = "xcode.lang.objj.categoryname"; - Syntax = { - Tokenizer = "xcode.lang.objj.lexer"; - Rules = ( - "xcode.lang.objj.identifier", - ); - Type = "xcode.syntax.name.partial"; - }; - }, - { - Identifier = "xcode.lang.objj.category.openparen"; - Syntax = { - Tokenizer = "xcode.lang.objj.lexer"; - Rules = ( - "(", - ); - Type = "xcode.syntax.name.partial"; - }; - }, - { - Identifier = "xcode.lang.objj.category.closeparen"; - Syntax = { - Tokenizer = "xcode.lang.objj.lexer"; - Rules = ( - ")", - ); - Type = "xcode.syntax.name.partial"; - }; - }, - { - Identifier = "xcode.lang.objj.categoryclause"; - Syntax = { - Tokenizer = "xcode.lang.objj.lexer"; - Rules = ( - "xcode.lang.objj.category.openparen", - "xcode.lang.objj.categoryname", - "xcode.lang.objj.category.closeparen" - ); - }; - }, - - -/****************************************************************************/ -// MARK: Interfaces/Implementations -/****************************************************************************/ - - { - Identifier = "xcode.lang.objj.protocol.declaration"; - Syntax = { - Tokenizer = "xcode.lang.objj.lexer.toplevel"; - Rules = ( - "xcode.lang.objj.protocol.declarator", - "xcode.lang.objj.protocol.protocolclause*", - ";", - ); - Type = "xcode.syntax.declaration.objj.protocol"; - }; - }, - { - Identifier = "xcode.lang.objj.protocol.protocollist"; - Syntax = { - Tokenizer = "xcode.lang.objj.lexer"; - Rules = ( - ",", - "xcode.lang.objj.protocolname", - ); - }; - }, - { - Identifier = "xcode.lang.objj.protocol"; - Syntax = { - Tokenizer = "xcode.lang.objj.lexer.toplevel"; - Start = "xcode.lang.objj.protocol.declarator"; - End = "@end"; - Foldable = YES; - IncludeRules = ( - "xcode.lang.objj.function.declaration", - "xcode.lang.objj.method.declaration", - "xcode.lang.objj.classmethod.declaration", - "xcode.lang.objj.property.declaration", - "xcode.lang.objj.block", - "xcode.lang.objj.bracketexpr", - "xcode.lang.objj.parenexpr", - ); - Type = "xcode.syntax.declaration.objj.protocol"; - }; - }, - { - Identifier = "xcode.lang.objj.interface"; - Syntax = { - Tokenizer = "xcode.lang.objj.lexer.toplevel"; - Start = "xcode.lang.objj.interface.declarator"; - End = "@end"; - Foldable = YES; - IncludeRules = ( - "xcode.lang.objj.function.declaration", - "xcode.lang.objj.method.declaration", - "xcode.lang.objj.classmethod.declaration", - "xcode.lang.objj.property.declaration", - "xcode.lang.objj.block", - "xcode.lang.objj.bracketexpr", - "xcode.lang.objj.parenexpr", - ); - Type = "xcode.syntax.declaration.objj.interface"; - }; - }, - { - Identifier = "xcode.lang.objj.implementation"; - Syntax = { - Tokenizer = "xcode.lang.objj.lexer.toplevel"; - Start = "xcode.lang.objj.implementation.declarator"; - End = "@end"; - Foldable = YES; - IncludeRules = ( - "xcode.lang.objj.function.declaration", - "xcode.lang.objj.function.definition", - "xcode.lang.objj.method.definition", - "xcode.lang.objj.classmethod.definition", - "xcode.lang.objj.block", - "xcode.lang.objj.bracketexpr", - "xcode.lang.objj.parenexpr", - "xcode.lang.objj.initializer", - ); - Type = "xcode.syntax.definition.objj.implementation"; - }; - }, - -/****************************************************************************/ -// MARK: Methods -/****************************************************************************/ - - { - Identifier = "xcode.lang.objj.method.minus"; - Syntax = { - Tokenizer = "xcode.lang.objj.lexer"; - Rules = ( "-", ); - Type = "xcode.syntax.name.partial"; - }; - }, - { - Identifier = "xcode.lang.objj.method.plus"; - Syntax = { - Tokenizer = "xcode.lang.objj.lexer"; - Rules = ( "+", ); - Type = "xcode.syntax.name.partial"; - }; - }, - { - Identifier = "xcode.lang.objj.method.colon"; - Syntax = { - Tokenizer = "xcode.lang.objj.lexer"; - Rules = ( ":", ); - Type = "xcode.syntax.name.partial"; - }; - }, - { - Identifier = "xcode.lang.objj.partialname"; - Syntax = { - Tokenizer = "xcode.lang.objj.lexer"; - Rules = ( "xcode.lang.objj.identifier", ); - Type = "xcode.syntax.name.partial"; - }; - }, - - - { - Identifier = "xcode.lang.objj.method.declaration"; - Syntax = { - Tokenizer = "xcode.lang.objj.lexer"; - Rules = ( - "xcode.lang.objj.method.declarator", - "xcode.lang.objj.identifier?", - ";", - ); - Type = "xcode.syntax.declaration.method"; - }; - }, - { - Identifier = "xcode.lang.objj.method.definition"; - Syntax = { - Tokenizer = "xcode.lang.objj.lexer"; - Rules = ( - "xcode.lang.objj.method.declarator", - ";?", - "xcode.lang.objj.block", - ); - Type = "xcode.syntax.definition.method"; - }; - }, - { - Identifier = "xcode.lang.objj.method.declarator"; - Syntax = { - Tokenizer = "xcode.lang.objj.lexer"; - Rules = ( - "xcode.lang.objj.method.minus", - "xcode.lang.objj.parenexpr?", - "xcode.lang.objj.partialname", - "xcode.lang.objj.method.declarator.args?", - ); - Type = "xcode.syntax.method.declarator"; - }; - }, - { - Identifier = "xcode.lang.objj.classmethod.declaration"; - Syntax = { - Tokenizer = "xcode.lang.objj.lexer"; - Rules = ( - "xcode.lang.objj.classmethod.declarator", - "xcode.lang.objj.identifier?", - ";", - ); - Type = "xcode.syntax.declaration.method"; - }; - }, - { - Identifier = "xcode.lang.objj.classmethod.definition"; - Syntax = { - Tokenizer = "xcode.lang.objj.lexer"; - Rules = ( - "xcode.lang.objj.classmethod.declarator", - ";?", - "xcode.lang.objj.block", - ); - Type = "xcode.syntax.definition.method"; - }; - }, - { - Identifier = "xcode.lang.objj.classmethod.declarator"; - Syntax = { - Tokenizer = "xcode.lang.objj.lexer"; - Rules = ( - "xcode.lang.objj.method.plus", - "xcode.lang.objj.parenexpr?", - "xcode.lang.objj.partialname", - "xcode.lang.objj.method.declarator.args?", - ); - Type = "xcode.syntax.method.declarator"; - }; - }, - { - Identifier = "xcode.lang.objj.method.declarator.args"; - Syntax = { - Tokenizer = "xcode.lang.objj.lexer"; - Rules = ( - "xcode.lang.objj.method.colon", - "xcode.lang.objj.parenexpr?", - "xcode.lang.objj.identifier", - "xcode.lang.objj.method.declarator.moreargs*", - "xcode.lang.objj.method.declarator.varargs?", - ); - }; - }, - { - Identifier = "xcode.lang.objj.method.declarator.moreargs"; - Syntax = { - Tokenizer = "xcode.lang.objj.lexer"; - Rules = ( - "xcode.lang.objj.partialname?", - "xcode.lang.objj.method.colon", - "xcode.lang.objj.parenexpr?", - "xcode.lang.objj.identifier" - ); - }; - }, - { - Identifier = "xcode.lang.objj.method.declarator.varargs"; - Syntax = { - Tokenizer = "xcode.lang.objj.lexer"; - Rules = ( - ",", - "...", - ); - }; - }, - -/****************************************************************************/ -// MARK: Functions -/****************************************************************************/ - - { - Identifier = "xcode.lang.objj.function.definition"; - Syntax = { - Tokenizer = "xcode.lang.objj.lexer"; - Rules = ( - "xcode.lang.objj.function.declarator", - "xcode.lang.objj.block", - ); - Type = "xcode.syntax.definition.c.function"; - }; - }, - { - Identifier = "xcode.lang.objj.function.declaration"; - Syntax = { - Tokenizer = "xcode.lang.objj.lexer"; - Rules = ( - "xcode.lang.objj.function.declarator", - "xcode.lang.objj.identifier?", - ";" - ); - Type = "xcode.syntax.declaration.c.function"; - }; - }, - { - Identifier = "xcode.lang.objj.function.declarator"; - Syntax = { - Tokenizer = "xcode.lang.objj.lexer"; - Rules = ( - "xcode.lang.objj.function.name", - "xcode.lang.objj.parenexpr", - ); - }; - }, - { - Identifier = "xcode.lang.objj.function.name"; - Syntax = { - Tokenizer = "xcode.lang.objj.lexer"; - Rules = ( - "xcode.lang.objj.identifier", - ); - Type = "xcode.syntax.name.partial"; - }; - }, - - -/****************************************************************************/ -// MARK: Properties -/****************************************************************************/ - - { - Identifier = "xcode.lang.objj.property.declaration"; - Syntax = { - Tokenizer = "xcode.lang.objj.lexer"; - Start = "xcode.lang.objj.property.declarator"; - End = ";"; - Type = "xcode.syntax.declaration.property"; - }; - }, - { - Identifier = "xcode.lang.objj.property.declarator"; - Syntax = { - Tokenizer = "xcode.lang.objj.lexer"; - Rules = ( - "@property", - "xcode.lang.objj.property.options?", - ); - }; - }, - { - Identifier = "xcode.lang.objj.property.options"; - Syntax = { - Tokenizer = "xcode.lang.objj.property.options.lexer"; - Start = "("; - End = ")"; - Recursive = YES; - }; - }, - { - Identifier = "xcode.lang.objj.property.options.lexer"; - Syntax = { - IncludeRules = ( - "xcode.lang.comment.headerdoc", - "xcode.lang.comment", - "xcode.lang.comment.singleline", - "xcode.lang.c.preprocessor", - "xcode.lang.string.objj", - "xcode.lang.string", - "xcode.lang.character", - "xcode.lang.completionplaceholder", - "xcode.lang.objj.property.options.identifier", - "xcode.lang.objj.identifier", - "xcode.lang.number", - ); - }; - }, - { - Identifier = "xcode.lang.objj.property.options.identifier"; - Syntax = { - Words = ( - "setter", - "getter", - "readonly", - "readwrite", - "assign", - "retain", - "copy", - "nonatomic", - ); - Type = "xcode.syntax.keyword"; - }; - }, - - -/****************************************************************************/ -// MARK: Blocks -/****************************************************************************/ - - { - Identifier = "xcode.lang.objj.block"; - BasedOn = "xcode.lang.javascript.block"; // for text macros - Syntax = { - Tokenizer = "xcode.lang.objj.lexer"; - Start = "{"; - End = "}"; - Foldable = YES; - Recursive = YES; - IncludeRules = ( - "xcode.lang.objj.bracketexpr", - "xcode.lang.objj.parenexpr", - ); - }; - }, - - { - Identifier = "xcode.lang.objj.parenexpr"; - BasedOn = "xcode.lang.javascript.parenexpr"; - Syntax = { - Tokenizer = "xcode.lang.objj.lexer"; - Start = "("; - End = ")"; - Recursive = YES; - IncludeRules = ( - "xcode.lang.objj.bracketexpr", - "xcode.lang.objj.block", - - ); - }; - }, - { - Identifier = "xcode.lang.objj.bracketexpr"; - BasedOn = "xcode.lang.javascript.bracketexpr"; - Syntax = { - Tokenizer = "xcode.lang.objj.lexer"; - Start = "["; - End = "]"; - Recursive = YES; - IncludeRules = ( - "xcode.lang.objj.parenexpr", - "xcode.lang.objj.block", - ); - }; - }, - - { - Identifier = "xcode.lang.objj.initializer"; - Syntax = { - Tokenizer = "xcode.lang.objj.lexer.toplevel"; - Start = "="; - End = ";"; - Recursive = NO; - IncludeRules = ( - "xcode.lang.objj.parenexpr", - "xcode.lang.objj.bracketexpr", - ); - }; - }, -) - diff --git a/Tools/Editors/Xcode/ObjectiveJ.xcspec b/Tools/Editors/Xcode/ObjectiveJ.xcspec deleted file mode 100644 index 846c94fd8..000000000 --- a/Tools/Editors/Xcode/ObjectiveJ.xcspec +++ /dev/null @@ -1,15 +0,0 @@ -/* - * ObjectiveJ.xcspec: Xcode file type for Objective-J - * - */ - -( - { - Type = FileType; - Identifier = sourcecode.objj; - BasedOn = sourcecode; - Name = "Objective-J file"; - Extensions = ( j ); - Language = "xcode.lang.objj"; - } -) diff --git a/Tools/Editors/Xcode/ObjectiveJ.xctxtmacro b/Tools/Editors/Xcode/ObjectiveJ.xctxtmacro deleted file mode 100644 index 1f24d4032..000000000 --- a/Tools/Editors/Xcode/ObjectiveJ.xctxtmacro +++ /dev/null @@ -1,541 +0,0 @@ -/** - Objective J text macro specifications derived from - Objective C text macro specifications and C text macro specifications which are - Copyright © 2004-2007 Apple Inc. All rights reserved. - -*/ - -( - // - // Objective-J language macros - // - { - Identifier = objj; - Name = "Objective J"; - IsMenu = YES; -// Can be set (for all languages) with the XCCodeSenseFormattingOptions user default -// DefaultSettings = { -// PreExpressionsSpacing = " "; -// InExpressionsSpacing = ""; -// BlockSeparator = " "; -// PostBlockSeparator = "\n"; -// }; - IncludeContexts = ( "xcode.lang.objj"); - ExcludeContexts = ( "xcode.lang.string", "xcode.lang.character", "xcode.lang.comment", "xcode.lang.c.preprocessor" ); - }, - - { - Identifier = objj.try; - BasedOn = objj; - IsMenuItem = YES; - Name = "Try / Catch Block"; - TextString = "@try$(BlockSeparator){\n\t<#!statements!#>\n}$(PostBlockSeparator)@catch$(PreExpressionsSpacing)($(InExpressionsSpacing)CPException * e$(InExpressionsSpacing))$(BlockSeparator){\n\t<#handler#>\n}$(PostBlockSeparator)@finally$(BlockSeparator){\n\t<#statements#>\n}"; - CompletionPrefix = "@try"; - IncludeContexts = ( "xcode.lang.objj.block" ); - }, - - { - Identifier = objj.catch; - BasedOn = objj; - IsMenuItem = YES; - Name = "Catch Block"; - TextString = "@catch$(PreExpressionsSpacing)($(InExpressionsSpacing)<#exception#>$(InExpressionsSpacing))$(BlockSeparator){\n\t<#!handler!#>\n}"; - CompletionPrefix = "@catch"; - IncludeContexts = ( "xcode.lang.objj.block" ); - }, - - { - Identifier = objj.finally; - BasedOn = objj; - IsMenuItem = YES; - Name = "Finally Block"; - TextString = "@finally$(BlockSeparator){\n\t<#!handler!#>\n}"; - CompletionPrefix = "@finally"; - IncludeContexts = ( "xcode.lang.objj.block" ); - }, - - { - Identifier = objj.log; - BasedOn = objj; - IsMenuItem = YES; - Name = "CPLog() Call"; - TextString = "CPLog$(PreFunctionArgsSpacing)($(InFunctionArgsSpacing)@\"<#message#>\"$(InFunctionArgsSpacing));"; - CompletionPrefix = log; - IncludeContexts = ( "xcode.lang.objj.block" ); - }, - - { - Identifier = objj.bracket; - BasedOn = objj; - IsMenuItem = YES; - Name = "Bracket Expression"; - TextString = "[<#!expression!#> ]"; - CompletionPrefix = "["; - }, - - { - Identifier = objj.allocinit; - BasedOn = objj; - IsMenuItem = YES; - Name = "Alloc / Init Call"; - TextString = "[[<#!class!#> alloc] init]"; - CompletionPrefix = a; - }, - - { - Identifier = objj.array; - BasedOn = objj; - IsMenuItem = YES; - Name = "Array Declaration"; - TextString = "CPArray * array;"; - CompletionPrefix = aa; - }, - - { - Identifier = objj.mutablearray; - BasedOn = objj; - IsMenuItem = YES; - Name = "Mutable Array Declaration"; - TextString = "CPMutableArray * array;"; - CompletionPrefix = ma; - }, - - { - Identifier = objj.arrayiteration; - BasedOn = objj; - IsMenuItem = YES; - Name = "Array For Loop"; - TextString = "CPUInteger i, count = [<#array#> count];\nfor$(PreExpressionsSpacing)($(InExpressionsSpacing)i = 0; i < count; i++$(InExpressionsSpacing))$(BlockSeparator){\n\tCPObject * obj = [<#array#> objectAtIndex:i];\n\t<#!statements!#>\n}"; - CompletionPrefix = fora; - IncludeContexts = ( "xcode.lang.objj.block" ); - }, - - { - Identifier = objj.arrayiteration.foreach; - BasedOn = objj; - IsMenuItem = YES; - Name = "Array Foreach Loop"; - TextString = "for$(PreExpressionsSpacing)($(InExpressionsSpacing)<#object#> in <#array#>$(InExpressionsSpacing))$(BlockSeparator){\n\t<#!statements!#>\n}"; - CompletionPrefix = fore; - IncludeContexts = ( "xcode.lang.objj.block" ); - }, - -// MARK: Block Statements - { - Identifier = objj.block; - BasedOn = objj; - TextString = "$(Statement)$(BlockSeparator){\n\t<#!statements!#>\n}"; - Statement = "$(Command)$(PreExpressionsSpacing)($(InExpressionsSpacing)$(Expressions)$(InExpressionsSpacing))"; - IncludeContexts = ( "xcode.lang.objj.block", "xcode.lang.java.block" ); // these all work in Java too - ExcludeContexts = ( "xcode.lang.string", "xcode.lang.character", "xcode.lang.comment", "xcode.lang.c.preprocessor", "xcode.lang.objj.parenexpr", "xcode.lang.objj.bracketexpr" ); - }, - { - Identifier = objj.block.if; - BasedOn = objj.block; - Name = "If Block"; - IsMenuItem = YES; - Command = "if"; - Expressions = "<#condition#>"; - CompletionPrefix = if; - CycleList = ( - objj.block.if, - objj.block.ifelse, - ); - }, - { - Identifier = objj.block.ifelse; - BasedOn = objj.block; - Name = "If / Else Block"; - IsMenuItem = NO; - Command = "if"; - Expressions = "<#condition#>"; - TextString = "$(Statement)$(BlockSeparator){\n\t<#!statements!#>\n}$(PostBlockSeparator)else$(BlockSeparator){\n\t<#statements#>\n}"; - CompletionPrefix = ifelse; - }, - { - Identifier = objj.block.elseif; - BasedOn = objj.block; - Name = "Else If Block"; - IsMenuItem = NO; - Command = "else if"; - Expressions = "<#condition#>"; - CompletionPrefix = elseif; - }, - - { - Identifier = objj.block.for; - BasedOn = objj.block; - Name = "For Loop"; - IsMenuItem = YES; - Command = "for"; - Expressions = "<#initial#>; <#condition#>; <#increment#>"; - CompletionPrefix = for; - CycleList = ( - objj.block.for, - objj.block.for.i, - ); - }, - { - Identifier = objj.block.for.i; - BasedOn = objj.block; - Name = "For i Loop"; - IsMenuItem = NO; - Command = "for"; - Expressions = "int i = 0; i < <#limit#>; i++"; - CompletionPrefix = fori; - }, - - { - Identifier = objj.block.while; - BasedOn = objj.block; - Name = "While Loop"; - IsMenuItem = YES; - Command = "while"; - Expressions = "<#condition#>"; - CompletionPrefix = while; - }, - { - Identifier = objj.block.dowhile; - BasedOn = objj.block; - Name = "Do While Loop"; - IsMenuItem = YES; - Command = "while"; - TextString = "do$(BlockSeparator){\n\t<#!statements!#>\n}$(PreExpressionsSpacing)$(Statement)"; - Expressions = "<#condition#>"; - CompletionPrefix = do; - }, - { - Identifier = objj.block.switch; - BasedOn = objj.block; - Name = "Switch Block"; - IsMenuItem = YES; - Command = "switch"; - TextString = "$(Statement)$(BlockSeparator){\n$(CaseStatementSpacing)case <#constant#>:\n$(CaseStatementSpacing)\t<#!statements!#>\n$(CaseStatementSpacing)\tbreak;\n$(CaseStatementSpacing)default:\n$(CaseStatementSpacing)\tbreak;\n}"; - Expressions = "<#expression#>"; - CompletionPrefix = switch; - }, - - { - Identifier = objj.caseblock; - BasedOn = objj; - IsMenuItem = YES; - Name = "Case Block"; - TextString = "case <#constant#>:\n\t<#!statements!#>\n\tbreak;\n"; - CompletionPrefix = case; - IncludeContexts = ( "xcode.lang.objj.block", "xcode.lang.java.block" ); // this works in Java too - ExcludeContexts = ( "xcode.lang.string", "xcode.lang.character", "xcode.lang.comment", "xcode.lang.c.preprocessor", "xcode.lang.objj.parenexpr", "xcode.lang.objj.bracketexpr" ); - }, - - { - Identifier = objj.elseblock; - BasedOn = objj; - IsMenuItem = YES; - Name = "Else Block"; - TextString = "else$(BlockSeparator){\n\t<#!statements!#>\n}\n"; - CompletionPrefix = else; - IncludeContexts = ( "xcode.lang.objj.block", "xcode.lang.java.block" ); // this works in Java too - ExcludeContexts = ( "xcode.lang.string", "xcode.lang.character", "xcode.lang.comment", "xcode.lang.c.preprocessor", "xcode.lang.objj.parenexpr", "xcode.lang.objj.bracketexpr" ); - CycleList = ( - objj.elseblock, - objj.block.elseif, - ); - }, - - { - Identifier = objj.paren; - BasedOn = objj; - IsMenuItem = YES; - Name = "Parenthesize Selection"; - TextString = "($(InExpressionsSpacing)<#!expression!#>$(InExpressionsSpacing))"; - IncludeContexts = ( "xcode.lang.objj"); - }, - { - Identifier = objj.quote; - BasedOn = objj; - IsMenuItem = YES; - Name = "Quote Selection"; - TextString = "\"<#!text!#>\""; - IncludeContexts = ( "xcode.lang.objj"); - }, - - { - Identifier = objj.pragmamark; - BasedOn = objj; - IsMenuItem = YES; - Name = "#Pragma Mark"; - TextString = "#pragma mark <#!label!#>"; - CompletionPrefix = pm; - }, - { - Identifier = objj.pp.pragmamark; - BasedOn = objj; - IsMenuItem = NO; - Name = "Pragma Mark"; - TextString = "pragma mark <#!label!#>"; - CompletionPrefix = pragma; - IncludeContexts = ( "xcode.lang.c.preprocessor" ); - }, - { - Identifier = objj.import; - BasedOn = objj; - IsMenuItem = YES; - Name = "#Import Statement"; - TextString = "#import \"<#!file!#>\""; - CompletionPrefix = pim; - CycleList = ( - objj.import, - objj.import.sys, - objj.import.fw - ); - ExcludeContexts = ( "xcode.lang.objj.block", "xcode.lang.string", "xcode.lang.character", "xcode.lang.comment", "xcode.lang.c.preprocessor" ); - }, - { - Identifier = objj.import.sys; - BasedOn = objj.import; - IsMenuItem = NO; - Name = "#Import Statement (System)"; - TextString = "#import <<#!file!#>>"; - CompletionPrefix = pims; - }, - { - Identifier = objj.import.fw; - BasedOn = objj.import; - IsMenuItem = NO; - Name = "#Import Statement (Framework)"; - TextString = "#import <<#framework#>/<#!file!#>>"; - CompletionPrefix = pimf; - }, - - { - Identifier = objj.pif; - BasedOn = objj; - IsMenuItem = YES; - Name = "#If Block"; - IfText = "if"; - TextString = "#$(IfText) $(Expression)\n<#!statements!#>\n#endif"; - Expression = "<#expression#>"; - CompletionPrefix = pif; - CycleList = ( - objj.pif, - objj.pifzero, - objj.pifdef, - objj.pifelse, - objj.pifdefelse - ); - }, - { - Identifier = objj.pifdef; - BasedOn = objj.pif; - IsMenuItem = NO; - Name = "#Ifdef Block"; - IfText = "ifdef"; - CompletionPrefix = pifd; - }, - { - Identifier = objj.pifelse; - BasedOn = objj.pif; - IsMenuItem = NO; - Name = "#If / Else Block"; - TextString = "#$(IfText) $(Expression)\n<#!statements!#>\n#else\n<#statements#>\n#endif"; - CompletionPrefix = pife; - }, - { - Identifier = objj.pifdefelse; - BasedOn = objj.pifelse; - IsMenuItem = NO; - IfText = "ifdef"; - Name = "#Ifdef / Else Block"; - CompletionPrefix = pifde; - }, - { - Identifier = objj.pifzero; - BasedOn = objj.pif; - IsMenuItem = NO; - Name = "#If 0 Block"; - Expression = "0"; - CompletionPrefix = pifz; - }, - - { - Identifier = objj.copyright; - BasedOn = objj; - IsMenuItem = YES; - Name = "Copyright Comment"; - TextString = "//\n// Copyright (c) $(YEAR), $(ORGANIZATIONNAME)\n// All rights reserved.\n//\n"; - CompletionPrefix = copyright; - IncludeContexts = ( "xcode.lang.objj"); - }, - - { - Identifier = objj.comment; - BasedOn = objj; - IsMenuItem = YES; - Name = "Comment Selection"; - TextString = "/* <#!comment!#> */"; - CompletionPrefix = comment; - IncludeContexts = ( "xcode.lang.objj"); - }, - - { - Identifier = objj.separatorcomment; - BasedOn = objj; - IsMenuItem = YES; - Name = "Separator Comment"; - TextString = "/****************************************************************************/\n"; - CompletionPrefix = cseparator; - IncludeContexts = ( "xcode.lang.objj"); - }, - -// MARK: methods templates - { - Identifier = objj.init; - BasedOn = objj; - IsMenuItem = YES; - Name = "init Definition"; - TextString = "-$(PreMethodTypeSpacing)(id)$(PreMethodDeclSpacing)init$(FunctionBlockSeparator){\n\tself = [super init];\n\tif$(PreExpressionsSpacing)($(InExpressionsSpacing)self != nil$(InExpressionsSpacing))$(BlockSeparator){\n\t\t<#!initializations!#>\n\t}\n\treturn self;\n}\n"; - CompletionPrefix = init; - IncludeContexts = ( "xcode.lang.objj.implementation" ); - ExcludeContexts = ( "xcode.lang.objj.block" ); - }, - - { - Identifier = objj.dealloc; - BasedOn = objj; - IsMenuItem = YES; - Name = "dealloc Definition"; - TextString = "-$(PreMethodTypeSpacing)(void)$(PreMethodDeclSpacing)dealloc$(FunctionBlockSeparator){\n\t<#!deallocations!#>\n\t[super dealloc];\n}\n"; - CompletionPrefix = dealloc; - IncludeContexts = ( "xcode.lang.objj.implementation" ); - ExcludeContexts = ( "xcode.lang.objj.block" ); - }, - - { - Identifier = objj.observe; - BasedOn = objj; - IsMenuItem = YES; - Name = "observeValueForKeyPath: Definition"; - TextString = -"-$(PreMethodTypeSpacing)(void)$(PreMethodDeclSpacing)observeValueForKeyPath$(PreColonSpacing):$(PostColonSpacing)(CPString *)$(MessageArgSpacing)keyPath ofObject$(PreColonSpacing):$(PostColonSpacing)(id)$(MessageArgSpacing)object change$(PreColonSpacing):$(PostColonSpacing)(CPDictionary *)$(MessageArgSpacing)change context$(PreColonSpacing):$(PostColonSpacing)(void *)$(MessageArgSpacing)context$(FunctionBlockSeparator){ - if$(PreExpressionsSpacing)($(InExpressionsSpacing)context == <#context#>$(InExpressionsSpacing))$(BlockSeparator){ - <#work#> - }$(PostBlockSeparator)\telse$(BlockSeparator){ - [$(InMessageSpacing)super observeValueForKeyPath$(PreColonSpacing):$(PostColonSpacing)keyPath ofObject$(PreColonSpacing):$(PostColonSpacing)object change$(PreColonSpacing):$(PostColonSpacing)change context$(PreColonSpacing):$(PostColonSpacing)context$(InMessageSpacing)]; - } -} -"; - CompletionPrefix = observeValueForKeyPath; - IncludeContexts = ( "xcode.lang.objj.implementation" ); - ExcludeContexts = ( "xcode.lang.objj.block" ); - }, - - { - Identifier = objj.observe.decl; - BasedOn = objj; - IsMenuItem = YES; - Name = "observeValueForKeyPath: Declaration"; - TextString = "-$(PreMethodTypeSpacing)(void)$(PreMethodDeclSpacing)observeValueForKeyPath$(PreColonSpacing):$(PostColonSpacing)(CPString *)$(MessageArgSpacing)keyPath ofObject$(PreColonSpacing):$(PostColonSpacing)(id)$(MessageArgSpacing)object change$(PreColonSpacing):$(PostColonSpacing)(CPDictionary *)$(MessageArgSpacing)change context$(PreColonSpacing):$(PostColonSpacing)(void *)$(MessageArgSpacing)context;\n"; - CompletionPrefix = observeValueForKeyPath; - IncludeContexts = ( "xcode.lang.objj.interface" ); - ExcludeContexts = ( "xcode.lang.objj.block" ); - }, - - { - Identifier = objj.bind; - BasedOn = objj; - IsMenuItem = YES; - Name = "bind: Definition"; - TextString = -"-$(PreMethodTypeSpacing)(void)$(PreMethodDeclSpacing)bind$(PreColonSpacing):$(PostColonSpacing)(CPString *)$(MessageArgSpacing)binding toObject$(PreColonSpacing):$(PostColonSpacing)(id)$(MessageArgSpacing)observable withKeyPath$(PreColonSpacing):$(PostColonSpacing)(CPString *)$(MessageArgSpacing)keyPath options$(PreColonSpacing):$(PostColonSpacing)(CPDictionary *)$(MessageArgSpacing)options$(FunctionBlockSeparator){ - if$(PreExpressionsSpacing)($(InExpressionsSpacing)[$(InMessageSpacing)binding isEqualToString$(PreColonSpacing):$(PostColonSpacing)<#bindingName#>$(InMessageSpacing)]$(InExpressionsSpacing))$(BlockSeparator){ - [$(InMessageSpacing)observable addObserver$(PreColonSpacing):$(PostColonSpacing)self forKeyPath$(PreColonSpacing):$(PostColonSpacing)keyPath options$(PreColonSpacing):$(PostColonSpacing)0 context$(PreColonSpacing):$(PostColonSpacing)<#context#>$(InMessageSpacing)]; - <#store binding info#> - }$(PostBlockSeparator)\telse$(BlockSeparator){ - [$(InMessageSpacing)super bind$(PreColonSpacing):$(PostColonSpacing)binding toObject$(PreColonSpacing):$(PostColonSpacing)observable withKeyPath$(PreColonSpacing):$(PostColonSpacing)keyPath options$(PreColonSpacing):$(PostColonSpacing)options$(InMessageSpacing)]; - } -} -"; - CompletionPrefix = bind; - IncludeContexts = ( "xcode.lang.objj.implementation" ); - ExcludeContexts = ( "xcode.lang.objj.block" ); - }, - - { - Identifier = objj.observe.bind; - BasedOn = objj; - IsMenuItem = YES; - Name = "bind: Declaration"; - TextString = "-$(PreMethodTypeSpacing)(void)$(PreMethodDeclSpacing)bind$(PreColonSpacing):$(PostColonSpacing)(CPString *)$(MessageArgSpacing)binding toObject$(PreColonSpacing):$(PostColonSpacing)(id)$(MessageArgSpacing)observable withKeyPath$(PreColonSpacing):$(PostColonSpacing)(CPString *)$(MessageArgSpacing)keyPath options$(PreColonSpacing):$(PostColonSpacing)(CPDictionary *)$(MessageArgSpacing)options;\n"; - CompletionPrefix = bind; - IncludeContexts = ( "xcode.lang.objj.interface" ); - ExcludeContexts = ( "xcode.lang.objj.block" ); - }, - - -// MARK: classes and protocols - - { - Identifier = objj.interface; - BasedOn = objj; - IsMenuItem = YES; - Name = "@interface Definition"; - TextString = "@interface <#class#> : <#superclass#>$(FunctionBlockSeparator){\n\t<#ivars#>\n}\n\n<#methods#>\n\n@end\n"; - CompletionPrefix = "@interface"; - ExcludeContexts = ( "xcode.lang.objj.implementation", "xcode.lang.objj.interface", "xcode.lang.objj.protocol" ); - }, - - { - Identifier = objj.implementation; - BasedOn = objj; - IsMenuItem = YES; - Name = "@implementation Definition"; - TextString = "@implementation <#class#>\n\n<#methods#>\n\n@end\n"; - CompletionPrefix = "@implementation"; - ExcludeContexts = ( "xcode.lang.objj.implementation", "xcode.lang.objj.interface", "xcode.lang.objj.protocol" ); - }, - - { - Identifier = objj.protocol; - BasedOn = objj; - IsMenuItem = YES; - Name = "@protocol Definition"; - TextString = "@protocol <#protocol#>\n\n<#methods#>\n\n@end\n"; - CompletionPrefix = "@protocol"; - ExcludeContexts = ( "xcode.lang.objj.implementation", "xcode.lang.objj.interface", "xcode.lang.objj.protocol" ); - }, - - - -// MARK: Common Class shorthands - { - Identifier = objj.cps; - BasedOn = objj; - IsMenuItem = NO; - Name = "CPString"; - TextString = "CPString"; - CompletionPrefix = cps; - }, - { - Identifier = objj.cpa; - BasedOn = objj; - IsMenuItem = NO; - Name = "CPArray"; - TextString = "CPArray"; - CompletionPrefix = cpa; - }, - { - Identifier = objj.cpma; - BasedOn = objj; - IsMenuItem = NO; - Name = "CPMutableArray"; - TextString = "CPMutableArray"; - CompletionPrefix = cpma; - }, - { - Identifier = objj.cpd; - BasedOn = objj; - IsMenuItem = NO; - Name = "CPDictionary"; - TextString = "CPDictionary"; - CompletionPrefix = cpd; - }, -) \ No newline at end of file diff --git a/Tools/Editors/Xcode/Read Me.rtf b/Tools/Editors/Xcode/Read Me.rtf deleted file mode 100644 index e0297b5a9..000000000 --- a/Tools/Editors/Xcode/Read Me.rtf +++ /dev/null @@ -1,47 +0,0 @@ -{\rtf1\ansi\ansicpg1252\cocoartf949\cocoasubrtf430 -{\fonttbl\f0\fswiss\fcharset0 Helvetica;} -{\colortbl;\red255\green255\blue255;} -\margl1440\margr1440\vieww15700\viewh12860\viewkind0 -\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural - -\f0\fs24 \cf0 The following files provide support for Objective-J syntax coloring and text completion in Xcode version 3 and above\ -\ - -\fs26 -\b ObjectiveJ.xcspec -\b0 \ - -\b ObjectiveJ.xclangspec -\b0 \ - -\b ObjectiveJ.xctxtmacro -\b0 \ - -\fs24 \ -The above files were derived from the Apple Objective-C and JavaScript files located at\ -\ -\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural\pardirnatural - -\i\fs26 \cf0 /Developer/Library/PrivateFrameworks/XcodeEdit.framework/Versions/A/Resources -\i0\fs24 \ - -\i -\fs26 /Developer/Applications/Xcode.app/Contents/PlugIns/TextMacros.xctxtmacro/Contents/Resources\ -\pard\tx580\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural\pardirnatural - -\i0 \cf0 ( -\fs20 some files are Copyright \'a9 2004-2007 Apple Inc. and copyright text has been preserved -\fs26 ) -\i\fs24 \ -\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural - -\i0 \cf0 \ -To install the files, double click on \ -\ - -\b\fs26 install.command -\b0\fs24 \ - \ -This will create a " -\i\fs26 ~/Library/Application Support/Developer/Shared/Xcode/Specifications -\i0\fs24 " directory if it does not already exist and copy the ObjectiveJ.* files to that directory. You will need to restart Xcode for the changes to take effect.} \ No newline at end of file diff --git a/Tools/Editors/Xcode/install.command b/Tools/Editors/Xcode/install.command deleted file mode 100755 index 8516dbcbb..000000000 --- a/Tools/Editors/Xcode/install.command +++ /dev/null @@ -1,5 +0,0 @@ -#~/bin/bash -echo Creating destination directory.. -mkdir -pv ~/Library/Application\ Support/Developer/Shared/Xcode/Specifications -echo Copying files... -cp -v ${0%/*}/ObjectiveJ.* ~/Library/Application\ Support/Developer/Shared/Xcode/Specifications