Editors

There are many editors that can be used to write software. Some of these are more on the lightweight side of the spectrum: for example Nano and others are more feature rich such as CLion which can be language specific.

Choosing an editor can take a long process of experimenting with many different ones.

Nano

https://www.nano-editor.org

Nano is a lightweight editor available on most systems. For a lot of people it is a default editor for their git setup and opens when writing a commit message:

  • CTRL + O: saves a file.
  • CTRL + X: closes Nano

Vim

www.vim.org

Vim is another lightweight editor that often is only used as a default git editor:

  • Esc + wq + Enter: saves and quits vim

Vim can also be a fully fledged editing environment for many languages and has a rich ecosystem of plugins.

Sublime

www.sublimetext.com

Sublime is a popular editor amongst users of Python but it is also very suitable to most languages with a rich ecosystem of plugins.

Note that it is free to use but after an initial period of time, it will suggest making a financial contribution to its development.

Atom

https://atom.io

Atom is an editor built by Github. It is fully open source and fully customizable. It again has a rich ecosystem of plugins and is appropriate for many languages.

VS Code

code.visualstudio.com

VS Code is another editor similar to Atom and Sublime. It is developed by Microsoft and open source.

It has many plugins and is a appropriate for many languages.

CLion

www.jetbrains.com/clion/

CLion is an example of what is called an Integrated Development Environment (IDE). This implies that it is a bit more feature rich than a text editor. CLion is specifically for C. It can be used to write code for other languages but that is not it's purpose.

PyCharm

www.jetbrains.com/pycharm/

PyCharm is similar to CLion in that it is a full IDE but it is aimed at python.