Introduction

I have been using vim for a long time, and I am very satisfied with it. Especially, I need to use it to edit files and test code on the server. vim has a step-function learning curve, and it is very difficult to master it. But once you master it, you will find that it is very powerful and efficient. Interestingly, it is my first editor and before that I only had coding experience in the matlab editor. My PhD advisor introduced me to vim and I have been using it since then. I still remember that during the meeting, he was teaching me how to use hjkl to move the cursor, and I was very confused at the time. I hadn’t use vim for a long time as the Atom editor was released and popular at 2015, then followed by VS Code. I kind of switched between them depending on the environments and the projects. More likely, due to the large amount of working on the server, I am used to use vim to edit files and abondoned the mouse as well as Atom and VS Code. Recently, I started to use neovim, which is a fork of vim. It has more plugin capabilities and is more suitable for modern development. I will introduce the editors I have used and the plugins I have used in vim and neovim for my own reference.