VIM 搭建 Android 系统开发IDE(1)
背景
作为一个Android 系统开发者,一直没有一个趁手的IDE来快速的浏览、定位、搜索整个AOSP的代码。因为AOSP代码太过庞大,最新Android 14代码,完整同步之后占用空间100G+,完整编译之后占用空间200G+。面对如此庞大的代码工程,如何在整个工程中快速打开一个文件,如何快速的切换目录,如何快速在整个工程,或在一个目录下、或者一个仓库中搜索一个符号等等,都没有一个非常好的解决方案。任何现代的IDE或者编辑器,例如VScode、Android Studio、eclipse或者source Insight,还是其他编辑器,面对如此大的工程不管是反应速度还是便捷性,都没法达到令人满意的程度。并且对于Android系统开发,大多数的开发模式是通过ssh远程到服务器进行代码浏览,vim在此场景下有天然优势。
为什么选用VIM
- VIM高度可定制化
Vim具有高度可定制化的特性,利用这种特性可以为Android庞大的工程做一些定制,从而满足快速切换目录,快速打开文件等功能。 - 功能丰富的插件
Vim有大量的插件,通过组合和定制这些插件,能快速实现所需要的功能 - 便捷性
vim直接在终端中即可执行,操作便捷,特别适合Android系统开发这种大量需要远程SSH登录的场景
Android系统开发IDE所需包含的基本功能
结合实际情况,作为一个Android系统开发IDE,所需包含的基本功能如下。
快速搜索文件
在Android系统开发过程中,由于AOSP目录结构很深,从不同维度快速搜索并打开文件是非常重要的,能极大的提高效率,减少低效的反复切换目录和通过ls查看目录下的文件。在实际场景中,有如下不同维度的需求。
- 从代码根目录搜索文件
- 从当前文件所在目录搜索文件
- 从当前文件所在git工程搜索文件
- 支持模糊搜索
- 支持正则匹配
- 支持文件预览(在不确定打开那个文件时给出有用)
- 支持打开多个文件
快速搜索符号
由于Android代码庞大,使用普通的搜索工具(例如grep)几乎无法完成规定时间内符号或者字符串的搜索。为了解决这个问题,需要从两个方面入手。
- 使用更快的搜索工具
例如使用rg替代grep,使用fd替代find。这样能大幅缩减搜索时间。 - 缩小搜索范围
使用Vim Worspace的概念,实现不同维度的搜索,例如从当前文件、当前工程等等。只需要通过不同快捷键就可以实现。
订阅评论
登录
0 评论
最旧


