More updates to emacs config and guix manifest

This commit is contained in:
Ian Keane 2023-11-27 08:58:26 -05:00
parent b6abd3f720
commit 40704fda2e
2 changed files with 101 additions and 29 deletions

View file

@ -159,6 +159,23 @@ To get started, run =C-c C-v t=
;; Update files when changed on disk
(global-auto-revert-mode 1)
(use-package solaire-mode
:config (solaire-global-mode +1))
(use-package doom-themes
:ensure t
:config
;; Global settings (defaults)
(setq doom-themes-enable-bold t ; if nil, bold is universally disabled
doom-themes-enable-italic t) ; if nil, italics is universally disabled
; (load-theme 'doom-one t)
;; Enable flashing mode-line on errors
(setq doom-themes-treemacs-theme "doom-atom") ; use "doom-colors" for less minimal icon theme
(doom-themes-treemacs-config)
;; Corrects (and improves) org-mode's native fontification.
(doom-themes-org-config))
(set-frame-font "DejaVu Sans Mono 14")
(use-package simple-modeline
:hook (after-init . simple-modeline-mode))
@ -214,11 +231,11 @@ To get started, run =C-c C-v t=
#+end_src
** Direct keymaps
#+begin_src emacs-lisp
(global-set-key (kbd "s-c") 'delete-window)
(global-set-key (kbd "s-h") 'windmove-left)
(global-set-key (kbd "s-j") 'windmove-down)
(global-set-key (kbd "s-k") 'windmove-up)
(global-set-key (kbd "s-l") 'windmove-right)
;; (global-set-key (kbd "s-c") 'delete-window)
;; (global-set-key (kbd "s-h") 'windmove-left)
;; (global-set-key (kbd "s-j") 'windmove-down)
;; (global-set-key (kbd "s-k") 'windmove-up)
;; (global-set-key (kbd "s-l") 'windmove-right)
; (define-key evil-normal-state-map (kbd "s-d") 'kill-this-buffer)
; (define-key evil-normal-state-map (kbd "s-n") 'projectile-next-project-buffer)
; (define-key evil-normal-state-map (kbd "s-p") 'projectile-previous-project-buffer)
@ -226,7 +243,7 @@ To get started, run =C-c C-v t=
; (define-key evil-normal-state-map (kbd "s-L") 'split-and-follow-vertically)
; (define-key evil-normal-state-map (kbd "s-b") 'buffer-menu)
; (define-key evil-normal-state-map (kbd "s-x") 'execute-extended-command)
(global-set-key (kbd "s-SPC") 'tab-next)
;; (global-set-key (kbd "s-SPC") 'tab-next)
(global-set-key (kbd "<escape>") 'keyboard-escape-quit)
(use-package winner
@ -236,11 +253,31 @@ To get started, run =C-c C-v t=
#+end_src
** Workspaces
** Windows and Workspaces
#+begin_src emacs-lisp
(use-package perspective)
(unless (equal persp-mode t)
(persp-mode))
(use-package ace-window)
(setq aw-keys '(?a ?s ?d ?f ?g ?h ?j ?k ?l))
(defvar aw-dispatch-alist
'((?x aw-delete-window "Delete Window")
(?m aw-swap-window "Swap Windows")
(?M aw-move-window "Move Window")
(?c aw-copy-window "Copy Window")
(?j aw-switch-buffer-in-window "Select Buffer")
(?n aw-flip-window)
;;(?u aw-switch-buffer-other-window "Switch Buffer Other Window")
(?u aw-switch-buffer-other-window 'winner-undo)
(?U aw-switch-buffer-other-window 'winner-redo)
(?c aw-split-window-fair "Split Fair Window")
(?v aw-split-window-vert "Split Vert Window")
(?b aw-split-window-horz "Split Horz Window")
(?o delete-other-windows "Delete Other Windows")
(?? aw-show-dispatch-help))
"List of actions for `aw-dispatch-default'.")
;; TODO: maybe put workspace controls in aw-dispatch?
#+end_src
** Dired
#+begin_src emacs-lisp
@ -280,6 +317,7 @@ To get started, run =C-c C-v t=
#+end_src
** Treemacs
#+begin_src emacs-lisp
(use-package all-the-icons)
(use-package treemacs-all-the-icons)
#+end_src
** Which-key
@ -291,6 +329,12 @@ To get started, run =C-c C-v t=
(setq which-key-idle-delay 0.3))
#+end_src
** General
- map spc W for split and winner-undo / redo operations on 2 windows
- bind persp-mode
- bind lispy for colemak-dh
- bind lispy doc features and ide-like features
- bind embark
- bind commentary
#+begin_src emacs-lisp
(use-package general
:ensure t
@ -316,6 +360,7 @@ To get started, run =C-c C-v t=
"*" '(counsel-locate :which-key "Fuzzy find file") ;; find-file? consult-locate?
"d" '(docker :which-key "Docker")
"i" '(custom/conditional-imenu :which-key "Imenu") ;; consult-outline?
"w" '(ace-window :which-key "Window")
;; Agenda
"a" '(:ignore t :which-key "Agenda")
@ -446,6 +491,39 @@ To get started, run =C-c C-v t=
"hwm" '(which-key-show-major-mode :which-key "Show major mode")
"hwt" '(which-key-show-top-level :which-key "Show top-level")
"m" '(:ignore t :which-key "media")
"my" '(empv-youtube :which-key "youtube")
"mt" '(empv-toggle :which-key "toggle")
"mT" '(empv-toggle-video :which-key "toggle-video")
"mq" '(empv-exit :which-key "quit")
"ms" '(empv-display-current :which-key "show currently playing")
"mr" '(:ignore t :which-key "radio")
"mrr" '(empv-play-radio)
"mrR" '(empv-play-random-channel)
"mrl" '(empv-log-current-radio-song-name)
"mp" '(:ignore t :which-key "playlist")
"mpP" '(empv-playlist :which-key "playlist")
"mps" '(empv-playlist-select :which-key "select")
"mpn" '(empv-playlist-next :which-key "next")
"mpp" '(empv-playlist-prev :which-key "prev")
"mpc" '(empv-playlist-clear :which-key "clear")
"mpS" '(empv-playlist-shuffle :which-key "shuffle")
"mf" '(:ignore t :which-key "file")
"mff" '(empv-play-file :which-key "play file")
"mfd" '(empv-play-directory :which-key "play directory")
"mv" '(:ignore t :which-key "volume")
"mvd" '(empv-volume-down :which-key "down")
"mvu" '(empv-volume-up :which-key "up")
"mc" '(:ignore t :which-key "chapter")
"mcp" '(empv-chapter-prev :which-key "prev")
"mcn" '(empv-chapter-next :which-key "next")
"mcs" '(empv-chapter-select :which-key "select")
;; Notes
"nd" '(deft :which-key "Deft")
"nt" '(org-todo-list :which-key "Todo list")
@ -519,7 +597,7 @@ To get started, run =C-c C-v t=
"TAB R" '(+workspace/restore-last-session :which-key "Restore last session")
"TAB s" '(+workspace/save :which-key "Save workspace")
"TAB x" '(+workspace/kill-session :which-key "Delete session")
))
))
#+end_src
@ -709,6 +787,15 @@ All lisp-family languages
:config
(lispyville-set-key-theme '(operators c-w additional)))
#+end_src
* Markups
#+begin_src emacs-lisp
(use-package markdown-mode
:mode ("\\.md\\'" . markdown-mode))
;;(use-package evil-markdown
;; :mode ("\\.md\\'" . evil-markdown-mode))
(use-package json-mode)
(use-package yaml-mode)
#+end_src
* Shells
** Enable fish completions
Uses the external fish program to provide fish-style completions to eshell etc
@ -876,6 +963,8 @@ Uses the external fish program to provide fish-style completions to eshell etc
* Todo
** General
- Refactor to use use-package more effectively
- Use :mode and :config like [[https://ianyepan.github.io/posts/setting-up-use-package/][here]]
- Set things which should be set before package install in :init
** Terminals
- More terminals
@ -921,10 +1010,6 @@ Uses the external fish program to provide fish-style completions to eshell etc
** Keybindings
- put general bindings in separate keymaps in separate sections
- map hyper bindings for buffer nav and jumping
- bind persp-mode
- bind lispy for colemak-dh
- bind lispy doc features and ide-like features
- bind embark
- evil-org
- map alignment functions in 'code'section
- define global meow-left and vim-left, swich contextually
@ -934,20 +1019,6 @@ Uses the external fish program to provide fish-style completions to eshell etc
- map default-text-scale operations
- empv
- map
- empv-play-radio
- empv-play-random-channel
- empv-log-current-radio-song-name
- empv-youtube
- empv-play
- empv-play-{file,audio,video,directory,radio,random-channel}
- empv-playlist-{select,next,prev,clear,shuffle}
- empv-display-current
- empv-toggle
- empv-toggle-video
- empv-youtube
- empv-volume-{down,up}
- empv-chapter-{prev,next,select}
- empv-exit
- configure
- empv-radio-log-file
- empv-radio-log-format
@ -983,7 +1054,8 @@ variables and their documentations).
** Research
- What does C-d do when in a minibuffer for vertico?
- embark
- ace-window / embark integration
** System crafters videos
- [[https://www.youtube.com/watch?v=CUkuyW6hr18][5 Hacks to improve org roam]]
- [[https://www.youtube.com/watch?v=C1kwStlEick][Improving the IRC experience]]
@ -993,7 +1065,6 @@ variables and their documentations).
- [[https://www.youtube.com/watch?v=za99DwdZEyg][Automated website publishing w/ org and sourcehut]]
- [[https://www.youtube.com/watch?v=SCPoF1PTZpI][Emacs presentations]]
- [[https://www.youtube.com/watch?v=0C16LLHGYzk&t=1882s][Converting a literate config to guix home]]
- [[https://www.youtube.com/watch?v=zWIByv8JOrg][Do we really need use-package]]
- [[https://www.youtube.com/playlist?list=PLEoMzSkcN8oM-kA19xOQc8s0gr0PpFGJQ][Emacs mail playlist]]
- [[https://www.youtube.com/watch?v=qk2Is_sC8Lk][Embark]]

View file

@ -24,4 +24,5 @@
"font-bitstream-vera"
"acpi"
"curl"
"mpv"))
"mpv"
"unzip"))