トップページドキュメント > Xcodeでの構文色付け定義

トップレベルの構文

まず、構文解析の入り口となるトップレベルの構文定義を記述します。ここには、その言語の基本情報も含まれます。

(
    // トップレベルの構文定義
    {
        Identifier = "my.lang.sample";
        Name = "Sample";
        Description = "Sample Language Coloring";
        BasedOn = "xcode.lang.simpleColoring";
        IncludeInMenu = YES;
        Syntax = {
            IncludeRules = (
                "my.lang.sample.text1",
                "my.lang.sample.text2",
                "my.lang.sample.text3"
            );
            Type = "xcode.syntax.plain";
        };
    },
    
    ...
)

Identifier

Identifierは、この構文定義の識別子ですが、トップレベルの場合は、この言語の識別子を兼ねます。

識別子はXcode内でユニークでなければなりません。Xcode内では、C言語は"xcode.lang.c"、Javaは"xcode.lang.java"、Rubyは"xcode.lang.ruby"のように定義されています。アップルが定義する識別子との衝突を回避するために、"xcode"というキーワードを使うのは避けた方が無難でしょう。

Name

Nameは言語名です。ここに書いた名前が、「構文の色付け」メニューに表示されます。

Description

この構文定義に関する、簡単な説明文です。

BasedOn

この構文定義のベースとなる構文定義を指定します。詳しいところは不明ですが、ソースコードの場合、汎用の構文色付け定義である"xcode.lang.simpleColoring"を指定するのが一般的なようです。

IncludeInMenu

IncludeInMenuはブール値でYESを設置すると、「構文の色付け」メニューにこの言語が表示されるようになります。NOとした場合でもファイルタイプとの関連が設定されていれば自動的に構文色付けが適用されます。

Syntax

この言語の構文構造を定義します。

Copyright(C)2001-2010 STRIPE-NET. All Right Reserved.