Eev-wconfig.el: configuring eev on M$ Windows without magic
Let's start with a slogan:
In this page I will use the term "magic" as a shorthand for a "sufficiently advanced technology", i.e., something complex and non-obvious, "that is indistinguishable from magic", in the sense of being almost impossible to understand. I will also use "black box" as a near-synonym for "magic"; "black box" has more letters than "magic", but it invites us to use expressions like "opening the black box".
The standard way to configure things in Emacs is with M-x customize - that has too much "magic" for me, and that has too many black boxes that I don't know how to open... for example, buttons. This page, from april/2022, describes some of my experiments in trying to make parts of eev configurable "with less magic". What I am going to describe here is another experiment: eev-wconfig.el, that became ready in may/2022.
Note that one of the parts of my presentation at the EmacsConf2020 was about alternatives "with no black boxes" to the main help commands of Emacs. You can access it here:
Making eev work fully on M$ Windows used to be nightmarishly hard. Here is another famous quote (taken from here):
A Windows user who has never used Emacs or a *NIX-like system in his life can learn lots of life-, mind-, and soul-changing ideas by just installing Emacs and eev by following the instuctions here and here, and then playing with them a few hours... but everything will make sense much faster if the person can also set up the modules of eev that download local copies of videos and PDFs, and that access these local videos and PDFs - and this requires downloading some external programs, and configuring them.
The easiest way to explain how the configuration "without magic" works is by screenshots. If we run `M-x find-wconfig-links' we get the temporary buffer in the first screenshot below; each of the `(find-wconfig-*-links)' sexps in the blue region is a "sub-wconfig" that we need to run to complete the configuration. The second screenshot below shows what we should have in our ~/.emacs after the configuration; each one of its five blocks is the end result of running one of five sub-wconfigs, and each of these five blocks starts with comments that include a line like this,
that "opens a black box" and shows where that block came from.
Some of these sub-wconfigs contain sections that only need to be run once. For example, the sections 1 and 2 of `(find-wconfig-wget-links)' - in the third screenshot above - contain code for downloading a version of wget for Windows and many other files from this directory, and to put these files in the directory ~/eev-wconfig/.
I recorded three videos about eev-wconfig.el: one in English and two in Portuguese. The ones in Portuguese were recorded first, as a kind of a rehearsal for the one in English - the video in English is much better. Screenshots:
The videos are called:
The images that I used in the opening screens of the videos in Portuguese are stills from this episode of Sítio do Pica-Pau Amarelo. Most of the graphic design of the series was made by Rui de Oliveira; here is a text that he wrote about Cuca, the witch that was a cross between Baba Yaga, a tyranosaur, and a crocodile, and that was the villain of that arc of the series. The image that I used in the video in English is a still from "Gwen, or: The Book of Sand"; I also mentioned that movie in my video about the small elisp tutorial that comes with eev.
In 2022may22 I announced the eev-wconfig video on the Org mailing list. I got some angry feedback from Ihor Radchenko (who had been kind of "unkind" to me in the past, in a thread about this question); I answered this.
The video in English ends with an exercise, that is roughly this: