diff --git a/.gitmodules b/.gitmodules index ea7708623a..2b0caad6b9 100644 --- a/.gitmodules +++ b/.gitmodules @@ -244,6 +244,10 @@ url = https://github.com/victor-gp/cmd-help-sublime-syntax.git branch = main shallow = true +[submodule "assets/syntaxes/02_Extra/TodoTxt"] + path = assets/syntaxes/02_Extra/TodoTxt + url = https://github.com/dertuxmalwieder/SublimeTodoTxt [submodule "assets/syntaxes/02_Extra/Ada"] path = assets/syntaxes/02_Extra/Ada url = https://github.com/wiremoons/ada-sublime-syntax + \ No newline at end of file diff --git a/assets/patches/TodoTxt.sublime-syntax.patch b/assets/patches/TodoTxt.sublime-syntax.patch new file mode 100644 index 0000000000..81a6d2e00d --- /dev/null +++ b/assets/patches/TodoTxt.sublime-syntax.patch @@ -0,0 +1,13 @@ +diff --git syntaxes/02_Extra/TodoTxt/TodoTxt.sublime-syntax syntaxes/02_Extra/TodoTxt/TodoTxt.sublime-syntax +index 6c75dbb..0115978 100644 +--- syntaxes/02_Extra/TodoTxt/TodoTxt.sublime-syntax ++++ syntaxes/02_Extra/TodoTxt/TodoTxt.sublime-syntax +@@ -68,7 +68,7 @@ contexts: + + - match: (\s+[^\s:]+:[^\s:]+)+\s*$ + comment: Custom attributes +- scope: variable.annotation.todotxt.attribute ++ scope: variable.other.todotxt.attribute + + comments: + # Comments begin with a '//' and finish at the end of the line. diff --git a/assets/syntaxes/02_Extra/TodoTxt b/assets/syntaxes/02_Extra/TodoTxt new file mode 160000 index 0000000000..f5f0a6c47f --- /dev/null +++ b/assets/syntaxes/02_Extra/TodoTxt @@ -0,0 +1 @@ +Subproject commit f5f0a6c47f8948193f5e185576d49379a1438077 diff --git a/tests/syntax-tests/highlighted/Todo.txt/todo.txt b/tests/syntax-tests/highlighted/Todo.txt/todo.txt new file mode 100644 index 0000000000..561f333676 --- /dev/null +++ b/tests/syntax-tests/highlighted/Todo.txt/todo.txt @@ -0,0 +1,65 @@ +Rule 1.1: Priority + +/// Should have priority /// +(A) Thank Mom for the meatballs @phone +(B) Schedule Goodwill pickup +GarageSale @phone + +/// Should not have priority /// +Really gotta call Mom (A) @phone @someday +(b) Get back to the boss +(B)->Submit TPS report + + +Rule 1.2: Creation date + +/// Date should be after priority /// +2011-03-02 Document +TodoTxt task format +(A) 2011-03-02 Call Mom + +/// Should not have creation date /// +(A) Call Mom 2011-03-02 + + +Rule 1.3: Context and Projects  + +/// Contexts and projects can appear anywhere /// +(A) Call Mom +Family +PeaceLoveAndHappiness @iphone @phone to celebrate! + +/// No context /// +Email SoAndSo at soandso@example.com + +/// No project /// +Learn how to add 2+2 + + +Rule 2.1: Completed task + +/// Complete task /// +x 2011-03-03 Call Mom +x With @contexts +projects and key:value + +/// Not completed tasks /// +xylophone lesson +X 2012-01-01 Make resolutions +(A) x Find ticket prices + + +Rule 2.2: Completion date + +/// Only completion date is valuable /// +x Completion date is optional +x 2022-10-21 But you can specify it +x 2011-03-02 2011-03-01  + + +Additional definition + +/// Properties /// +Decide on present for Mom due:2022-01-01 pri:1 + + + +Unspecified + +/// Delayed tasks with WAIT keyword /// +WAIT for @Patric to finish his task with +program diff --git a/tests/syntax-tests/source/Todo.txt/todo.txt b/tests/syntax-tests/source/Todo.txt/todo.txt new file mode 100644 index 0000000000..bd4bb9083c --- /dev/null +++ b/tests/syntax-tests/source/Todo.txt/todo.txt @@ -0,0 +1,65 @@ +Rule 1.1: Priority + +/// Should have priority /// +(A) Thank Mom for the meatballs @phone +(B) Schedule Goodwill pickup +GarageSale @phone + +/// Should not have priority /// +Really gotta call Mom (A) @phone @someday +(b) Get back to the boss +(B)->Submit TPS report + + +Rule 1.2: Creation date + +/// Date should be after priority /// +2011-03-02 Document +TodoTxt task format +(A) 2011-03-02 Call Mom + +/// Should not have creation date /// +(A) Call Mom 2011-03-02 + + +Rule 1.3: Context and Projects + +/// Contexts and projects can appear anywhere /// +(A) Call Mom +Family +PeaceLoveAndHappiness @iphone @phone to celebrate! + +/// No context /// +Email SoAndSo at soandso@example.com + +/// No project /// +Learn how to add 2+2 + + +Rule 2.1: Completed task + +/// Complete task /// +x 2011-03-03 Call Mom +x With @contexts +projects and key:value + +/// Not completed tasks /// +xylophone lesson +X 2012-01-01 Make resolutions +(A) x Find ticket prices + + +Rule 2.2: Completion date + +/// Only completion date is valuable /// +x Completion date is optional +x 2022-10-21 But you can specify it +x 2011-03-02 2011-03-01 + + +Additional definition + +/// Properties /// +Decide on present for Mom due:2022-01-01 pri:1 + + + +Unspecified + +/// Delayed tasks with WAIT keyword /// +WAIT for @Patric to finish his task with +program