Volver al ranking

fannheyward/coc-rust-analyzer

TypeScript

rust-analyzer extension for coc.nvim

rustcoccoc-nvimrust-analyzercoc-extensions
Crecimiento de estrellas
Estrellas
1.2k
Forks
48
Crecimiento semanal
Issues
7
5001k
ago 2019nov 2021mar 2024jul 2026
Artefactosnpmnpm install coc-rust-analyzer
README

coc-rust-analyzer

GitHub Sponsors Patreon donate button PayPal donate button

rust-analyzer for Vim/Neovim, works as an extension with coc.nvim.

10

Install

:CocInstall coc-rust-analyzer

remove rust-analyzer config from coc-settings.json if you've set

Notes

It's recommended to add $CARGO_HOME to workspace.ignoredFolders to stop rust-analyzer runs cargo check on sysroot crates:

"workspace.ignoredFolders": [
  "$HOME",
  "$HOME/.cargo/**",
  "$HOME/.rustup/**"
],

Configurations

This extension is configured using a jsonc file. You can open this configuration file using the command :CocConfig, and it is typically located at $HOME/.config/nvim/coc-settings.json. You can get the configurations list from the package.json file of this extension.

Commands

You can use these commands by :CocCommand XYZ.

Command Description
rust-analyzer.analyzerStatus Show rust-analyzer status
rust-analyzer.debug List available runnables of current file and debug the selected one
rust-analyzer.expandMacro Expand macro recursively
rust-analyzer.explainError Explain the currently hovered error message
rust-analyzer.joinLines Join lines
rust-analyzer.matchingBrace Find matching brace
rust-analyzer.memoryUsage Memory Usage (Clears Database)
rust-analyzer.moveItemUp Move item up
rust-analyzer.moveItemDown Move item down
rust-analyzer.openDocs Open docs under cursor
rust-analyzer.parentModule Locate parent module
rust-analyzer.peekTests Peek related tests
rust-analyzer.reload Restart rust-analyzer server
rust-analyzer.reloadWorkspace Reload workspace
rust-analyzer.run List available runnables of current file and run the selected one
rust-analyzer.serverVersion Show current Rust Analyzer server version
rust-analyzer.ssr Structural Search Replace
rust-analyzer.viewSyntaxTree Show syntax tree
rust-analyzer.testCurrent Test Current
rust-analyzer.install Install latest rust-analyzer from GitHub release
rust-analyzer.upgrade Download latest rust-analyzer from GitHub release
rust-analyzer.viewHir View Hir
rust-analyzer.viewMir View Mir
rust-analyzer.viewFileText View File Text
rust-analyzer.viewCrateGraph View Crate Graph
rust-analyzer.viewFullCrateGraph View Crate Graph (Full)
rust-analyzer.shuffleCrateGraph Shuffle Crate Graph
rust-analyzer.runFlycheck Run flycheck
rust-analyzer.cancelFlycheck Cancel running flychecks
rust-analyzer.clearFlycheck Clear flycheck diagnostics
rust-analyzer.rebuildProcMacros Rebuild proc macros and build scripts
rust-analyzer.interpretFunction Interpret Function

Debugging with Vimspector

To debug Rust runnables with Vimspector, set the debug runtime in coc-settings.json:

{
  "rust-analyzer.debug.runtime": "vimspector"
}

Install Vimspector and the CodeLLDB adapter with :VimspectorInstall CodeLLDB. Then add a Vimspector configuration, either in the project root as .vimspector.json or in a global Vimspector configuration file:

{
  "$schema": "https://puremourning.github.io/vimspector/schema/vimspector.schema.json",
  "configurations": {
    "launch": {
      "adapter": "CodeLLDB",
      "configuration": {
        "request": "launch",
        "program": "${Executable}",
        "args": ["*${Args}"]
      }
    }
  }
}

The launch key must match rust-analyzer.debug.vimspector.configuration.name, which defaults to launch. :CocCommand rust-analyzer.debug passes Executable and Args to Vimspector for the selected runnable.

License

MIT


This extension is built with create-coc-extension

Repositorios relacionados
farion1231/cc-switch

A cross-platform desktop All-in-One assistant for Claude Code, Codex, OpenCode, OpenClaw, Grok Build & Hermes Agent. Only official website: ccswitch.io

Rustcrates.ioMIT Licenseai-toolsclaude-code
ccswitch.io
119.8k8k
rustdesk/rustdesk

An open-source remote desktop application designed for self-hosting, as an alternative to TeamViewer.

Rustcrates.ioGNU Affero General Public License v3.0remote-controlremote-desktop
rustdesk.com
118.6k18.1k
rust-lang/rust

Empowering everyone to build reliable and efficient software.

Rustcrates.ioApache License 2.0rustcompiler
rust-lang.org
114.8k15.4k
tauri-apps/tauri

Build smaller, faster, and more secure desktop and mobile applications with a web frontend.

Rustcrates.ioApache License 2.0rustwebview
tauri.app
109.3k3.8k
denoland/deno

A modern runtime for JavaScript and TypeScript.

Rustcrates.ioMIT Licensedenotypescript
deno.com
107.8k6.2k
oven-sh/bun

Incredibly fast JavaScript runtime, bundler, test runner, and package manager – all in one

Rustcrates.ioOtherbunbundler
bun.com
95k4.9k
unionlabs/union

The trust-minimized, zero-knowledge bridging protocol, designed for censorship resistance, extremely high security, and usage in decentralized finance.

Rustcrates.ioApache License 2.0blockchaincosmos
union.build
73.9k3.9k
rtk-ai/rtk

CLI proxy that reduces LLM token consumption by 60-90% on common dev commands. Single Rust binary, zero dependencies

Rustcrates.ioApache License 2.0agentic-codingai-coding
rtk-ai.app
72.4k4.5k
toeverything/AFFiNE

There can be more than Notion and Miro. AFFiNE(pronounced [ə‘fain]) is a next-gen knowledge base that brings planning, sorting and creating all together. Privacy first, open-source, customizable and ready to use.

TypeScriptnpmOthereditorcrdt
affine.pro
70.7k5.1k
openinterpreter/openinterpreter

A coding agent for open models like Kimi K3

Rustcrates.ioApache License 2.0coding-agentdeepseek
openinterpreter.com
67.1k5.8k
BurntSushi/ripgrep

ripgrep recursively searches directories for a regex pattern while respecting your gitignore

Rustcrates.ioThe Unlicenseripgreprecursively-search
66.4k2.7k
alacritty/alacritty

A cross-platform, OpenGL terminal emulator.

Rustcrates.ioApache License 2.0terminal-emulatorsopengl
alacritty.org
65k3.5k