Announcing: pixelvim, vim inspired pixel editor
pixelvimis a pixel editor inspired by thevimtext editor, with an emphasis on keyboard interaction. It also aims to be feature-rich, customizable, and extendable via user scripts.
This is my personal project of making a vim-like pixel art editor (not very creative with the name, I know), written in Rust using miniquad.
Repo: https://github.com/bolphen/pixelvim
Try it in the browser: https://bolphen.github.io/pixelvim/ (you can drag-and-drop png, gif, and aseprite files, and save to png and gif; use :set scale/ui=2 to increase the UI if you find them too small)
Notable features
- vi-style remappable keyboard interaction and a command system, including modifiers (
5jfor moving 5 pixels down) and chain-able commands (:select/all THEN cut THEN :layer/new/above THEN paste) - elaborated "visual" mode for pixel selection (that is undo/redoable)
- animation "live draw" (see the screencast below: very useful for quickly creating particle effects)
- rudimentary support for lua user scripts (not available in the browser version)
- data recovery from swap file in case of crashes
The code is not pretty (a lot of places held up with glue) and there are quite a lot I want to improve as well as new features to add, but I feel that the end product could already be useful for some so I'm releasing it. Overall I wish to translate more vim features that could be useful into pixelvim (for example, insert mode for drawing purely with the keyboard; registers and macros; better documentation), also better UI.
There used to be a similar project rx. This is not a fork, though I did borrow a few things here and there. I'd say right now pixelvim is much more feature complete than rx.
Cheers!