1. Core Modules
Core modules constitute the basic functionality and feature-set of the program. They are loaded unconditionally at startup.
2. Automatic Optional Modules
In addition to core modules, there are a number of optional modules. Some optional modules are enabled by default, and it is these that are termed automatic optional modules. They are loaded before the rc, which gives the user an opportunity to configure any features they provide. They can be prevented from being loaded by a set of preferences.
- FAQ: Why are some optional modules enabled by default and others not?
- Optional modules are enabled by default only if the features they provide are unobtrusive, i.e., they don't cause the program to behave in counterintuitive ways. Page-modes can fall into this category when they can be reasonably judged as an unambiguously beneficial improvement to the website that they affect.
Last of all, windows and buffers are created. Startup is now done.