{"id":20798216,"url":"https://github.com/sebthom/extra-syntax-highlighting-eclipse-plugin","last_synced_at":"2026-01-28T00:32:14.750Z","repository":{"id":37029979,"uuid":"475572811","full_name":"sebthom/extra-syntax-highlighting-eclipse-plugin","owner":"sebthom","description":"Eclipse plugin that provides syntax highlighing support for additional languages.","archived":false,"fork":false,"pushed_at":"2024-11-13T21:56:43.000Z","size":1964,"stargazers_count":14,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2024-11-13T22:19:10.063Z","etag":null,"topics":["bazel","eclipse","eclipse-plugin","editor","glsl","graphql","graphviz-dot","hcl","json5","kotlin","nushell","ocaml","plantuml","prisma","sentinel","svelte","syntax-highlighting","terraform","toml","zig"],"latest_commit_sha":null,"homepage":"https://buymeacoffee.com/vegardit","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"epl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/sebthom.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE.txt","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-03-29T18:36:08.000Z","updated_at":"2024-11-13T21:55:24.000Z","dependencies_parsed_at":"2023-10-03T17:45:42.857Z","dependency_job_id":"4699f451-73d6-4062-a824-e9713642f4c3","html_url":"https://github.com/sebthom/extra-syntax-highlighting-eclipse-plugin","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sebthom%2Fextra-syntax-highlighting-eclipse-plugin","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sebthom%2Fextra-syntax-highlighting-eclipse-plugin/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sebthom%2Fextra-syntax-highlighting-eclipse-plugin/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sebthom%2Fextra-syntax-highlighting-eclipse-plugin/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sebthom","download_url":"https://codeload.github.com/sebthom/extra-syntax-highlighting-eclipse-plugin/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":225065776,"owners_count":17415510,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bazel","eclipse","eclipse-plugin","editor","glsl","graphql","graphviz-dot","hcl","json5","kotlin","nushell","ocaml","plantuml","prisma","sentinel","svelte","syntax-highlighting","terraform","toml","zig"],"created_at":"2024-11-17T16:37:05.863Z","updated_at":"2026-01-28T00:32:14.738Z","avatar_url":"https://github.com/sebthom.png","language":"Java","readme":"# \"Extra Syntax Highlighting\" plugin for Eclipse\n\n[![Build Status](https://github.com/sebthom/extra-syntax-highlighting-eclipse-plugin/actions/workflows/build.yml/badge.svg)](https://github.com/sebthom/extra-syntax-highlighting-eclipse-plugin/actions/workflows/build.yml)\n[![Contributor Covenant](https://img.shields.io/badge/Contributor%20Covenant-v2.1%20adopted-ff69b4.svg)](CODE_OF_CONDUCT.md)\n[![License](https://img.shields.io/github/license/sebthom/extra-syntax-highlighting-eclipse-plugin.svg?color=blue)](LICENSE.txt)\n[![Eclipse Marketplace](https://img.shields.io/eclipse-marketplace/dt/extra-syntax-highlighting-plugin?logo=eclipse\u0026label=Downloads)](https://marketplace.eclipse.org/content/extra-syntax-highlighting-plugin)\n\n\n**Feedback and high-quality pull requests are highly welcome!**\n\n1. [What is it?](#what-is-it)\n1. [Installation](#installation)\n1. [Supported File Formats/Languages](#supported-fileformats)\n1. [Building from Sources](#building)\n1. [License](#license)\n\n\n## \u003ca name=\"what-is-it\"\u003e\u003c/a\u003eWhat is it?\n\nThis [EclipseⓇ](https://eclipse.org) plug-in adds syntax highlighting support for the following languages/file formats utilizing [TM4E](https://github.com/eclipse/tm4e):\n1. Amber - https://amber-lang.com/\n1. ANTRL4 - https://www.antlr.org/\n1. Apache HTTP configuration files - https://httpd.apache.org/docs/current/configuring.html\n1. Astro - https://astro.build/\n1. Ballerina - https://ballerina.io/\n1. Bazel - https://bazel.build/\n1. BF - https://en.wikipedia.org/wiki/Brainfuck\n1. Carbon - https://carbon-lang.dev\n1. COBOL - https://en.wikipedia.org/wiki/COBOL\n1. CodeQL - https://codeql.github.com/\n1. Crystal (`*.cr`) - https://crystal-lang.org/\n1. CSV (`*.cvs`) / TSV (`*.tab*`, `*.tsv*`)\n1. D2 - https://d2lang.com/\n1. Eclipse External null Annotations (`*.eea`) - https://github.com/eclipse-jdt/eclipse.jdt.core/wiki/Null-Analysis-External-Annotations#file-format\n1. EditorConfig - https://editorconfig.org\n1. Elm - https://elm-lang.org/\n1. Entity-Relationship Diagram (`*.er`) - https://github.com/BurntSushi/erd\n1. Erlang (`*.erl`) - https://www.erlang.org/\n1. Fish (`*.fish`) - https://fishshell.com/docs/current/language.html\n1. Fluent (`*.flt`) - https://projectfluent.org/\n1. Fortran - https://fortran-lang.org/\n1. gitattributes - https://git-scm.com/docs/gitattributes\n1. Gleam (`*.gleam`) - https://gleam.run/\n1. GLSL (OpenGL Shading Language) - https://registry.khronos.org/OpenGL/index_gl.php#apispecs\n1. GraphQL - https://graphql.org/\n1. Graphviz Dot (`*.dot`) - https://graphviz.org/doc/info/lang.html\n1. HashiCorp HCL (`*.hcl`) - https://github.com/hashicorp/hcl (e.g. used by HasiCorp Packer)\n1. HashiCorp Sentinel (`*.sentinel`) - https://www.hashicorp.com/sentinel\n1. HashiCorp Terraform (`*.tf`) - https://www.terraform.io/\n1. Haxe - https://haxe.org\n1. Helm (`*.tpl`) - https://helm.sh/\n1. Janet - https://janet-lang.org/\n1. Jinja Templates - https://jinja.palletsprojects.com/\n1. JSON5 (`*.json5`) - https://json5.org/\n1. Jsonnet (`*.jsonnet`) - https://jsonnet.org/\n1. jte: Java Template Engine (`*.jte`) - https://jte.gg/\n1. Kotlin - https://kotlinlang.org/\n1. LDIF - https://en.wikipedia.org/wiki/LDAP_Data_Interchange_Format\n1. Mako Templates (`*.mako`) - https://www.makotemplates.org/\n1. Markdoc (`*.markdoc`) - https://markdoc.dev/\n1. Markdown (`*.md`) - https://daringfireball.net/projects/markdown/\n1. MDX (`*.mdx`) - https://mdxjs.com/\n1. Mermaid (`*.mmd, *.mermaid`) - https://github.com/mermaid-js/mermaid/\n1. NginX (`nginx.conf`) - https://www.nginx.com/\n1. Nunjucks (`*.njk`) - https://mozilla.github.io/nunjucks/\n1. Nushell (`*.nu`) - https://github.com/nushell/nushell\n1. OCaml (`*.ml`) - https://ocaml.org/\n1. Odin - https://odin-lang.org/\n1. Pascal (`*.pas`) - https://en.wikipedia.org/wiki/Pascal_(programming_language)\n1. PlantUML (`*.pu`) - https://plantuml.com/\n1. Pony (`*.pony`) - https://www.ponylang.io/\n1. Prisma - https://www.prisma.io/\n1. Reason (`*.re`) - https://reasonml.github.io/\n1. Roc (`*.roc`) - https://www.roc-lang.org/\n1. Svelte - https://svelte.dev/\n1. TOML - https://toml.io/en/\n1. Twig Templates (`*.twig`) - https://twig.symfony.com/\n1. Wing - https://www.winglang.io/\n1. Zig - https://ziglang.org/\n\nFor a lot more formats install the TM4E **Language Pack** from the TM4E update site https://download.eclipse.org/tm4e/releases/latest/\n\nFor the following languages/file formats you can also install specialised Eclipse plug-ins with additional features:\n- HTML, CSS, SCSS, SASS, LESS, JavaScript, TypeScript, JSON, YAML (incl. Kubernetes schema validation), XML, XSL, XSD, DTD, ESLint, Angular React (JSX, TSX), Vue.js: [Wild Web Developer](https://marketplace.eclipse.org/content/wild-web-developer-html-css-javascript-typescript-nodejs-angular-json-yaml-kubernetes-xml)\n- AsciiDoc: [Asciidoctor Editor](https://marketplace.eclipse.org/content/asciidoctor-editor)\n- Bash Scripts: [ShellWax](https://marketplace.eclipse.org/content/shellwax) or [Bash Editor](https://marketplace.eclipse.org/content/bash-editor)\n- Dockerfile: [Eclipse Docker Tooling](https://marketplace.eclipse.org/content/eclipse-docker-tooling)\n- Groovy: [Groovy Development Tools](https://marketplace.eclipse.org/content/groovy-development-tools)\n- Jenkins Pipelines (`Jenkinsfile`): [Jenkins Editor](https://marketplace.eclipse.org/content/jenkins-editor)\n- Python: [PyDev - Python IDE for Eclipse](https://marketplace.eclipse.org/content/pydev-python-ide-eclipse)\n- SQL: [SQL Editor](https://marketplace.eclipse.org/content/sql-editor) or [DBeaver](https://marketplace.eclipse.org/content/dbeaver) or [PL/SQL Workbench](https://marketplace.eclipse.org/content/plsql-enterprise-workbench)\n- Windows Batch Files (`*.bat`, `*.cmd`): [Batch Editor](https://marketplace.eclipse.org/content/batch-editor)\n- JSON: [JSON Editor Plugin](https://marketplace.eclipse.org/content/json-editor-plugin) or [Hi(speed)JSON Editor](https://marketplace.eclipse.org/content/hijson-editor) or [Wild Web Developer](https://marketplace.eclipse.org/content/wild-web-developer-html-css-javascript-typescript-nodejs-angular-json-yaml-kubernetes-xml)\n- YAML: [YAML Editor](https://marketplace.eclipse.org/content/yaml-editor) or [Wild Web Developer](https://marketplace.eclipse.org/content/wild-web-developer-html-css-javascript-typescript-nodejs-angular-json-yaml-kubernetes-xml)\n\n\n## \u003ca name=\"installation\"\u003e\u003c/a\u003eInstallation\n\nTo install the plugin into an existing Eclipse installation do:\n1. Within Eclipse go to: Help -\u003e Install New Software...\n1. Enter the following update site URL: https://raw.githubusercontent.com/sebthom/extra-syntax-highlighting-eclipse-plugin/updatesite\n1. Select the `Extra Syntax Highlighting` feature to install.\n1. Ensure that the option `Contact all update sites during install to find required software` is enabled.\n1. Click `Next` twice.\n1. Read/accept the license terms and click `Finish`.\n1. Eclipse will now download the necessary files in the background.\n1. When the download has finished, Eclipse will ask about installing unsigned content. You need to accept if you want to\n1. After installation you will be prompted for a restart of Eclipse, which is recommended.\n\n### Minimum version requirements\n\n- JDK: 17 or newer\n- Eclipse IDE: 2022-06 (4.25) or newer\n- TM4E: 0.6.2 or newer\n\n\n## \u003ca name=\"supported-fileformats\"\u003e\u003c/a\u003eSupported File Formats/Languages\n\n\u003c!-- START-GENERATED --\u003e\n\n| Language/Format | File Associations | Source\n|:--------------- |:----------------- |:------ |\n| Amber \u003cimg src=\"plugin/syntaxes/amber/amber.icon.png\" width=16/\u003e | file-extensions=\"ab, amber\" | [main@amber-lang/amber-vsc](https://github.com/amber-lang/amber-vsc/tree/c0ebd53e075698fa62efffd492a41b27bff1c227/)\n| ANTLR \u003cimg src=\"plugin/syntaxes/antlr4/icon.png\" width=16/\u003e | file-extensions=\"g, g4\" | [master@mike-lischke/vscode-antlr4](https://github.com/mike-lischke/vscode-antlr4/tree/8408f1d50c59bc81f52795525ad41a6b50787316/)\n| Apache HTTP Config \u003cimg src=\"plugin/syntaxes/apache-http/icon.png\" width=16/\u003e | file-extensions=\"conf, htaccess, htgroups, htpasswd\" | [master@mrmlnc/vscode-apache](https://github.com/mrmlnc/vscode-apache/tree/0585b0bb3d390fc541aa27cfcfb83b3204156be3/)\n| Astro \u003cimg src=\"plugin/syntaxes/astro/astro.icon.png\" width=16/\u003e | file-extensions=\"astro\" | [main@withastro/language-tools](https://github.com/withastro/language-tools/tree/b4bcb4fc02cd960936a5faee6c9cc0ad94fc4c05/packages/vscode)\n| Ballerina | file-extensions=\"bal\" | [master@ballerina-platform/ballerina-grammar](https://github.com/ballerina-platform/ballerina-grammar/tree/9c1bee1e9f48c03a8ad8760b0053ca5687460354/syntaxes)\n| bazelrc \u003cimg src=\"plugin/syntaxes/bazel/icon.png\" width=16/\u003e | file-extensions=\"bazelrc\"\u003cbr /\u003efile-names=\".bazelrc, bazel.rc\" | [master@bazelbuild/vscode-bazel](https://github.com/bazelbuild/vscode-bazel/tree/f311f41ec2081e1114e50d12c01cc3b673a702b0/)\n| Branflakes \u003cimg src=\"plugin/syntaxes/bf/icon.png\" width=16/\u003e | file-extensions=\"bf, bfsck, brainfuck\" | [main@chrisvrose/bf-server](https://github.com/chrisvrose/bf-server/tree/5945c04ccea21cd13e133547276d27d6540375f2/)\n| Carbon | file-extensions=\"carbon\" | [trunk@carbon-language/carbon-lang](https://github.com/carbon-language/carbon-lang/tree/093d5072db7f3653c28a8c4541294985918c79cd/utils)\n| COBOL \u003cimg src=\"plugin/syntaxes/cobol/icon.png\" width=16/\u003e | file-extensions=\"cbl, cob, cobol, copy, cpy\"\u003cbr /\u003efile-patterns=\"\\*\\*/broadcommfd.cobol-language-support/\\*/copybooks/\\*\\*\" | [development@eclipse-che4z/che-che4z-lsp-for-cobol](https://github.com/eclipse-che4z/che-che4z-lsp-for-cobol/tree/3fe90031bbf19146ec805e3ffdd94e8bde1b970f/clients/cobol-lsp-vscode-extension)\n| CodeQL \u003cimg src=\"plugin/syntaxes/codeql/icon.png\" width=16/\u003e | file-extensions=\"ql, qll\" | [main@github/vscode-codeql](https://github.com/github/vscode-codeql/tree/a723c260bf10856fedde8c4719eb052dbd5811ec/)\n| Crystal \u003cimg src=\"plugin/syntaxes/crystal/icon.png\" width=16/\u003e | file-extensions=\"cr\" | [master@crystal-lang-tools/vscode-crystal-lang](https://github.com/crystal-lang-tools/vscode-crystal-lang/tree/9d85621bd72b76fb5f4c81dd8357a3e6e834f7ce/) [[upstream]](https://github.com/Microsoft/vscode/blob/3f1f36333d3453f67a36b6bfb1206e9159e9c4f0/extensions/ruby/syntaxes/ruby.tmLanguage.json)\n| Crystal Slang \u003cimg src=\"plugin/syntaxes/crystal/icon.png\" width=16/\u003e | file-extensions=\"slang\" | [master@crystal-lang-tools/vscode-crystal-lang](https://github.com/crystal-lang-tools/vscode-crystal-lang/tree/9d85621bd72b76fb5f4c81dd8357a3e6e834f7ce/)\n| CSV \u003cimg src=\"plugin/syntaxes/csv/icon.png\" width=16/\u003e | file-extensions=\"csv\" | [master@mechatroner/vscode_rainbow_csv](https://github.com/mechatroner/vscode_rainbow_csv/tree/bb8f97177d6d9ccb3d1c03cc535bdd5320aa6462/)\n| d2 \u003cimg src=\"plugin/syntaxes/d2/d2.icon.png\" width=16/\u003e | file-extensions=\"d2\" | [master@terrastruct/d2-vscode](https://github.com/terrastruct/d2-vscode/tree/88d9716009f9b8d65bfd6dea96064c94a5cf275f/)\n| EditorConfig \u003cimg src=\"plugin/syntaxes/editorconfig/icon.png\" width=16/\u003e | file-extensions=\"editorconfig\" | [main@editorconfig/editorconfig-vscode](https://github.com/editorconfig/editorconfig-vscode/tree/e32b46f6e0a1ee53059675ed00e7513d7b096feb/)\n| Elm \u003cimg src=\"plugin/syntaxes/elm/icon.png\" width=16/\u003e | file-extensions=\"elm\" | [main@elm-tooling/elm-language-client-vscode](https://github.com/elm-tooling/elm-language-client-vscode/tree/cc3a7c463a7af57639ee91d4717be1723a936156/)\n| Embedded Crystal \u003cimg src=\"plugin/syntaxes/crystal/icon.png\" width=16/\u003e | file-extensions=\"ecr\" | [master@crystal-lang-tools/vscode-crystal-lang](https://github.com/crystal-lang-tools/vscode-crystal-lang/tree/9d85621bd72b76fb5f4c81dd8357a3e6e834f7ce/)\n| Entity Relationship \u003cimg src=\"plugin/syntaxes/er/icon.png\" width=16/\u003e | file-extensions=\"er\" | [master@mikkel-ol/vsc-er-syntax-highlighting](https://github.com/mikkel-ol/vsc-er-syntax-highlighting/tree/ffc822eb4edf4448f7ad375806e255b3e6370054/)\n| Erlang \u003cimg src=\"plugin/syntaxes/erlang/icon.png\" width=16/\u003e | file-extensions=\"config, erl, escript, hrl, src\" | [main@erlang-ls/vscode](https://github.com/erlang-ls/vscode/tree/1e5bc08853523c6dcd563fa7de8af597710eaa8f/)\n| Fish \u003cimg src=\"plugin/syntaxes/fish/icon.png\" width=16/\u003e | file-extensions=\"fish\" | [main@bmalehorn/vscode-fish](https://github.com/bmalehorn/vscode-fish/tree/0741d59ecf3d2aa018543747874eb8f34c655612/)\n| fluent \u003cimg src=\"plugin/syntaxes/fluent/fluent.icon.png\" width=16/\u003e | file-extensions=\"ftl\" | [master@macabeus/vscode-fluent](https://github.com/macabeus/vscode-fluent/tree/9f2a1c1f39175c1d4da46e5a14f1b11c6d466b63/)\n| Fortran \u003cimg src=\"plugin/syntaxes/fortran/FortranFreeForm.icon.png\" width=16/\u003e | file-extensions=\"F03, F08, F18, F90, F95, FPP, FYPP, PF, f03, f08, f18, f90, f95, fpp, fypp, pf\" | [main@fortran-lang/vscode-fortran-support](https://github.com/fortran-lang/vscode-fortran-support/tree/1c8b212318a7c9e000f2e937df18bab1953ff365/)\n| Fortran77 \u003cimg src=\"plugin/syntaxes/fortran/FortranFixedForm.icon.png\" width=16/\u003e | file-extensions=\"F, F77, FOR, f, f77, for\" | [main@fortran-lang/vscode-fortran-support](https://github.com/fortran-lang/vscode-fortran-support/tree/1c8b212318a7c9e000f2e937df18bab1953ff365/)\n| Gleam \u003cimg src=\"plugin/syntaxes/gleam/gleam.icon.png\" width=16/\u003e | file-extensions=\"gleam\" | [main@gleam-lang/vscode-gleam](https://github.com/gleam-lang/vscode-gleam/tree/9f28a4a0bffaccadf74f56ab72310187cd3ff6e2/)\n| GraphQL \u003cimg src=\"plugin/syntaxes/graphql/icon.png\" width=16/\u003e | file-extensions=\"gql, graphql, graphqls\" | [main@graphql/graphiql](https://github.com/graphql/graphiql/tree/54ed55cbb75c1dd5b38f7afa6a1a14c2b58ed0ab/packages/vscode-graphql-syntax)\n| GraphViz DOT File | file-extensions=\"dot\" | [master@textmate/graphviz.tmbundle](https://github.com/textmate/graphviz.tmbundle/tree/d1d489f893a0e6ef5d9021bf7dc1ffd08b3f9b90/Syntaxes)\n| HashiCorp Sentinel | file-extensions=\"sentinel\" | [main@hashicorp/syntax](https://github.com/hashicorp/syntax/tree/ae0c4e30047d0df4dc60c8e25aaaccc4e8cab604/)\n| HashiCorp Terraform | file-extensions=\"tf, tfvars\" | [main@hashicorp/syntax](https://github.com/hashicorp/syntax/tree/ae0c4e30047d0df4dc60c8e25aaaccc4e8cab604/)\n| Haxe | file-extensions=\"hx\" | [master@vshaxe/haxe-TmLanguage](https://github.com/vshaxe/haxe-TmLanguage/tree/6fbbbf958448f877a8d524a589e3280514c950e6/)\n| HCL Config File | file-extensions=\"hcl\" | [main@hashicorp/syntax](https://github.com/hashicorp/syntax/tree/ae0c4e30047d0df4dc60c8e25aaaccc4e8cab604/)\n| helm-template \u003cimg src=\"plugin/syntaxes/helm/icon.png\" width=16/\u003e | file-patterns=\"\\*\\*/templates/\\*\\*/\\*.tpl, \\*\\*/templates/\\*\\*/\\*.yaml, \\*\\*/templates/\\*\\*/\\*.yml, \\*\\*/templates/\\*.tpl, \\*\\*/templates/\\*.yaml, \\*\\*/templates/\\*.yml\" | [main@vscode-kubernetes-tools/vscode-kubernetes-tools](https://github.com/vscode-kubernetes-tools/vscode-kubernetes-tools/tree/a8b8019b848675ab0babd6d9b008e017f0c17e6a/)\n| Janet \u003cimg src=\"plugin/syntaxes/janet/icon.png\" width=16/\u003e | file-extensions=\"janet\" | [master@janet-lang/vscode-janet](https://github.com/janet-lang/vscode-janet/tree/0225a87fb8c75d9dec024d592f2bdcf74f366e5e/)\n| Jinja C++ \u003cimg src=\"plugin/syntaxes/jinja/icon.png\" width=16/\u003e | file-extensions=\"c.j2, c.jinja, c.jinja2, cpp.j2, cpp.jinja, cpp.jinja2, h.j2, h.jinja, h.jinja2\" | [main@samuelcolvin/jinjahtml-vscode](https://github.com/samuelcolvin/jinjahtml-vscode/tree/d8daf5fd43941deec8803be2335b35922e3e1eeb/)\n| Jinja Cisco Config \u003cimg src=\"plugin/syntaxes/jinja/icon.png\" width=16/\u003e | file-extensions=\"cisco.j2, cisco.jinja, cisco.jinja2, ios.j2, ios.jinja, ios.jinja2\" | [main@samuelcolvin/jinjahtml-vscode](https://github.com/samuelcolvin/jinjahtml-vscode/tree/d8daf5fd43941deec8803be2335b35922e3e1eeb/)\n| Jinja CSS \u003cimg src=\"plugin/syntaxes/jinja/icon.png\" width=16/\u003e | file-extensions=\"css.j2, css.jinja, css.jinja2\" | [main@samuelcolvin/jinjahtml-vscode](https://github.com/samuelcolvin/jinjahtml-vscode/tree/d8daf5fd43941deec8803be2335b35922e3e1eeb/)\n| Jinja Cython \u003cimg src=\"plugin/syntaxes/jinja/icon.png\" width=16/\u003e | file-extensions=\"pxd.j2, pxd.jinja, pxd.jinja2, pxi.j2, pxi.jinja, pxi.jinja2, pyx.j2, pyx.jinja, pyx.jinja2\" | [main@samuelcolvin/jinjahtml-vscode](https://github.com/samuelcolvin/jinjahtml-vscode/tree/d8daf5fd43941deec8803be2335b35922e3e1eeb/)\n| Jinja Dockerfile \u003cimg src=\"plugin/syntaxes/jinja/icon.png\" width=16/\u003e | file-extensions=\"dockerfile.j2, dockerfile.jinja, dockerfile.jinja2\"\u003cbr /\u003efile-names=\"Dockerfile.j2, Dockerfile.jinja, Dockerfile.jinja2\" | [main@samuelcolvin/jinjahtml-vscode](https://github.com/samuelcolvin/jinjahtml-vscode/tree/d8daf5fd43941deec8803be2335b35922e3e1eeb/)\n| Jinja Groovy \u003cimg src=\"plugin/syntaxes/jinja/icon.png\" width=16/\u003e | file-extensions=\"groovy.j2, groovy.jinja, groovy.jinja2\" | [main@samuelcolvin/jinjahtml-vscode](https://github.com/samuelcolvin/jinjahtml-vscode/tree/d8daf5fd43941deec8803be2335b35922e3e1eeb/)\n| Jinja HTML \u003cimg src=\"plugin/syntaxes/jinja/icon.png\" width=16/\u003e | file-extensions=\"htm.j2, htm.jinja, htm.jinja2\"\u003cbr /\u003efile-patterns=\"\\*html.j2, \\*html.jinja, \\*html.jinja2\" | [main@samuelcolvin/jinjahtml-vscode](https://github.com/samuelcolvin/jinjahtml-vscode/tree/d8daf5fd43941deec8803be2335b35922e3e1eeb/)\n| Jinja Java \u003cimg src=\"plugin/syntaxes/jinja/icon.png\" width=16/\u003e | file-extensions=\"java.j2, java.jinja, java.jinja2\" | [main@samuelcolvin/jinjahtml-vscode](https://github.com/samuelcolvin/jinjahtml-vscode/tree/d8daf5fd43941deec8803be2335b35922e3e1eeb/)\n| Jinja JavaScript \u003cimg src=\"plugin/syntaxes/jinja/icon.png\" width=16/\u003e | file-extensions=\"js.j2, js.jinja2\" | [main@samuelcolvin/jinjahtml-vscode](https://github.com/samuelcolvin/jinjahtml-vscode/tree/d8daf5fd43941deec8803be2335b35922e3e1eeb/)\n| Jinja JSON \u003cimg src=\"plugin/syntaxes/jinja/icon.png\" width=16/\u003e | file-extensions=\"code-workspace.j2, code-workspace.jinja, code-workspace.jinja2, json.j2, json.jinja, json.jinja2\" | [main@samuelcolvin/jinjahtml-vscode](https://github.com/samuelcolvin/jinjahtml-vscode/tree/d8daf5fd43941deec8803be2335b35922e3e1eeb/)\n| Jinja LaTeX \u003cimg src=\"plugin/syntaxes/jinja/icon.png\" width=16/\u003e | file-extensions=\"latex.j2, latex.jinja2, tex.j2, tex.jinja2\" | [main@samuelcolvin/jinjahtml-vscode](https://github.com/samuelcolvin/jinjahtml-vscode/tree/d8daf5fd43941deec8803be2335b35922e3e1eeb/)\n| Jinja Lua \u003cimg src=\"plugin/syntaxes/jinja/icon.png\" width=16/\u003e | file-extensions=\"lua.j2, lua.jinja, lua.jinja2\" | [main@samuelcolvin/jinjahtml-vscode](https://github.com/samuelcolvin/jinjahtml-vscode/tree/d8daf5fd43941deec8803be2335b35922e3e1eeb/)\n| Jinja Markdown \u003cimg src=\"plugin/syntaxes/jinja/icon.png\" width=16/\u003e | file-extensions=\"md.j2, md.jinja, md.jinja2\" | [main@samuelcolvin/jinjahtml-vscode](https://github.com/samuelcolvin/jinjahtml-vscode/tree/d8daf5fd43941deec8803be2335b35922e3e1eeb/)\n| Jinja Nginx \u003cimg src=\"plugin/syntaxes/jinja/icon.png\" width=16/\u003e | file-extensions=\"conf.j2, conf.jinja, conf.jinja2\" | [main@samuelcolvin/jinjahtml-vscode](https://github.com/samuelcolvin/jinjahtml-vscode/tree/d8daf5fd43941deec8803be2335b35922e3e1eeb/)\n| Jinja PHP \u003cimg src=\"plugin/syntaxes/jinja/icon.png\" width=16/\u003e | file-extensions=\"php.j2, php.jinja, php.jinja2\" | [main@samuelcolvin/jinjahtml-vscode](https://github.com/samuelcolvin/jinjahtml-vscode/tree/d8daf5fd43941deec8803be2335b35922e3e1eeb/)\n| Jinja Properties/ini/Conf \u003cimg src=\"plugin/syntaxes/jinja/icon.png\" width=16/\u003e | file-extensions=\"cfg.j2, conf.j2, desktop.j2, directory.j2, ini.j2, properties.j2\" | [main@samuelcolvin/jinjahtml-vscode](https://github.com/samuelcolvin/jinjahtml-vscode/tree/d8daf5fd43941deec8803be2335b35922e3e1eeb/)\n| Jinja Python \u003cimg src=\"plugin/syntaxes/jinja/icon.png\" width=16/\u003e | file-extensions=\"py.j2, py.jinja, py.jinja2, pyi.j2, pyi.jinja, pyi.jinja2\" | [main@samuelcolvin/jinjahtml-vscode](https://github.com/samuelcolvin/jinjahtml-vscode/tree/d8daf5fd43941deec8803be2335b35922e3e1eeb/)\n| Jinja Ruby \u003cimg src=\"plugin/syntaxes/jinja/icon.png\" width=16/\u003e | file-extensions=\"rb.j2, rb.jinja2, rbw.j2, rbw.jinja2\" | [main@samuelcolvin/jinjahtml-vscode](https://github.com/samuelcolvin/jinjahtml-vscode/tree/d8daf5fd43941deec8803be2335b35922e3e1eeb/)\n| Jinja Rust \u003cimg src=\"plugin/syntaxes/jinja/icon.png\" width=16/\u003e | file-extensions=\"rs.j2, rs.jinja, rs.jinja2\" | [main@samuelcolvin/jinjahtml-vscode](https://github.com/samuelcolvin/jinjahtml-vscode/tree/d8daf5fd43941deec8803be2335b35922e3e1eeb/)\n| Jinja Shell Script \u003cimg src=\"plugin/syntaxes/jinja/icon.png\" width=16/\u003e | file-extensions=\"bash.j2, bash_aliases.j2, bash_login.j2, bash_logout.j2, bash_profile.j2, bashrc.j2, ebuild.j2, env.j2, env.jinja, env.jinja2, install.j2, ksh.j2, profile.j2, sh.j2, zlogin.j2, zlogout.j2, zprofile.j2, zsh-theme.j2, zsh.j2, zshenv.j2, zshrc.j2\" | [main@samuelcolvin/jinjahtml-vscode](https://github.com/samuelcolvin/jinjahtml-vscode/tree/d8daf5fd43941deec8803be2335b35922e3e1eeb/)\n| Jinja SQL \u003cimg src=\"plugin/syntaxes/jinja/icon.png\" width=16/\u003e | file-extensions=\"sql.j2, sql.jinja, sql.jinja2\" | [main@samuelcolvin/jinjahtml-vscode](https://github.com/samuelcolvin/jinjahtml-vscode/tree/d8daf5fd43941deec8803be2335b35922e3e1eeb/)\n| Jinja Systemd Unit File \u003cimg src=\"plugin/syntaxes/jinja/icon.png\" width=16/\u003e | file-extensions=\"automount.j2, automount.jinja, automount.jinja2, device.j2, device.jinja, device.jinja2, link.j2, link.jinja, link.jinja2, mount.j2, mount.jinja, mount.jinja2, netdev.j2, netdev.jinja, netdev.jinja2, network.j2, network.jinja, network.jinja2, path.j2, path.jinja, path.jinja2, scope.j2, scope.jinja, scope.jinja2, service.j2, service.jinja, service.jinja2, slice.j2, slice.jinja, slice.jinja2, snapshot.j2, snapshot.jinja, snapshot.jinja2, socket.j2, socket.jinja, socket.jinja2, swap.j2, swap.jinja, swap.jinja2, target.j2, target.jinja, target.jinja2, timer.j2, timer.jinja, timer.jinja2\" | [main@samuelcolvin/jinjahtml-vscode](https://github.com/samuelcolvin/jinjahtml-vscode/tree/d8daf5fd43941deec8803be2335b35922e3e1eeb/)\n| Jinja Terraform \u003cimg src=\"plugin/syntaxes/jinja/icon.png\" width=16/\u003e | file-extensions=\"hcl.j2, hcl.jinja, hcl.jinja2, tf.j2, tf.jinja, tf.jinja2, tfvars.j2, tfvars.jinja, tfvars.jinja2\" | [main@samuelcolvin/jinjahtml-vscode](https://github.com/samuelcolvin/jinjahtml-vscode/tree/d8daf5fd43941deec8803be2335b35922e3e1eeb/)\n| Jinja TOML \u003cimg src=\"plugin/syntaxes/jinja/icon.png\" width=16/\u003e | file-extensions=\"toml.j2, toml.jinja, toml.jinja2\" | [main@samuelcolvin/jinjahtml-vscode](https://github.com/samuelcolvin/jinjahtml-vscode/tree/d8daf5fd43941deec8803be2335b35922e3e1eeb/)\n| Jinja TypeScript \u003cimg src=\"plugin/syntaxes/jinja/icon.png\" width=16/\u003e | file-extensions=\"ts.j2, ts.jinja2\" | [main@samuelcolvin/jinjahtml-vscode](https://github.com/samuelcolvin/jinjahtml-vscode/tree/d8daf5fd43941deec8803be2335b35922e3e1eeb/)\n| Jinja XML \u003cimg src=\"plugin/syntaxes/jinja/icon.png\" width=16/\u003e | file-extensions=\"xml.j2, xml.jinja, xml.jinja2\" | [main@samuelcolvin/jinjahtml-vscode](https://github.com/samuelcolvin/jinjahtml-vscode/tree/d8daf5fd43941deec8803be2335b35922e3e1eeb/)\n| Jinja YAML \u003cimg src=\"plugin/syntaxes/jinja/icon.png\" width=16/\u003e | file-extensions=\"sls, yaml.j2, yaml.jinja, yaml.jinja2, yml.j2, yml.jinja, yml.jinja2\" | [main@samuelcolvin/jinjahtml-vscode](https://github.com/samuelcolvin/jinjahtml-vscode/tree/d8daf5fd43941deec8803be2335b35922e3e1eeb/)\n| JSON5 | file-extensions=\"json5\" | [master@katjanakosic/vscode-json5](https://github.com/katjanakosic/vscode-json5/tree/4bf68072f00ee0cc3cd0e82c4b27364c888fcb12/)\n| Jsonnet \u003cimg src=\"plugin/syntaxes/jsonnet/icon.png\" width=16/\u003e | file-extensions=\"jsonnet, libsonnet\" | [main@grafana/vscode-jsonnet](https://github.com/grafana/vscode-jsonnet/tree/bfb5ac332d620a6f66d61d6b9c8125bacaba7cd4/)\n| JTE Templates \u003cimg src=\"plugin/syntaxes/jte/icon.png\" width=16/\u003e | file-extensions=\"jte, kte\" | [main@maj2c/jte-template-syntax-highlight](https://github.com/maj2c/jte-template-syntax-highlight/tree/0b1242fdccb25bc9f72fccef48c51b01d9ac354d/)\n| Kotlin \u003cimg src=\"plugin/syntaxes/kotlin/icon.png\" width=16/\u003e | file-extensions=\"kt, kts\" | [main@fwcd/vscode-kotlin](https://github.com/fwcd/vscode-kotlin/tree/4a7c1538754828c1d22a8bee8ff3400045b4352a/)\n| LDIF File | file-extensions=\"ldif\" | [master@FlashSystems/LDIF-Syntax](https://github.com/FlashSystems/LDIF-Syntax/tree/f00c21eb1cc5fe5966cf6ef158e854a65449a9fa/)\n| Mako Template | file-extensions=\"mako\" | [master@marconi/mako-tmbundle](https://github.com/marconi/mako-tmbundle/tree/45037e4e98f0c215b55b194d303811d43b85407c/Syntaxes)\n| Markdoc \u003cimg src=\"plugin/syntaxes/markdoc/icon.png\" width=16/\u003e | file-extensions=\"markdoc, markdoc.md, mdoc\" | [main@markdoc/language-server](https://github.com/markdoc/language-server/tree/a6b8babf602735dc31bae1d10fad903dc40c9761/)\n| Markdown | file-extensions=\"livemd, markdown, md, mdown, mdwn, mkd, mkdn, mkdown, ronn, scd, workbook\" | [main@wooorm/markdown-tm-language](https://github.com/wooorm/markdown-tm-language/tree/c78b1e5df644d24fa76716bbe26f4b48a6fc1610/)\n| MDX \u003cimg src=\"plugin/syntaxes/mdx/mdx.icon.png\" width=16/\u003e | file-extensions=\"mdx\" | [main@mdx-js/mdx-analyzer](https://github.com/mdx-js/mdx-analyzer/tree/4851c2df02cd9c25a3cebc34cf9c4c1841c1feab/packages/vscode-mdx)\n| mermaid \u003cimg src=\"plugin/syntaxes/mermaid/icon.png\" width=16/\u003e | file-extensions=\"mermaid, mmd\" | [master@bpruitt-goddard/vscode-mermaid-syntax-highlight](https://github.com/bpruitt-goddard/vscode-mermaid-syntax-highlight/tree/ccb7011c7896c1c398cc15881912fe766c3825c7/)\n| NDVR-COBOL \u003cimg src=\"plugin/syntaxes/cobol/icon.png\" width=16/\u003e | file-extensions=\"cbl.prnt, cob.prnt, cobol.prnt, copy.prnt, cpy.prnt\" | [development@eclipse-che4z/che-che4z-lsp-for-cobol](https://github.com/eclipse-che4z/che-che4z-lsp-for-cobol/tree/3fe90031bbf19146ec805e3ffdd94e8bde1b970f/clients/cobol-lsp-vscode-extension)\n| NGINX Conf \u003cimg src=\"plugin/syntaxes/nginx/icon.png\" width=16/\u003e | file-extensions=\"conf, fastcgi_params, nginx, scgi_params, uwsgi_params\"\u003cbr /\u003efile-patterns=\"\\*.conf.default, \\*.conf.template, \\*.mime.types, \\*.nginx.conf\" | [main@almir/nginx-syntax-highlighter](https://github.com/almir/nginx-syntax-highlighter/tree/03fa6617212032f1d538891730bb15feb4df2ef8/)\n| Nunjucks HTML \u003cimg src=\"plugin/syntaxes/nunjucks/icon.png\" width=16/\u003e | file-extensions=\"njk, njk.html\" | [main@edheltzel/better-nunjucks-for-visual-studio-code](https://github.com/edheltzel/better-nunjucks-for-visual-studio-code/tree/83bfc919563c30f8eeb1548f983e143adad29781/)\n| nushell \u003cimg src=\"plugin/syntaxes/nushell/nushell.icon.png\" width=16/\u003e | file-extensions=\"nu\" | [main@nushell/vscode-nushell-lang](https://github.com/nushell/vscode-nushell-lang/tree/ec27848b50deda7b6d5da7365a97bf9e3dda0fcd/)\n| OCaml \u003cimg src=\"plugin/syntaxes/ocaml/icon.png\" width=16/\u003e | file-extensions=\"eliom, ml, ocamlinit\" | [master@ocamllabs/vscode-ocaml-platform](https://github.com/ocamllabs/vscode-ocaml-platform/tree/bec1d19078008d296d986dca5b53e82a2041a353/)\n| OCaml Interface \u003cimg src=\"plugin/syntaxes/ocaml/icon.png\" width=16/\u003e | file-extensions=\"eliomi, mli\" | [master@ocamllabs/vscode-ocaml-platform](https://github.com/ocamllabs/vscode-ocaml-platform/tree/bec1d19078008d296d986dca5b53e82a2041a353/)\n| OCaml.mlx \u003cimg src=\"plugin/syntaxes/ocaml/icon.png\" width=16/\u003e | file-extensions=\"mlx\" | [master@ocamllabs/vscode-ocaml-platform](https://github.com/ocamllabs/vscode-ocaml-platform/tree/bec1d19078008d296d986dca5b53e82a2041a353/)\n| OCamlFormat \u003cimg src=\"plugin/syntaxes/ocaml/icon.png\" width=16/\u003e | file-extensions=\"ocamlformat\" | [master@ocamllabs/vscode-ocaml-platform](https://github.com/ocamllabs/vscode-ocaml-platform/tree/bec1d19078008d296d986dca5b53e82a2041a353/)\n| odin \u003cimg src=\"plugin/syntaxes/odin/odin.icon.png\" width=16/\u003e | file-extensions=\"odin\" | [master@DanielGavin/ols](https://github.com/DanielGavin/ols/tree/7349330c3ff8dba777ff01dfcf284588c3b01471/editors/vscode)\n| opam \u003cimg src=\"plugin/syntaxes/ocaml/icon.png\" width=16/\u003e | file-extensions=\"opam, opam.locked, opam.template\"\u003cbr /\u003efile-names=\"opam\" | [master@ocamllabs/vscode-ocaml-platform](https://github.com/ocamllabs/vscode-ocaml-platform/tree/bec1d19078008d296d986dca5b53e82a2041a353/)\n| OpenGL Shading Language \u003cimg src=\"plugin/syntaxes/glsl/icon.png\" width=16/\u003e | file-extensions=\"comp, csh, frag, fs, fsh, fshader, geom, glsl, gs, gsh, gshader, mesh, rahit, rcall, rchit, rgen, rint, rmiss, task, tesc, tese, vert, vs, vsh, vshader\" | [master@GeForceLegend/vscode-glsl](https://github.com/GeForceLegend/vscode-glsl/tree/da57fa1415d5b77191ee8566f2b4b6cd9dbb3572/)\n| Pascal | file-extensions=\"dfm, dpk, dpr, fmx, lfm, lpr, p, pas\" | [master@textmate/pascal.tmbundle](https://github.com/textmate/pascal.tmbundle/tree/3b11b782368065e55acce0423f385722771d28b0/Syntaxes)\n| PlantUML \u003cimg src=\"plugin/syntaxes/plantuml/icon.png\" width=16/\u003e | file-extensions=\"iuml, plantuml, pu, puml, wsd\" | [master@qjebbs/vscode-plantuml](https://github.com/qjebbs/vscode-plantuml/tree/7bc1758ed73dc269f5721d78c6c6c01f461d7cb0/)\n| Pony | file-extensions=\"pony\" | [main@chalcolith/eohippus](https://github.com/chalcolith/eohippus/tree/de8031c34fbde4b124e4f0f34fa3fd84c4795bac/eohippus-vscode)\n| Prisma \u003cimg src=\"plugin/syntaxes/prisma/prisma.icon.png\" width=16/\u003e | file-extensions=\"prisma\" | [main@prisma/language-tools](https://github.com/prisma/language-tools/tree/f0ff8642a91efcd2a04b7c72cd521f7048d76cfe/packages/vscode)\n| Reason \u003cimg src=\"plugin/syntaxes/ocaml/icon.png\" width=16/\u003e | file-extensions=\"re, rei\" | [master@ocamllabs/vscode-ocaml-platform](https://github.com/ocamllabs/vscode-ocaml-platform/tree/bec1d19078008d296d986dca5b53e82a2041a353/)\n| Ring \u003cimg src=\"plugin/syntaxes/ring/ring.icon.png\" width=16/\u003e | file-extensions=\"rform, rh, ring\" | [master@ring-lang/ring](https://github.com/ring-lang/ring/tree/8e4e50d149ce5a3fe7211d702faf3792d2587558/tools/editors/vscode/extension)\n| Roc \u003cimg src=\"plugin/syntaxes/roc/roc.icon.png\" width=16/\u003e | file-extensions=\"roc\" | [main@ivan-demchenko/roc-vscode-unofficial](https://github.com/ivan-demchenko/roc-vscode-unofficial/tree/5913f7e83572b157df5115833f0d10bdfd773d9c/)\n| Starlark \u003cimg src=\"plugin/syntaxes/bazel/icon.png\" width=16/\u003e | file-extensions=\"BUILD, WORKSPACE, bazel, bzl, bzlmod, sky, star\"\u003cbr /\u003efile-names=\"BUILD, WORKSPACE\" | [master@bazelbuild/vscode-bazel](https://github.com/bazelbuild/vscode-bazel/tree/f311f41ec2081e1114e50d12c01cc3b673a702b0/)\n| Svelte \u003cimg src=\"plugin/syntaxes/svelte/icon.png\" width=16/\u003e | file-extensions=\"svelte\" | [master@sveltejs/language-tools](https://github.com/sveltejs/language-tools/tree/8c1166539b249e50af1a54b144ef52c2f2903e53/packages/svelte-vscode)\n| TOML Config File \u003cimg src=\"plugin/syntaxes/toml/icon.png\" width=16/\u003e | file-extensions=\"toml\"\u003cbr /\u003efile-names=\"Cargo.lock, Pipfile, pdm.lock\" | [master@juggernautjp/less-toml](https://github.com/juggernautjp/less-toml/tree/13eb891232e98c4a9c595bf8c657893c84edf3a9/) [[upstream]](https://github.com/textmate/toml.tmbundle/commit/e82b64c1e86396220786846201e9aa3f0a2d9ca2)\n| TSV \u003cimg src=\"plugin/syntaxes/csv/icon.png\" width=16/\u003e | file-extensions=\"tab, tsv\" | [master@mechatroner/vscode_rainbow_csv](https://github.com/mechatroner/vscode_rainbow_csv/tree/bb8f97177d6d9ccb3d1c03cc535bdd5320aa6462/)\n| Twig \u003cimg src=\"plugin/syntaxes/twig/icon.png\" width=16/\u003e | file-extensions=\"peb, twig\" | [main@rholdos/vscode-twig-language-support](https://github.com/rholdos/vscode-twig-language-support/tree/f1e9a1722c91d3f3b3c548386861fd01bfdbeb3b/)\n| Wing \u003cimg src=\"plugin/syntaxes/wing/wing.icon.png\" width=16/\u003e | file-extensions=\"w, wsim\" | [main@winglang/wing](https://github.com/winglang/wing/tree/8fb4c792ce202afb08b3aec9fc61f902d8c7efc6/packages/vscode-wing)\n| Zig \u003cimg src=\"plugin/syntaxes/zig/icon.png\" width=16/\u003e | file-extensions=\"zig, zon\" | [master@ziglang/vscode-zig](https://github.com/ziglang/vscode-zig/tree/38309f0b1dc0c1bdc4b23e78594302bf28ef43d1/)\n\n\u003c!-- END-GENERATED --\u003e\n\n\n## \u003ca id=\"building\"\u003e\u003c/a\u003eBuilding from Sources\n\nTo ensure reproducible builds this Maven project inherits from the [vegardit-maven-parent](https://github.com/vegardit/vegardit-maven-parent)\nproject which declares fixed versions and sensible default settings for all official Maven plug-ins.\n\nThe project also uses the [maven-toolchains-plugin](http://maven.apache.org/plugins/maven-toolchains-plugin/) which decouples the JDK that is\nused to execute Maven and it's plug-ins from the target JDK that is used for compilation and/or unit testing. This ensures full binary\ncompatibility of the compiled artifacts with the runtime library of the required target JDK.\n\nTo build the project follow these steps:\n\n1. Download and install a Java 17 SDK, e.g. from:\n   - https://adoptium.net/releases.html?variant=openjdk17\n   - https://www.azul.com/downloads/?version=java-17-lts\u0026architecture=x86-64-bit\u0026package=jdk\n\n1. Download and install the latest [Maven distribution](https://maven.apache.org/download.cgi).\n\n1. In your user home directory create the file `.m2/toolchains.xml` with the following content:\n\n   ```xml\n   \u003c?xml version=\"1.0\" encoding=\"UTF8\"?\u003e\n   \u003ctoolchains\u003e\n     \u003ctoolchain\u003e\n       \u003ctype\u003ejdk\u003c/type\u003e\n       \u003cprovides\u003e\n          \u003cversion\u003e17\u003c/version\u003e\n          \u003cvendor\u003edefault\u003c/vendor\u003e\n       \u003c/provides\u003e\n       \u003cconfiguration\u003e\n          \u003cjdkHome\u003e[PATH_TO_YOUR_JDK_17]\u003c/jdkHome\u003e\n       \u003c/configuration\u003e\n     \u003c/toolchain\u003e\n   \u003c/toolchains\u003e\n   ```\n\n   Set the `[PATH_TO_YOUR_JDK_17]` parameter accordingly.\n\n1. Checkout the code using one of the following methods:\n\n    - `git clone https://github.com/sebthom/extra-syntax-highlighting-eclipse-plugin`\n    - `svn co https://github.com/sebthom/extra-syntax-highlighting-eclipse-plugin extra-syntax-highlighting-eclipse-plugin\n\n1. Run `mvn clean verify` in the project root directory. This will execute compilation, unit-testing, integration-testing and\n   packaging of all artifacts.\n\n\n## \u003ca name=\"license\"\u003e\u003c/a\u003eLicense\n\nIf not otherwise specified (see below), files in this repository fall under the [Eclipse Public License 2.0](LICENSE.txt).\n\nIndividual files contain the following tag instead of the full license text:\n```\nSPDX-License-Identifier: EPL-2.0\n```\n\nThis enables machine processing of license information based on the SPDX License Identifiers that are available here: https://spdx.org/licenses/.\n\nAn exception is made for:\n1. files in readable text which contain their own license information, or\n2. files in a directory containing a separate `LICENSE.txt` file, or\n3. files where an accompanying file exists in the same directory with a `.LICENSE.txt` suffix added to the base-name of the original file.\n   For example `foobar.js` is may be accompanied by a `foobar.LICENSE.txt` license file.\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsebthom%2Fextra-syntax-highlighting-eclipse-plugin","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsebthom%2Fextra-syntax-highlighting-eclipse-plugin","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsebthom%2Fextra-syntax-highlighting-eclipse-plugin/lists"}