编辑器需要的基础的功能¶
文件打开和保存¶
- 当我想要打开一个文件的时候,我按下某个快捷键,就应该可以出现一个文件筛选的界面,并且随着我输入文件名称变化不停变动。
- 文件搜索界面应该是全屏的。
- 当文件名称是已经打开的文件中的字符串的时候,应该允许我使用某个快捷键进行查找当前文件,或者直接打开该文件,或者进行临时预览。
- 文件筛选页面应该支持我把复制的文字粘贴。
- 当输入一个不存在的文件,应该允许我创建该文件。
- 在搜索界面,当我输入 "文件夹名称+/" 的时候,应该提供快速补全功能。
- 在搜索界面,词条的顺序应该是离搜索框最近的是符合条件的已经打开的文件,没打开的文件距离要更远
- 在搜索界面,应该有文件目录,如果我需要在文件目录中查找文件,就应该可以在文件目录中查看。
- 在搜索界面,默认可以回车打开上一个编辑的文件
- 文件目录应该支持文件增加,删除,复制,粘贴,重命名等基础功能
编辑文字¶
编辑文字其实就是增加,删除和复制粘贴,以及跳转。 只是有的时候,我们需要编辑的东西有比较强烈的规律,也就是 VIM 中说的对象。
一些对象类型:
- 字符
- 单词
- 行
- 文件
- 段落
- 函数
- 类
- 缩进级别
- 标签
- 括号
- 引号
查找或跳转¶
- 设置快捷键开始查找。
- 支持增量查找。
- 跳转下一个
- 支持编辑
- 支持重复上一个编辑
- 支持批量重复编辑,可以先标记,然后批量执行某种编辑
- 支持函数跳转
终端¶
主要用来运行程序之类的
感觉我在说的就是 helix。