Onivim 2

The Vim text editor doesn't normally need much of an introduction. It's the yin to the Emacs yang, the source of many "How do I quit?" posts, and the fuel for many a late night best-editor argument. It's a terminal text editor driven by infamously opaque keyboard commands that need to be committed to memory and normal, visual, insert, and select operating modes that can totally confuse a generation brought up on Microsoft Word. But it is also ubiquitous, powerful, mature, and ultimately wedded to the command line. There have been many attempts to bring its uniqueness to the desktop, but most of us would rather simply open a terminal and edit our files from there. If we need to make a graphical editor more Vim-like, there's usually an option to switch its keybindings to those of Vim. Editors such as Plasma's Kate and Microsoft's Visual Studio Code take this further with plugins that can even ape the command and editing modes, alongside all the muscle memory shortcuts and keyboard commands.

Onivim 2 is a new graphical editor that, even in its alpha state, is already one of the most successful desktop editors we've seen at supplanting Vim's workflow from the command line to a modern desktop environment. Like Vim, it's modal, which means you can edit text not just interactively (as you would with a normal desktop editor) but also by issuing commands that typically consist of a verb followed by a motion, such as d$ to delete to the end of a sentence. This is exactly the same as how Vim works. But it isn't just Vim that Onivim 2 is hoping to replace: It's attempting to bring the best of editors such as TextMate, Sublime Text, and Visual Studio Code editor to a single high-performance application. Despite being completely independent of these projects, the editing experience is already fairly comprehensive. It features syntax highlighting, fuzzy search across a project, snippets, and a command palette, all packaged within an amazing cross-platform application shell that isn't using Electron.

While many editors feature a Vim mode, Onivim 2 makes this its central function and inspiration.

The project has an interesting licensing policy, which also makes it difficult to get hold of the application in its alpha state without contributing. The project is a commercial endeavor, currently funded by Patreon supporters, but ultimately, paid-for license keys. The code is initially released under a non-free license, allowing only for non-commercial and educational use without a commercial license, and it takes a long time to build (we built the code manually). But due to the positive support the project has received from the open source communities, Onivim 2 now has a dual-licensing agreement. Eighteen months after a commit has landed in its code repository, it will become additionally licensed under MIT, which is when we'll all be free to make and distribute our own builds. This isn't a perfect solution, and it would be preferable if the project were open source from every commit, but we equally respect the project's decision and motivation. It's hard bootstrapping a business, building a new editor, and maintaining momentum. Hopefully, the project will be successful enough, and so well-funded regardless of its licensing restrictions, that the developers will update their licensing to remove the long delay. Either way, Onivim 2 is definitely worth seeking out.

Project Website

The only way to currently test Onivim 2 is to build it yourself. It requires 15GB of space and an hour or two, but it is straightforward thanks to a well-documented Docker recipe.

Retro platformer

Mr. Rescue

We've looked at the L÷VE games framework before. It's a brilliant way to easily create 2D games with the accessible LUA language. Many developers have already used it to create unique and fully fledged games. Mr. Rescue is one of these. Like many of the games built using L÷VE, Mr. Rescue has a lovely pixelated design reminiscent of games from the 8-bit era, albeit on a console with a 24-bit color palette. The game's objective is equally positive. Rather than trying to destroy things, you save people by running through an already burning building, picking them up, getting to a window, and throwing them out. There's no mention of their fate from this point, especially when the buildings can stretch dozens of floors into the sky, but let's assume there's some substantial landing setup waiting for them. Another thing to remember is to open the window first.

Your only defenses against the fire are your suit, which gets increasingly damaged the closer you get to the flames, and your fire extinguisher, used to blast the flames with water to make a path through the building, as well as to smash open windows and doors. You can only blast the water for so long before needing to wait for the pressure to replenish, and your suit also needs to be recharged by finding coolant capsules as you explore the building. If you don't do this, you'll eventually overheat and the game will be over. In this way, the game builds up momentum as you try and take more risks to save people while fighting the fire. When you've saved a certain number of people, the level is over and you move on to another building. It's a great game that's brilliantly animated and finely tuned, with a soundtrack that could have been produced on a Commodore Amiga in 1988.

Project Website

If you're looking for some simple, pixelated arcade fun, Mr. Rescue is a perfect lunchtime distraction.

Buy this article as PDF

Express-Checkout as PDF
Price $2.95
(incl. VAT)

Buy Linux Magazine

Get it on Google Play

US / Canada

Get it on Google Play

UK / Australia

Related content

  • FOSSPicks

    Graham recently found the perfect use for his old Nintendo DS Lite. Thanks to having exactly the same screen resolution, it now runs the brilliant ZXDS Sinclair ZX Spectrum emulator.

  • Big Shot: OpenShot Video Editor Version 1.0 Released

    Video clip editors have been in short supply under Linux. Jonathan Thomas is now trying to fill that gap with the first stable version of the OpenShot Video Editor.

  • FOSSPicks

    This month Graham looks at Firefly Synth, Faircamp, Gnome Web, GPlates, Flowblade, CorsixTH, and more!

  • Video Editor Roundup

    In a comparison test, we checked out nine free video editing programs: Cinelerra, Flowblade, Kdenlive, Kino, Lightworks, LiVES, OpenShot, Pitivi, and Shotcut.

  • FOSSPicks

    Over the past couple of months, Graham's ever-versatile Steam Deck has synced books to an e-reader, played movies on a television, joined Mumble, recorded two podcast episodes, and even played a few games.

comments powered by Disqus
Subscribe to our Linux Newsletters
Find Linux and Open Source Jobs
Subscribe to our ADMIN Newsletters

Support Our Work

Linux Magazine content is made possible with support from readers like you. Please consider contributing when you’ve found an article to be beneficial.

Learn More