My dotfiles and scripts, and configuration. The shell part is specific for zsh, using zinit & powerlevel10k.
The files are managed by GNU Stow, divided by tool or functional area: git, emacs, etc—see the top level-directories. Different systems use different subsets of configuration, specified by some files, as described in the installation section.
The biggest part of configuration is for Emacs, currently version 29.1. The focus is on seamless integration between all the different packages, avoiding surprises, and adding polish here and there. Of course, that is very much a work in progress.
I have started splitting out logical units into standalone Elisp packages, where it makes sense, to increase maintainability:
- org-autotask: Org agenda views, clocking, automation.
The bulk of configuration is in my-setup.el, along with some parts split into its own files in the same directory, there is also early-init.el and init.el. There is also some system-specific setup over at darwin.el.
I am not using literate configuration, which seems to be very popular among Org users at least. Maybe I should. Likewise for use-package.
I always prefer a melpa-stable version, if available and not broken. Unfortunately, that is not always possible.
org magit and forge lsp-mode flycheck company projectile m4e
GCMH org-roam wgrep org-gcal vterm deadgrep undo-tree
rich-minority dispwatch lsp-treemacs calfw which-key keyfreq iedit eldoc-cmake aggressive-indent-mode yaml-mode markdown-mode ssh-config-mode bison-mode cmake-mode grab-mac-link cheat-sh beginend git-modes flycheck-google-cpplint difftastic.el pr-review
solarized-theme git-gutter-fringe company-box page-break-lines xterm-color all-the-icons-dired cmake-font-lock beacon flycheck-status-emoji stripe-buffer prism.el info-colors topsy.el org-sticky-header
tramp ts
- Disable global-display-fill-column-indicator in read-only buffers
- macOS: add the missing man page paths for woman
- Re-enable Shellcheck if using lsp-mode with bash-language-server
- Clicking on URLs should open them instead of spellchecking them
- Workaround the projectile issue of remote projects not being added to Projectile project list.
- Add Projectile reconfigure command for CMake presets.
- Automatically update git gutter on Magit actions.
- Disable color-identifiers-mode under LSP with semantic highlighting
- Reduce LSP info in the modeline
- Show git ignored files in
dired-ignored
face
- Set frame geometry after docking/undocking laptop automatically
my-recompile-packages
: force recompiling all the installed packages, after a Emacs version upgrade or a borked package upgrade.kill-buffers-rm-worktree
: bound toy
in the Projectile keymap, kills all buffers and executesgitrmworktree.
See INSTALLATION.md
See setup-ubuntu.sh, setup-centos6.sh, and setup-macos.sh.
-
https://www.reddit.com/r/emacs/comments/ja97xs/weekly_tipstricketc_thread/g985tg9
-
https://www.reddit.com/r/emacs/comments/6iqtze/org_mreturn_annoyance/
-
https://github.com/aadi58002/stow-dotfiles/blob/main/.config/emacs/init.org
-
https://pawelgrzybek.com/change-macos-user-preferences-via-command-line/
-
https://metaredux.com/posts/2020/07/07/supercharge-your-bash-history.html