module Lapis::Docs::B_LAPIS_CLI_AND_TOOLCHAIN::H_IDE_AND_LSP

Overview

IDE Integration & Language Server (LSP)

Comprehensive guide to configuring modern code editors with rich Crystal syntax highlighting, hover documentation, auto-completion, and native radare2 debugging with lapis ide.

Executive Summary & Key Topics

Topic Method / Anchor Description
Supported Code Editors .topic_00_supported_editors One-click setup for VS Code, Cursor, Zed, and Neovim.
lapis ide: Automated Configuration .topic_01_ide_setup_command Generating optimal editor settings and debug launch profiles with a single command.
Crystalline LSP Capabilities .topic_02_crystalline_capabilities Contextual autocomplete, hover tooltips, go-to-definition, and inline diagnostics.

Related Guides & Source References

Defined in:

libgodot/docs/b_lapis_cli_and_toolchain/h_ide_and_lsp.cr

Class Method Summary

Class Method Detail

def self.topic_00_supported_editors : Nil #

Supported Code Editors: One-click setup for VS Code, Cursor, Zed, and Neovim.

Key Topics & Information

  • Visual Studio Code (.vscode/settings.json, launch.json, tasks.json)
  • Cursor (AI-assisted editor with VS Code compatibility)
  • Zed (.zed/settings.json with native Crystalline LSP)
  • Neovim (nvim-lspconfig configuration with stdio framing)

def self.topic_01_ide_setup_command : Nil #

lapis ide: Automated Configuration: Generating optimal editor settings and debug launch profiles with a single command.

Run lapis ide in your project root:

lapis ide [editor] [options]

Supported Editor Arguments:

  • lapis ide vscode: Configures VS Code / Cursor.
  • lapis ide zed: Configures Zed editor.
  • lapis ide neovim: Generates Lua snippet for nvim-lspconfig.
  • lapis ide --all: Configures all supported IDEs simultaneously.

What is Configured Automatically:

  1. Sets Crystalline executable path in editor settings.
  2. Configures debug profiles in .vscode/launch.json:
  3. Adds build tasks in .vscode/tasks.json (lapis build game, lapis run).

def self.topic_02_crystalline_capabilities : Nil #

Crystalline LSP Capabilities: Contextual autocomplete, hover tooltips, go-to-definition, and inline diagnostics.

With Crystalline LSP enabled:

  • Contextual Autocomplete: Autocomplete proposals for Godot engine classes (Node2D, CharacterBody3D), methods, and custom Crystal nodes.
  • Hover Documentation: Hovering over any Godot method displays the official Godot engine docstring and Crystal type signature.
  • Go to Definition: Jump directly from a method call to its definition in Crystal or engine bindings.
  • Inline Compiler Diagnostics: Red squiggly lines appear under syntax errors and type mismatches in real-time as you type.