Skip to content

Latest commit

 

History

206 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

kzar / emacs.d

Intro

My personal Emacs configuration. Mostly here for my own convenience although feel free to have a poke around.

Requirements

Language servers

Rich text <-> Markdown/Org conversion

Installing dependencies

# Assuming Node.js and Emacs are already installed...

npm install --global typescript typescript-language-server

# Fedora
sudo dnf install ripgrep fd-find gcc enchant2-devel enchant2-aspell aspell-en pkgconf-pkg-config clang-tools-extra rust-analyzer pandoc-cli wl-clipboard

# macOS
brew install ripgrep fd enchant pkgconf llvm rust-analyzer pandoc

Usage

Again more for me but here's how I use this repo:

  git clone git@github.com:kzar/emacs.d.git ~/.emacs.d

  # Fedora KDE
  secret-tool store --label='IRC Libera' host irc.libera.chat user kzar
  secret-tool store --label='IRC OFTC' host irc.oftc.net user kzar

  # macOS
  security add-internet-password -U -a kzar -s irc.libera.chat -w
  security add-internet-password -U -a kzar -s irc.oftc.net -w

  # Other machines - put credentials in `~/.authinfo.gpg`:
  machine irc.libera.chat login kzar password LIBERA_PASSWORD
  machine irc.oftc.net login kzar password OFTC_PASSWORD

Chromium and Firefox development

Add .dir-locals.el files to the project roots, to set up code search, compiling and clangd:

;; Chromium
;; Notes:
;; - First enable `checkout_clangd` in `.gclient` and run `gclient sync`.
;; - Also remember to regenerate `compile_commands.json` after building.
((nil . ((code-search/url-builder . code-search/builder-chromium)
         (compile-command . "autoninja -C out/Release chrome")
         (clangd-executable .
          "~/PATH_TO_CHROMIUM/src/third_party/llvm-build/Release+Asserts/bin/clangd"))))

;; Firefox
;; Notes:
;; - First run `./mach ide vscode --no-interactive`
((nil . ((code-search/url-builder . code-search/builder-firefox)
         (compile-command . "./mach build")
         (clangd-executable .
          "~/.mozbuild/clang-tools/clang-tidy/bin/clangd"))))

Also remember to disable background indexing and header insertions in the project .clangd file or your global clangd/config.yaml:

Index:
  Background: Skip
Completion:
  HeaderInsertion: Never

Resources

About

My personal Emacs configuration

Resources

Stars

4 stars

Watchers

2 watching

Forks

Releases

Packages

Contributors

Languages