From 3311405388c24942dd46323151632b270972b7f4 Mon Sep 17 00:00:00 2001 From: "Felipe S. S. Schneider" Date: Thu, 8 Dec 2022 10:39:54 -0300 Subject: [PATCH 1/5] Add queries for BibTeX --- runtime/queries/bibtex/highlights.scm | 47 +++++++++++++++++++++++++++ runtime/queries/bibtex/locals.scm | 0 runtime/queries/bibtex/tags.scm | 0 3 files changed, 47 insertions(+) create mode 100644 runtime/queries/bibtex/highlights.scm create mode 100644 runtime/queries/bibtex/locals.scm create mode 100644 runtime/queries/bibtex/tags.scm diff --git a/runtime/queries/bibtex/highlights.scm b/runtime/queries/bibtex/highlights.scm new file mode 100644 index 000000000000..e357324f6cb0 --- /dev/null +++ b/runtime/queries/bibtex/highlights.scm @@ -0,0 +1,47 @@ +[ + (string_type) + (preamble_type) + (entry_type) +] @keyword + +[ + (junk) + (comment) +] @comment + +[ + "=" + "#" +] @operator + +(command) @function.builtin + +(number) @number + +(field + name: (identifier) @variable.builtin) + +(token + (identifier) @variable.parameter) + +[ + (brace_word) + (quote_word) +] @string + +[ + (key_brace) + (key_paren) +] @attribute + +(string + name: (identifier) @constant) + +[ + "{" + "}" + "(" + ")" +] @punctuation.bracket + +"," @punctuation.delimiter diff --git a/runtime/queries/bibtex/locals.scm b/runtime/queries/bibtex/locals.scm new file mode 100644 index 000000000000..e69de29bb2d1 diff --git a/runtime/queries/bibtex/tags.scm b/runtime/queries/bibtex/tags.scm new file mode 100644 index 000000000000..e69de29bb2d1 From 563baa4575ae80c09241714ae18e6cac770d8159 Mon Sep 17 00:00:00 2001 From: "Felipe S. S. Schneider" Date: Thu, 8 Dec 2022 10:48:06 -0300 Subject: [PATCH 2/5] Add an entry for BibTeX to languages.toml --- languages.toml | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/languages.toml b/languages.toml index 325a39dfc4c6..108ef656ac98 100644 --- a/languages.toml +++ b/languages.toml @@ -576,6 +576,21 @@ indent = { tab-width = 4, unit = "\t" } name = "latex" source = { git = "https://github.com/latex-lsp/tree-sitter-latex", rev = "8c75e93cd08ccb7ce1ccab22c1fbd6360e3bcea6" } +[[language]] +name = "bibtex" +scope = "source.bib" +injection-regex = "bib" +file-types = ["bib"] +roots = [] +comment-token = "%" +language-server = { command = "texlab" } +indent = { tab-width = 4, unit = "\t" } +auto-format = true + +[[grammar]] +name = "bibtex" +source = { git = "https://github.com/latex-lsp/tree-sitter-bibtex", rev = "ccfd77db0ed799b6c22c214fe9d2937f47bc8b34" } + [[language]] name = "lean" scope = "source.lean" From 3415e2c10e5bb7db4fc52fb78d59dbe8ec907afa Mon Sep 17 00:00:00 2001 From: "Felipe S. S. Schneider" Date: Thu, 8 Dec 2022 10:52:36 -0300 Subject: [PATCH 3/5] Add bibtex-tidy as formatter for BibTeX --- languages.toml | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/languages.toml b/languages.toml index 108ef656ac98..96d92ce84ab1 100644 --- a/languages.toml +++ b/languages.toml @@ -587,6 +587,19 @@ language-server = { command = "texlab" } indent = { tab-width = 4, unit = "\t" } auto-format = true +[language.formatter] +command = 'bibtex-tidy' +args = [ + "-", + "--curly", + "--drop-all-caps", + "--remove-empty-fields", + "--sort-fields", + "--sort=year,author,id", + "--strip-enclosing-braces", + "--trailing-commas", +] + [[grammar]] name = "bibtex" source = { git = "https://github.com/latex-lsp/tree-sitter-bibtex", rev = "ccfd77db0ed799b6c22c214fe9d2937f47bc8b34" } From 39e32dbdcd4605d27bcf76d7ff0e06a930d0eca1 Mon Sep 17 00:00:00 2001 From: "Felipe S. S. Schneider" Date: Thu, 8 Dec 2022 11:33:12 -0300 Subject: [PATCH 4/5] (Re)generate docs --- book/src/generated/lang-support.md | 1 + 1 file changed, 1 insertion(+) diff --git a/book/src/generated/lang-support.md b/book/src/generated/lang-support.md index ccfd18c00fca..28dafd7ada47 100644 --- a/book/src/generated/lang-support.md +++ b/book/src/generated/lang-support.md @@ -5,6 +5,7 @@ | bash | ✓ | | | `bash-language-server` | | bass | ✓ | | | `bass` | | beancount | ✓ | | | | +| bibtex | ✓ | | | `texlab` | | bicep | ✓ | | | `bicep-langserver` | | c | ✓ | ✓ | ✓ | `clangd` | | c-sharp | ✓ | ✓ | | `OmniSharp` | From af758ca706c5209e4def6945e124907cbd04d26b Mon Sep 17 00:00:00 2001 From: Michael Davis Date: Thu, 8 Dec 2022 22:14:15 -0600 Subject: [PATCH 5/5] Update runtime/queries/bibtex/highlights.scm --- runtime/queries/bibtex/highlights.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime/queries/bibtex/highlights.scm b/runtime/queries/bibtex/highlights.scm index e357324f6cb0..db1ab70c16f9 100644 --- a/runtime/queries/bibtex/highlights.scm +++ b/runtime/queries/bibtex/highlights.scm @@ -16,7 +16,7 @@ (command) @function.builtin -(number) @number +(number) @constant.numeric (field name: (identifier) @variable.builtin)