Skip to content

daehwannam/emacs-config

Repository files navigation

My emacs configuration

This project is my daily used emacs configuration. The code is not well-documented and may have bugs.

Setup

if [ -e ~/.emacs.d ]; then
    echo "\"~/.emacs.d\" exists already"
else
    git clone https://github.com/daehwannam/emacs-config.git ~/.emacs.d
    cd ~/.emacs.d
    ./update.sh
fi

Configuration

Machine-independent configuration

My emacs runs over different machines (computers), such as desktops, laptops and remote servers. Therefore, emacs should apply a differnt configuration to each machine.

This demand is handled by ~/machine-config.el:

  1. ~/machine-config.el loads ~/.emacs.d/config/options.txt
  2. Depending on the options (e.g. base), each configuration value (e.g. installable-packages) is determined.

If ~/.emacs.d/config/options.txt doesn’t exist, it is created when emacs starts up. By default, ~/.emacs.d/config/options.txt includes only base.

Initialization files

Most of code that is loaded when emacs boots up is split into files located in ~/.emacs.d/config/init. The code is related to major modes, key bindings, hooks, etc. The initialization code depends on my emacs-library.

EXWM

To install EXWM, you should add exwm-setup to ~/.emacs.d/config/options.txt. You can run EXWM in a virtual console in Linux by the following command:

~/.emacs.d/exwm/run.sh

Addtional command-line options

  • --exwm: enable EXWM(this option is used by ~/.emacs.d/exwm/run.sh)

About

My emacs configuration

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published