Skip to content

Latest commit

 

History

History
82 lines (66 loc) · 3.89 KB

README.org

File metadata and controls

82 lines (66 loc) · 3.89 KB

UwUnyaa’s .emacs

About this .emacs

This is my config for GNU Emacs. It won’t work with GNU Emacs 24 and older versions. Tables with customized keybindings are here.

If you want to reuse any of my own code from this repository, feel free to do it. I’d appreciate comments linking to my repository before function definitions from here, but they’re not necessary. I didn’t put any license on this repository to avoid possible conflicts with extensions.

Untracked directories for local configuration

I hold my settings specific to my Arch installation in ~/.emacs.d/config/my-local.el. You can put your own customizations there if you want to use my config.

This config is used on these operating systems:

Installation:

On Unix-like operating systems such as GNU/Linux and on Termux:

cd ~
git clone https://github.com/UwUnyaa/.emacs.d.git

You can update this config with git pull.

You’ll need git installed to pull in dependencies with straight.el. Most packages are pulled straight from the master branch of each repo.

Make sure you don’t have a file named .emacs in your home directory, because it overrides ~/.emacs.d/init.el.

If you are on Windows NT, copy .emacs.d to %appdata%. You’ll need to set up the HOME environment variable on older versions of Windows, and copy this config there.

The default font is set to DejaVu Sans Mono, it tends to come with modern versions of Windows and might be preinstalled in your distro. Emacs should fall back to something sane, but installing it is highly recommended.

Structure of directories in this repo

this directory

README.org
This file.
init.el
The first file from this repo that is loaded. It only contains code that loads other files. No customizations should go in there.

config

my-defuns.el
Definitions of custom functions (in this case ones that use default dynamic scoping.)
my-defuns-lexical.el
Definitions of functions that rely on lexical scoping. Mostly functions that generate closures.
my-customization.el
Contains basic general Emacs customization, and customization for modes that come with it out of the box.
my-straight-init.el
Contains the straight.el bootstrap snippet.
my-straight-packages.el
Defines dependencies of this config.
my-extensions.el
Customization for added extensions.
my-local.el
Untracked file for installation-specific settings.

documentation

This directory contains .org files with additional documentation. More files might be added to it in the future.

changed-keybindings.org
Tables listing changed keybindings.

snippets

This directory contains snippets for yasnippet, each major mode gets its own directory, and file names reflect the key that triggers snippet expansion.

Information about deprecated parts of this config

Since this configuration is version controlled via git, you can check out old commits to see how this repository changed over time as well as seeing parts of it that were deprecated.

Here are some possibly interesting commits in this repository:

fd2a7db84e315ed3980fe3ce86535e36aa6c7b0a
the last commit before I moved to use straight.el as my package manager, contains code that automagically sets up load-path as well as a simple function to generate autoload files.