Какое время запуска редактора приемлемо?
У меня уже где-то полгода вот так:
Startuptime: 75.59 ms
Plugins: 54 loaded / 69 installed
До этого примерно год не парился, когда было ~150 мс.
А время сократилось вдвое вот почему:
• убрал примерно ~30 плагинов
• добавил lazy loading ко многим оставшимся
• закопался в исходники некоторых плагинов
Оказывается нет какого-то канонического способа посмотреть частоту использования плагина. Только если не добавлять в каждый стандартную телеметрию. Но такое вряд ли поддержат в сообществе. Поэтому я просто перечитывал конфиг и, если не вспомнил, что делает плагин, удалял его.
Интересно, что некоторые плагины перестают работать с переходом на lazy loading. И я уверен, что это чисто моя история. Например, nvim-lspconfig не может, да и зачем ему? Если пользуетесь lazy.nvim, то у вас такие варианты:
event, cmd, ft, keys и магический lazy = true. Your mileage may vary ©, поэтому пробуйте.Самый наглядный пример того, как оптимизировать время запуска плагина в исходниках — xkbswitch.nvim. Это плагин, который использует внешнюю утилиту для запоминания текущей раскладки, а потом переключает раскладку на английскую в normal режиме и обратно в последнюю выбранную в insert режиме. Утилита может "долго" (15-30 мс на моём М1 Pro 16 Gb) отрабатывать, так как при первом запуске пытается понять, какую конкретно утилиту использовать и получает из системы список доступных раскладок. По сути это и есть два изменения, которые я сделал — два новых параметра, которые можно указать в конфиге плагина, и небольшой рефакторинг, чтобы не сломалось старое поведение.
В общем, я считаю, что 70-100 мс для редактора — это приемлемо. А сколько нынче запускаются всякие там пайчармы, голэнды и вскоды?