aboutsummaryrefslogtreecommitdiffstats
path: root/doom-emacs/.config/doom
diff options
context:
space:
mode:
authorPeter Son Struschka <me@peter-struschka.com>2020-10-11 12:15:08 +0800
committerPeter Son Struschka <me@peter-struschka.com>2020-10-11 20:22:03 +0800
commite5209aad576fe44d3965fcb94d6709348b0a93bf (patch)
tree3f8c4388d5b2511d78debf5e2d9b1357c3187b38 /doom-emacs/.config/doom
parent37dd411698bd6eae8365260dde39b8ae9c7cbd36 (diff)
downloaddotfiles-e5209aad576fe44d3965fcb94d6709348b0a93bf.tar.gz
dotfiles-e5209aad576fe44d3965fcb94d6709348b0a93bf.tar.bz2
dotfiles-e5209aad576fe44d3965fcb94d6709348b0a93bf.tar.lz
dotfiles-e5209aad576fe44d3965fcb94d6709348b0a93bf.tar.xz
dotfiles-e5209aad576fe44d3965fcb94d6709348b0a93bf.tar.zst
dotfiles-e5209aad576fe44d3965fcb94d6709348b0a93bf.zip
all: overhaul
all: Remove old symlinks herbstluftwm: use polybar instead of dzen2 polybar: update config doom-emacs: update repository
Diffstat (limited to 'doom-emacs/.config/doom')
-rw-r--r--doom-emacs/.config/doom/config.el37
-rw-r--r--doom-emacs/.config/doom/config.org51
-rw-r--r--doom-emacs/.config/doom/custom.el23
-rw-r--r--doom-emacs/.config/doom/init.el48
-rw-r--r--doom-emacs/.config/doom/packages.el4
5 files changed, 127 insertions, 36 deletions
diff --git a/doom-emacs/.config/doom/config.el b/doom-emacs/.config/doom/config.el
index e363dfc..1925650 100644
--- a/doom-emacs/.config/doom/config.el
+++ b/doom-emacs/.config/doom/config.el
@@ -3,6 +3,10 @@
doom-big-font (font-spec :family "Fira Code" :size 24)
doom-variable-pitch-font (font-spec :family "Fira Code" :size 16))
+(use-package! paper-theme)
+(use-package! modus-operandi-theme)
+(use-package! modus-vivendi-theme)
+
(setq projectile-project-search-path '("~/code"))
(setq display-line-numbers-type 'relative)
@@ -16,15 +20,16 @@
))
(after! org
+ (defvar org-capture-todo-file "~/org/todo.org" )
(setq org-capture-templates '(("t" "Personal todo" entry
- (file+headline +org-capture-todo-file "Inbox")
+ (file+headline org-capture-todo-file "Inbox")
"* TODO %?\n%i\n%a" :prepend t :kill-buffer t)
("n" "Personal notes" entry
(file+headline +org-capture-notes-file "Inbox")
"* %u %?\n%i\n%a" :prepend t :kill-buffer t)
("p" "Templates for projects")
("pt" "Project todo" entry
- (file+headline +org-capture-project-todo-file "Inbox")
+ (file+headline org-capture-project-todo-file "Inbox")
"* TODO %?\n%i\n%a" :prepend t :kill-buffer t)
("pn" "Project notes" entry
(file+headline +org-capture-project-notes-file "Inbox")
@@ -87,8 +92,26 @@
(setq dired-dwim-target t)
-(use-package! tide
- :after (typescript-mode company flycheck)
- :hook ((typescript-mode . tide-setup)
- (typescript-mode . tide-hl-identifier-mode)
- (before-save . tide-format-before-save)))
+(use-package! cmake-ide
+ :after rtags
+ :config
+ (require 'rtags)
+ (cmake-ide-setup))
+
+(use-package! eglot
+ :config
+ (add-to-list 'eglot-server-programs '((c++-mode c-mode) "clangd"))
+ (add-hook! (c++-mode c-mode) 'eglot-ensure))
+
+;; (after! eglot
+ ;; (defconst my-eclipse-jdt-home "/home/peter/.emacs.d/.cache/lsp/eclipse.jdt.ls/plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar")
+ ;; (defun my-eglot-eclipse-jdt-contact (interactive)
+ ;; "contact with the jdt server input INETRACTIVE."
+ ;; (let ((cp (getenv "CLASSPATH")))
+ ;; (setenv "CLASSPATH" (concat my-eclipse-jdt-home ":" cp))
+ ;; (unwind-protect (eglot--eclipse-jdt-contact nil)
+ ;; (setenv "CLASSPATH" cp))))
+ ;; (setcdr (assq 'java-mode eglot-server-programs) #'my-eglot-eclipse-jdt-contact)
+ ;; (add-hook 'java-mode-hook 'eglot-ensure))
+
+(setq ledger-default-date-format "%Y-%m-%d")
diff --git a/doom-emacs/.config/doom/config.org b/doom-emacs/.config/doom/config.org
index e6fb8df..7f00a60 100644
--- a/doom-emacs/.config/doom/config.org
+++ b/doom-emacs/.config/doom/config.org
@@ -8,6 +8,13 @@
doom-variable-pitch-font (font-spec :family "Fira Code" :size 16))
#+END_SRC
+* Themes
+#+BEGIN_SRC emacs-lisp
+(use-package! paper-theme)
+(use-package! modus-operandi-theme)
+(use-package! modus-vivendi-theme)
+#+END_SRC
+
* Projectile
Projectile Path
#+BEGIN_SRC emacs-lisp
@@ -35,15 +42,16 @@ Projectile Path
Org capture
#+BEGIN_SRC emacs-lisp
(after! org
+ (defvar org-capture-todo-file "~/org/todo.org" )
(setq org-capture-templates '(("t" "Personal todo" entry
- (file+headline +org-capture-todo-file "Inbox")
+ (file+headline org-capture-todo-file "Inbox")
"* TODO %?\n%i\n%a" :prepend t :kill-buffer t)
("n" "Personal notes" entry
(file+headline +org-capture-notes-file "Inbox")
"* %u %?\n%i\n%a" :prepend t :kill-buffer t)
("p" "Templates for projects")
("pt" "Project todo" entry
- (file+headline +org-capture-project-todo-file "Inbox")
+ (file+headline org-capture-project-todo-file "Inbox")
"* TODO %?\n%i\n%a" :prepend t :kill-buffer t)
("pn" "Project notes" entry
(file+headline +org-capture-project-notes-file "Inbox")
@@ -119,11 +127,38 @@ Do what I mean target allows dired to use window context for copying and moving
(setq dired-dwim-target t)
#+END_SRC
* Laguages
-Typescript
+c++
+#+BEGIN_SRC emacs-lisp
+(use-package! cmake-ide
+ :after rtags
+ :config
+ (require 'rtags)
+ (cmake-ide-setup))
+#+END_SRC
+
+* LSP
+** C++
+#+BEGIN_SRC emacs-lisp
+(use-package! eglot
+ :config
+ (add-to-list 'eglot-server-programs '((c++-mode c-mode) "clangd"))
+ (add-hook! (c++-mode c-mode) 'eglot-ensure))
+#+END_SRC
+** Java
+#+BEGIN_SRC emacs-lisp
+;; (after! eglot
+ ;; (defconst my-eclipse-jdt-home "/home/peter/.emacs.d/.cache/lsp/eclipse.jdt.ls/plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar")
+ ;; (defun my-eglot-eclipse-jdt-contact (interactive)
+ ;; "contact with the jdt server input INETRACTIVE."
+ ;; (let ((cp (getenv "CLASSPATH")))
+ ;; (setenv "CLASSPATH" (concat my-eclipse-jdt-home ":" cp))
+ ;; (unwind-protect (eglot--eclipse-jdt-contact nil)
+ ;; (setenv "CLASSPATH" cp))))
+ ;; (setcdr (assq 'java-mode eglot-server-programs) #'my-eglot-eclipse-jdt-contact)
+ ;; (add-hook 'java-mode-hook 'eglot-ensure))
+#+END_SRC
+
+* Ledger
#+BEGIN_SRC emacs-lisp
-(use-package! tide
- :after (typescript-mode company flycheck)
- :hook ((typescript-mode . tide-setup)
- (typescript-mode . tide-hl-identifier-mode)
- (before-save . tide-format-before-save)))
+(setq ledger-default-date-format "%Y-%m-%d")
#+END_SRC
diff --git a/doom-emacs/.config/doom/custom.el b/doom-emacs/.config/doom/custom.el
new file mode 100644
index 0000000..8b17112
--- /dev/null
+++ b/doom-emacs/.config/doom/custom.el
@@ -0,0 +1,23 @@
+(custom-set-variables
+ ;; custom-set-variables was added by Custom.
+ ;; If you edit it by hand, you could mess it up, so be careful.
+ ;; Your init file should contain only one such instance.
+ ;; If there is more than one, they won't work right.
+ '(custom-safe-themes
+ '("77613b9add591bc59875ccf9171c2373bf351346c29bfa3df84fd3009d9296e9" "5310a2d34612a68db8557433fe9fd3d2af1e6a3b284b4e77ce09858ccfd8c1b7" "09c6d2f5114b42dc9522856de47d9dc331acd051011e451c8402ea2174d22d56" "5d09b4ad5649fea40249dd937eaaa8f8a229db1cec9a1a0ef0de3ccf63523014" default))
+ '(fci-rule-color "#5B6268")
+ '(jdee-db-active-breakpoint-face-colors (cons "#1B2229" "#51afef"))
+ '(jdee-db-requested-breakpoint-face-colors (cons "#1B2229" "#98be65"))
+ '(jdee-db-spec-breakpoint-face-colors (cons "#1B2229" "#3f444a"))
+ '(objed-cursor-color "#ff6c6b")
+ '(org-agenda-files '("/home/peter/org/todo.org"))
+ '(package-selected-packages '(lsp-ui lsp-java lsp-mode cmake-ide))
+ '(pdf-view-midnight-colors (cons "#bbc2cf" "#282c34"))
+ '(rustic-ansi-faces
+ ["#282c34" "#ff6c6b" "#98be65" "#ECBE7B" "#51afef" "#c678dd" "#46D9FF" "#bbc2cf"]))
+(custom-set-faces
+ ;; custom-set-faces was added by Custom.
+ ;; If you edit it by hand, you could mess it up, so be careful.
+ ;; Your init file should contain only one such instance.
+ ;; If there is more than one, they won't work right.
+ )
diff --git a/doom-emacs/.config/doom/init.el b/doom-emacs/.config/doom/init.el
index 735cb8e..1e2a0ad 100644
--- a/doom-emacs/.config/doom/init.el
+++ b/doom-emacs/.config/doom/init.el
@@ -17,15 +17,16 @@
(doom! :input
;;chinese
;;japanese
+ ;;layout ; auie,ctsrnm is the superior home row
:completion
company ; the ultimate code completion backend
- ;;helm ; the *other* search engine for love and life
+ helm ; the *other* search engine for love and life
;;ido ; the other *other* search engine...
- ivy ; a search engine for love and life
+ ;;ivy ; a search engine for love and life
:ui
- ;;deft ; notational velocity for Emacs
+ deft ; notational velocity for Emacs
doom ; what makes DOOM look the way it does
doom-dashboard ; a nifty splash screen for Emacs
doom-quit ; DOOM quit-message prompts when you quit Emacs
@@ -33,15 +34,15 @@
hl-todo ; highlight TODO/FIXME/NOTE/DEPRECATED/HACK/REVIEW
hydra
indent-guides ; highlighted indent columns
+ ligatures ; ligatures and symbols to make your code pretty again
minimap ; show a map of the code on the side
modeline ; snazzy, Atom-inspired modeline, plus API
nav-flash ; blink the current line after jumping
;;neotree ; a project drawer, like NERDTree for vim
ophints ; highlight the region an operation acts on
(popup +defaults) ; tame sudden yet inevitable temporary windows
- ;;pretty-code ; ligatures or substitute text with pretty symbols
- ;;tabs ; a tab bar for Emacs
- ;;treemacs ; a project drawer, like neotree but cooler
+ tabs ; a tab bar for Emacs
+ treemacs ; a project drawer, like neotree but cooler
;;unicode ; extended unicode support for various languages
vc-gutter ; vcs diff in the fringe
vi-tilde-fringe ; fringe tildes to mark beyond EOB
@@ -71,10 +72,10 @@
vc ; version-control and Emacs, sitting in a tree
:term
- eshell ; a consistent, cross-platform shell (WIP)
- ;;shell ; a terminal REPL for Emacs
- term ; terminals in Emacs
- ;;vterm ; another terminals in Emacs
+ eshell ; the elisp shell that works everywhere
+ ;;shell ; simple shell REPL for Emacs
+ ;;term ; basic terminal emulator for Emacs
+ vterm ; the best terminal emulation in Emacs
:checkers
syntax ; tasing you for every semicolon you forget
@@ -82,28 +83,31 @@
;;grammer ; tasing grammer mistakes every you make
:tools
- ;;ansible
+ ansible
debugger ; FIXME stepping through code, to help you add bugs
- ;;direnv
- ;;docker
+ direnv
+ docker
editorconfig ; let someone else argue about tabs vs spaces
;;ein ; tame Jupyter notebooks with emacs
(eval +overlay) ; run code, run (also, repls)
;;gist ; interacting with github gists
lookup ; navigate your code and its documentation
- lsp
- ;;macos ; MacOS-specific commands
+ (lsp +eglot +peek)
magit ; a git porcelain for Emacs
make ; run make tasks from Emacs
;;pass ; password manager for nerds
pdf ; pdf enhancements
;;prodigy ; FIXME managing external services & code builders
rgb ; creating color strings
- ;;taskrunner ; taskrunner for all your projects
+ taskrunner ; taskrunner for all your projects
;;terraform ; infrastructure as code
tmux ; an API for interacting with tmux
upload ; map local to remote projects via ssh/ftp
+ :os
+ (:if IS-MAC macos) ; improved compatibility with macOS
+ ;;tty ; improve the terminal Emacs experience
+
:lang
;;agda ; types of types of types of types...
(cc ; C/C++/Obj-C madness
@@ -130,8 +134,8 @@
;;hy ; readability of scheme w/ speed of python
;;idris
json ; At least it ain't XML
- (java +meghanada) ; the poster child for carpal tunnel syndrome
- ;;javascript ; all(hope(abandon(ye(who(enter(here))))))
+ (java +meghanada) ; the poster child for carpal tunnel syndrome
+ (javascript +lsp) ; all(hope(abandon(ye(who(enter(here))))))
;;julia ; a better, faster MATLAB
kotlin ; a better, slicker Java(Script)
latex ; writing papers in Emacs has never been so fun
@@ -143,8 +147,10 @@
;;nim ; python + lisp at the speed of c
;;nix ; I hereby declare "nix geht mehr!"
;;ocaml ; an objective camel
- org ; organize your plain life in plain text
- ;;php ; perl's insecure younger brother
+ (org ; organize your plain life in plain text
+ +pomodoro
+ +present)
+ php ; perl's insecure younger brother
;;plantuml ; diagrams for confusing people more
;;purescript ; javascript, but functional
python ; beautiful is better than ugly
@@ -171,7 +177,7 @@
;;(wanderlust +gmail)
:app
- ;;calendar
+ calendar
;;irc ; how neckbeards socialize
;;(rss +org) ; emacs as an RSS reader
;;twitter ; twitter client https://twitter.com/vnought
diff --git a/doom-emacs/.config/doom/packages.el b/doom-emacs/.config/doom/packages.el
index 7655397..0abc342 100644
--- a/doom-emacs/.config/doom/packages.el
+++ b/doom-emacs/.config/doom/packages.el
@@ -1,6 +1,10 @@
;; -*- no-byte-compile: t; -*-
;;; ~/repos/dotfiles/doom-emacs/.doom.d/packages.el
+(package! paper-theme)
+(package! modus-vivendi-theme)
+(package! modus-operandi-theme)
+
(package! org-super-agenda)
(package! imenu-list)