From aff3d6807dde661a189f8070c3589aa00dffbae2 Mon Sep 17 00:00:00 2001 From: Reuh Date: Sun, 23 Dec 2018 17:12:09 +0100 Subject: [PATCH] Initial commit --- Candran.sublime-build | 5 ++ Candran.sublime-syntax | 95 ++++++++++++++++++++++++++++++++++ Comments.tmPreferences | 33 ++++++++++++ Completion Rules.tmPreferences | 12 +++++ Indent.tmPreferences | 18 +++++++ README.md | 5 ++ 6 files changed, 168 insertions(+) create mode 100755 Candran.sublime-build create mode 100755 Candran.sublime-syntax create mode 100755 Comments.tmPreferences create mode 100755 Completion Rules.tmPreferences create mode 100755 Indent.tmPreferences create mode 100644 README.md diff --git a/Candran.sublime-build b/Candran.sublime-build new file mode 100755 index 0000000..8e6f84b --- /dev/null +++ b/Candran.sublime-build @@ -0,0 +1,5 @@ +{ + "cmd": ["can", "$file"], + "file_regex": "^(?:can:)?[\t ](...*?):([0-9]*):?([0-9]*)", + "selector": "source.can" +} \ No newline at end of file diff --git a/Candran.sublime-syntax b/Candran.sublime-syntax new file mode 100755 index 0000000..46c4763 --- /dev/null +++ b/Candran.sublime-syntax @@ -0,0 +1,95 @@ +%YAML 1.2 +--- +# http://www.sublimetext.com/docs/3/syntax.html +name: Candran +comment: "Candran Syntax: version 0.8" +file_extensions: + - can + - candran +first_line_match: \A#!.*?\bcan\b +scope: source.can +contexts: + main: + - match: '\b(function)\s+([a-zA-Z_.:]+[.:])?([a-zA-Z_]\w*)\s*(\()([^)]*)(\))' + scope: meta.function.lua + captures: + 1: keyword.control.lua + 2: entity.name.function.scope.lua + 3: entity.name.function.lua + 4: punctuation.definition.parameters.begin.lua + 5: variable.parameter.function.lua + 6: punctuation.definition.parameters.end.lua + - match: '(?=?|(? + + + name + Comments + scope + source.can + settings + + shellVariables + + + name + TM_COMMENT_START + value + -- + + + name + TM_COMMENT_START_2 + value + --[[ + + + name + TM_COMMENT_END_2 + value + --]] + + + + + diff --git a/Completion Rules.tmPreferences b/Completion Rules.tmPreferences new file mode 100755 index 0000000..1d8fcd8 --- /dev/null +++ b/Completion Rules.tmPreferences @@ -0,0 +1,12 @@ + + + + scope + source.can + settings + + cancelCompletion + ^.*\b(?:end|do|else)$ + + + diff --git a/Indent.tmPreferences b/Indent.tmPreferences new file mode 100755 index 0000000..c0ad9ae --- /dev/null +++ b/Indent.tmPreferences @@ -0,0 +1,18 @@ + + + + name + Indent + scope + source.can + settings + + decreaseIndentPattern + ^\s*(elseif|else|end|\})\s*$ + increaseIndentPattern + ^.*\b(else|elseif|for|(local\s+)?function|if|repeat|until|while)\b((?!end).)*$|\{\s*$|^.*(\s|,|=):?\([^\(]*\)\s*$ + indentSquareBrackets + + + + diff --git a/README.md b/README.md new file mode 100644 index 0000000..c7bb4bc --- /dev/null +++ b/README.md @@ -0,0 +1,5 @@ +[Candran](https://github.com/Reuh/candran) language support for [Sublime Text 3](https://www.sublimetext.com/). + +This is an adaptation of Sublime Text 3's Lua support for Candran. Snippets have been removed. + +Installation: clone this repository as a folder in your Sublime Text 3 package directory (Preferences -> Browse packages).