50 lines
2.3 KiB
Plaintext
50 lines
2.3 KiB
Plaintext
<p>When you are tinkering with Emacs, would it be great to refer to others'
|
||
configs automatically?</p>
|
||
|
||
<p>In a sense, we are doing it manually already: We often go to other people's Github
|
||
repos and look at their configs (either in code or in a giant <code class="language-plaintext highlighter-rouge">.org</code>
|
||
file).</p>
|
||
|
||
<p>With Doom Emacs, we may streamline the process. Here's my reasoning:</p>
|
||
|
||
<p>Doom Emacs establishes a convention of configuration files:</p>
|
||
|
||
<ul>
|
||
<li>Doom modules enabled in <code class="language-plaintext highlighter-rouge">init.el</code></li>
|
||
<li>Other non-Doom packages: <code class="language-plaintext highlighter-rouge">package.el</code></li>
|
||
<li>Customization stored and managed in <code class="language-plaintext highlighter-rouge">custom.el</code></li>
|
||
<li>All private configs live in <code class="language-plaintext highlighter-rouge">config.el</code></li>
|
||
</ul>
|
||
|
||
<p>In other words, Doom standardizes (and simplifies) the Emacs configurations.</p>
|
||
|
||
<p><strong>With all the famous people’s configs, we can build a service to automatically
|
||
analyze their configs and answer questions like</strong>:</p>
|
||
|
||
<ul>
|
||
<li>Should I use this Doom package?</li>
|
||
<li>How do people configure it? What options do people use?</li>
|
||
<li>Is there any packages people use that matches the keyword <code class="language-plaintext highlighter-rouge">foo</code>?</li>
|
||
<li>What's the popularity of this config?</li>
|
||
<li>…</li>
|
||
</ul>
|
||
|
||
<p>We can build a program to pull the list of Doom config repos, and
|
||
perform file parsing to get the stats.</p>
|
||
|
||
<p>It would also help the community to improve the defaults on Doom Emacs. Say, if
|
||
the majority of users add package X in Doom, it is a appealing reason for Doom
|
||
to incorporate X.</p>
|
||
|
||
<p>We can extend the idea: <strong>Because Emacs can
|
||
act as a server and is inspectable, why don't we spin up an Emacs
|
||
cluster running all kinds of configs</strong>.</p>
|
||
|
||
<p>The service can answer all kinds of config queries.</p>
|
||
|
||
<p>A usage scenario: People send in their 1) Emacs version, 2) Doom
|
||
version, 3) package name, and the service returns a list of
|
||
configurations for that package, together with popularity data, and
|
||
documentation that people can search and learn.</p>
|
||
|
||
<p>What do you think of this idea? Drop me a comment!</p> |