<div align="center">

![Vimscode](https://git.cohabit.fr/bastien/VimsCode/raw/branch/master/pictures/vimscode.jpg)

</div>

## Table of Contents

- [Why VimsCode](#why-vimscode)
- [About](#about)
- [Quick Start](#quick-start)
- [Documentation](#documentation)
- [Update](#update)
- [Troubleshooting](#troubleshooting)

## Why VimsCode

### VimsCode, it's beautiful :

To write or edit computer code, program an arduino etc... we use IDE (integrated development environment)
Many very complete graphic software exist to do that like VScode from microsoft or Atom.

So why not use them ? 

**drawbacks :**

* They are resource intensive, lots of RAM (~1.3 GB, about 18,000 times more than the Apollo 11 mission that sent the first men to the moon :/ )
* They are quite difficult to debug because of the large abstraction layers that make them up
* They don't work without a graphical system (through ssh, on a server or a Raspberry Pi)
* It is sometimes difficult to make them do something simple if it was not planned by the developers
* Its frequent updates sometimes impose changes in working habits (new interfaces, new default configuration, new paths etc.)

So which solution? We suggest you use one of the historical command line text editors (vi, Vim) to make your own IDE :)

**Advantages :**

* Lightweight, ~15Kb which is 4.6 x less than Apollo 11 and 83000 times less than VSCODE!!!
* Configurable, you can configure everything in text files from already shared and popular configurations
* Stable, it only evolves without breaking the ergonomic continuity (always the same commands and shortcuts since 1991 for vim and 1976 for vi :) same for the configurations which remain valid since the beginning...)
* Usable through SSH on servers or very light computers (Raspberry Pi, etc.)
* Rock solid, crashes must exist, but I've never even heard of them

## About

VimsCode is an IDE with vim for beginner or expert :

* VimsCode use arduino-cli, idf-esp and platform.io-cli for remplace VScode only in terminal 
* Very easy to use 
* Very easy to install

![Example-picture](/pictures/image.png)

## Quick Start

```
git clone https://git.cohabit.fr/bastien/VimsCode.git
cd VimsCode && ./vimscode.sh -install
```

## Documentation

### Shortcuts VimsCode :

All VimsCode shortcuts are fully configurable in the .vimrc:

```
"Ctrl+l" Shows all VimsCode shortcuts
```

* The shortcut in visual mode allows you to search the internet for the selected word by pressing "g".
* You can use the mouse in VimsCode to change elements or others...
* To go back in the shortcut popup, you need to use the "backspace" key.


Finally, you can launch VimsCode with these aliases, or if you prefer, you can launch it with Vim, but you will not have the VimsCode interface triggered:
```
vimscode -e   "file"   # for ESP ide
vimscode -a   "file"   # for Arduino ide
vimscode -p   "file"   # for platform.io ide
vimscode               # help vimscode
```

If you want to change the VimsCode theme, you can change it with these lines:

```
colorscheme space-vim-dark
colorscheme cool
colorscheme elda
colorscheme space-vim-dark
colorscheme black_angus
```
And to see other themes: : [Theme](https://github.com/flazz/vim-colorschemes/tree/master/colors)


### More Doc :

[Documentation](https://projets.cohabit.fr/redmine/projects/accueil/wiki/Documentation_IDE_Vim)

## Update

To update VimsCode, simply type this command:

```
vimscode -maj
```