Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/revi-editor/revi
A modal text editor inspired by Vim, Neovim and others like it.
https://github.com/revi-editor/revi
cli editor revi rhai-script rust terminal text-editor tui vim
Last synced: 7 days ago
JSON representation
A modal text editor inspired by Vim, Neovim and others like it.
- Host: GitHub
- URL: https://github.com/revi-editor/revi
- Owner: revi-editor
- License: mit
- Created: 2021-06-20T17:09:38.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2024-04-13T02:23:41.000Z (7 months ago)
- Last Synced: 2024-10-15T12:37:18.518Z (23 days ago)
- Topics: cli, editor, revi, rhai-script, rust, terminal, text-editor, tui, vim
- Language: Rust
- Homepage:
- Size: 477 KB
- Stars: 43
- Watchers: 1
- Forks: 2
- Open Issues: 12
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
ReVi
# 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.
# 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*|
p|*Paste Below Cursor*|
P|*Paste Above Cursor*|
<C-y>|*ScrollUp Cursor Keeps Line Number*|Not working 100% correct
<C-e>|*ScrollDown Cursor Keeps Line Number*|Not working 100% correct
<C-u>|*ScrollUp*|Not working 100% correct
<C-d>|*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*
u|*Undo*### **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*|
`qw`|*SAVE QUIT*|
`exit`|*QUIT*|
`[number]`|*Goto LineNumber*
`e[filename]`|*Opens or Creates a new file and swaps window*|
`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**
- [X] **Command**
- [ ] **Visual**
- [ ] **Visual Line**
- [ ] **Visual Block**### **KeyBindings**
- [X] **Basic KeyBindings**### **Plugin Support**
- [ ] **Plugin API**:
- [ ] **Custom KeyBindings**
- [ ] **Help Docs**### **WebSite**
- [ ] **WebSite**
- [ ] **Package Manager**### **Other**
- [ ] **Basic Unicode Support**
- [ ] **LSP**