feat: improve editor tooling and fix warnings

Neovim improvements:
- Add tree-sitter text objects for functions, types, blocks
- Add folding support
- Enhanced REPL integration (toggle, send line/selection)
- New commands: LuxCheck, LuxReplToggle, LuxSend
- Better keybindings with localleader

VS Code extension:
- Full syntax highlighting with TextMate grammar
- LSP client integration
- 20+ snippets for common patterns
- Commands: run, format, check, REPL
- Keybindings and context menu

Fixes:
- Fix all cargo warnings with #[allow(dead_code)] annotations
- Clean up unused variables

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
2026-02-13 18:23:55 -05:00
parent ebc0bdb109
commit a6eb349d59
14 changed files with 1437 additions and 9 deletions

View File

@@ -3,6 +3,8 @@
//! This module compiles Lux programs to native machine code using Cranelift.
//! Currently supports a subset of the language for performance-critical code.
#![allow(dead_code)]
use crate::ast::{Expr, Program, Declaration, FunctionDecl, BinaryOp, UnaryOp, LiteralKind, Statement};
use cranelift_codegen::ir::{AbiParam, InstBuilder, Value, types};
use cranelift_codegen::ir::condcodes::IntCC;

View File

@@ -12,6 +12,7 @@ use crate::parser::Parser;
/// Formatter configuration
#[derive(Debug, Clone)]
#[allow(dead_code)]
pub struct FormatConfig {
/// Number of spaces for indentation
pub indent_size: usize,

View File

@@ -161,7 +161,7 @@ impl PackageManager {
println!("Installing {} dependencies...", manifest.dependencies.len());
println!();
for (name, dep) in &manifest.dependencies {
for (_name, dep) in &manifest.dependencies {
self.install_dependency(dep)?;
}
@@ -351,6 +351,7 @@ impl PackageManager {
}
/// Get the search paths for installed packages
#[allow(dead_code)]
pub fn get_package_paths(&self) -> Vec<PathBuf> {
let mut paths = vec![];