15

我正在寻找用 Javascript 实现的 Vi 变体。

不幸的是,我得到了配置 Vim 以编写 JavaScript 代码的所有类型的结果。

我发现的唯一有用的结果是 JSVI。

问题:我应该研究其他任何(也许更现代)的实现吗?

4

6 回答 6

10

你应该看看 Vim.js 一个用 Javascript 编写的完整的 Vim,在你的浏览器中工作

  1. 持久的 ~/.vimrc
  2. 从 Vim.js 执行 JavaScript
  3. 读取本地文件
  4. 从 Dropbox 读取文件

玩得开心 !

http://coolwanglu.github.io/vim.js/web/vim.html

如果你想要更快的东西,这里有一些麻省理工学院学生制作的 VI 实现: http ://web.mit.edu/~georgiou/www/vi/

于 2014-01-13T18:55:00.590 回答
7

ACE编辑器具有 vim 键绑定以及来自其他流行编辑器的键绑定,但这不是 vim 的完整实现。

可以在GitHub 上找到 ACE 的源代码。

于 2012-06-24T15:32:06.170 回答
4

试试CodeMirror。它非常忠实地模拟了 VIM,并支持:

  1. 正常模式下最常见的动作和运算符
  2. 操作员/运动正交性
  3. 视觉模式
  4. 寄存器
  5. 分数
  6. 搜索和替换/, *, g*,:substitute
  7. 文本对象

尽管如此,这绝不是 Javascript 中的完整 VIM 实现,它只是尽可能忠实地模拟最有用的功能。

于 2014-03-18T21:09:43.253 回答
3

我正在为 Chrome/Opera/Firefox 扩展编写名为 wasavi 的 JavaScript 中的 vi 克隆。虽然 wasavi 还不完善,但支持几乎所有的 vi/ex 命令。

如果您有兴趣,请尝试:http ://appsweets.net/wasavi/

源代码托管在GitHub 上

于 2012-07-27T06:46:13.623 回答
0

Vimulator 看起来很有趣,虽然相当有限并且用于教授 vim(并且内置了相当烦人的延迟): https ://github.com/thoughtbot/vimulator

它缺少撤消命令和 Shift-% 命令(用于匹配括号)。它至少有搜索功能。

至少有两个答案比这个更好: http://coolwanglu.github.io/vim.js/web/vim.htmlhttp://codemirror.com

于 2014-03-20T18:26:21.283 回答
0

检查vim-in-textarea以及在线演示。它适用于 HTML 文本区域,不会改变样式或外观。

于 2012-12-29T15:47:44.623 回答