Best Code Editors for Linux in 2026: 14 Editors and IDEs Compared

Best code editors for Linux: GUI and terminal editors, install commands for apt, dnf and pacman, and AI support

✅ Checked against each editor's official site and docs · Last updated: 14 October 2026

The best code editor for most people on Linux is Visual Studio Code: it costs nothing, Microsoft publishes its own .deb, .rpm and Snap packages, and its extension marketplace covers nearly every language you will touch. If you want the same editor under a fully open source license, install VSCodium. If you work in a terminal all day, learn Neovim.

Quick picks by need:

If what you need is the best text editor for Linux rather than a coding tool, for config files, notes and quick fixes, nano covers the terminal and GNOME Text Editor or Kate cover the desktop.

Every license, package and AI detail below comes from the project's own website, documentation or repository, plus the Arch, Fedora, Debian, Ubuntu and Flathub package databases, all read on 14 October 2026. We did not run speed or memory benchmarks, so you will not find made-up numbers here. Where a figure appears, such as a RAM requirement, it is the one the vendor publishes.

Contents
  1. Linux code editors compared
  2. How to choose in three questions
  3. Best GUI code editors for Linux
    1. Visual Studio Code
    2. VSCodium
    3. Zed
    4. Sublime Text
    5. Kate
    6. GNOME Text Editor
  4. Best terminal code editors for Linux
    1. Neovim
    2. Vim
    3. GNU Emacs
    4. Helix
    5. GNU nano
    6. micro
  5. Best IDE for Linux: IntelliJ IDEA, PyCharm and JetBrains Toolbox
  6. AI-first editor: Cursor
  7. Best text editor for Arch Linux
  8. How to open a text editor from the terminal
  9. How to edit a text file in the terminal
    1. nano basics
    2. Vim basics in 5 commands
  10. Code Editors on Linux: Troubleshooting and Common Questions
    1. What is the best free code editor for Linux?
    2. What is the best code editor for Ubuntu?
    3. Why are some VS Code extensions missing in VSCodium?
    4. Zed will not open a window on Linux. What should I check?
    5. Why do "zed" or "hx" say command not found on Arch?
    6. Which code editor is best for an old or low-RAM Linux PC?
    7. How do I exit Vim?
    8. Is coding on Linux hard?
  11. Sources

Linux code editors compared

Picking the best code editor for Linux usually comes down to four questions, and this table answers them: is it a GUI, terminal editor or full IDE, is it open source, how do you install it on your distribution, and does it ship AI features.

EditorTypeLicenseInstall on LinuxAI supportBest for
VS CodeGUIProprietary Microsoft license (built from the MIT-licensed Code - OSS source)Official .deb, .rpm and Snap; AUR package is community maintainedBuilt in (GitHub Copilot, free plan available, can be switched off)Most developers, any language
VSCodiumGUIOpen source (MIT binaries, telemetry disabled)Flathub (verified), Snap, deb/rpm repository, AURCopilot disabled by default; manual setup possibleVS Code users who want a free license
ZedGUIOpen source (GPL-3.0-or-later, some Apache-2.0 parts)Official install script; Arch extra; Flathub and Fedora Terra are community packagesBuilt in (agent, inline assistant, edit prediction); optionalA fast native editor with AI you can turn off
Sublime TextGUIProprietary, paid license after evaluationOfficial apt, dnf, yum, pacman and zypper repositoriesNone built inPeople who want a fast, polished editor and will pay
KateGUIOpen source (LGPL/GPL)Distribution packages, Flathub, SnapNone built inKDE Plasma users, LSP coding without Electron
GNOME Text EditorGUIOpen source (GPL-3.0-or-later)Distribution packages, Flathub (verified)NoneQuick edits, notes and config files on GNOME
NeovimTerminalOpen source (Apache 2.0, plus parts under the Vim license)apt, dnf, pacman, Flathub, Snap, official tarball and AppImageThrough Lua pluginsKeyboard-driven coding you configure yourself
VimTerminal (GUI optional)Vim license, charityware, GPL-compatibleapt, dnf (vim-enhanced), pacman, AppImageNone built inServers and any machine where Vim is already present
GNU EmacsGUI and terminalOpen source (GPL-3.0-or-later)apt, dnf, pacmanThrough packages such as gptel (NonGNU ELPA)People who want one programmable environment for code, notes and mail
HelixTerminalOpen source (MPL-2.0)dnf, pacman, Ubuntu PPA, .deb from releases, Flathub, Snap, AppImageNone (no plugin system yet)Modal editing with LSP working out of the box
nanoTerminalOpen source (GPL-3.0-or-later)apt, dnf, pacmanNoneEditing a config file without learning anything
microTerminalOpen source (MIT)apt, dnf, pacman, Snap, static binaryNone built in (Lua plugins)Terminal editing with Ctrl+S, Ctrl+C and mouse support
IntelliJ IDEA / PyCharmIDEProprietary; free core features, paid Ultimate or Pro subscriptionJetBrains Toolbox tarball, official Snap, standalone tarballJetBrains AI Assistant (subscription or your own API keys)Large Java, Kotlin or Python codebases
CursorGUI (VS Code based)ProprietaryOfficial .deb, .rpm and AppImage (x64 and ARM64)AI-first, built inAgent-driven coding as the main workflow

Two editors that still show up in older "best of" lists are missing on purpose. Atom and Adobe's Brackets both have archived, read-only repositories on GitHub, so they no longer receive fixes.

How to choose in three questions

Start with where you edit. If most of your work happens over SSH or inside a terminal multiplexer, pick a terminal editor (Neovim, Helix, micro or nano). If you work on a desktop, pick a GUI editor.

Next, decide how much setup you accept. VS Code, Zed, Helix and micro are useful the moment they start. Neovim and Emacs reward time spent on configuration, and that time is the price of their flexibility.

Last, check the license and AI policy you need. If your employer or your own rules require open source binaries, VSCodium, Zed, Kate, Neovim and Helix all qualify. If you do not want AI features in your editor at all, VS Code and Zed both let you switch them off, and VSCodium ships with Copilot disabled.

Best GUI code editors for Linux

Visual Studio Code

Who it is for: almost anyone who writes code on a Linux desktop. It handles web, Python, Go, Rust, C and most other languages through extensions.

Strength: Linux is a first-class platform. Microsoft runs its own apt and yum repositories, publishes a Snap, and ships weekly releases. Microsoft's published hardware recommendation is modest: a 1.6 GHz processor and 1 GB of RAM.

Limitation: the download you get from Microsoft is not open source. The FAQ explains that VS Code is a Microsoft distribution of the MIT-licensed Code - OSS repository with Microsoft-specific additions, released under a traditional product license. AI chat and agents are now part of the editor; if you do not want them, set chat.disableAIFeatures to true.

Debian and Ubuntu: download the .deb from the VS Code site and install it. The package offers to add Microsoft's apt repository so updates arrive with your normal system updates.

sudo apt install ./<file>.deb

Fedora: import Microsoft's key, add the repository, then install.

sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc &&
echo -e "[code]\nname=Visual Studio Code\nbaseurl=https://packages.microsoft.com/yumrepos/vscode\nenabled=1\nautorefresh=1\ntype=rpm-md\ngpgcheck=1\ngpgkey=https://packages.microsoft.com/keys/microsoft.asc" | sudo tee /etc/yum.repos.d/vscode.repo > /dev/null
dnf check-update &&
sudo dnf install code

Arch: Microsoft's build is in the AUR as visual-studio-code-bin, which the VS Code docs describe as community maintained. The code package in Arch's official extra repository is something else: the open source build of Code - OSS.

yay -S visual-studio-code-bin

Snap (any distribution with snapd):

sudo snap install --classic code

The VS Code docs list no official Flatpak.

VSCodium

Who it is for: people who like VS Code but want binaries under the MIT license, without Microsoft's product license or telemetry.

Strength: the project builds Microsoft's own vscode source code with the Microsoft-specific product settings left out, publishes the results as MIT-licensed binaries and disables telemetry. The project documents how to migrate your settings from VS Code.

Limitation: it cannot use the Visual Studio Marketplace, because Microsoft's terms prohibit other products from using it. VSCodium points to the Open VSX Registry instead, and some extensions you know from VS Code are missing there. Copilot features are disabled and not configured; enabling them takes manual changes to product.json.

Flatpak (verified on Flathub):

flatpak install flathub com.vscodium.codium

Debian and Ubuntu: the deb and rpm repository is run by a community maintainer (paulcarroty) and listed on vscodium.com.

wget -qO - https://gitlab.com/paulcarroty/vscodium-deb-rpm-repo/raw/master/pub.gpg \
    | gpg --dearmor \
    | sudo dd of=/usr/share/keyrings/vscodium-archive-keyring.gpg
echo -e 'Types: deb\nURIs: https://download.vscodium.com/debs\nSuites: vscodium\nComponents: main\nArchitectures: amd64 arm64\nSigned-by: /usr/share/keyrings/vscodium-archive-keyring.gpg' \
| sudo tee /etc/apt/sources.list.d/vscodium.sources
sudo apt update && sudo apt install codium

Fedora:

sudo tee -a /etc/yum.repos.d/vscodium.repo << 'EOF'
[gitlab.com_paulcarroty_vscodium_repo]
name=gitlab.com_paulcarroty_vscodium_repo
baseurl=https://paulcarroty.gitlab.io/vscodium-deb-rpm-repo/rpms/
enabled=1
gpgcheck=1
repo_gpgcheck=1
gpgkey=https://gitlab.com/paulcarroty/vscodium-deb-rpm-repo/raw/master/pub.gpg
metadata_expire=1h
EOF
sudo dnf install codium

Arch (AUR):

yay -S vscodium-bin

Open files or folders from the terminal with codium . or codium file.txt.

Zed

Who it is for: developers who want a native, open source editor with AI features built in but optional. Zed's own homepage calls it "the world's fastest IDE"; that is the vendor's claim, not something we measured.

Strength: the AI tools are part of the editor rather than an extension. You get an agent panel, an inline assistant, edit prediction and commit message generation, and you can point them at Zed-hosted models, your own API keys or local models. The source is GPL-3.0-or-later, with some Apache-2.0 components.

Limitation: Zed draws its interface through Vulkan and needs a compatible GPU. Its Linux docs say that if Vulkan cannot find a usable GPU you will see a "NoSupportedDeviceFound" error. The prebuilt binaries need glibc 2.31 or newer on x86_64, and Zed's FAQ says deeper extension APIs are still planned.

Any distribution (official script):

curl -f https://zed.dev/install.sh | sh

Arch: Zed is in the extra repository. The Arch package installs the binary as zeditor, not zed.

sudo pacman -S zed

Flatpak (community package listed in Zed's docs):

flatpak install flathub dev.zed.Zed

For Fedora, Zed's docs point to the community Terra repository; the official script works on Fedora too. Debian and Ubuntu are not in Zed's package list, so use the script there.

Sublime Text

Who it is for: people who want a fast, low-friction GUI editor and are happy to pay for it.

Strength: Sublime HQ maintains its own repositories for apt, pacman, yum, dnf and zypper, so updates come through your package manager. Sublime Text 4 can render its interface on the GPU on Linux, and there are Linux ARM64 builds.

Limitation: it is proprietary. You can download and evaluate it for free, but the store page says a license must be bought for continued use. A personal license is a one-time purchase that includes three years of updates. There are no RPM packages for ARM, and there is no built-in AI.

Debian and Ubuntu:

wget -qO - https://download.sublimetext.com/sublimehq-pub.gpg | sudo tee /etc/apt/keyrings/sublimehq-pub.asc > /dev/null
echo -e 'Types: deb\nURIs: https://download.sublimetext.com/\nSuites: apt/stable/\nSigned-By: /etc/apt/keyrings/sublimehq-pub.asc' | sudo tee /etc/apt/sources.list.d/sublime-text.sources
sudo apt-get update
sudo apt-get install sublime-text

Fedora 41 or newer (dnf5):

sudo rpm -v --import https://download.sublimetext.com/sublimehq-rpm-pub.gpg
sudo dnf config-manager addrepo --from-repofile=https://download.sublimetext.com/rpm/stable/x86_64/sublime-text.repo
sudo dnf install sublime-text

Arch (x86_64):

curl -O https://download.sublimetext.com/sublimehq-pub.gpg && sudo pacman-key --add sublimehq-pub.gpg && sudo pacman-key --lsign-key 8A8F901A && rm sublimehq-pub.gpg
echo -e "\n[sublime-text]\nServer = https://download.sublimetext.com/arch/stable/x86_64" | sudo tee -a /etc/pacman.conf
sudo pacman -Syu sublime-text

Packaged installs put a subl command in /usr/bin, so subl file.txt opens a file from the terminal.

Kate

Who it is for: KDE Plasma users, and anyone who wants a capable programmer's editor that is a native Qt app rather than an Electron one.

Strength: Kate ships with more than most people expect from a "text editor": highlighting for over 400 languages, autocompletion through the Language Server Protocol, a vi input mode, multi-cursor editing, a project sidebar, and plugins for an embedded terminal, SQL queries, GDB debugging and builds.

Limitation: its plugin selection is far smaller than the VS Code marketplace, and it has no built-in AI features.

# Debian / Ubuntu
sudo apt install kate
# Fedora
sudo dnf install kate
# Arch
sudo pacman -S kate
# Flatpak (linked from kate-editor.org)
flatpak install flathub org.kde.kate

GNOME Text Editor

Who it is for: GNOME users who need a clean editor for notes, config files and the occasional script.

Strength: GNOME describes it as a simple editor focused on a pleasing default experience. It has syntax highlighting, and its Flathub package is verified for gnome.org.

Limitation: it does not try to be a programming environment. When you need language server completion, debugging or a project view, move to Kate, VS Code or Zed.

# Debian / Ubuntu
sudo apt install gnome-text-editor
# Fedora
sudo dnf install gnome-text-editor
# Arch
sudo pacman -S gnome-text-editor
# Flatpak
flatpak install flathub org.gnome.TextEditor

Best terminal code editors for Linux

Neovim

Who it is for: developers who want a keyboard-driven editor they can shape exactly to their workflow, locally or over SSH.

Strength: Neovim keeps Vim's editing model and Vimscript compatibility, then adds Lua configuration in init.lua, a built-in LSP client, Tree-sitter parsing and a built-in terminal. AI assistants arrive through Lua plugins; our guide to using Neovim as an AI-powered coding assistant walks through that setup.

Limitation: a bare install is minimal, and building a full setup takes time. Distribution versions also lag: on 14 October 2026 Ubuntu 24.04 shipped Neovim 0.9.5 and Ubuntu 26.04 shipped 0.11.6, while Arch and Fedora 44 had 0.12.6. Our Neovim setup and configuration guide takes you from install to a working config.

# Debian / Ubuntu
sudo apt install neovim
# Fedora
sudo dnf install -y neovim python3-neovim
# Arch
sudo pacman -S neovim
# Flatpak
flatpak install flathub io.neovim.nvim

For the latest release on any distribution, use the official tarball and add its bin folder to your PATH:

curl -LO https://github.com/neovim/neovim/releases/latest/download/nvim-linux-x86_64.tar.gz
sudo rm -rf /opt/nvim-linux-x86_64
sudo tar -C /opt -xzf nvim-linux-x86_64.tar.gz
export PATH="$PATH:/opt/nvim-linux-x86_64/bin"

Put the export line in ~/.bashrc or ~/.zshrc so it survives a new shell. The Flatpak build reads its config from ~/.var/app/io.neovim.nvim/config/nvim instead of ~/.config/nvim.

Vim

Who it is for: sysadmins and anyone who works on many machines, since Vim or vi is available almost everywhere and the skills carry over to Neovim.

Strength: it is mature and still actively released. Vim 9.2 added Enums, generic functions and tuples to the Vim9 script language, plus better diff mode and Wayland support. The vim.org homepage listed 9.2.1186 as the current version on 14 October 2026.

Limitation: the modal editing model is a real learning curve, and there is no built-in AI or LSP client comparable to Neovim's. Our Vim tutorial for beginners covers the first hours.

# Debian / Ubuntu
sudo apt install vim
# Fedora (the full build is called vim-enhanced)
sudo dnf install vim-enhanced
# Arch
sudo pacman -S vim

Vim's license is unusual: it is charityware. The license is GPL-compatible and Vim is free to use, but the project asks users who find it useful to donate to the Kuwasha charity in Uganda.

GNU Emacs

Who it is for: people who want one programmable environment for code, writing, notes and more, and who enjoy configuring it in Lisp.

Strength: Emacs runs as a GUI app or, with emacs -nw, inside the terminal. The package archives are large: GNU ELPA carries Eglot, an LSP client, and NonGNU ELPA carries gptel, an LLM chat client that supports ChatGPT, Gemini, Anthropic, GitHub Copilot chat and other backends. Press Ctrl+h t for the built-in tutorial.

Limitation: the keybindings differ from every other editor here, and building a setup you like takes time. Distribution versions trail the latest release: ftp.gnu.org had Emacs 31.1, Arch had 31.1, while Fedora 43/44 and Ubuntu 26.04 had 30.2 and Debian 13 had 30.1.

# Debian / Ubuntu
sudo apt install emacs
# Fedora
sudo dnf install emacs
# Arch
sudo pacman -S emacs

A Flathub build exists (org.gnu.emacs), but Flathub does not mark it as verified, so we do not list it as official.

Helix

Who it is for: people who like modal editing but do not want to assemble a config from plugins.

Strength: multiple selections, Tree-sitter and language server support are built in, and the project says LSP features such as completion, go to definition and diagnostics work with no extra configuration. Compared with Vim, Helix was written from scratch with modern defaults.

Limitation: there is no plugin system yet (the project says it intends to add one), which also means no AI plugins. Commands act on selections (a model taken from Kakoune), so Vim habits do not transfer one to one.

# Ubuntu (PPA listed in the Helix docs)
sudo add-apt-repository ppa:maveonair/helix-editor
sudo apt update
sudo apt install helix
# Fedora
sudo dnf install helix
# Arch (run it as "helix", not "hx")
sudo pacman -S helix
# Flatpak
flatpak install flathub com.helix_editor.Helix

On Debian, install the .deb from the Helix releases page on GitHub; Debian's own archive has no Helix package.

GNU nano

Who it is for: anyone who needs to change a config file and get out, without learning modes.

Strength: the shortcuts are printed at the bottom of the screen, so you never have to guess how to save or quit. Arch's installation guide names nano as its example console editor for editing configuration files. The current release is nano 9.2.

Limitation: it is a text editor, not a coding environment. There is no LSP, no project view and no AI.

# Debian / Ubuntu
sudo apt install nano
# Fedora
sudo dnf install nano
# Arch
sudo pacman -S nano

micro

Who it is for: people who want a terminal editor that behaves like a desktop one.

Strength: it uses the shortcuts you already know (Ctrl+S, Ctrl+C, Ctrl+V, Ctrl+Z), supports the mouse and Sublime-style multiple cursors, and ships as a single static binary with no dependencies. It has a Lua plugin system with a plugin manager.

Limitation: distribution packages can lag behind (the project says they are not guaranteed to be up to date), and to share the clipboard with other apps you need xclip or xsel on X11, or wl-clipboard on Wayland.

# Debian / Ubuntu
sudo apt install micro
# Fedora
sudo dnf install micro
# Arch
sudo pacman -S micro
# Snap
snap install micro --classic

Save with Ctrl+S, quit with Ctrl+Q, and open the built-in help with Ctrl+G.

Best IDE for Linux: IntelliJ IDEA, PyCharm and JetBrains Toolbox

The best IDE for Linux, if your project is large and written in Java, Kotlin or Python, is a JetBrains IDE: IntelliJ IDEA for JVM languages and PyCharm for Python. If you mostly work in JavaScript, Go or Rust, VS Code with the right extensions or Zed is usually enough, and both are lighter.

Strength: both IDEs are now single products with a free tier. Since IntelliJ IDEA 2025.3, the former Community and Ultimate editions are one IntelliJ IDEA whose core is free, with an optional Ultimate subscription and a 30-day trial. PyCharm went the same way, and JetBrains says PyCharm's core features remain free and open source. AI Assistant can be installed in JetBrains IDEs and works with a JetBrains AI subscription or your own API keys.

Limitation: they are heavy. JetBrains lists 8 GB of total RAM with 3 GB free for the IDE, a 4-core CPU and 10 GB of disk. The officially supported Linux distributions are Ubuntu 24.04 and 26.04 LTS, Fedora 43 and 44, Debian 13 and Amazon Linux 2023, on GNOME or KDE Plasma.

Toolbox App (recommended by JetBrains, any distribution): download the tarball from the Toolbox page, then unpack and start it.

tar -xvf jetbrains-toolbox-<version>.tar.gz -C <installation-directory>
cd <installation-directory>
./bin/jetbrains-toolbox

The Toolbox App creates a desktop entry on first launch and lets you install, update and roll back each IDE. On Debian and Ubuntu, JetBrains lists these packages as prerequisites: libxi6 libxrender1 libxtst6 mesa-utils libfontconfig libgtk-3-bin tar dbus-user-session and libxcb-keysyms1. Arch users can also get it from the AUR as jetbrains-toolbox (community maintained).

Snap:

sudo snap install intellij-idea --classic
sudo snap install pycharm --classic

JetBrains warns that the Snap build of IntelliJ IDEA can have issues, including performance degradation and slow file operations, so prefer Toolbox if you have the choice.

AI-first editor: Cursor

Cursor is the pick if you want AI agents to be the center of how you code rather than an add-on. It is built on the VS Code codebase, and a one-click import brings over your VS Code extensions, themes, settings and keybindings.

Limitation: it is proprietary, and its free plan comes with limited AI usage. The AI features run through Cursor's online service, so read its terms before using it on code you are not allowed to share.

Install: cursor.com/download offers a .deb, an .rpm and an AppImage for x64 and ARM64. Install the package you downloaded with your package manager:

# Debian / Ubuntu
sudo apt install ./<file>.deb
# Fedora
sudo dnf install <file>.rpm

On Arch, cursor-bin is in the AUR (community maintained). For a side-by-side look at Cursor, Copilot, Aider, Continue and local models through Ollama, read our guide to AI code editors and assistants on Linux. If you prefer an agent that lives in the terminal next to any editor, see how to install Claude Code on Linux.

Best text editor for Arch Linux

For Arch, install a console editor during setup and a GUI editor after. Arch's installation guide lists a console text editor among the packages to install, giving nano as its example, because you will edit config files before any desktop exists.

  • During installation: nano if you are new, Vim or Neovim if you already know modal editing. All three are in the official repositories (nano in core, Vim and Neovim in extra).
  • After installation: Arch's extra repository carries Neovim, Helix, micro, Emacs, Kate, GNOME Text Editor and Zed. It also carries code, which is the open source Code - OSS build rather than Microsoft's VS Code.
  • From the AUR: Microsoft's VS Code (visual-studio-code-bin), VSCodium (vscodium-bin), Cursor (cursor-bin) and JetBrains Toolbox. Sublime Text has its own official pacman repository.

Two Arch package names differ from upstream: Helix runs as helix and Zed runs as zeditor. If you are still choosing a distribution, our Linux distributions guide compares Arch with the alternatives.

How to open a text editor from the terminal

Type the editor's command followed by the file name. If the file does not exist, most editors create it when you save.

EditorCommandNotes
nanonano file.txtOpens inside the terminal
Vimvim file.txtOpens inside the terminal
Neovimnvim file.txtOpens inside the terminal
Helixhx file.txthelix file.txt on Arch
micromicro file.txtOpens inside the terminal
Emacsemacs -nw file.txtWithout -nw it opens a window
VS Codecode .Opens the current folder; code file.txt opens one file
VSCodiumcodium .Same pattern as VS Code
Zedzed file.txtzeditor on Arch
Sublime Textsubl file.txtInstalled by the official packages
Katekate file.txtOpens a window
GNOME Text Editorgnome-text-editor file.txtOpens a window

To open a file in whatever your desktop considers the default app, use xdg-open file.txt. To change which editor that is, the VS Code docs show the pattern with xdg-mime:

xdg-mime default code.desktop text/plain

Swap code.desktop for your editor's desktop file. For more everyday commands, keep our Linux commands cheat sheet open in another tab.

How to edit a text file in the terminal

The quickest way to edit a text file in a Linux terminal is nano: run nano file.txt, type your changes, press Ctrl+O and Enter to save, then Ctrl+X to exit. For system files, prefix the command with sudo, for example sudo nano /etc/hosts.

nano basics

  • Ctrl+O, then Enter: write the file (current versions also save with Ctrl+S)
  • Ctrl+X: close the file and exit
  • Ctrl+F or Ctrl+W: search
  • Ctrl+K cuts the current line, Ctrl+U pastes it
  • Alt+U: undo; Alt+E: redo
  • Ctrl+G: help with the full list of keys

Vim basics in 5 commands

Vim starts in Normal mode, where keys are commands, not text. These five are enough to edit and leave safely:

  1. i: enter Insert mode and type normally
  2. Esc: go back to Normal mode
  3. :w then Enter: save
  4. :wq then Enter: save and quit
  5. :q! then Enter: quit and throw away your changes

Run vimtutor, the hands-on lesson that comes with Vim, then continue with our Vim tutorial.

Code Editors on Linux: Troubleshooting and Common Questions

What is the best free code editor for Linux?

VS Code is the best free code editor for most Linux users, though its license is proprietary. If you want free as in open source, VSCodium gives you the same editor under the MIT license, and Zed, Kate, Neovim and Helix are all open source too.

What is the best code editor for Ubuntu?

On Ubuntu, VS Code is the easiest strong choice because Microsoft's .deb adds its own apt repository and updates with the rest of the system. For terminal work, install Neovim from the official tarball rather than apt if you need a recent version, since Ubuntu 24.04's repository had 0.9.5.

Why are some VS Code extensions missing in VSCodium?

VSCodium uses the Open VSX Registry because Microsoft prohibits other products from using the Visual Studio Marketplace. If an extension is missing, ask its author to publish it on open-vsx.org, or install its .vsix file from the project's own release page.

Zed will not open a window on Linux. What should I check?

Check Vulkan first, because Zed needs a Vulkan-capable GPU. Run vkcube from the vulkan-tools package; if the spinning cube does not appear, install proper Vulkan drivers. Zed's docs also say AMD users on the amdvlk driver should switch to vulkan-radeon (RADV).

Why do "zed" or "hx" say command not found on Arch?

Arch renames both binaries. The Zed package installs zeditor and the Helix package installs helix, so run those names or add a shell alias.

Which code editor is best for an old or low-RAM Linux PC?

Use a terminal editor such as nano, micro, Vim or Neovim, or a simple GUI editor such as GNOME Text Editor or Kate. Avoid JetBrains IDEs on such machines, since JetBrains lists 8 GB of RAM as the requirement, and note that Zed needs a Vulkan-capable GPU.

How do I exit Vim?

Press Esc, then type :q! and Enter to quit without saving, or :wq and Enter to save and quit.

Is coding on Linux hard?

No. Every editor in this guide runs natively on Linux, and your package manager installs compilers, interpreters and Git with one command. The learning curve comes from terminal editors like Vim and Emacs, not from Linux itself, and VS Code or Kate behave much like editors on other systems.

Sources

JM Carreira

JM Carreira

I’ve used Linux since 2008 and it has been my main system since 2021. When an article has a “Tested on” box, I ran the steps on my Lenovo Tiny. More about me and the test machine.

Go up

This site uses cookies for analytics and advertising (Google AdSense). By continuing to browse, you accept our use of cookies. Read our privacy policy