И нет, не потому что не могу его закрыть




Vim — мой редактор по умолчанию. Для этого нет определённой причины кроме той, что я начал его изучать, когда перешёл на Linux много лет назад. По итогу он мне понравился, потому что я мог редактировать свои маленькие файлы с исходниками на четырёхъядерной машине без необходимости ожидать вечность, пока файл откроется.

Конечно, Vim неплохой редактор, он исключительно расширяемый, он есть везде, так что когда ты подключаешься по ssh к какому-нибудь неизвестному серверу, то всегда можешь набрать vim (или vi) и всё в порядке.

Но здесь речь не о том, что Vim отличный редактор, это дело вкуса. Я застрял на нём в первую очередь из-за того, что это расширяемый редактор, который не пожирает все ресурсы и не убивает мои машины. Редакторы Atom и Code часто замораживают систему на несколько минут, когда набираешь единственный символ.

Сколько памяти, на ваш взгляд, нужно для открытия такого файла С?

#include <stdio.h>
int main() {
  printf("Hello, world!\n");
}

Использование памяти


Ответ: сумасшедшее количество.


Потребляемая память в КиБ при открытии файла с исходным кодом С размером около 60 байт

Code требует чудовищные 349 мегабайт, чтобы открыть файл в 60 байт. Atom занимает 256 мегабайт. В то время как Vim довольствуется «всего» 5 мегабайтами, что тоже многовато, но это средняя конфигурация.

Я также включил сюда Nano, чтобы был ещё один текстовый редактор для сравнения с Vim, ему требуется меньше мегабайта.

Что насчёт файлов большего размера? Открытие XML размером 6 мегабайт в Vim требует около 12 мегабайт. Nano идёт примерно ноздря в ноздрю с Vim. Редактору Code нужно 392 мегабайта, а Atom отъедает сумасшедшие 845 мегабайт.


Потребляемая память в КиБ при открытии файла XML размером около 6 мегабайт

Время загрузки


Что насчёт времени, которое необходимо для открытия того же файлы XML и перемещения курсора в его конец? Здесь похожая история. Операция в Atom и Code занимает почти 20 секунд, в Vim — около 4 секунд. Sublime тут показал удивительную быстроту, справившись всего за секунду.


Время в секундах для открытия файла XML размером 6 мегабайт

Поиск и замена 100 000 экземпляров слова в том же файле XML привели к довольно неожиданным результатам. Nano и Atom провалились, потребовав в среднем почти 10 минут для выполнения этой задачи. Atom упал несколько раз, пытаясь добиться результата. У Code это заняло около 80 секунд. Sublime финишировал за 6 секунд, а Vim — всего за 4 секунды.


Время в секундах для поиска и замены 100 000 экземпляров слова

Вывод


Изучайте Vim. Стоит оценить http://vimcasts.org, это советы и хитрости по Vim от Дрю Нейла, который также написал эту замечательную книгу.



Если не Vim, то можно Emacs. Или что угодно ещё, только не веб-браузер, который притворяется текстовым редактором.

Это просто смешно, когда редактор потребляет всю вычислительную мощность и память, доступные на «современном» дорогом ноутбуке, хотя они ему вовсе не нужны.

Тестовые файлы для бенчмарков взяты из этого репозитория, результаты усреднены между этим набором данных и моим собственным.

Комментарии (0)