- Features
- Installing
- How to remove unwanted things
- How to create new modules
- How to customise the dashboard
The main features of Pachemacs are Vi emulation (evil-mode), Emacs as Window Manager (exwm), helm, corfu, vertico and some programming languages support with eglot. There are also some functions for downloading media with yt-dlp, converting videos with ffmpeg, Kensington Orbit trackball configuration via xinput etc.
Backup or delete your current .emacs.d directory and clone this repo:
git clone --depth=1 https://github.com/0xhenrique/pachemacs.git ~/.emacs.d
Simple as that. But if you’re willing to use EXWM I recommend that you read further.
There’s a file called init.el
where you can simply comment or delete some of the lisp/modules.
;; If you're not an EXWM enjoyer, you can remove or comment the line below
(load "~/.emacs.d/lisp/pache-exwm.el")
;; If you're not an Evil enjoyer, you might also want to remove pache-evil below
(load "~/.emacs.d/lisp/pache-evil.el")
(load "~/.emacs.d/lisp/pache-ui.el")
(load "~/.emacs.d/lisp/pache-win.el")
(load "~/.emacs.d/lisp/pache-keys.el")
(load "~/.emacs.d/lisp/pache-misc.el")
(load "~/.emacs.d/lisp/pache-utils.el")
(load "~/.emacs.d/lisp/pache-yas.el")
(load "~/.emacs.d/lisp/pache-programming.el")
(load "~/.emacs.d/lisp/pache-irc.el")
(load "~/.emacs.d/lisp/pache-media.el")
Beware that some of those modules are required to run Pachemacs. Be careful when removing it. There is a github issue to track this problem. You can check it here.
If you want to create a new module for you, then create a new file:
touch ~/.emacs.d/lisp/pache-module.el
Add the following boilerplate to the newly created module:
;;; pache-custom.el --- Custom Module Settings -*- lexical-binding: t -*-
;;; Commentary:
;;; Code:
;; This is just an example
(setq gc-cons-threshold 100000000
read-process-output-max (* (* 1024 1024) 3)
inhibit-compacting-font-caches t)
(run-with-idle-timer 2 t (lambda () (garbage-collect)))
(provide 'pache-custom)
;;; pache-custom.el ends here
And call it in the init.el
file like this:
(load "~/.emacs.d/lisp/pache-custom.el")