Linux Mastery
The Human Knowledge Project
Appendix B — Linux Editing Tools
Purpose of This Appendix
Throughout Linux Mastery you have used text editors to create files, edit configuration settings, write shell scripts, and prepare documents.
Linux offers a wide variety of editors, each designed for different workflows.
This appendix introduces several of the most common editors and explains when each is most appropriate.
Choosing an Editor
No single editor is "best."
Instead, Linux users typically choose an editor based on:
- the task
- the working environment
- personal preference
- available system resources
Many experienced users become comfortable with several editors rather than relying on only one.
B.1 — Nano
Nano is a simple terminal-based text editor.
Launch Nano:
nano filename
Nano is widely recommended for beginners because:
- commands are displayed on the screen
- editing is straightforward
- no special modes are required
Common keyboard shortcuts:
| Command | Action |
|---------|--------|
| Ctrl+O | Save |
| Ctrl+X | Exit |
| Ctrl+K | Cut current line |
| Ctrl+U | Paste |
| Ctrl+W | Search |
| Ctrl+G | Help |
Nano is an excellent choice for:
- configuration files
- quick edits
- shell scripts
- learning Linux
B.2 — Vim
Vim is one of the most powerful text editors available.
Launch Vim:
vim filename
Unlike Nano, Vim uses different operating modes.
The three most common are:
- Normal mode
- Insert mode
- Visual mode
Useful commands:
| Command | Action |
|---------|--------|
| i | Enter Insert mode |
| Esc | Return to Normal mode |
| :w | Save |
| :q | Quit |
| :wq | Save and quit |
| :q! | Quit without saving |
Vim has a steeper learning curve but offers exceptional speed and flexibility once mastered.
Many experienced Linux administrators use Vim as their primary editor.
B.3 — Xed
Xed is the default graphical text editor included with Linux Mint.
Launch:
xed filename
Xed resembles editors such as Notepad.
It is well suited for:
- notes
- Markdown files
- configuration files
- simple programming
Advantages include:
- graphical interface
- lightweight
- easy to learn
Xed edits Markdown as plain text and does not display formatted output.
B.4 — Visual Studio Code
Visual Studio Code (VS Code) is a modern programming editor.
It includes features such as:
- syntax highlighting
- integrated terminal
- Git integration
- debugging
- extensions
- intelligent code completion
VS Code is commonly used for:
- software development
- shell scripting
- Python
- web development
- technical writing
It has become one of the world's most popular development environments.
B.5 — LibreOffice Writer
LibreOffice Writer is a full-featured word processor.
Unlike plain-text editors, Writer supports:
- fonts
- styles
- images
- tables
- page layout
- PDF export
Writer is well suited for:
- manuals
- reports
- letters
- printable documents
Although Linux users often work with plain text, traditional word processors remain useful for formal publications.
Why Linux Provides Many Editors
Linux emphasizes:
- freedom of choice
- specialization
- modular design
Different editors excel at different tasks.
For example:
- Nano is excellent for quick terminal edits.
- Vim excels at advanced editing and administration.
- Xed provides a simple graphical experience.
- VS Code offers a complete development environment.
- LibreOffice Writer is ideal for polished documents.
Rather than forcing users into a single application, Linux allows each person to choose the tools that best fit their workflow.
Editor Comparison
| Editor | Interface | Best For |
|---------|-----------|----------|
| Nano | Terminal | Beginners, quick edits |
| Vim | Terminal | Advanced editing, administration |
| Xed | Graphical | General text editing |
| VS Code | Graphical | Programming and scripting |
| LibreOffice Writer | Graphical | Documents and manuals |
Recommendations
If you are new to Linux:
- Learn Nano first.
- Become comfortable with Xed for everyday editing.
- Explore VS Code if you plan to write software.
- Gradually learn Vim as your Linux experience grows.
Each editor has strengths, and learning more than one will make you a more versatile Linux user.