What Languages are Supported

In Visual Studio Code, we have support for many languages out of the box and more through language extensions available on the VS Code Marketplace.

Tip: You can also add support for your favorite language through TextMate colorizers. See Colorizers to learn how to integrate TextMate .tmLanguage syntax files into VS Code.


The richness of support varies across the different languages. The table below provides a brief description of Visual Studio Code's various languages features. Click on any linked item to get an overview of how to use VS Code in the context of that language.

Features Languages
Syntax coloring, bracket matching Batch, C++, Clojure, Coffee Script, Dockerfile, F#, Go, Jade, Java, HandleBars, Ini, Lua, Makefile, Objective-C, Perl, PowerShell, Python, R, Razor, Ruby, Rust, SQL, Visual Basic, XML
+ Snippets Groovy, Markdown, PHP, Swift
+ IntelliSense, linting, outline CSS, HTML, JavaScript, JSON, Less, Sass
+ Refactoring, find all references TypeScript, C#

Language Extensions

The community is providing VS Code language support for nearly any modern programming language. To see if there are extensions for the language you're interested in, simply bring up the extension gallery and filter on the language name. Type kb(workbench.action.showCommands), 'ext inst ' to bring up the extension gallery dropdown and then type the language name to filter the results.

filter go

You can also browse the VS Code Marketplace directly to look for supported languages.

Changing the Language for the Selected File

In VS Code, we default the language support for a file based on its filename extension. However at times you may wish to change language modes, to do this click on the language indicator - which is located on the right hand of the status bar. This will bring up the Command Palette for Select Language Mode.

Language Selector

Next Steps

Now you know that VS Code has support for the languages you care about. Read on...

  • Editing Evolved - Lint, IntelliSense, Lightbulbs, Peek and Goto Definition and more
  • Debugging - This is where VS Code really shines
  • Customization - themes, settings and keyboard bindings

Common Questions

Q: Can I contribute my own language service?

A: Not yet but soon. Help us prioritize this in our user voice site.

Q: Can I map additional file extensions to a language?

A: Currently this is not supported but it's on the way.