Home

Awesome

Reaper-nvim

fuzzy reaper

A neovim plugin for controlling the Reaper DAW from neovim.

Among other things, it makes it possible to execute all of Reaper's +3700 main actions remotely from neovim via Open Sound Control (osc).

This is useful when writing music in neovim or scripting for reaper in neovim.

Requirements

Install

To install using vim-plug

  1. Add this to your init.vim / .vimrc:
" Reaper
Plug 'madskjeldgaard/reaper-nvim'

" OSC
Plug 'davidgranstrom/osc.nvim'
  1. Open Vim and run the command :PlugInstall

Usage

To activate this plugin for all file types:

" Reaper
autocmd filetype * lua require'reaper-nvim'.setup()

To activate this plugin for some file types:

" Reaper
autocmd filetype supercollider,csound,lua lua require'reaper-nvim'.setup()

Commands

Fuzzy action execution

:ReaFuzz

Fuzzily choose between almost 4000 different Reaper Actions to execute from nvim. Uses either fzf or skim

Replay last action

replay actions

Everytime you execute and send an action to Reaper, it's id is saved in the global variable vim.g.reaper_last_action.

For convenience's sake, you can replay this latest action by executing: :ReaReplay

Transport controls

:ReaPlay

:ReaStop

:ReaRecord

:ReaGoToStart

:ReaGoToEnd

Editing

:ReaUndo

Repeating actions and scripts

These are useful when writing scripts for reaper.

:ReaRepeatLastAction

:ReaRepeatActionPriorToLast

:ReaRunLastScript

Fuzzy api search

:ReaAPI

This will open an api link in the browser defined in vim.g.reaper_browser_command (firefox by default)

Options

-- Which fuzzy finder to use with reaper-nvim: Can be either "fzf" or "skim"
vim.g.reaper_fuzzy_command = "fzf"

-- Target port of the Reaper session receiving these osc messages
vim.g.reaper_target_port = 1234

-- Target ip
vim.g.reaper_target_ip = "127.0.0.1"

-- Browser command used for opening links
vim.g.reaper_browser_command = "firefox"