diff --git a/pkg/Plug-ins/OrcaM.ideplugin/Contents/Resources/OrcaM.xcplugindata b/pkg/Plug-ins/OrcaM.ideplugin/Contents/Resources/OrcaM.xcplugindata index 9f57c2d..bd2e661 100755 --- a/pkg/Plug-ins/OrcaM.ideplugin/Contents/Resources/OrcaM.xcplugindata +++ b/pkg/Plug-ins/OrcaM.ideplugin/Contents/Resources/OrcaM.xcplugindata @@ -34,7 +34,19 @@ prefix - # + ; + + + prefix + ! + + + prefix + * + + + prefix + . conformsTo @@ -60,7 +72,9 @@ name ORCAM Assembly point - Xcode.SourceCodeLanguage + Xcode.SourceCodeLanguage + supportsIndentation + true version 1.0 diff --git a/pkg/Specifications/OrcaM.xclangspec b/pkg/Specifications/OrcaM.xclangspec index 49d2592..43e8fe5 100644 --- a/pkg/Specifications/OrcaM.xclangspec +++ b/pkg/Specifications/OrcaM.xclangspec @@ -8,19 +8,189 @@ { Identifier = "xcode.lang.asm.orcam.identifier"; Syntax = { - StartChars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ_"; - Chars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789$_."; + CaseSensitive = NO; + StartChars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ_~"; + Chars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789_~"; Type = "xcode.syntax.identifier"; }; }, { - Identifier = "xcode.lang.asm.orcam.directive"; + Identifier = "xcode.lang.asm.orcam.keyword"; Syntax = { - StartAtBOL = YES; - StartChars = "."; - Chars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789_"; + CaseSensitive = NO; + StartChars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ_~"; + Chars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789_~"; + Words = ( + "adc", + "and", + "asl", + "bcc", + "bcs", + "beq", + "bge", + "bit", + "blt", + "bmi", + "bne", + "bpl", + "bra", + "brk", + "brl", + "bvc", + "bvs", + "clc", + "cld", + "cli", + "clv", + "cmp", + "cop", + "cpa", + "cpx", + "cpy", + "dec", + "dex", + "dey", + "eor", + "inc", + "inx", + "iny", + "jmp", + "jsl", + "jsr", + "lda", + "ldx", + "ldy", + "lsr", + "mvn", + "mvp", + "nop", + "ora", + "pea", + "pei", + "per", + "pha", + "phb", + "phd", + "phk", + "php", + "phx", + "phy", + "pla", + "plb", + "pld", + "plp", + "plx", + "ply", + "rep", + "rol", + "ror", + "rti", + "rtl", + "rts", + "sbc", + "sec", + "sed", + "sei", + "sep", + "sta", + "stp", + "stx", + "sty", + "stz", + "tax", + "tay", + "tcd", + "tcs", + "tdc", + "trb", + "tsb", + "tsc", + "tsx", + "txa", + "txs", + "txy", + "tya", + "tyx", + "wai", + "wdm", + "xba", + "xce", + + "absaddr", + "align", + "anop", + "append", + "case", + "codechk", + "copy", + "data", + "datachk", + "dc", + "direct", + "ds", + "dynchk", + "eject", + "end", + "entry", + "equ", + "err", + "expand", + "gequ", + "ieee", + "instime", + "keep", + "kind", + "list", + "longa", + "longi", + "mem", + "merr", + "msb", + "numsex", + "obj", + "objcase", + "objend", + "org", + "printer", + "private", + "privdata", + "rename", + "setcom", + "start", + "symbol", + "title", + "using", + "65c02", + "65816", + + "actr", + "ago", + "aif", + "ainput", + "amid", + "asearch", + "gbla", + "gblb", + "gblc", + "gen", + "lcla", + "lclb", + "lclc", + "macro", + "mcopy", + "mdrop", + "mend", + "mexit", + "mload", + "mnote", + "seta", + "setb", + "setc", + "trace", + ); Type = "xcode.syntax.keyword"; + AltType = "xcode.syntax.identifier"; }; }, @@ -33,6 +203,7 @@ Description = "ORCAM Assembler Coloring"; BasedOn = "xcode.lang.simpleColoring"; IncludeInMenu = YES; + UsesCLikeIndentation = YES; Name = "Assembly (ORCAM)"; Syntax = { Tokenizer = "xcode.lang.asm.orcam.lexer"; @@ -49,12 +220,13 @@ "xcode.lang.comment", "xcode.lang.comment.singleline", "xcode.lang.asm.orcam.comment.singleline.semi", - "xcode.lang.asm.orcam.comment.singleline.at", - "xcode.lang.asm.orcam.comment.singleline.pound", + "xcode.lang.asm.orcam.comment.singleline.exclam", + "xcode.lang.asm.orcam.comment.singleline.star", + "xcode.lang.asm.orcam.comment.singleline.dot", "xcode.lang.string", "xcode.lang.character", "xcode.lang.number", - "xcode.lang.asm.orcam.directive", + "xcode.lang.asm.orcam.keyword", "xcode.lang.asm.orcam.identifier", ); }; @@ -63,8 +235,9 @@ { Identifier = "xcode.lang.asm.orcam.comment.singleline.semi"; Syntax = { + StartAtBOL = YES; + StartAtColumnZero = YES; Start = ";"; - EscapeChar = "\\"; End = "\n"; IncludeRules = ( "xcode.lang.url", "xcode.lang.url.mail", "xcode.lang.comment.mark" ); Type = "xcode.syntax.comment"; @@ -72,22 +245,35 @@ }, { - Identifier = "xcode.lang.asm.orcam.comment.singleline.at"; - Syntax = { - Start = "@"; - EscapeChar = "\\"; - End = "\n"; - IncludeRules = ( "xcode.lang.url", "xcode.lang.url.mail", "xcode.lang.comment.mark" ); - Type = "xcode.syntax.comment"; - }; - }, - - { - Identifier = "xcode.lang.asm.orcam.comment.singleline.pound"; + Identifier = "xcode.lang.asm.orcam.comment.singleline.exclam"; Syntax = { StartAtBOL = YES; - Start = "#"; - EscapeChar = "\\"; + StartAtColumnZero = YES; + Start = "!"; + End = "\n"; + IncludeRules = ( "xcode.lang.url", "xcode.lang.url.mail", "xcode.lang.comment.mark" ); + Type = "xcode.syntax.comment"; + }; + }, + + { + Identifier = "xcode.lang.asm.orcam.comment.singleline.star"; + Syntax = { + StartAtBOL = YES; + StartAtColumnZero = YES; + Start = "*"; + End = "\n"; + IncludeRules = ( "xcode.lang.url", "xcode.lang.url.mail", "xcode.lang.comment.mark" ); + Type = "xcode.syntax.comment"; + }; + }, + + { + Identifier = "xcode.lang.asm.orcam.comment.singleline.dot"; + Syntax = { + StartAtBOL = YES; + StartAtColumnZero = YES; + Start = "."; End = "\n"; IncludeRules = ( "xcode.lang.url", "xcode.lang.url.mail", "xcode.lang.comment.mark" ); Type = "xcode.syntax.comment"; @@ -98,25 +284,13 @@ Identifier = "xcode.lang.asm.orcam.label"; Syntax = { StartAtBOL = YES; + StartAtColumnZero = YES; Tokenizer = "xcode.lang.asm.orcam.lexer"; Rules = ( - "xcode.lang.asm.orcam.label.name", - ":", + "xcode.lang.asm.orcam.identifier", ); Type = "xcode.syntax.definition.function"; }; }, - { - Identifier = "xcode.lang.asm.orcam.label.name"; - Syntax = { - StartAtBOL = YES; - Tokenizer = "xcode.lang.asm.orcam.lexer"; - Rules = ( - "xcode.lang.asm.orcam.identifier", - ); - Type = "xcode.syntax.name.partial"; - }; - }, - )