Skip to content

peterzuger/.emacs.d

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

635 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

emacs

~/.emacs.d

Status GitHub Issues GitHub Pull Requests License


My Emacs Configuration

📝 Table of Contents

🧐 About

This Repository contains my emacs configuration for everything.

The entire configuration is centered around use-package and almost everything is configured using it.

🏁 Getting Started

These instructions will get you a copy of my emacs setup up and running on your local machine.

Prerequisites

To use my ~/.emacs.d you will need to install the following packages on your system these examples are the ArchLinux packages but they should exist in other repositories:

Emacs Package Prerequisites Link
auctex Texlive https://www.tug.org/texlive/
black python-black https://github.com/psf/black
flyspell aspell http://aspell.net/
lsp C/C++ clang https://clang.llvm.org/
lsp-jedi python-virtualenv https://pypi.org/project/virtualenv/
lsp-jedi jedi-language-server https://github.com/pappasam/jedi-language-server
magit git https://git-scm.com/
mu4e mu https://www.djcbsoftware.nl/code/mu/
mu4e offlineimap http://www.offlineimap.org/
pycheckers bandit https://github.com/PyCQA/bandit
pycheckers flake8 http://flake8.pycqa.org/
pycheckers pyflakes https://pypi.python.org/pypi/pyflakes
pycheckers pylint https://pylint.org/

install ~/.emacs.d/

Just clone this repo with:

git clone --recursive https://github.com/peterzuger/emacsd.git

The --recursive is required, otherwise the sub-repository's wont be downloaded.

And place it in ~/.

You can also directly clone it into ~/.emacs.d:

git clone --recursive https://github.com/peterzuger/emacsd.git ~/.emacs.d

Package Installation

When starting emacs for the first time with my ~/.emacs.d, emacs will automatically install all packages that are not builtin.

This should only take a few minutes. This only takes long during the very first startup.

Package Name Notes
ace-window
auctex
avy
cmake-mode
company-emoji
company-shell
company
counsel
csv-mode
diminish
dockerfile-mode
emojify
engine-mode
fill-column-indicator
flycheck-pycheckers
flycheck
haskell-mode
highlight-indent-guides
hydra
immortal-scratch
ivy-hydra
ivy
js2-mode
js2-refactor
json-mode
lsp-jedi
lsp-mode
magit
markdown-mode
mu4e is only loaded when mu is installed
multiple-cursors
ob-rust
org-roam-ui
org-roam
org
orgit
pdf-tools
pinentry
python-black
pyvenv
scad-mode
smartparens
swiper
systemd
xref-js2
yaml-mode
yasnippet

Use emacs

And emacs is ready to use !

Some usefull keybinds that are not standard are listed here sorted by their usefulness:

Keybinding Description Note
M-o switch window using ace shortcuts
C-| toggle fill-column indicator
C-<tab> complete any yasnippet
C-c g magit (just the best)
C-c C-m mu4e only if mu is installed
C-c e elfeed RSS/Atom reader
C-c c org capture
C-c a org agenda
C-c n f org roam node find
C-c n c org roam node capture
C-c n g org roam ui mode
C-c C-l compile from anywhere
C-c M-l switch to compilation window
C-c C-g gptel
C-c M-g gptel menu
C-x C-g insert a random string
C-x C-l smart downcase region/word
C-x C-u smart upcase region/word

About

My Emacs configuration

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors