Skip to content
This repository has been archived by the owner on Mar 24, 2021. It is now read-only.

Getting Started

LER0ever edited this page May 11, 2018 · 3 revisions

Getting Started

EverVim User Guide

Installation

If you have not yet completed the installation process, please refer to the following links to get instructions for your platform:

Introduction

For users, there are several types of customization you can do to improve your own experience with EverVim:

  • ~/.EverVim.vimrc: Global User Configuration
  • $PROJECT_ROOT/.EverVim.project: Per-project User Configuration
  • ~/.EverVim.bundles: Extra plugins to get loaded in EverVim

For an example of how I use .EverVim.vimrc please see Example Configuration

Preconfigured Startup Screen

EverVim by default loads a fancy startup screen that shows the following information:

  • System Information (Kernel, OS Variant)
  • Vim Information (Vim/Neovim, Version, Extra Flags, e.g. +Lua)
  • Color theme and airline theme (by default it's Dracula and Dracula)
  • EverVim Information (Last update time, Leader binding)
  • Most recently used files in current folder and in all folders
  • Custom commands shortcuts (EverVim update, Terminal support)

Despite its fanciness, it has a significant impact on the initial loadup speed, on a Skylake i5 CPU, it adds up to 200ms overhead on Vim's boot up time.

Auto-completion

EverVim offers several options for code completion. They are available as Bundles.

To enable an auto-completion method, simply add that name to g:evervim_bundle_groups, after that, restart EverVim and run the plugin update process.

A code snippet manager is paired with completer in EverVim, that means you don't need to worry about snippets as the one that fit most is automatically selected.

Available Code Completer + Snippet Manager:

  • YouCompleteMe + UltiSnips (Default on Linux & macOS)
  • NeoComplete + NeoSnippets (Default on Windows)
  • Deoplete + UltiSnips

Syntax Checker

EverVim by default ships with ALE, but Syntastic is also just one line of config away.

ALE currently offers a more responsive linting (thanks to Neovim/Vim8 async support), while still lacking some compatibility with a few famous plugins (like YouCompleteMe).

Syntastic, if you don't mind wait for several millisecond after hitting save, works much better with existing completion/checking/formating plugins, and most of language plugins offers syntastic integration.

If you don't care about asynchronous or found ALE problematic while coding, you can switch to syntastic by adding the following line:

let g:evervim_use_syntastic = 1

By the way, most of EverVim's options are checked using if exists('g:something'), so it will be activated once you set that variable to any value (even 0!).

This document is a work in progress.