More calls. More assignments.
Find increments, array writes and calls split across lines, so you can trace how your C code behaves.
C navigation in purely safe Rust
Fast searches. Better C reading. An index that keeps up with your edits.
Find definitions, follow callers and trace assignments in Vim, Neovim or Emacs. Explore your C source, including its conditional branches.
C / Linux & Windows / x86-64
Install Ripscope
The install script, on Linux or Windows, installs Ripscope and sets up Vim, Neovim and Emacs in one step. So does one line in your plugin manager. Then open a C file in your project and search: the first search indexes it.
The packages and source builds install the executable alone.
Installation guidecurl -fsSL https://ripscope.com/install.sh | shChecksum-verified download into ~/.local/bin. Vim loads Ripscope by itself, and so does Neovim unless lazy.nvim manages its plugins. For Emacs and lazy.nvim, the script prints the one line to add. Linux x86-64, glibc 2.28 or newer.
irm https://ripscope.com/install.ps1 | iexChecksum-verified native x86-64 download, with Vim, Neovim and Emacs set up as on Linux. No WSL or separate Visual C++ runtime.
{ 'pederbe/ripscope', branch = 'release', build = ':RipscopeInstall' },Plug 'pederbe/ripscope', { 'branch': 'release', 'do': ':RipscopeInstall' }(use-package ripscope :vc (:url "https://github.com/pederbe/ripscope" :branch "release" :lisp-dir "contrib/emacs" :rev :newest) :config (ripscope-setup))Neovim with lazy.nvim, Vim with vim-plug and Emacs 30 or newer. Each line installs the plugin and, through its build step, the executable of the same release.
curl -fLO https://github.com/pederbe/ripscope/releases/download/v0.2.4/ripscope_0.2.4_amd64.deb &&
curl -fLO https://github.com/pederbe/ripscope/releases/download/v0.2.4/ripscope_0.2.4_amd64.deb.sha256 &&
sha256sum -c ripscope_0.2.4_amd64.deb.sha256 &&
sudo apt install ./ripscope_0.2.4_amd64.debPackage for Linux x86-64, with the executable alone: the Plugin manager tab has the line that sets up your editor. The matching .deb.sha256 sidecar verifies the download before installation. Package verification instructions.
curl -fLO https://github.com/pederbe/ripscope/releases/download/v0.2.4/ripscope-0.2.4-1.x86_64.rpm &&
curl -fLO https://github.com/pederbe/ripscope/releases/download/v0.2.4/ripscope-0.2.4-1.x86_64.rpm.sha256 &&
sha256sum -c ripscope-0.2.4-1.x86_64.rpm.sha256 &&
sudo dnf install ./ripscope-0.2.4-1.x86_64.rpmPackage for Linux x86-64, with the executable alone: the Plugin manager tab has the line that sets up your editor. The matching .rpm.sha256 sidecar verifies the download before installation. Package verification instructions.
cargo install --locked --git https://github.com/pederbe/ripscope.gitRequires stable Rust and a C compiler. On Windows, use the MSVC Build Tools and Windows SDK.
Built for your flow
Search thousands of C files in milliseconds. Jump to the code you need and keep moving.
Compared with cscope’s indexed search. See the Linux kernel benchmarks
Find what matters
Catch updates and calls that cscope misses. Follow each result back to the code.
SEE WHERE VALUES CHANGE
total_forks++;Find increments, array writes and calls split across lines, so you can trace how your C code behaves.
Explore how searches work and follow the reasoning behind Ripscope’s answers when you want to go deeper.
Ready for the next search
Keep exploring as your project changes. Ripscope updates your navigation results while keeping your editor connection open.
Keep your results freshHOW YOUR RESULTS STAY FRESH
Ripscope spots edits, additions and removals.
Changed source becomes fresh navigation results.
Your next search picks up the new results.
One-shot searchesEach search refreshes your index automatically.
Editor sessionsOpen a C file and search. The first search indexes the project, then save and search.
Ripscope’s C scanner and search engine are written in purely safe Rust.
Explore unfamiliar projects and follow code across conditional branches, straight from the source.
How Ripscope reads CStay where you think
Follow definitions, callers and assignments through Vim’s familiar cscope commands.
SET UP VIM →Search, jump and refresh the index with commands built for Neovim.
SET UP NEOVIM →Jump to definitions with M-. and find callers, right in the xref buffer.
SET UP EMACS →Prefer the terminal? Search from the command line or connect your own tools.
Make yourself at home in C