Skip to content

Speedkore/vscode-elixir

 
 

Repository files navigation

Elixir Support for Visual Studio Code

Download Download Gitter Build Status

Read the CHANGELOG to see what has changed in this extension over time.

This extension adds rich elixir language support to VS Code including:

  • Syntax Coloring
  • Snippets
  • Intellisense

Features

Autocomplete

example

Problems

problems

Theme used in the examples: 'Atom One Dark'

Using

Make sure you have installed elixir with all its dependencies correctly and make sure it's in your path. You can check this by typing elixir --version into a terminal.

There currently is no option to change the path of the elixir executable. If you feel like there is a need for this, feel free to open up a pull request.

Autocomplete

Autocomplete/Intellisense is implemented using the wonderful ElixirSense project. For the auto complete to work properly, you will have to recompile your source code from time to time (using mix compile) for it to pick up the latest changes to your source code.

If your are having issues with the new implmentation you can switch back to the old one (alchemist server) by setting the property elixir.useElixirSense to false

Problem Reporting

To get compile warning / errors and test failures in your problem view, add the following to your .vscode/tasks.json:

{
  "version": "0.1.0",
  "command": "mix",
  "isShellCommand": true,
  "showOutput": "always",
  "suppressTaskName": true,
  "tasks": [
    {
      "taskName": "build",
      "args": [
        "compile"
      ],
      "problemMatcher": [
        "$mixCompileError",
        "$mixCompileWarning"
      ],
      "isBuildCommand": true
    },
    {
      "taskName": "test",
      "args": [
        "test"
      ],
      "problemMatcher": [
        "$mixCompileError",
        "$mixCompileWarning",
        "$mixTestFailure"
      ],
      "isTestCommand": true
    }
  ]
}

See https://go.microsoft.com/fwlink/?LinkId=733558 for the documentation about the tasks.json format

Emmet completions

To get Emmet support in html.eex files add the following to your user settings (Ctrl + ,):

"emmet.includeLanguages": {"HTML (Eex)": "html"}

Contributors

These wonderful people have so far contributed to this extension. Feel free to add your name here:

(This list is in no particular order.)

Packages

No packages published

Languages

  • Elixir 61.2%
  • TypeScript 38.2%
  • Makefile 0.6%