2022-12-05 14:11:48 +00:00
|
|
|
# λ Velocity
|
2022-11-07 07:30:09 +00:00
|
|
|
A next-generation hackable incredibly performant rust text editor for nerds.
|
2022-12-05 14:11:48 +00:00
|
|
|
> ⚠️ Velocity is in *very* early stages at the moment. Velocity's goals are still being decided and features may completely change.
|
2022-11-07 07:30:09 +00:00
|
|
|
|
|
|
|
## Overview
|
2022-12-05 14:11:48 +00:00
|
|
|
Velocity is a similar text editor to `vim` or `kakoune`, taking some ideas from `xi`.
|
2022-11-07 07:30:09 +00:00
|
|
|
The main goal is to build the best text editor possible by taking ideas from existing text editors and implementing them in the best possible way.
|
|
|
|
|
2022-12-05 14:11:48 +00:00
|
|
|
- Velocity is written in Rust, so it's incredibly fast and logical
|
2022-11-07 07:30:09 +00:00
|
|
|
- It's also full of comments, so anyone can try and learn what it's doing
|
2022-12-05 14:11:48 +00:00
|
|
|
- Velocity is very modular and extensible, so features can be easily added through a variety of methods
|
2022-11-07 09:33:49 +00:00
|
|
|
- Need to run a set of keybinds in order? Create a macro
|
|
|
|
- Need to create a completely new feature? Just fork it and write it in Rust
|
2022-12-05 14:11:48 +00:00
|
|
|
- Velocity is separated between the core and the standard terminal implementation
|
2022-11-07 09:33:49 +00:00
|
|
|
- This means that anyone can implement their own keybinds, ui, themes, styling, etc.
|
2022-12-05 14:11:48 +00:00
|
|
|
- This also means that there is one standard way for managing the text itself - inside of the Velocity core
|
|
|
|
- Velocity is a modal text editor and uses ideas from kakoune, and is designed for the select -> action structure
|
2022-11-07 09:33:49 +00:00
|
|
|
- Since anyone can implement their own keybinds, it's possible to make a vim implementation that uses the action -> select structure
|
2022-12-05 14:11:48 +00:00
|
|
|
- Velocity follows the unix philosophy of "do one thing and do it well"
|
2022-11-07 07:30:09 +00:00
|
|
|
- It has no bloated features like splits or tabs
|
|
|
|
- It contains the bare necessities and provides a few extra modules
|
2022-12-05 14:11:48 +00:00
|
|
|
- Velocity has much better default keybindings than other text editors
|
2022-11-07 07:30:09 +00:00
|
|
|
|
|
|
|
## Getting started
|
|
|
|
You'll need `cargo` (ideally from `rustup`) and an up to date version of `rust`.
|
2022-11-07 07:32:03 +00:00
|
|
|
```bash
|
2022-12-05 14:11:48 +00:00
|
|
|
git clone https://github.com/SpyHoodle/velocity.git # Clone the repositiory
|
|
|
|
cargo run # Build and run velocity!
|
2022-11-07 07:30:09 +00:00
|
|
|
```
|