8000 GitHub - klotzambein/rx: Modern pixel editor implemented in rust
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

klotzambein/rx

 
 

Repository files navigation


        ██╗████╗██╗██╗
        ╚███╔██║╚███╔╝
         ██╔╝══╝██╔██╗
         ██║   ██╔╝ ██╗
         ╚═╝   ╚═╝  ╚═╝

    `rx` is a modern pixel editor implemented in rust.

  Designed with great care and love
    with pixel artists and animators in mind.

OVERVIEW

  `rx` is an extensible, modern and minimalist pixel editor implemented
  in rust[0]. It's designed to have as little UI as possible, and instead
  takes inspiration from vi's[1] modal nature and command mode.

  Compared to other pixel editors, rx aims to be smaller, yet more configurable
  and extendable. `rx` takes a different approach when it comes to animation
  as well, which is done with *strips*.

  See the screenshots/ folder to get an idea of what this looks like.

  [0]: https://rust-lang.org
  [1]: https://en.wikipedia.org/wiki/Vi

GOALS

  * Minimal UI. Clean aesthetics.
  * Everything that should be controlled by the keyboard, is.
  * Extensible and scriptable with a simple command-based language.
  * Familiar to anyone with vi(m) knowledge.
  * Snappy. No perceptible input lag when painting. All commands run in < 16ms.
  * Optimized for advanced users. No hand-holding. vi-like philosophy.
  * Small, hackable codebase. At most 10 KLOC with only a handful of direct dependencies.
  * First-class Linux support.

FEATURES

  * Built-in sprite animation support, with live preview.
  * Work with multiple files simultaneously.
  * Extensible command system.
  * Text-based configuration.
  * Built using modern graphics.
  * HiDPI display support.
  * UI scaling.
  * Undo/redo any edit.
  * PNG support.
  * Animated GIF output.
  * Multi-brush.

  * (Coming soon: Layers)
  * (Coming soon: Visual mode)
  * (Coming soon: Workspaces)

PLATFORM SUPPORT

  * Linux     (vulkan)         [GOOD]
  * macOS     (metal)          [GOOD]
  * Windows   (dx11/dx12)      [UNTESTED]

BUILD DEPENDENCIES

  * rust & cargo (https://www.rust-lang.org/tools/install)

INSTALLATION

  Before proceeding, make sure the build dependencies have been installed.

  Then, run:

    $ cargo install --git https://github.com/cloudhead/rx --locked --features <backend>

  where <backend> is one of 'vulkan', 'metal', 'dx11' or 'dx12'.
  See the PLATFORM SUPPORT section for which feature to enable on
  your platform.

  This will download `rx` and install it under `~/.cargo/bin/rx`.
  If you prefer a different install location, you can specify it
  via the `--root <prefix>` flag, where <prefix> is for example
  '/usr/local'.

CONFIGURATION

  Linux

  Create a config folder for rx in your XDG configuration directory:

    $ mkdir -p ~/.config/rx

  and copy the default configuration and palettes from the `config/`
  directory of this project to it. You can then edit `init.rx` to
  configure rx.

USAGE

  After installing, simply run `rx` from a shell or application launcher.

  You can then use the :help command to show the default set of key mappings
  and commands.

  Common commands:

    :e <path..>              Edit path(s)
    :w                       Write/save view
    :q                       Quit view
    :slice <n>               Slice view into <n> frames
    :source <path>           Source an rx script (eg. a palette)
    :f/resize <w> <h>        Resize frames

  For example, to create a 32x32 sprite with 4 frames:

    1. Open `rx`.
    2. Type `:f/resize 32 32`.
    3. Press <return> three times to create a total of four frames.
    4. Zoom in/out with `.` and `,`.
    5. Draw something great!
    6. Type `:w animation.png` to save it.

SUPPORT

  If you find this project useful, consider supporting it by sending ₿ (Bitcoin) to
  the following address:

    1MpF7p9A8LJabZn7ehHpGbLcN5PCXRdGqm

LICENSE

  This software is licensed under the GPL. See the LICENSE file for more details.

COPYRIGHT

  (c) 2019 Alexis Sellier <self@cloudhead.io>

About

Modern pixel editor implemented in rust

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Rust 99.3%
  • Other 0.7%
0