Skip to content
| Marketplace
Sign in
Visual Studio>Tools>PlantUml Language Service
PlantUml Language Service

PlantUml Language Service

Kieran Borsden

|
25,808 installs
| (4) | Free
Provides basic editor features for diagramming with PlantUml
Download

Description

Full Readme

PlantUML is an open-source tool allowing users to create UML diagrams from a plain text language.

Wikipedia

Please note that PlantUml is not a functional programming language but a static design DSL specifically for creating diagrams.

PlantUml Language Service provides editor features for the PlantUml Language to Visual Studio (2017 / 2019). These features are listed and elaborated on below.

In its default state the language service currently posts your markup to the PlantUml server for rendering in the same manner most PlantUml services provide. Client side rendering via GraphViz will be implemented in a future release.

Credit
  • PlantUml by arnaudroques
  • Built and adapted from TextMate starter project by Mads Kristensen
  • Modelled on Ruby Language Service
  • Inspired by Visual Studio Code plugin by qjebbs
  • Grammars by qjebbs

Features

  • Syntax highlighting
  • Auto complete
  • Preview diagrams
  • Language Reference
  • Preprocessor Friendly

 

Syntax Highlighting & File Recognition

Syntax elements recognised in the PlantUml grammar definition are highlighted accordingly for any of the following file types:

  • .plantuml
  • .plant
  • .uml
  • .iuml
  • .puml
  • .pu

syntax

These files are indicated in the Solution Explorer with the following icon: UmlModel

 

Auto Complete

autocomplete

Rudimentary auto completion against symbols in the same file is provided. Because no cross-file symbols can be loaded, the language service assumes some user knowledge of the basic PlantUml syntax.


 

Preview Diagrams

A context menu option has been added to the code window and solution explorer allowing for diagram generation of the selected/active PlantUml file.

Feedback

The preview window will render the diagram and provide feedback in a panel composed of 3 areas:

  • Top Panel ~ collapsible holds the generated diagram url
  • Canvas ~ the rendered diagram
  • Badge ~ the error state indicator

preview

Badges
OK warn error unknown
OK Warning Error Unknown
Urls

If valid, the generated diagram url will be printed to the Output window. For ease of re-use in your documentation it will be printed in both standard html and markdown formats.

 

Language Reference

A dockable Tool Window available under "View > Other Windows > PlantUml Language Reference" links to the latest PlantUml Reference Guide.

 

Preprocessor

The PlantUml Language Service respects all common preprocessor commands, and can use them even if they are nested.

!include

While !inlcude is usable within the language service, there are caveats:

  • makes use of files located inside the active solution directory
  • file to include should be specified [NAME].[EXTENSION]:

!include somefile.extension

If the file is not in the solution directory, or can otherwsie not be found or loaded, the diagram will render with warnings.

To avoid warnings, or to use files located elsewhere on your computer, a custom flag has been created: -P (provide the full path).

!include -p full/path/to/file

Embedded Macros

Several macros have been embedded for simplicity. They can be imported into your diagram using the !import command.

Please refer to the Full Readme on GitHub for more details.

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2025 Microsoft