View Source GenLSP.Structures.MarkupContent (gen_lsp v0.10.0)

A MarkupContent literal represents a string value which content is interpreted base on its kind flag. Currently the protocol supports plaintext and markdown as markup kinds.

If the kind is markdown then the value can contain fenced code blocks like in GitHub issues. See https://help.github.com/articles/creating-and-highlighting-code-blocks/#syntax-highlighting

Here is an example how such a string can be constructed using JavaScript / TypeScript:

let markdown: MarkdownContent = {
 kind: MarkupKind.Markdown,
 value: [
   '# Header',
   'Some text',
   '```typescript',
   'someCode();',
   '```'
 ].join('
')
};

Please Note that clients might sanitize the return markdown. A client could decide to remove HTML from the markdown to avoid script execution.

Link to this section Summary

Functions

Fields

  • kind: The type of the Markup
  • value: The content itself

Link to this section Types

@type t() :: %GenLSP.Structures.MarkupContent{
  kind: GenLSP.Enumerations.MarkupKind.t(),
  value: String.t()
}

Link to this section Functions

Link to this function

%GenLSP.Structures.MarkupContent{}

View Source (struct)

fields

Fields

  • kind: The type of the Markup
  • value: The content itself