From 315799cd43bf365f382cb6e4ba24d3432861f366 Mon Sep 17 00:00:00 2001 From: omentic Date: Wed, 1 May 2024 23:55:51 +0000 Subject: deploy: cd15f3d346196db5c0c7623b6c7cafcf350119ad --- master/guides/adding_languages.html | 289 ------------------------------------ 1 file changed, 289 deletions(-) delete mode 100644 master/guides/adding_languages.html (limited to 'master/guides/adding_languages.html') diff --git a/master/guides/adding_languages.html b/master/guides/adding_languages.html deleted file mode 100644 index 13781aba..00000000 --- a/master/guides/adding_languages.html +++ /dev/null @@ -1,289 +0,0 @@ - - - - - - Adding languages - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - - - - - - - - - - - - - - - - -
- -
- - - - - - - - -
-
-

Adding new languages to Helix

-

In order to add a new language to Helix, you will need to follow the steps -below.

-

Language configuration

-
    -
  1. Add a new [[language]] entry in the languages.toml file and provide the -necessary configuration for the new language. For more information on -language configuration, refer to the -language configuration section of the documentation. -A new language server can be added by extending the [language-server] table in the same file.
  2. -
  3. If you are adding a new language or updating an existing language server -configuration, run the command cargo xtask docgen to update the -Language Support documentation.
  4. -
-
-

💡 If you are adding a new Language Server configuration, make sure to update -the -Language Server Wiki -with the installation instructions.

-
-

Grammar configuration

-
    -
  1. If a tree-sitter grammar is available for the new language, add a new -[[grammar]] entry to the languages.toml file.
  2. -
  3. If you are testing the grammar locally, you can use the source.path key -with an absolute path to the grammar. However, before submitting a pull -request, make sure to switch to using source.git.
  4. -
-

Queries

-
    -
  1. In order to provide syntax highlighting and indentation for the new language, -you will need to add queries.
  2. -
  3. Create a new directory for the language with the path -runtime/queries/<name>/.
  4. -
  5. Refer to the -tree-sitter website -for more information on writing queries.
  6. -
  7. A list of highlight captures can be found on the themes page.
  8. -
-
-

💡 In Helix, the first matching query takes precedence when evaluating -queries, which is different from other editors such as Neovim where the last -matching query supersedes the ones before it. See -this issue -for an example.

-
-

Common issues

-
    -
  • If you encounter errors when running Helix after switching branches, you may -need to update the tree-sitter grammars. Run the command hx --grammar fetch -to fetch the grammars and hx --grammar build to build any out-of-date -grammars.
  • -
  • If a parser is causing a segfault, or you want to remove it, make sure to -remove the compiled parser located at runtime/grammars/<name>.so.
  • -
  • If you are attempting to add queries and Helix is unable to locate them, ensure that the environment variable HELIX_RUNTIME is set to the location of the runtime folder you're developing in.
  • -
- -
- - -
-
- - - -
- - - - - - - - - - - - - - - - - - -
- - -- cgit v1.2.3-70-g09d2