Improved Xcode support
Added definition for raw string.
Added definitions for function and method declarations.
Enabled function, method, and type declarations to appear in Editor pop up menu.
Fixes #466.
R=golang-dev, gri
CC=golang-dev
https://golang.org/cl/183065
diff --git a/misc/xcode/go.xclangspec b/misc/xcode/go.xclangspec
index 40fe4f5..11b46c4 100644
--- a/misc/xcode/go.xclangspec
+++ b/misc/xcode/go.xclangspec
@@ -76,12 +76,22 @@
Words = (
"...",
".",
+ "*",
+ ",",
":",
);
Type = "xcode.syntax.plain";
};
},
+ {
+ Identifier = "xcode.lang.go.rawstring";
+ Syntax = {
+ Start = "`";
+ End = "`";
+ Type = "xcode.syntax.string";
+ };
+ },
// ----------------------------------------------------------------------------
// Syntax Coloring
@@ -112,6 +122,7 @@
"xcode.lang.go.comment.singleline",
"xcode.lang.string",
"xcode.lang.character",
+ "xcode.lang.go.rawstring",
"xcode.lang.go.identifier",
"xcode.lang.number",
"xcode.lang.go.interestingOperators",
@@ -127,7 +138,10 @@
"xcode.lang.go.comment.singleline",
"xcode.lang.string",
"xcode.lang.character",
+ "xcode.lang.go.rawstring",
"xcode.lang.go.type.declaration",
+ "xcode.lang.go.method.declaration",
+ "xcode.lang.go.function.declaration",
"xcode.lang.go.identifier",
"xcode.lang.number",
);
@@ -135,6 +149,20 @@
},
{
+ Identifier = "xcode.lang.go.method.declaration";
+ Syntax = {
+ Tokenizer = "xcode.lang.go.lexer";
+ Rules = (
+ "func",
+ "xcode.lang.go.parenexpr",
+ "xcode.lang.go.identifier",
+ "xcode.lang.go.parenexpr",
+ );
+ Type = "xcode.syntax.declaration.method";
+ };
+ },
+
+ {
Identifier = "xcode.lang.go.type.declaration";
Syntax = {
Tokenizer = "xcode.lang.go.lexer";
@@ -142,15 +170,27 @@
"type",
"xcode.lang.go.identifier",
);
- Type = "xcode.syntax.name.partial";
+ Type = "xcode.syntax.typedef";
};
},
+ {
+ Identifier = "xcode.lang.go.function.declaration";
+ Syntax = {
+ Tokenizer = "xcode.lang.go.lexer";
+ Rules = (
+ "func",
+ "xcode.lang.go.identifier",
+ "xcode.lang.go.parenexpr",
+ );
+ Type = "xcode.syntax.declaration.function";
+ };
+ },
// ----------------------------------------------------------------------------
// Blocks
- {
+ {
Identifier = "xcode.lang.go.block";
Syntax = {
Tokenizer = "xcode.lang.go.lexer";
@@ -174,6 +214,7 @@
Recursive = YES;
IncludeRules = (
"xcode.lang.go.bracketexpr",
+ "xcode.lang.go.block",
);
};
},