benbrastmckie/nvim Configuration

repository·master·Indexed 19 days ago

https://github.com/benbrastmckie/nvim

A feature-rich Neovim configuration optimized for academic writing (LaTeX, Markdown, Jupyter) and NixOS management, featuring deep AI integration. It includes specialized support for the Lean theorem prover, academic Markdown (Lectic), and Python development, along with custom file type detection for .ipynb files and a checkpoint-based execution model for Claude Code commands.

Tokens
371.2K
Snippets
960
Records
1.6K
Agent score
65%

What's inside benbrastmckie-nvim

  1. Overview of LaTeX Context files

    master

    The latex/context/project/ directory provides structured context files designed to assist in LaTeX document development. It is organized into three functional areas:

    • patterns/: Contains templates and structural definitions for document organization and mathematical environments.
    • standards/: Contains the style guide and notation conventions to ensure consistency.
    • tools/: Contains technical references for the build toolchain and compilation processes.
  2. Overview of the Deck Library

    master

    The Deck Library is a collection of pre-built Slidev components designed for agent-driven pitch deck construction. Instead of generating slides from scratch, agents assemble presentations by selecting and combining building blocks from the library.

    Key Concepts

    • Agent Composition: Agents query the library to find appropriate items based on category, deck mode, slide type, or tags.
    • Indexing: All library items are indexed in index.json for easy discovery.
    • Seed-and-Runtime Pattern: The files in this library serve as the canonical "seed" copies. When the /deck command is used to build a presentation, the selected items are copied from this library into a separate runtime project directory. This allows the library to remain unchanged while the runtime project evolves.
  3. Overview of Himalaya feature modules

    master

    The Himalaya plugin uses a modular architecture where specialized capabilities are implemented as independent modules in the features/ directory. These modules are designed to be integrated into the core workflow using consistent patterns for configuration, state management, and command execution.

    Key modules include:

    • Multi-Account Management (features/accounts.lua): Unified inbox and cross-account operations.
    • Email Attachments (features/attachments.lua): MIME-type based viewing and local caching.
    • Contact Management (features/contacts.lua): Address autocomplete and automatic contact extraction.
    • Advanced Email Headers (features/headers.lua): Custom header management and RFC validation.
    • Image Display (features/images.lua): Terminal-based image viewing (Kitty, iTerm2, Sixel, etc.).
    • Alternative Views (features/views.lua): Interface wrappers for different viewing modes.
  4. Overview of Typst Context directory

    master

    The Typst Context directory provides structured resources for developing documents using Typst. It is organized into three main functional areas:

    • patterns/: Contains reusable logic and structures such as theorem environments, cross-references, and diagrams.
    • standards/: Defines the style guide and notation conventions to ensure document consistency.
    • tools/: Provides guides for the compilation and build processes.
  5. Overview of the Grant Writing Domain extension

    master

    The Grant Writing extension provides structured support for the end-to-end lifecycle of research grant proposal development. It is designed to assist with funder research, narrative drafting, budget planning, and compliance verification.

    Key Capabilities:

    • Funder Research: Analyzing priorities, eligibility, and application formats.
    • Proposal Drafting: Developing narrative sections using specialized templates.
    • Budget Development: Creating line-item budgets paired with justification patterns.
    • Review and Submission: Using checklists to ensure compliance and completeness.
  6. Overview of Text Format Plugins

    master

    The text/ directory provides specialized support for academic writing, mathematical notation, and technical documentation. The core modules include:

    Document Formats

    • vimtex.lua: Comprehensive LaTeX editing and compilation support.
    • markdown-preview.lua: Live Markdown preview and export capabilities.
    • jupyter/: Jupyter notebook editing and execution.

    Programming Languages

    • lean.lua: Lean theorem prover integration and mathematical notation.
  7. Overview of the Email Extension

    master

    The Email Extension provides an AI-assisted, safe, and auditable way to triage mailboxes (supporting Gmail and Logos/Protonmail-Bridge).

    Core Capabilities:

    • Read a census of senders and folders.
    • Classify messages into buckets: propose-archive, propose-delete, keep, or unsure.
    • Identify unsubscribe candidates.
    • Execute approved actions (archive, delete, unsubscribe) only after human review and manifest confirmation.

    Safety Model: Agents do not interact with himalaya, notmuch, or msmtp directly. Instead, they must use five specific nix-built wrapper binaries. Mutations are protected by a two-layer enforcement system: a mail-guard.sh PreToolUse hook and hash-verified wrapper binaries.

  8. Overview of LSP Configuration

    master

    The LSP (Language Server Protocol) configuration provides intelligent code editing features including code completion, syntax highlighting, error detection, go-to-definition, find references, formatting, linting, and symbol search. It is composed of three core modules:

    • blink-cmp.lua: The primary high-performance completion engine.
    • lspconfig.lua: The base configuration for LSP servers using nvim-lspconfig.
    • mason.lua: Manages the installation and updates of LSP servers, formatters, and linters via mason.nvim.
  9. Overview of AI Plugins in Neotex

    master

    The ai/ directory provides a centralized configuration for AI-powered development tools within the Neovim setup. It integrates multiple AI assistants, code generation tools, and intelligent editing capabilities through a modular architecture.

    Core Modules

    • init.lua: The main entry point that loads and validates all AI plugin specifications for lazy.nvim.
    • avante.lua: Configures yetone/avante.nvim for multi-provider support (Claude, GPT, Gemini) and MCP-Hub integration.
    • claudecode.lua: A wrapper for greggh/claude-code.nvim managing terminal behavior and file refresh detection.
    • mcp-hub.lua: Configures mcp-hub for tool communication and cross-platform compatibility.
    • lectic.lua: Configures gleachkr/lectic for markdown and .lec file management.
    • opencode.lua: Configures NickvanDyke/opencode.nvim for an embedded TUI experience with context placeholders.

    Key Features

    • Multi-Provider Support: Use Claude, GPT, or Gemini via Avante.
    • Visual Selection Prompting: Send selected code to Claude using <leader>ac.
    • Contextual Awareness: Use placeholders like @buffer or @diagnostics to provide granular context to AI prompts.
    • Session Management: Persistent, context-aware AI conversation states.