Microsoft has released a protocol that allows developers to easily add new programming language support for coding tools, in partnership with developer workspaces provider Codenvy and enterprise Linux distributor Red Hat.

Whereas traditional coding tools tend to support a single programming language, the Microsoft-led protocol aims to make sure the tools can handle whichever language developers work in.

The language server protocol lets developers code in different languages without having to switch editors or development environments.

Microsoft engineer Erich Gamma said the protocol came into existence after the company intergrated OmniSharp for C# and TypeScript servvers for its Visual Studio Code integrated development environment (IDE).

“Having done a language server integration twice, it became obvious that a common protocol is a win-win for both tool and language providers: in this way, any language provider can make their language support available so that it is easily consumable by any tool provider,” Gamma said.

The protocol allows developers to continue to use their favourite editors and environments and access shortcuts and intelligent programming tools such as code completion, syntax analysis and more, across different languages.

It is written in the Javascript Object Notation data interchange format, the software giant said. It is open source under the liberal MIT license and supported by the Visual Studio Code IDE as well as Codenvy's Eclipse Che.

Microsoft said its VS Code can talk to multiple language servers. OmniSharp, JSON, C++, xText, JavaFX and R developers have already committed to releasing servers for their languages as well as Java.

The language server protocol implementations can be found on the open source code repository Github. Microsoft also released a walk-through on how to implement a language server.