6 Of The Best Code Editors For Raspberry Pi Programming

For anyone getting into the world of programming, the Raspberry Pi provides a great environment, and it's dirt cheap. Unlike a regular PC, the Pi has been designed from the outset around programming. The official desktop comes with programming tools ready-installed, with plenty more available via an easy download. There are also countless products, both official and third-party, which allow you to interface with different gadgets via the board's GPIO pins, enabling rapid prototyping with real-world hardware.

Advertisement

How you do that programming involves a lot of choice and personal preference. Do you prefer an advanced text editor, with syntax highlighting and a handful of programming tools, or a full integrated developer environment (IDE) with features like debugging, compilers, and version control? We've selected six of the best code editors for the Raspberry Pi based on being open source and free of charge, support a variety of programming languages, and the priority has been given to lighter applications.

That last point is especially important, given the Pi's limited RAM and processing power, and particularly if you're using a Raspberry Pi Zero. Some potentially useful editors were excluded due to their bulk and sluggishness, or their difficulty to install under Raspberry Pi OS. There will be a more detailed explanation of how these Raspberry Pi code editors made the list at the end of the article.

Advertisement

Lightweight and capable: Geany

Geany is a lightweight editor that goes all the way back to 2005. Speed and minimalism are its core, with the project deliberately using the fewest libraries deemed necessary. Unlike the other editors here, Geany comes installed by default on a standard installation of Raspberry Pi OS. Geany's website refers to the software as an IDE, but Geany is generally regarded as more of an advanced text editor.

Advertisement

Its interface strikes a balance between customization and not overwhelming the user with too many options. Among other features are syntax highlighting for a broad range of languages, auto-closing of tags, code folding, plugins, and a simple build system. One of its cooler plugins is HTML replacement, which converts special characters into HTML code. Using Geany is a decidedly old-school experience — it has a nerdy interface that looks like something from the mid-'90s. But then again, it starts almost instantly. Geany fans note that it's great for reading files in multiple tabs and can read very large documents without slowdown.

Despite its speed and lack of bloat, Geany may not be for everyone. There are quite a few window elements on-screen by default, including a column marker running through the middle of the text field, which may put off some users immediately. However, this may be exactly what some people are looking for. Given the number of features it provides while retaining excellent speed, any Pi owner would be mad not to try it.

Advertisement

For die-hard veterans: Neovim

For all the hardcore Unix crusties and Linux gatekeepers out there, insistent that vi is much faster than other text editors if we only bother learning it, your savior awaits. Neovim takes the original foundations laid by vi in the '70s, and the newer elements of Vim from the '90s, and updates it all for the modern era. It includes features such as a built-in LSP client, an extensible API, syntax highlighting, Lua plugins, and MessagePack support — all while retaining support for Vim scripts. 

Advertisement

Screenshots of Neovim extended with plugins look icy cool, with multiple window panes and glass-like transparency effects, aiding navigation by showing different code layers. Of all the editors here, Neovim is the most hacker-friendly and the most cyberpunk. If you're a fan of cool Raspberry Pi cyberdeck projects, Neovim may be a great visual pairing with your DIY project. 

For those of you who may be worrying that Neovim is trying to water down Vim, the Neovim team is insistent they're not turning Vim into an IDE. It still contains all the baffling controls and mode switching of vi, but provides the kind of tools modern programmers rely on, despite what its stubbornly terminal-based appearance might suggest. Neovim's features can let the vi faithful rest easy, knowing that they can enjoy the world's most cryptic and unintuitive editor that remains the tool of true veterans and hackers.

Advertisement

An oldy but a goody: KDevelop

KDevelop is a true veteran of the Linux world, having been released at a time when The Matrix was still the hottest movie of the year and Bill Clinton was president. This ye olde background makes it good for system resources — it's a properly native Linux application that's built in C++, starts within a few seconds, and consumes little memory.

Advertisement

Being such an old project means there are many extensions and supported languages, plus a faithful user base. It contains the usual stuff like syntax highlighting but also includes things like automatic indentation, code completion, a terminal emulator, a debugger, a GUI designer, support for multiple build systems, and a cool "scratchpad" for experimenting with code, independent of your main project.

The downsides of its age are that KDevelop's documentation stopped being updated several Doctor Whos ago and its parser is slower than a diesel Chevette with a blown head gasket. It also means its focus is better suited to older languages (think Python, Bash, C and its variants, PHP, etc.) and may be out of its depth with something newer, possibly relying on plugins for support.

Advertisement

Regardless, user reviews suggest most people find it intuitive and it is especially popular among C++ programmers, perhaps due to its optimized C++ code completion and fault finding. If you're chasing a lightweight IDE and have a more "mature" taste in programming languages, this may be your editor of choice.

Advanced minimalism: Kate

Kate is the default editor of KDevelop, but by itself may be preferred by anyone chasing an advanced text editor without any bulky IDE features getting in the way. The number of features Kate integrates is very impressive, yet it hides them away in menus to maintain simplicity — it starts out as a quiet text editor but can quickly change into a feature-rich coding companion. And being so customizable, if you don't like something, you can just turn it off.

Advertisement

Beyond basic things like code highlighting (with support for many languages), there are other great features, such as a vi input mode, a terminal emulator, text-to-speech, LSP functionality, and Git code integration. Within its clean and simple interface are things like line numbering, a thumbnail preview bar, and a quick-access button for split-pane viewing.

Working against Kate are its KDE foundations, which are heavy and bulky, meaning it takes longer to load than something like Geany and is less responsive. This might otherwise be forgiven in a full IDE like KDevelop, but may be annoying for a simpler text editor. Of particular use has been its new word count display at the bottom of the window, which switches between highlighted text or the entire document. If you're chasing one text editor for both writing and coding, this may be your best bet.

Advertisement

Focused and underrated: CodeLite

CodeLite is a very lightweight IDE with excellent cross-platform support. Unlike the other applications here, CodeLite is focused on a narrowed selection of languages — C, C++, PHP, and Javascript — instead of supporting as many languages as possible. The application features an elegant "workspace" interface, syntax highlighting, code completion, a build system, Subversion integration, and extension via plugins.

Advertisement

Once up and running, CodeLite is refreshingly stripped-back but well featured if your language is supported. A first-run wizard will prompt you for a choice of development profile, with C or C++ (a second option is provided for blockchain developers), web development (PHP or Javascript), or a simple default profile. You will then be asked about color schemes, and the all-important choice: do you want spaces or tabs for indentation?

Ultimately, CodeLite is quite niche and doesn't have the same kind of community support that other projects here enjoy. However, it enjoys a faithful user base among developers whose language is supported. Users report an excellent debugger, and when we tested it on a Pi 400, it loaded two seconds faster than KDevelop, which is already a lightweight application. If your language is supported, CodeLite may be the most elegant choice here.

Advertisement

The annoying recommendation: Visual Studio Code (Microsoft)

Microsoft's Visual Studio Code (VS Code) is one of the most popular development environments in the world. Coming from the Redmond giant, it is the industry standard, with support for Windows, Mac, and Linux. While VS Code is available for the Pi, Microsoft does not officially support it. Regardless, Microsoft still provides installation instructions on its website, and you can install VS Code straight from the Pi repositories.

Advertisement

Being the industry yardstick, VS Code contains everything expected of a modern development environment — you don't have to ask, it's all there — and code control that is integrated tightly with Github. Which it would be, given it's owned by Microsoft. Its biggest feature is probably its "Extensions Marketplace", which has a dizzying number of add-ons, including AI helpers from both Microsoft and third parties.

Not everything is rosy, however. While the software is open source, there are proprietary licensing issues around the official binaries, which also contain telemetry tracking. But the biggest problem is the sluggish performance on the Pi, which even Microsoft seems embarrassed about. 

Advertisement

Nevertheless, it is still entirely usable on newer Pis, and the slowness probably won't matter to undemanding users or code instructors with bored teenagers. For schools with limited budgets, a collection of Raspberry Pis with VS Code would be a cheap way to deck out a coding lab while adhering to the industry standard.

Our selection methodology

The Raspberry Pi is an ultra-cheap computer designed for getting new users coding as quickly and easily as possible in an open-source environment. However, that low price barrier also comes with very limited performance.

Advertisement

With the exception of Microsoft's VS Code — which is simply too popular to ignore — this means that some popular or powerful editors were excluded because their performance was too slow with the Raspberry Pi's limited resources. The Pi's ARM processor also excluded some editors which were only available on Intel x86 platforms.

Some editors were also difficult to install: Despite being potentially great choices, we felt that most new users simply wouldn't be up to the task of installing those applications. Some editors only handled one language, but we wanted to prioritize editors that wouldn't require a change of workflow every time someone learns a new programming language.

Lastly, a lot of popular code editors require either a paid subscription or a one-time purchase fee. We felt that with a computer designed as a low-cost education tool, we should prioritize free open-source software. And if you are just getting started, here are Raspberry Pi projects that won't break the bank.

Advertisement

Recommended

Advertisement