Our great sponsors
-
doom-emacs
Discontinued An Emacs framework for the stubborn martian hacker [Moved to: https://github.com/doomemacs/doomemacs]
-
WorkOS
The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.
-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
You might want to check out system-crafters and his emacs from scratch series: https://github.com/daviwil/emacs-from-scratch
Since you came from VS-Code which is more opinionated than Emacs on how it wants to be configured, and since you want Vim keybindings, I highly recommend you use Doom Emacs, which provides you with an easy-to-use configuration system. The "Getting Started" guide is excellent, please read it!
As an example, consider the company package, providing auto-completion. The "installation" section tells you how to 'download the source code of the package and store it somewhere accessible to Emacs'. The 'Usage' part is split in two parts. The first one tells you how to enable the package functionality in the current session. To truly customize Emacs, you need to
You can take a look at the default init.el file for Doom emacs here, as you can see, there is a :lang section where you can uncomment support for commonly used languages. Although you generally don't change the init.el file too much, usually, it is there to load your actual config files. If your language is not supported out of the box, there are ways to add packages (a.k.a. "plug-ins") in packages.el. And you can add customizations in config.el.
Personally I grabbed /u/jacmoe 's emacs.d after coming across his blogpost a few years ago.