Skip to content

[plugins] 5 complementary plugins: Python venv selection, typo LSP, git permalinks, completion menu highlighting, Julia unicode input #319

Description

@stanfish06

Five plugin suggestions, cross-checked against the existing setup and prior [plugins]-style issues (including #312) for overlap — none of these duplicate an already-installed plugin or an already-proposed one.

1. linux-cultist/venv-selector.nvim

lua/config/lsp.lua enables both pyright and pyrefly, but nothing in the config addresses which Python interpreter/virtualenv those servers should point at. venv-selector.nvim is an fzf-lua-compatible picker for selecting the active venv/conda env and repointing the LSP servers at its interpreter. This is a distinct gap from #312's crates.nvim/package-info.nvim (those track dependency versions for Rust/JS, not interpreter selection for Python) — no overlap.

2. tekumara/typos-lsp

A low-false-positive spell/typo checker for source code (identifiers, comments, strings), exposed as a real LSP server — it now ships as typos_lsp.lua in nvim-lspconfig itself, so it installs the same way as every other server already configured in lsp.lua (just another vim.lsp.config/vim.lsp.enable pair). Distinct from the existing spelloptions=camel prose-spellcheck toggle idea (#178, which is about natural-language spelling in markdown/obsidian) and unrelated to nvim-lint's ruff/shellcheck linting.

3. linrongbin16/gitlinker.nvim

Generates a shareable permalink (GitHub/GitLab, with SSH-alias remote resolution) to the exact line or visual range under the cursor. gitsigns.nvim (hunk staging/blame), fugitive.vim (status buffer), and diffview.nvim (diff review) are all already installed, but none of them surface a "copy a link to this line" action — this fills a specific, narrow gap alongside them without duplicating any of their jobs.

4. xzbdmw/colorful-menu.nvim

A pure rendering layer for blink.cmp v2's completion menu: renders items with real treesitter-based syntax highlighting (types, punctuation, signatures) instead of plain text labels. It adds no new completion source or engine — just a display upgrade on top of the lsp/path/snippets/buffer sources plugin_config.lua already configures for blink.cmp.

5. JuliaEditorSupport/julia-vim

lua/config/treesitter.lua installs a julia parser, but there's no Julia LSP configured and no LaTeX-style unicode input (\alpha<Tab>α), which is essential for idiomatic Julia code and isn't provided by anything else in the stack (blink.cmp's snippet source doesn't do digraph-style unicode expansion). This fills the single biggest functional gap for that filetype without requiring a full LSP setup.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions