Some checks failed
		
		
	
	Detach Plugins / check (FlyGrep.vim) (push) Has been cancelled
				
			Detach Plugins / check (GitHub.vim) (push) Has been cancelled
				
			Detach Plugins / check (JavaUnit.vim) (push) Has been cancelled
				
			Detach Plugins / check (SourceCounter.vim) (push) Has been cancelled
				
			Detach Plugins / check (cpicker.nvim) (push) Has been cancelled
				
			Detach Plugins / check (dein-ui.vim) (push) Has been cancelled
				
			Detach Plugins / check (git.vim) (push) Has been cancelled
				
			Detach Plugins / check (iedit.vim) (push) Has been cancelled
				
			Detach Plugins / check (scrollbar.vim) (push) Has been cancelled
				
			Detach Plugins / check (vim-chat) (push) Has been cancelled
				
			Detach Plugins / check (vim-cheat) (push) Has been cancelled
				
			Detach Plugins / check (vim-todo) (push) Has been cancelled
				
			Detach Plugins / check (xmake.vim) (push) Has been cancelled
				
			test / Linux (nvim, nightly) (push) Has been cancelled
				
			test / Linux (nvim, v0.3.8) (push) Has been cancelled
				
			test / Linux (nvim, v0.4.0) (push) Has been cancelled
				
			test / Linux (nvim, v0.4.2) (push) Has been cancelled
				
			test / Linux (nvim, v0.4.3) (push) Has been cancelled
				
			test / Linux (nvim, v0.4.4) (push) Has been cancelled
				
			test / Linux (nvim, v0.5.0) (push) Has been cancelled
				
			test / Linux (nvim, v0.5.1) (push) Has been cancelled
				
			test / Linux (nvim, v0.6.0) (push) Has been cancelled
				
			test / Linux (nvim, v0.6.1) (push) Has been cancelled
				
			test / Linux (nvim, v0.7.0) (push) Has been cancelled
				
			test / Linux (nvim, v0.7.2) (push) Has been cancelled
				
			test / Linux (nvim, v0.8.0) (push) Has been cancelled
				
			test / Linux (nvim, v0.8.1) (push) Has been cancelled
				
			test / Linux (nvim, v0.8.2) (push) Has been cancelled
				
			test / Linux (nvim, v0.8.3) (push) Has been cancelled
				
			test / Linux (nvim, v0.9.0) (push) Has been cancelled
				
			test / Linux (nvim, v0.9.1) (push) Has been cancelled
				
			test / Linux (true, vim, v7.4.052) (push) Has been cancelled
				
			test / Linux (true, vim, v7.4.1689) (push) Has been cancelled
				
			test / Linux (true, vim, v7.4.629) (push) Has been cancelled
				
			test / Linux (true, vim, v8.0.0027) (push) Has been cancelled
				
			test / Linux (true, vim, v8.0.0183) (push) Has been cancelled
				
			test / Linux (vim, nightly) (push) Has been cancelled
				
			test / Linux (vim, v8.0.0184) (push) Has been cancelled
				
			test / Linux (vim, v8.0.1453) (push) Has been cancelled
				
			test / Linux (vim, v8.1.2269) (push) Has been cancelled
				
			test / Linux (vim, v8.2.2434) (push) Has been cancelled
				
			test / Linux (vim, v8.2.3995) (push) Has been cancelled
				
			test / Windows (nvim, nightly) (push) Has been cancelled
				
			test / Windows (nvim, v0.3.8) (push) Has been cancelled
				
			test / Windows (nvim, v0.4.2) (push) Has been cancelled
				
			test / Windows (nvim, v0.4.3) (push) Has been cancelled
				
			test / Windows (nvim, v0.4.4) (push) Has been cancelled
				
			test / Windows (nvim, v0.5.0) (push) Has been cancelled
				
			test / Windows (nvim, v0.5.1) (push) Has been cancelled
				
			test / Windows (nvim, v0.6.0) (push) Has been cancelled
				
			test / Windows (nvim, v0.6.1) (push) Has been cancelled
				
			test / Windows (nvim, v0.7.0) (push) Has been cancelled
				
			test / Windows (nvim, v0.7.2) (push) Has been cancelled
				
			test / Windows (nvim, v0.8.0) (push) Has been cancelled
				
			test / Windows (nvim, v0.8.1) (push) Has been cancelled
				
			test / Windows (nvim, v0.8.2) (push) Has been cancelled
				
			test / Windows (nvim, v0.8.3) (push) Has been cancelled
				
			test / Windows (nvim, v0.9.0) (push) Has been cancelled
				
			test / Windows (nvim, v0.9.1) (push) Has been cancelled
				
			test / Windows (vim, nightly) (push) Has been cancelled
				
			test / Windows (vim, v7.4.1185) (push) Has been cancelled
				
			test / Windows (vim, v7.4.1689) (push) Has been cancelled
				
			test / Windows (vim, v8.0.0027) (push) Has been cancelled
				
			test / Windows (vim, v8.0.1453) (push) Has been cancelled
				
			test / Windows (vim, v8.1.2269) (push) Has been cancelled
				
			test / Windows (vim, v8.2.2434) (push) Has been cancelled
				
			test / Windows (vim, v8.2.3995) (push) Has been cancelled
				
			docker / docker (push) Has been cancelled
				
			mirror / check (coding) (push) Has been cancelled
				
			mirror / check (gitee) (push) Has been cancelled
				
			mirror / check (gitlab) (push) Has been cancelled
				
			
		
			
				
	
	
		
			119 lines
		
	
	
		
			3.8 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			119 lines
		
	
	
		
			3.8 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
---
 | 
						|
title: "Use Vim as IDE"
 | 
						|
categories: [blog]
 | 
						|
description: "A general guide for using SpaceVim as general IDE"
 | 
						|
type: article
 | 
						|
comments: true
 | 
						|
commentsID: "Use Vim as IDE"
 | 
						|
---
 | 
						|
 | 
						|
# [Blogs](../blog/) >> Use Vim as IDE
 | 
						|
 | 
						|
This is a general guide for using SpaceVim as IDE. including following sections:
 | 
						|
 | 
						|
<!-- vim-markdown-toc GFM -->
 | 
						|
 | 
						|
- [Installation](#installation)
 | 
						|
- [Key binding guide](#key-binding-guide)
 | 
						|
- [Default UI](#default-ui)
 | 
						|
- [project manager](#project-manager)
 | 
						|
- [Fuzzy finder](#fuzzy-finder)
 | 
						|
- [Git integration](#git-integration)
 | 
						|
- [Files and Windows](#files-and-windows)
 | 
						|
- [Search and replace](#search-and-replace)
 | 
						|
- [Language support](#language-support)
 | 
						|
 | 
						|
<!-- vim-markdown-toc -->
 | 
						|
 | 
						|
### Installation
 | 
						|
 | 
						|
SpaceVim is a Vim configuration, so you need to install vim or neovim,
 | 
						|
to enable `+python3` and `+python` support for neovim, you need to install `pynvim`:
 | 
						|
 | 
						|
```
 | 
						|
pip install --user pynvim
 | 
						|
pip3 install --user pynvim
 | 
						|
```
 | 
						|
 | 
						|
following the [quick start guide](../quick-start-guide/) to install SpaceVim,
 | 
						|
 | 
						|
### Key binding guide
 | 
						|
 | 
						|
All of the key bindings have been included in mapping guide. If you forgot the next key,
 | 
						|
a mapping guide will be displayed, all the keys and description are shown in the mapping guide window.
 | 
						|
 | 
						|

 | 
						|
 | 
						|
for more info, please checkout the article about mapping guide: [Mnemonic key bindings navigation](../mnemonic-key-bindings-navigation/)
 | 
						|
 | 
						|
### Default UI
 | 
						|
 | 
						|

 | 
						|
 | 
						|
The welcome screen will show the recent files of current project.
 | 
						|
The tabline displays all opened buffers or tabs. The filetree is opened on the left,
 | 
						|
and the key binding of filetree is `<F3>`. Tagbar's key binding is `<F2>`, it will show all tags in current file.
 | 
						|
 | 
						|
### project manager
 | 
						|
 | 
						|
SpaceVim detect the project root based on the `project_rooter_patterns` option.
 | 
						|
This is a list of patterns of filename or directory.
 | 
						|
the default value is `['.git/', '_darcs/', '.hg/', '.bzr/', '.svn/']`.
 | 
						|
read the [documentation](../documentation/#managing-projects) for more info.
 | 
						|
 | 
						|
SpaceVim will change switch to project root automatically based on `project_rooter_patterns` option.
 | 
						|
By default it will find outermost directory by default, to find nearest directory,
 | 
						|
you need to change `project_rooter_outermost` to `false`.
 | 
						|
 | 
						|
```toml
 | 
						|
[options]
 | 
						|
    project_rooter_outermost = false
 | 
						|
```
 | 
						|
 | 
						|
If you want to list all recent opened project, you need to load a fuzzy finder layer.
 | 
						|
for example `telescope` layer, the the key binding `SPC p p` is available for you.
 | 
						|
 | 
						|

 | 
						|
 | 
						|
### Fuzzy finder
 | 
						|
 | 
						|
SpaceVim provides 5 fuzzy finder layer, they are unite, denite, fzf, leaderf and ctrlp.
 | 
						|
To use fuzzy finder feature, you need to enable a
 | 
						|
fuzzy finder layer. for example enable denite layer:
 | 
						|
 | 
						|
```toml
 | 
						|
[[layers]]
 | 
						|
    name = "denite"
 | 
						|
```
 | 
						|
 | 
						|
### Git integration
 | 
						|
 | 
						|
The `git` layer and `VersionControl` layer provide Version control integration for SpaceVim.
 | 
						|
These layers are not loaded by default. To use these features, you need to enable these layers
 | 
						|
in your configuration file.
 | 
						|
 | 
						|
```toml
 | 
						|
[[layers]]
 | 
						|
    name = 'git'
 | 
						|
[[layers]]
 | 
						|
    name = 'VersionControl'
 | 
						|
```
 | 
						|
 | 
						|
### Files and Windows
 | 
						|
 | 
						|
The windows ID will be shown on the statusline, and users can use `SPC + number` to jump to specific windows,
 | 
						|
the buffer index or tabpage index will be shown on the tabline.
 | 
						|
To jump to specific tab, you can use `Leader + number` the default leader in SpaceVim is `\`.
 | 
						|
 | 
						|
### Search and replace
 | 
						|
 | 
						|
With the flygrep, you can search text in whole project on the fly. When the results are displayed
 | 
						|
on flygrep windows, you can also use `Alt-r` to start iedit mode based on the input of flygrep
 | 
						|
promote.
 | 
						|
 | 
						|
 | 
						|
### Language support
 | 
						|
 | 
						|
By default, SpaceVim does not load any language layer, please checkout the [available layers](../layers/) page.
 | 
						|
 |