sheepduke / emacs-config

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Introduction

This repository contains Emacs settings used by me.

How to Use

Installation

  1. Place settings/.emacs file to your $HOME directory and others to $HOME/.emacs.d/.
  2. Open Emacs and run command package-refresh-contents.
  3. Navigate to ~~/.emacs.d/settings/~ and run C-u 0 byte-recompile-directory. This will install all required packages and compile .el files into byte code (.elc files).

Upgrading

After updating the code, run C-u 0 byte-recompile-directory again. This will automatically install missing packages.

Tip:

Emacs uses variable package-selected-packages to store a list of packages installed by the user. You may save this variable and later use function (package-install-selected-packages) to install them back.

However, a better solution might be using :ensure feature of use-package.

Directory Hierarchy

settings

The place where all configuration and custom plugin (outside elpa) goes.

  • .emacs: Backup for $HOME/.emacs file.
  • a0-variables: Definition of global variables.
  • a1-functions: Definition of common functions.
  • b0-customize: Customization of built-in functionality.
  • b1-tools: Small tools that bring much efficiency.
  • b2-display: Customization related to buffer display, X window etc.
  • c3-external: Tools that relies on external programs.
  • d0-helm: helm configuration. You may find Ivy related things in d0-ivy backup file.
  • d1-dev-common: Some common programming configuration.
  • d2-dev-lang: Configuration for each programming language.
  • e1-org-mode: Org related settings.
  • f4-mail: Configuration for Notmuch email client.

data

Place where all internally used data.

  • aspell.en.pws: Personal dictionary for ispell.
  • eshell-alias: Alias definition for eshell.
  • yasnippets: Place for custom yasnippet.

plugins

Place for ad-hoc plugins, including those made by myself.

About

License:The Unlicense


Languages

Language:Emacs Lisp 89.1%Language:Common Lisp 7.5%Language:C 3.2%Language:Shell 0.1%Language:YASnippet 0.0%Language:Makefile 0.0%Language:Dockerfile 0.0%Language:M4 0.0%Language:HTML 0.0%