ReVi

MAINTAINED Downloads crates.io License

Stars Forks watchers contributors

issues last commit repo size Discord Chat lines

RUST LUA

# Table Of Contents: - [**About**](#about) - [**Usage**](#usage) - [**Install**](#cratesio) - [**Clone && Installing**](#github) - [**Development**](#development-use) - [**Q&A**](#questions-and-answers) - [**KeyBindings**](#keybindings) - [**Roadmap**](#road-map) - [**Changelog**](./CHANGELOG.md) # About ReVi is a cross-platform terminal based Vim inspired text editor. Currently ReVi is in heavy development and it's probably not good idea to use for every day use but I have been using ReVi to work on ReVi to help find bugs. Editor inception 😲! If you like what you see help the project out with a [github](https://github.com/revi-editor/revi) star. If you find a bug please feel free to open a issues for it.

Image

# Usage ### **Crates.io** ```sh cargo install revi --version="0.0.0-beta-2" revi ``` ### **GitHub** ```sh cargo install --git https://github.com/revi-editor/revi revi ``` ### **Development Use** ```sh git clone https://github.com/revi-editor/revi cd revi cargo run --release -- ``` ### **Questions and Answers** - *ReVi is locked up* => Press `Esc` and then do command to clear command chase. WIP. - *ReVi doesn't even open* => for version's `0.0.0-beta-0.5` and below need to have a `init.lua` file in the directory. FIXED on version `0.0.0-beta-0.6` # KeyBindings ### **Normal Mode** |'Key'|*Command*|Note |:---|:---:|---: `Esc`|*NormalMode*| `ZZ`|*Save Quit*| `ZQ`|*Quit*| ``|*ScrollUp Cursor Keeps Line Number*|Not working 100% correct ``|*ScrollDown Cursor Keeps Line Number*|Not working 100% correct ``|*ScrollUp*|Not working 100% correct ``|*ScrollDown*|Not working 100% correct `j`|*CursorDown*| `Down`|*CursorDown*| `k`|*CursorUp*| `Up`|*CursorUp*| `h`|*CursorLeft*| `Left`|*CursorLeft*| `l`|*CursorRight*| `Right`|*CursorRight*| `w`|*Move Forwards by a Word*| `b`|*Move Backwards by a Word*| `:`|*CommandMode*| `i`|*InsertMode*| `x`|*DeleteChar*| `Delete`|*DeleteChar*| `d`|*DeleteLine*| `Home`|*Home*| `End`|*End*| `0`|*Home*| `$`|*End*| `A`|*End InsertMode CursorLeft*| 'gg'|*JumpToFirstLine* 'G'|*JumpToLastLine* ### **Insert Mode** |'Key'|*Command*|Note |:---|:---:|---: `Esc`|*Normal*| `Backspace`|*Backspace*| `Enter`|*NewLine*| `Home`|*Home*| `End`|*End*| `Down`|*CursorDown*| `Up`|*CursorUp*| `Left`|*CursorLeft*| `Right`|*CursorRight*| ### **Command Mode** |'Key'|*Command*|Note |:---|:---:|---: `Esc`|*Normal*| `Enter`|*Normal*| ### **Commands** *All Commands will change in further versions* |'Command'|*Action*|Note |:---|:---:|---: `q`|*QUIT*| `quit`|*QUIT*| `exit`|*QUIT*| `b[buffer number]`|*Sets Buffer*| `set number`|*Sets line numbers to AbsoluteNumber*| `set relativenumber`|*Sets line numbers to RelativeNumber*| `set nonumber`|*Removes any line number type*| # Road Map - [ ] **Added Modes**: - [X] **Normal** - [X] **Insert** - [ ] **Command** - [ ] **Visual** - [ ] **Visual Line** - [ ] **Visual Block** - [X] **Basic KeyBindings** - [ ] **Basic Unicode Support** - [ ] **Plugin API**: - [ ] **Custom KeyBindings** - [ ] **Help Docs** - [ ] **WebSite** - [ ] **Package Manager** - [ ] **LSP**