2 个不稳定版本

0.1.0 2017年3月13日
0.0.1 2014年10月14日

#267文本编辑器

560 星 & 26 关注者

260KB
6.5K SLoC

Rim

Rim是一个有志成为Vim-like文本编辑器的Rust程序。

Screenshot

当前状态

Rim处于早期原型阶段。这意味着您可以加载、编辑和保存文件,如果习惯使用Vim,那么这样做将相对舒适。特别是,一些简单的插入和删除命令以及窗口和缓冲区导航已经实现并绑定到预期的按键。

试用它

只需克隆并 cargo run

注意:一些键绑定仅用于测试目的,并且一些可能不会按预期工作。

窗口导航

  • <C-w>v/<C-w>s - 分割焦点窗口
  • <C-w>c - 关闭焦点窗口
  • <C-w> h/j/k/l - 移动窗口焦点左/下/上/右
  • n/N - 在窗口顺序中向前/向后移动窗口焦点(用于测试)
  • (<C->) y/u - 调整焦点窗口大小(用于测试)
  • <C-w>= - 重置窗口大小

缓冲区导航

  • h/j/k/l/箭头键 - 移动光标
  • Home/0 - 将光标移至行首
  • End/$ - 将光标移至行尾
  • PageUp/<C-b> - 向上滚动视图,滚动长度为窗口大小
  • PageDown/<C-f> - 向下滚动视图,滚动长度为窗口大小
  • <C-u> - 向上滚动视图,滚动长度为窗口大小的一半
  • <C-d> - 向下滚动视图,滚动长度为窗口大小的一半
  • gg - 跳转到第一行
  • G - 跳转到最后一行
  • Space 在普通模式下 - 光标向前移动跨越行边界
  • Backspace 在普通模式下 - 光标向后移动跨越行边界

插入模式

  • i - 进入插入模式
  • I - 在行首进入插入模式
  • a - 在光标后进入插入模式
  • A - 在行尾进入插入模式
  • o - 在当前行下方新行处进入插入模式
  • O - 在当前行上方新行处进入插入模式
  • Escape - 退出插入模式

删除

  • dd - 删除行
  • D - 删除行剩余部分
  • C - 删除行剩余部分并进入插入模式
  • x - 删除光标下的字符
  • X - 删除光标前的字符
  • r - 替换光标下的字符
  • R - 替换行上的字符

杂项 / 用于测试直到实现适当的命令行

  • F1-F4 - 加载一些缓冲区
  • :qa<Enter> - 退出
  • :q<Enter> - 关闭窗口并在它是最后一个窗口时退出
  • :w<Enter> - 将缓冲区写入文件

依赖关系

~7–17MB
~208K SLoC