An editor, or source code editor, is a software used to edit (write, change) source code (text format).
Examples of editors
Emacs is actually an entire family of editors. We will look into on of them, GNU Emacs, run in two different ways:
- inside a terminal
- in a separate window (GUI)
You can basically do the same things in both different ways of running Emacs. We, the authors behind the Juneday material, are using Emacs in a terminal we can switch between emacs and bash with simple keyboard commands. This way we can use the same terminal for editing source code as well as compiling (etc).
Installation instructions and videos can be found here: Emacs
Installation instructions can be found Editor#Gedit.
Atom is supposedly an editor for developers. We've used it and find most of Atom pleasing to use and more importantly helps our students. But there are some issues with Atom which have made us question Atom in our courses:
- back-slash ('\n')
- defaults to windows line endings (when running on Windows)
- sometimes not possible to start Atom with a file as an argument
Installation instructions and videos can be found here: Atom
Intellij is really an IDE but you can still use it to edit text - and build and run separately in a terminal.
Here's a picture of IntelliJ running on Fedora GNU/linux.
Visual Studio Code / VSCodium
Visual Studio Code is really an IDE but you can still use it to edit text - and build and run separately in a terminal. Here's a picture of Visual Studio Code running on Fedora GNU/linux.
Note: there are some issues with Visual Studio Code that make us recommend using VSCodium instead.
Which editor to use
We have a page on various editors we recommend, check out Editor
An editor is not
... an IDE
Sometimes an editor is integrated with software used to compile and other non-editing procedures - we refer to these kind of editor as IDE and we will not use them in any of our course material intended for beginners. If you care to read about why we consider IDEs harmful to beginners, please read Why not IDE.
... a word processor
An editor focuses on the text and thus things like bold fonts or different font sizes is not something that is supported - programs to write documents with different fonts etc is called word processors (e g Libre Office and MS Office).
Where to go next
Next page is ITIC:Using_a_text_editor.