summaryrefslogtreecommitdiffhomepage
path: root/readme.org
diff options
context:
space:
mode:
Diffstat (limited to 'readme.org')
-rw-r--r--readme.org91
1 files changed, 15 insertions, 76 deletions
diff --git a/readme.org b/readme.org
index 3c92a73..4614cb6 100644
--- a/readme.org
+++ b/readme.org
@@ -1,78 +1,17 @@
#+title: Emacs configuration and personal packages
-#+property: header-args :tangle ~/.emacs.d/init.el :comments no :results silent
-#+auto_tangle: t
-* Bootstrap
- This is the emacs standard init file, which will load (maybe
- tangled) the file [[./init.org][init.org]], checking first whether a fresh tangle is
- needed. Note that the rest of elisp tangling in init.org goes to a
- different file (namely, the one that is loaded by
- =~/.emacs.d/init.el=).
-
- However, also note that if [[https://github.com/jingtaozf/literate-elisp/blob/master/literate-elisp.org][literate-elisp]] is installed, we load
- instead the org file, directly. It's because of that that we start
- by setting up packages. A drawback of literate-elisp is that it
- only knows how to load with lexical binding set to nil, so i tend to
- prefer just loading tangled .el files. The packages [[https://github.com/yilkalargaw/org-auto-tangle][org-auto-tangle]]
- (to asyncronously generate those files) and [[https://github.com/oantolin/embark][embark]] (to easily
- navigate between the two flavours) come in handy in that scenario.
-
- Here's the directory where a checkout of this repo lives:
-
- #+begin_src emacs-lisp
- (defvar jao-emacs-dir (expand-file-name "~/etc/emacs"))
- #+end_src
-
- followed by package.el's initialisation:
-
- #+begin_src emacs-lisp
- (setq package-user-dir
- (expand-file-name (format "~/.emacs.d/elpa.%s" emacs-major-version))
- package-check-signature 'allow-unsigned)
-
- (require 'package)
- (dolist (a '(("melpa" . "https://melpa.org/packages/")
- ("gnu-devel" . "https://elpa.gnu.org/devel/")))
- (add-to-list 'package-archives a t))
- (setf (alist-get "gnu" package-archives nil t #'string=) nil)
-
- (package-initialize)
- #+end_src
-
- and a tangling helper:
-
- #+begin_src emacs-lisp
- (require 'org)
- (defun jao-load-org (file)
- (let ((file (concat (file-name-sans-extension file) ".org")))
- (org-babel-load-file (expand-file-name file jao-emacs-dir))))
- #+end_src
-
- Finally, we load either init.org or its tangled version from
- ~jao-emacs-dir~:
-
- #+begin_src emacs-lisp
- (jao-load-org "init")
- #+end_src
-
- You can tangle this readme to generate the minimal init.el file above.
-
-* Configuration as a set of literate files
-
-- [[./init.org][init.org]]: main configuration as a literate org file; it uses
- (besides lots of packages), many of my libraries in [[./lib][lib]], and loads
- on demand the other org files below.
-- [[./completion.org][completion.org]]: completion setup using corfu, vertico, consult and
- friends.
-- [[./org.org][org.org]] org mode configuration.
-- [[./blog.org][blog.org]]: blogging using org-static-blog.
-- [[./email.org][email.org]]: email handling in emacs.
-- [[./gnus.org][gnus.org]]: email using gnus.
-- [[./notmuch.org][notmuch.org]]: email using notmuch.
-- [[./eww.org][eww.org]]: browsing with eww.
-- [[./exwm.org][exwm.org]]: configuration for exwm, loaded when ~jao-exwmn-enable~ is
- called.
-
-The [[./attic][attic]] contains other literate configuration files not currently
-used by init.org, like [[./attic/counsel.org][counsel.org]] for old ivy-based completion, or
-[[file:attic/w3m.org][w3m.org]] for an emacs-w3m configuration i used for many years.
+- [[./init.el][init.el]]: main init file; it uses (besides ELPA packages loaded via
+ ~use-package~), my unpackaged libraries in [[./lib][lib]], and loads on demand
+ the other custom files below.
+
+- [[./custom/jao-custom-completion.el][custom/jao-custom-completion.el]]: completion setup using vertico,
+ consult and friends.
+- [[./custom/jao-custom-org.el][custom/jao-custom-org.el]] org mode configuration.
+- [[./custom/jao-custom-blog.el][custom/jao-custom-blog.el]]: blogging using org-static-blog.
+- [[./custom/jao-custom-email.el][custom/jao-custom-email.el]]: generic email handling in emacs.
+- [[./custom/jao-custom-gnus.el][custom/jao-custom-gnus.el]]: gnus-specific configuration.
+- [[./custom/jao-custom-notmuch.el][custom/jao-custom-notmuch.el]]: notmuch-specific configuration.
+- [[./custom/jao-custom-eww.el][custom/jao-custom-eww.el]]: browsing with eww.
+- [[./custom/jao-custom-exwm.el][custom/jao-custom-exwm.el]]: configuration for exwm.
+
+The [[./attic][attic]] contains other configuration files not currently used by ~init.el~.