Skip to content

Free, ultrafast Copilot alternative for Vim and Neovim

License

Notifications You must be signed in to change notification settings

zArubaru/codeium.vim

 
 

Repository files navigation

Codeium


Discord Twitter Follow License built with Codeium

Visual Studio JetBrains Open VSX Google Chrome

codeium.vim

Free, ultrafast Copilot alternative for Vim and Neovim

Codeium autocompletes your code with AI in all major IDEs. We launched this implementation of the Codeium plugin for Vim and Neovim to bring this modern coding superpower to more developers. Check out our playground if you want to quickly try out Codeium online.

Contributions are welcome! Feel free to submit pull requests and issues related to the plugin.


Example


🚀 Getting started

  1. Install Vim (at least 9.0.0185) or Neovim (at least 0.6)

  2. Install Exafunction/codeium.vim using your vim plugin manager of choice, or manually. See Installation Options below.

  3. Run :Codeium Auth to set up the plugin and start using Codeium.

You can run :help codeium for a full list of commands and configuration options, or see this guide for a quick tutorial on how to use Codeium.

🛠️ Configuration

For a full list of configuration options you can run :help codeium. A few of the most popular options are highlighted below.

⌨️ Keybindings

Codeium provides the following functions to control suggestions:

Action Function Default Binding
Clear current suggestion codeium#Clear() <C-]>
Next suggestion codeium#CycleCompletions(1) <M-]>
Previous suggestion codeium#CycleCompletions(-1) <M-[>
Insert suggestion codeium#Accept() <Tab>
Manually trigger suggestion codeium#Complete() <M-Bslash>

Codeium's default keybindings can be disabled by setting

let g:codeium_disable_bindings = 1

or in Neovim:

vim.g.codeium_disable_bindings = 1

If you'd like to just disable the <Tab> binding, you can alternatively use the g:codeium_no_map_tab option.

If you'd like to bind the actions above to different keys, this might look something like the following in Vim:

imap <script><silent><nowait><expr> <C-g> codeium#Accept()
imap