A neovim plugin for modular Treesitter syntax highlighting injections.
  • Tree-sitter Query 71.5%
  • Lua 27.3%
  • Scheme 1.2%
Find a file
2026-09-30 03:41:30 -05:00
.forgejo/ISSUE_TEMPLATE docs: move the issue and pull request templates to .forgejo, leave GitHub a pointer 2026-09-30 01:40:47 -07:00
.github docs: move the issue and pull request templates to .forgejo, leave GitHub a pointer 2026-09-30 01:40:47 -07:00
examples style: format 2025-10-23 21:48:00 -05:00
ftplugin fix: treesitter parsing error 2025-10-06 19:12:30 -05:00
lua chore: add debugging toggle variable 2025-10-05 22:57:32 -05:00
plugin chore: add debugging toggle variable 2025-10-05 22:57:32 -05:00
queries add(yaml): injection first block scalar 2025-10-23 21:50:31 -05:00
LICENSE Initial commit 2025-10-05 21:31:17 -05:00
README.md docs: point contributors at Forgejo 2026-09-30 00:14:05 -07:00

Roids

Development happens at https://git.thenoetrevino.com/noe.trevino/roids.nvim. GitHub is a read-only mirror. Please open issues and pull requests there.

A neovim plugin for language injection

Installation

Lazy:

return {
  { "TheNoeTrevino/roids.nvim" },
}

Usage

Annotations:

Annotate your string variable declaration with language: {myLang}

# language: html
htmlContent = """
    <div class="container">
        <h1>Hello World</h1>
        <p>This is an HTML example</p>
    </div>
"""

Current Support

The plugin is in pre-alpha, so support is limited right now.

Java

Supported Scenarios:

  • Multiline string declarations
  • value param in Spring's #Query Screenshot 2025-10-05 222620

Python

Supported Scenarios

  • Multiline string declarations Screenshot 2025-10-05 230553
Future Plans

Future Plans

  • Add formatting into the injected language using the formatters mason has installed

  • Increase filetype support

  • Java

  • [-] Go

  • CSharp

  • Typescript/TSX

  • Javascript/JSX

  • Make use of treesitter's inherits to reuse queries across fts. Like ts and tsx/js and jsx

This plugin is inspired by the Jetbrains language injection.

Note

[-] means that a task is 'In Progress'