为什么 Vim 打开大文件的速度比其他一些文本编辑器更快?

为什么 Vim 打开大文件的速度比其他一些文本编辑器更快?

打开大型日志文件时(当然,不是很大,但 80mb 仍然是很多文本!),我一直使用 Vim,因为它几乎可以立即加载它们。其他文本编辑器(如 Notepad、Notepad++ 等)将需要 10 秒以上的时间来处理和加载文件。这是什么原因?是什么让 Vim 如此之快?

答案1

编辑人员可以使用多种技巧来优化大文件的处理。

一是只处理他们需要的内容。这意味着不要尝试解析整个文件,例如行数计算、宽度测量、自动换行、语法突出显示、XML 验证、HTML 渲染、撤消等。还有大文件插件可用于 Vim,当打开“大”(由用户定义)文件时,它将禁用 Vim 的许多功能。大文件加载速度更快Vim wiki 上的页面提到了一些禁用的功能:忽略文件类型(用于语法突出显示/解析)、禁用撤消、切换到只读模式。还有其他更改,但它们似乎更注重内存节省而不是速度。

另一个是内存映射。不是将整个文件读入内存,而是告诉底层操作系统将文件视图直接映射到进程内存空间。我不确定 Vim 是否特别这样做,但其他编辑器可以并且确实这样做了。

这两个可能是最大的,但肯定还有更多。

相关内容