Skip to content

mrunhap/.emacs.d

Repository files navigation

WIP

Before use this emacs config

About keybinding

Use meow as modal editing and all keybindings basiclly for dvorak keyborad layout.

Still want to ues

Make sure emacs can find program in PATH.

sh -c 'printf "%s" "$PATH"' > ~/.path

Change font and theme

C-h v:

  • my/fonts-default
  • my/fonts-variable-pitch
  • my/fonts-cjk
  • my/fonts-unicode
  • my/fonts-emoji
  • my/font-size-default
  • my/theme
  • my/theme-tui

Dep

git

Optional

  • curl
  • direnv
  • rg
  • kubectl for kubel
  • d2 text to diagram
  • delta for magit-delta
  • rsync for dired-rsync
  • aspell and dicts for spell check
  • w3m read html mail
  • tdlib for telega(telegram client)
  • xelatex LaTeX compiler, export org to pdf
  • pandoc export org to html with inline image
  • librime Chinese input method, also see emacs-rime
  • M-x copilot-install-server to use copilot in emacs
  • Nerd font to display icon(M-x nerd-icons-install-fonts or install manually)
  • ltex-ls org, markdown
  • digestif LaTeX

Programming language specific

Develop workflow

Basic concepts

Lint(flymake)

Formater(aphe)

Auto complete(company)

Auto complete backend(eglot citre)

Debugger(gud dape)

Jump to def(dumb-jump eglot citre)

Tramp

Golang

Python

pyright ruff

venv

pdm

jupyter

Some package specific config

AI & Translator

Write to ~/.authinfo

machine api.deepl.com login auth-key password ****
machine api.openai.com login apikey password ****

Debug

Python

  • Use dape

M-x dape and use debugpy adapter.

Add :python "project/.venv/bin/python" to use virtual enviroment.

  • pdb

Or use M-x pdb: python -m pdb main.py.

  • pdb.set_trace()

Just add this to program and run:

import pdb
pdb.set_trace()

FAQ

Install package

Custom config

rime, can’t find emacs_module.h?

Set ==rime-emacs-module-header-root= to emacs/include, eg:

(setq rime-emacs-module-header-root
      (file-truename
       (concat
        (file-name-directory
         (directory-file-name
          (file-truename invocation-directory)))
        "include")))

rime, can’t find rime_api.h?

Set rime-librime-root to librime.

Get librime path installed with nix:

nix eval nixpkgs#librime.outPath

Automatic File Headers

See Auto Insert Mode.