Skip to content

Latest commit

 

History

History
133 lines (90 loc) · 3.65 KB

README.md

File metadata and controls

133 lines (90 loc) · 3.65 KB

README

Personal Emacs configure

My environment:

  • Emacs master branch (check Install)
  • macOS

All configure files store in ~/.emacs.d that Emacs default path.

Usage

Install

Use this repo to compile emacs in my local.

Use straight.el to manage packages. Don't need to install packages manually.

Languages Supported and System Dependency

List all languages support and the dependencies that need install in system. All packages which Emacs need in packages file.

  • Common Lisp
    • SBCL
  • Clojure
    • lein
    • clojure
  • Tex
    • mactex
  • Markdown
  • Java (not write for a long while)
    • jdk
  • Python
    • ipython
    • autopep8
  • Golang
  • Swift (not write for a long while)
  • Haskell
    • cabal
    • stylish-haskell (installed by cabal)
    • hasktags
    • hindent
  • Rust
    • cargo
    • cargo-fmt
    • racer
    • rustfmt
  • HTML & PHP
  • Ocaml
    • opam
  • coq
  • elm
    • elm-oracle
  • julia
  • C/Cpp
    • gcc install by homebrew, flycheck settings in lisp/init-c.el

About

About LSP

LSP configuration in lisp/init-lsp.el

Golang

Use Gopls be my LSP

Javascript/Typescript

Use deno be my LSP

Rust

Use rust-analyzer be Rust LSP. Update/Install it by using sbcl --load ./plugins/update-rust-analyzer-v2.lisp. You need has sbcl and quicklisp installed.

Or, which I am using now, rustup component add rust-analyzer can install the rust-analyzer directly.

About ispell

I use aspell as ispell backend which installed by homebrew in my local machine. Flyspell config does not have single .el file, its require rule in /lisp/init-markdown.el

About org-mode

org-agenda-files is be set by environment variable $ORG_PATH

About custom setting

The custom setting configure at the bottle of init.el. Focus on jdee-jdk-registry, you should change jdk path to your java home dir, or use /Library/Java/Home symbolic link instead of true jdk path.

About Plugins

Some scripts or tools. Get more detail in plugins README

About Ag

helm uses Ag be "grep" implement. So I install ag in my local and define command in init-helm.el.

About forge

forge is the package binding with magit for getting details from Github of this repo.

Several configurations links:

For me, I just make ~/.authinfo like

machine api.github.com login {username}^forge password {github_token}

About tree-sitter (treesit)

CAUTION: not stable yet

I use tree-sitter-module build the tree-sitter libraries.

Then move the dylib files to the treesit-extra-load-path ("~/.emacs.d/tree-sitter-libs/"), which set in lisp/init-custom.el)