Skip to content

Commit

Permalink
Use date colorization for key:date
Browse files Browse the repository at this point in the history
  • Loading branch information
silentmatt committed Oct 24, 2018
1 parent 7da2975 commit 3f172c7
Show file tree
Hide file tree
Showing 2 changed files with 25 additions and 0 deletions.
14 changes: 14 additions & 0 deletions grammars/todotxt.cson
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,20 @@
'match': 'due:\\d{4}-\\d{2}-\\d{2}'
'name': 'constant.language.todotxt.due'
}
{
'match': '(\\S+)(:)(\\d{4}-\\d{2}-\\d{2})'
'captures': {
'1': {
'name': 'property.language.todotxt.key'
}
'2': {
'name': 'punctuation.language.todotxt.pair'
}
'3': {
'name': 'constant.language.todotxt.date'
}
}
}
{
'match': '(\\S+)(:)(\\S+)'
'captures': {
Expand Down
11 changes: 11 additions & 0 deletions spec/grammars-todotxt-spec.js
Original file line number Diff line number Diff line change
Expand Up @@ -154,6 +154,17 @@ describe("todo.txt grammar", () => {
expect(valueToken.scopes).toEqual(["text.todotxt", "value.language.todotxt.value"])
});

it("matches key:yyyy-mm-dd correctly", () => {
let {tokens} = grammar.tokenizeLine("(B) 2017-09-20 Syntax highlighting for key:2018-10-23 metadata +LanguageTodotxt +110");
console.log(JSON.stringify(tokens))
let [keyToken] = tokens.filter((token) => { return token.value == "key"; });
expect(keyToken.scopes).toEqual(["text.todotxt", "property.language.todotxt.key"])
let [colonToken] = tokens.filter((token) => { return token.value == ":"; });
expect(colonToken.scopes).toEqual(["text.todotxt", "punctuation.language.todotxt.pair"])
let [valueToken] = tokens.filter((token) => { return token.value == "2018-10-23"; });
expect(valueToken.scopes).toEqual(["text.todotxt", "constant.language.todotxt.date"])
});

it("matches create date without priority", () => {
let {tokens} = grammar.tokenizeLine("2018-02-27 match create date without priority");
console.log(JSON.stringify(tokens))
Expand Down

0 comments on commit 3f172c7

Please sign in to comment.