From 700a05fe611bce43e9c519f08721ccca9a33581c Mon Sep 17 00:00:00 2001 From: relikd Date: Wed, 8 Aug 2012 05:50:45 +0200 Subject: [PATCH] Initial --- CUE Sheet.tmLanguage | 82 +++++++++++++++++++++++++++++++++ Completions.sublime-completions | 48 +++++++++++++++++++ new.sublime-snippet | 75 ++++++++++++++++++++++++++++++ track.sublime-snippet | 15 ++++++ 4 files changed, 220 insertions(+) create mode 100644 CUE Sheet.tmLanguage create mode 100644 Completions.sublime-completions create mode 100644 new.sublime-snippet create mode 100644 track.sublime-snippet diff --git a/CUE Sheet.tmLanguage b/CUE Sheet.tmLanguage new file mode 100644 index 0000000..e341b2c --- /dev/null +++ b/CUE Sheet.tmLanguage @@ -0,0 +1,82 @@ + + + + + comment + Textmate bundle for CUE Sheets + fileTypes + + cue + CUE + + foldingStartMarker + (FILE|TRACK)\s*$ + foldingStopMarker + + keyEquivalent + ^~C + name + CUE Sheet + patterns + + + match + \b(CATALOG|CDTEXTFILE|FILE|FLAGS|INDEX|ISRC|PERFORMER|(POST|PRE)GAP|REM (GENRE|DATE|DISCID|DISCNUMBER|TOTALDISCS|COMMENT)|SONGWRITER|TITLE|TRACK)\b + name + keyword + + + match + \b(BINARY|MOTOROLA|AIFF|WAVE|MP3)\w*\b + name + constant.other + + + match + \b(4CH|DCP|PRE|SCMS)\w*\b + name + constant.other + + + match + \b(AUDIO|CDG|MODE(1/(2048|2336)|2/(2336|2352))|CDI/23(36|52))\w*\b + name + constant.other + + + match + \b[0-9]{2}:[0-9]{2}:[0-9]{2}\b + name + constant.numeric + + + begin + " + beginCaptures + + 0 + + name + punctuation.definition.string.begin + + + end + " + endCaptures + + 0 + + name + punctuation.definition.string.end + + + name + variable.parameter + + + scopeName + source.cuesheet + uuid + D00C06B9-71B2-4FEB-A0E3-37237F429001 + + diff --git a/Completions.sublime-completions b/Completions.sublime-completions new file mode 100644 index 0000000..91ceb31 --- /dev/null +++ b/Completions.sublime-completions @@ -0,0 +1,48 @@ +{ + "scope": "source.cuesheet", + "completions": + [ + { "trigger": "CATALOG", "contents": "CATALOG ${0:1234567890123}" }, + { "trigger": "CDTEXTFILE", "contents": "CDTEXTFILE \"${0:file}.cdt\"" }, + { "trigger": "FILE", "contents": "FILE \"${0:file}.flac\" WAVE" }, + { "trigger": "FLAGS", "contents": "FLAGS DCP" }, + { "trigger": "INDEX", "contents": "INDEX 01 00:00:00" }, + { "trigger": "ISRC", "contents": "ISRC ${0:ABCDE1234567}" }, + { "trigger": "PERFORMER", "contents": "PERFORMER \"$0\"" }, + { "trigger": "POSTGAP", "contents": "POSTGAP 00:${0:02}:00" }, + { "trigger": "PREGAP", "contents": "PREGAP 00:${0:02}:00" }, + { "trigger": "REM GENRE", "contents": "REM GENRE \"$0\"" }, + { "trigger": "REM DATE", "contents": "REM DATE 20${0:00}" }, + { "trigger": "REM DISCID", "contents": "REM DISCID ${0:ABCDEF01}" }, + { "trigger": "REM DISCNUMBER", "contents": "REM DISCNUMBER 1" }, + { "trigger": "REM TOTALDISCS", "contents": "REM TOTALDISCS 1" }, + { "trigger": "REM COMMENT", "contents": "REM COMMENT \"${0:CC-BY-NC-SA 3.0 Creative Commons License}\"" }, + { "trigger": "SONGWRITER", "contents": "SONGWRITER \"$0\"" }, + { "trigger": "TITLE", "contents": "TITLE \"$0\"" }, + { "trigger": "TRACK", "contents": "TRACK ${0:01} AUDIO" }, +// == File Types ============================================================ + { "trigger": "BINARY (File Type)", "contents": "BINARY" }, + { "trigger": "MOTOROLA (File Type)", "contents": "MOTOROLA" }, + { "trigger": "AIFF (File Type)", "contents": "AIFF" }, + { "trigger": "WAVE (File Type)", "contents": "WAVE" }, + { "trigger": "MP3 (File Type)", "contents": "MP3" }, +// == Flag Types ============================================================ + { "trigger": "4CH (Flag)", "contents": "4CH" }, + { "trigger": "DCP (Flag)", "contents": "DCP" }, + { "trigger": "PRE (Flag)", "contents": "PRE" }, + { "trigger": "SCMS (Flag)", "contents": "SCMS" }, +// == Track Types =========================================================== + { "trigger": "AUDIO (Track Type)", "contents": "AUDIO" }, + { "trigger": "CDG (Track Type)", "contents": "CDG" }, + { "trigger": "MODE1/2048 (Track Type)", "contents": "MODE1/2048" }, + { "trigger": "MODE1/2336 (Track Type)", "contents": "MODE1/2336" }, + { "trigger": "MODE2/2336 (Track Type)", "contents": "MODE2/2336" }, + { "trigger": "MODE2/2352 (Track Type)", "contents": "MODE2/2352" }, + { "trigger": "CDI/2336 (Track Type)", "contents": "CDI/2336" }, + { "trigger": "CDI/2352 (Track Type)", "contents": "CDI/2352" }, +// == Snippets ============================================================== + { "trigger": "disc (1/1)", "contents": "REM DISCNUMBER 1\nREM TOTALDISCS 1" }, + { "trigger": "disc (1/2)", "contents": "REM DISCNUMBER 1\nREM TOTALDISCS 2" }, + { "trigger": "disc (2/2)", "contents": "REM DISCNUMBER 2\nREM TOTALDISCS 2" } + ] +} \ No newline at end of file diff --git a/new.sublime-snippet b/new.sublime-snippet new file mode 100644 index 0000000..9f8ffad --- /dev/null +++ b/new.sublime-snippet @@ -0,0 +1,75 @@ + + + new + source.cuesheet + CUE Template + + \ No newline at end of file diff --git a/track.sublime-snippet b/track.sublime-snippet new file mode 100644 index 0000000..43076be --- /dev/null +++ b/track.sublime-snippet @@ -0,0 +1,15 @@ + + + track + source.cuesheet + Track Template + + \ No newline at end of file