switched completely to lunarvim
This commit is contained in:
parent
057c11dc56
commit
af981611bf
7 changed files with 0 additions and 2022 deletions
|
@ -1,565 +0,0 @@
|
|||
(beacon-mode 1)
|
||||
|
||||
(map! :leader
|
||||
(:prefix ("b". "buffer")
|
||||
:desc "List bookmarks" "L" #'list-bookmarks
|
||||
:desc "Save current bookmarks to bookmark file" "w" #'bookmark-save))
|
||||
|
||||
(global-auto-revert-mode 1)
|
||||
(setq global-auto-revert-non-file-buffers t)
|
||||
|
||||
(evil-define-key 'normal ibuffer-mode-map
|
||||
(kbd "f c") 'ibuffer-filter-by-content
|
||||
(kbd "f d") 'ibuffer-filter-by-directory
|
||||
(kbd "f f") 'ibuffer-filter-by-filename
|
||||
(kbd "f m") 'ibuffer-filter-by-mode
|
||||
(kbd "f n") 'ibuffer-filter-by-name
|
||||
(kbd "f x") 'ibuffer-filter-disable
|
||||
(kbd "g h") 'ibuffer-do-kill-lines
|
||||
(kbd "g H") 'ibuffer-update)
|
||||
|
||||
;; https://stackoverflow.com/questions/9547912/emacs-calendar-show-more-than-3-months
|
||||
(defun dt/year-calendar (&optional year)
|
||||
(interactive)
|
||||
(require 'calendar)
|
||||
(let* (
|
||||
(current-year (number-to-string (nth 5 (decode-time (current-time)))))
|
||||
(month 0)
|
||||
(year (if year year (string-to-number (format-time-string "%Y" (current-time))))))
|
||||
(switch-to-buffer (get-buffer-create calendar-buffer))
|
||||
(when (not (eq major-mode 'calendar-mode))
|
||||
(calendar-mode))
|
||||
(setq displayed-month month)
|
||||
(setq displayed-year year)
|
||||
(setq buffer-read-only nil)
|
||||
(erase-buffer)
|
||||
;; horizontal rows
|
||||
(dotimes (j 4)
|
||||
;; vertical columns
|
||||
(dotimes (i 3)
|
||||
(calendar-generate-month
|
||||
(setq month (+ month 1))
|
||||
year
|
||||
;; indentation / spacing between months
|
||||
(+ 5 (* 25 i))))
|
||||
(goto-char (point-max))
|
||||
(insert (make-string (- 10 (count-lines (point-min) (point-max))) ?\n))
|
||||
(widen)
|
||||
(goto-char (point-max))
|
||||
(narrow-to-region (point-max) (point-max)))
|
||||
(widen)
|
||||
(goto-char (point-min))
|
||||
(setq buffer-read-only t)))
|
||||
|
||||
(defun dt/scroll-year-calendar-forward (&optional arg event)
|
||||
"Scroll the yearly calendar by year in a forward direction."
|
||||
(interactive (list (prefix-numeric-value current-prefix-arg)
|
||||
last-nonmenu-event))
|
||||
(unless arg (setq arg 0))
|
||||
(save-selected-window
|
||||
(if (setq event (event-start event)) (select-window (posn-window event)))
|
||||
(unless (zerop arg)
|
||||
(let* (
|
||||
(year (+ displayed-year arg)))
|
||||
(dt/year-calendar year)))
|
||||
(goto-char (point-min))
|
||||
(run-hooks 'calendar-move-hook)))
|
||||
|
||||
(defun dt/scroll-year-calendar-backward (&optional arg event)
|
||||
"Scroll the yearly calendar by year in a backward direction."
|
||||
(interactive (list (prefix-numeric-value current-prefix-arg)
|
||||
last-nonmenu-event))
|
||||
(dt/scroll-year-calendar-forward (- (or arg 1)) event))
|
||||
|
||||
(map! :leader
|
||||
:desc "Scroll year calendar backward" "<left>" #'dt/scroll-year-calendar-backward
|
||||
:desc "Scroll year calendar forward" "<right>" #'dt/scroll-year-calendar-forward)
|
||||
|
||||
(defalias 'year-calendar 'dt/year-calendar)
|
||||
|
||||
(use-package! calfw)
|
||||
(use-package! calfw-org)
|
||||
|
||||
(use-package dashboard
|
||||
:init ;; tweak dashboard config before loading it
|
||||
(setq dashboard-set-heading-icons t)
|
||||
(setq dashboard-set-file-icons t)
|
||||
(setq dashboard-banner-logo-title "\nKEYBINDINGS:\
|
||||
\nFind file (SPC .) \
|
||||
Open buffer list (SPC b i)\
|
||||
\nFind recent files (SPC f r) \
|
||||
Open the eshell (SPC e s)\
|
||||
\nOpen dired file manager (SPC d d) \
|
||||
List of keybindings (SPC h b b)")
|
||||
;;(setq dashboard-startup-banner 'logo) ;; use standard emacs logo as banner
|
||||
(setq initial-buffer-choice (lambda () (get-buffer "*dashboard*")))
|
||||
(setq dashboard-startup-banner "~/.config/doom/emacs-dash.txt") ;; use custom image as banner
|
||||
(setq dashboard-center-content nil) ;; set to 't' for centered content
|
||||
(setq dashboard-items '((recents . 5)
|
||||
(agenda . 5 )
|
||||
(bookmarks . 5)
|
||||
(projects . 5)
|
||||
(registers . 5)))
|
||||
:config
|
||||
(dashboard-setup-startup-hook)
|
||||
(dashboard-modify-heading-icons '((recents . "file-text")
|
||||
(bookmarks . "book"))))
|
||||
|
||||
(setq doom-fallback-buffer "*dashboard*")
|
||||
|
||||
(map! :leader
|
||||
(:prefix ("d" . "dired")
|
||||
:desc "Open dired" "d" #'dired
|
||||
:desc "Dired jump to current" "j" #'dired-jump)
|
||||
(:after dired
|
||||
(:map dired-mode-map
|
||||
:desc "Peep-dired image previews" "d p" #'peep-dired
|
||||
:desc "Dired view file" "d v" #'dired-view-file)))
|
||||
|
||||
(evil-define-key 'normal dired-mode-map
|
||||
(kbd "M-RET") 'dired-display-file
|
||||
(kbd "h") 'dired-up-directory
|
||||
(kbd "l") 'dired-open-file ; use dired-find-file instead of dired-open.
|
||||
(kbd "m") 'dired-mark
|
||||
(kbd "t") 'dired-toggle-marks
|
||||
(kbd "u") 'dired-unmark
|
||||
(kbd "C") 'dired-do-copy
|
||||
(kbd "D") 'dired-do-delete
|
||||
(kbd "J") 'dired-goto-file
|
||||
(kbd "M") 'dired-do-chmod
|
||||
(kbd "O") 'dired-do-chown
|
||||
(kbd "P") 'dired-do-print
|
||||
(kbd "R") 'dired-do-rename
|
||||
(kbd "T") 'dired-do-touch
|
||||
(kbd "Y") 'dired-copy-filenamecopy-filename-as-kill ; copies filename to kill ring.
|
||||
(kbd "+") 'dired-create-directory
|
||||
(kbd "-") 'dired-up-directory
|
||||
(kbd "% l") 'dired-downcase
|
||||
(kbd "% u") 'dired-upcase
|
||||
(kbd "; d") 'epa-dired-do-decrypt
|
||||
(kbd "; e") 'epa-dired-do-encrypt)
|
||||
;; Get file icons in dired
|
||||
(add-hook 'dired-mode-hook 'all-the-icons-dired-mode)
|
||||
;; With dired-open plugin, you can launch external programs for certain extensions
|
||||
;; For example, I set all .png files to open in 'sxiv' and all .mp4 files to open in 'mpv'
|
||||
(setq dired-open-extensions '(("gif" . "sxiv")
|
||||
("jpg" . "sxiv")
|
||||
("png" . "sxiv")
|
||||
("mkv" . "mpv")
|
||||
("mp4" . "mpv")))
|
||||
|
||||
(evil-define-key 'normal peep-dired-mode-map
|
||||
(kbd "j") 'peep-dired-next-file
|
||||
(kbd "k") 'peep-dired-prev-file)
|
||||
(add-hook 'peep-dired-hook 'evil-normalize-keymaps)
|
||||
|
||||
(setq delete-by-moving-to-trash t
|
||||
trash-directory "~/.local/share/Trash/files/")
|
||||
|
||||
(setq doom-theme 'doom-gruvbox)
|
||||
(map! :leader
|
||||
:desc "Load new theme" "h t" #'counsel-load-theme)
|
||||
|
||||
(use-package emojify
|
||||
:hook (after-init . global-emojify-mode))
|
||||
|
||||
(map! :leader
|
||||
(:prefix ("e". "evaluate/EWW")
|
||||
:desc "Evaluate elisp in buffer" "b" #'eval-buffer
|
||||
:desc "Evaluate defun" "d" #'eval-defun
|
||||
:desc "Evaluate elisp expression" "e" #'eval-expression
|
||||
:desc "Evaluate last sexpression" "l" #'eval-last-sexp
|
||||
:desc "Evaluate elisp in region" "r" #'eval-region))
|
||||
|
||||
(setq browse-url-browser-function 'eww-browse-url)
|
||||
(map! :leader
|
||||
:desc "Search web for text between BEG/END"
|
||||
"s w" #'eww-search-words
|
||||
(:prefix ("e" . "evaluate/EWW")
|
||||
:desc "Eww web browser" "w" #'eww
|
||||
:desc "Eww reload page" "R" #'eww-reload))
|
||||
|
||||
(setq doom-font (font-spec :family "mononoki Nerd Font" :size 15)
|
||||
doom-variable-pitch-font (font-spec :family "mononoki Nerd Font" :size 15)
|
||||
doom-big-font (font-spec :family "mononoki Nerd Font" :size 20))
|
||||
(after! doom-themes
|
||||
(setq doom-themes-enable-bold t
|
||||
doom-themes-enable-italic t))
|
||||
(custom-set-faces!
|
||||
'(font-lock-comment-face :slant italic)
|
||||
'(font-lock-keyword-face :slant italic))
|
||||
|
||||
(setq imenu-list-focus-after-activation t)
|
||||
|
||||
(map! :leader
|
||||
(:prefix ("s" . "Search")
|
||||
:desc "Menu to jump to places in buffer" "i" #'counsel-imenu))
|
||||
|
||||
(map! :leader
|
||||
(:prefix ("t" . "Toggle")
|
||||
:desc "Toggle imenu shown in a sidebar" "i" #'imenu-list-smart-toggle))
|
||||
|
||||
(defun dt/insert-todays-date (prefix)
|
||||
(interactive "P")
|
||||
(let ((format (cond
|
||||
((not prefix) "%A, %B %d, %Y")
|
||||
((equal prefix '(4)) "%m-%d-%Y")
|
||||
((equal prefix '(16)) "%Y-%m-%d"))))
|
||||
(insert (format-time-string format))))
|
||||
|
||||
(require 'calendar)
|
||||
(defun dt/insert-any-date (date)
|
||||
"Insert DATE using the current locale."
|
||||
(interactive (list (calendar-read-date)))
|
||||
(insert (calendar-date-string date)))
|
||||
|
||||
(map! :leader
|
||||
(:prefix ("i d" . "Insert date")
|
||||
:desc "Insert any date" "a" #'dt/insert-any-date
|
||||
:desc "Insert todays date" "t" #'dt/insert-todays-date))
|
||||
|
||||
(setq ivy-posframe-display-functions-alist
|
||||
'((swiper . ivy-posframe-display-at-point)
|
||||
(complete-symbol . ivy-posframe-display-at-point)
|
||||
(counsel-M-x . ivy-display-function-fallback)
|
||||
(counsel-esh-history . ivy-posframe-display-at-window-center)
|
||||
(counsel-describe-function . ivy-display-function-fallback)
|
||||
(counsel-describe-variable . ivy-display-function-fallback)
|
||||
(counsel-find-file . ivy-display-function-fallback)
|
||||
(counsel-recentf . ivy-display-function-fallback)
|
||||
(counsel-register . ivy-posframe-display-at-frame-bottom-window-center)
|
||||
(dmenu . ivy-posframe-display-at-frame-top-center)
|
||||
(nil . ivy-posframe-display))
|
||||
ivy-posframe-height-alist
|
||||
'((swiper . 20)
|
||||
(dmenu . 20)
|
||||
(t . 10)))
|
||||
(ivy-posframe-mode 1) ; 1 enables posframe-mode, 0 disables it.
|
||||
|
||||
(map! :leader
|
||||
(:prefix ("v" . "Ivy")
|
||||
:desc "Ivy push view" "v p" #'ivy-push-view
|
||||
:desc "Ivy switch view" "v s" #'ivy-switch-view))
|
||||
|
||||
(setq display-line-numbers-type t)
|
||||
(map! :leader
|
||||
:desc "Comment or uncomment lines" "TAB TAB" #'comment-line
|
||||
(:prefix ("t" . "toggle")
|
||||
:desc "Toggle line numbers" "l" #'doom/toggle-line-numbers
|
||||
:desc "Toggle line highlight in frame" "h" #'hl-line-mode
|
||||
:desc "Toggle line highlight globally" "H" #'global-hl-line-mode
|
||||
:desc "Toggle truncate lines" "t" #'toggle-truncate-lines))
|
||||
|
||||
(custom-set-faces
|
||||
'(markdown-header-face ((t (:inherit font-lock-function-name-face :weight bold :family "variable-pitch"))))
|
||||
'(markdown-header-face-1 ((t (:inherit markdown-header-face :height 1.7))))
|
||||
'(markdown-header-face-2 ((t (:inherit markdown-header-face :height 1.6))))
|
||||
'(markdown-header-face-3 ((t (:inherit markdown-header-face :height 1.5))))
|
||||
'(markdown-header-face-4 ((t (:inherit markdown-header-face :height 1.4))))
|
||||
'(markdown-header-face-5 ((t (:inherit markdown-header-face :height 1.3))))
|
||||
'(markdown-header-face-6 ((t (:inherit markdown-header-face :height 1.2)))))
|
||||
|
||||
(setq minimap-window-location 'right)
|
||||
(map! :leader
|
||||
(:prefix ("t" . "toggle")
|
||||
:desc "Toggle minimap-mode" "m" #'minimap-mode))
|
||||
|
||||
(set-face-attribute 'mode-line nil :font "mononoki Nerd Font-13")
|
||||
(setq doom-modeline-height 30 ;; sets modeline height
|
||||
doom-modeline-bar-width 5 ;; sets right bar width
|
||||
doom-modeline-persp-name t ;; adds perspective name to modeline
|
||||
doom-modeline-persp-icon t) ;; adds folder icon next to persp name
|
||||
|
||||
(xterm-mouse-mode 1)
|
||||
|
||||
(after! neotree
|
||||
(setq neo-smart-open t
|
||||
neo-window-fixed-size nil))
|
||||
(after! doom-themes
|
||||
(setq doom-neotree-enable-variable-pitch t))
|
||||
(map! :leader
|
||||
:desc "Toggle neotree file viewer" "t n" #'neotree-toggle
|
||||
:desc "Open directory in neotree" "d n" #'neotree-dir)
|
||||
|
||||
(map! :leader
|
||||
(:prefix ("=" . "open file")
|
||||
:desc "Edit agenda file" "a" #'(lambda () (interactive) (find-file "~/Org/agenda.org"))
|
||||
:desc "Edit doom config.org" "c" #'(lambda () (interactive) (find-file "~/.config/doom/config.org"))
|
||||
:desc "Edit doom init.el" "i" #'(lambda () (interactive) (find-file "~/.config/doom/init.el"))
|
||||
:desc "Edit doom packages.el" "p" #'(lambda () (interactive) (find-file "~/.config/doom/packages.el"))))
|
||||
(map! :leader
|
||||
(:prefix ("= e" . "open eshell files")
|
||||
:desc "Edit eshell aliases" "a" #'(lambda () (interactive) (find-file "~/.config/doom/eshell/aliases"))
|
||||
:desc "Edit eshell profile" "p" #'(lambda () (interactive) (find-file "~/.config/doom/eshell/profile"))))
|
||||
|
||||
(map! :leader
|
||||
:desc "Org babel tangle" "m B" #'org-babel-tangle)
|
||||
(after! org
|
||||
(setq org-directory "~/nc/Org/"
|
||||
org-agenda-files '("~/nc/Org/agenda.org")
|
||||
org-default-notes-file (expand-file-name "notes.org" org-directory)
|
||||
org-ellipsis " ▼ "
|
||||
org-superstar-headline-bullets-list '("◉" "●" "○" "◆" "●" "○" "◆")
|
||||
org-superstar-item-bullet-alist '((?+ . ?➤) (?- . ?✦)) ; changes +/- symbols in item lists
|
||||
org-log-done 'time
|
||||
org-hide-emphasis-markers t
|
||||
;; ex. of org-link-abbrev-alist in action
|
||||
;; [[arch-wiki:Name_of_Page][Description]]
|
||||
org-link-abbrev-alist ; This overwrites the default Doom org-link-abbrev-list
|
||||
'(("google" . "http://www.google.com/search?q=")
|
||||
("arch-wiki" . "https://wiki.archlinux.org/index.php/")
|
||||
("ddg" . "https://duckduckgo.com/?q=")
|
||||
("wiki" . "https://en.wikipedia.org/wiki/"))
|
||||
org-todo-keywords ; This overwrites the default Doom org-todo-keywords
|
||||
'((sequence
|
||||
"TODO(t)" ; A task that is ready to be tackled
|
||||
"BLOG(b)" ; Blog writing assignments
|
||||
"GYM(g)" ; Things to accomplish at the gym
|
||||
"PROJ(p)" ; A project that contains other tasks
|
||||
"VIDEO(v)" ; Video assignments
|
||||
"WAIT(w)" ; Something is holding up this task
|
||||
"|" ; The pipe necessary to separate "active" states and "inactive" states
|
||||
"DONE(d)" ; Task has been completed
|
||||
"CANCELLED(c)" )))) ; Task has been cancelled
|
||||
|
||||
(defun dt/org-colors-doom-one ()
|
||||
"Enable Doom One colors for Org headers."
|
||||
(interactive)
|
||||
(dolist
|
||||
(face
|
||||
'((org-level-1 1.7 "#51afef" ultra-bold)
|
||||
(org-level-2 1.6 "#c678dd" extra-bold)
|
||||
(org-level-3 1.5 "#98be65" bold)
|
||||
(org-level-4 1.4 "#da8548" semi-bold)
|
||||
(org-level-5 1.3 "#5699af" normal)
|
||||
(org-level-6 1.2 "#a9a1e1" normal)
|
||||
(org-level-7 1.1 "#46d9ff" normal)
|
||||
(org-level-8 1.0 "#ff6c6b" normal)))
|
||||
(set-face-attribute (nth 0 face) nil :font doom-variable-pitch-font :weight (nth 3 face) :height (nth 1 face) :foreground (nth 2 face)))
|
||||
(set-face-attribute 'org-table nil :font doom-font :weight 'normal :height 1.0 :foreground "#bfafdf"))
|
||||
|
||||
(defun dt/org-colors-dracula ()
|
||||
"Enable Dracula colors for Org headers."
|
||||
(interactive)
|
||||
(dolist
|
||||
(face
|
||||
'((org-level-1 1.7 "#8be9fd" ultra-bold)
|
||||
(org-level-2 1.6 "#bd93f9" extra-bold)
|
||||
(org-level-3 1.5 "#50fa7b" bold)
|
||||
(org-level-4 1.4 "#ff79c6" semi-bold)
|
||||
(org-level-5 1.3 "#9aedfe" normal)
|
||||
(org-level-6 1.2 "#caa9fa" normal)
|
||||
(org-level-7 1.1 "#5af78e" normal)
|
||||
(org-level-8 1.0 "#ff92d0" normal)))
|
||||
(set-face-attribute (nth 0 face) nil :font doom-variable-pitch-font :weight (nth 3 face) :height (nth 1 face) :foreground (nth 2 face)))
|
||||
(set-face-attribute 'org-table nil :font doom-font :weight 'normal :height 1.0 :foreground "#bfafdf"))
|
||||
|
||||
(defun dt/org-colors-gruvbox-dark ()
|
||||
"Enable Gruvbox Dark colors for Org headers."
|
||||
(interactive)
|
||||
(dolist
|
||||
(face
|
||||
'((org-level-1 1.7 "#458588" ultra-bold)
|
||||
(org-level-2 1.6 "#b16286" extra-bold)
|
||||
(org-level-3 1.5 "#98971a" bold)
|
||||
(org-level-4 1.4 "#fb4934" semi-bold)
|
||||
(org-level-5 1.3 "#83a598" normal)
|
||||
(org-level-6 1.2 "#d3869b" normal)
|
||||
(org-level-7 1.1 "#d79921" normal)
|
||||
(org-level-8 1.0 "#8ec07c" normal)))
|
||||
(set-face-attribute (nth 0 face) nil :font doom-variable-pitch-font :weight (nth 3 face) :height (nth 1 face) :foreground (nth 2 face)))
|
||||
(set-face-attribute 'org-table nil :font doom-font :weight 'normal :height 1.0 :foreground "#bfafdf"))
|
||||
|
||||
(defun dt/org-colors-monokai-pro ()
|
||||
"Enable Monokai Pro colors for Org headers."
|
||||
(interactive)
|
||||
(dolist
|
||||
(face
|
||||
'((org-level-1 1.7 "#78dce8" ultra-bold)
|
||||
(org-level-2 1.6 "#ab9df2" extra-bold)
|
||||
(org-level-3 1.5 "#a9dc76" bold)
|
||||
(org-level-4 1.4 "#fc9867" semi-bold)
|
||||
(org-level-5 1.3 "#ff6188" normal)
|
||||
(org-level-6 1.2 "#ffd866" normal)
|
||||
(org-level-7 1.1 "#78dce8" normal)
|
||||
(org-level-8 1.0 "#ab9df2" normal)))
|
||||
(set-face-attribute (nth 0 face) nil :font doom-variable-pitch-font :weight (nth 3 face) :height (nth 1 face) :foreground (nth 2 face)))
|
||||
(set-face-attribute 'org-table nil :font doom-font :weight 'normal :height 1.0 :foreground "#bfafdf"))
|
||||
|
||||
(defun dt/org-colors-nord ()
|
||||
"Enable Nord colors for Org headers."
|
||||
(interactive)
|
||||
(dolist
|
||||
(face
|
||||
'((org-level-1 1.7 "#81a1c1" ultra-bold)
|
||||
(org-level-2 1.6 "#b48ead" extra-bold)
|
||||
(org-level-3 1.5 "#a3be8c" bold)
|
||||
(org-level-4 1.4 "#ebcb8b" semi-bold)
|
||||
(org-level-5 1.3 "#bf616a" normal)
|
||||
(org-level-6 1.2 "#88c0d0" normal)
|
||||
(org-level-7 1.1 "#81a1c1" normal)
|
||||
(org-level-8 1.0 "#b48ead" normal)))
|
||||
(set-face-attribute (nth 0 face) nil :font doom-variable-pitch-font :weight (nth 3 face) :height (nth 1 face) :foreground (nth 2 face)))
|
||||
(set-face-attribute 'org-table nil :font doom-font :weight 'normal :height 1.0 :foreground "#bfafdf"))
|
||||
|
||||
(defun dt/org-colors-oceanic-next ()
|
||||
"Enable Oceanic Next colors for Org headers."
|
||||
(interactive)
|
||||
(dolist
|
||||
(face
|
||||
'((org-level-1 1.7 "#6699cc" ultra-bold)
|
||||
(org-level-2 1.6 "#c594c5" extra-bold)
|
||||
(org-level-3 1.5 "#99c794" bold)
|
||||
(org-level-4 1.4 "#fac863" semi-bold)
|
||||
(org-level-5 1.3 "#5fb3b3" normal)
|
||||
(org-level-6 1.2 "#ec5f67" normal)
|
||||
(org-level-7 1.1 "#6699cc" normal)
|
||||
(org-level-8 1.0 "#c594c5" normal)))
|
||||
(set-face-attribute (nth 0 face) nil :font doom-variable-pitch-font :weight (nth 3 face) :height (nth 1 face) :foreground (nth 2 face)))
|
||||
(set-face-attribute 'org-table nil :font doom-font :weight 'normal :height 1.0 :foreground "#bfafdf"))
|
||||
|
||||
(defun dt/org-colors-palenight ()
|
||||
"Enable Palenight colors for Org headers."
|
||||
(interactive)
|
||||
(dolist
|
||||
(face
|
||||
'((org-level-1 1.7 "#82aaff" ultra-bold)
|
||||
(org-level-2 1.6 "#c792ea" extra-bold)
|
||||
(org-level-3 1.5 "#c3e88d" bold)
|
||||
(org-level-4 1.4 "#ffcb6b" semi-bold)
|
||||
(org-level-5 1.3 "#a3f7ff" normal)
|
||||
(org-level-6 1.2 "#e1acff" normal)
|
||||
(org-level-7 1.1 "#f07178" normal)
|
||||
(org-level-8 1.0 "#ddffa7" normal)))
|
||||
(set-face-attribute (nth 0 face) nil :font doom-variable-pitch-font :weight (nth 3 face) :height (nth 1 face) :foreground (nth 2 face)))
|
||||
(set-face-attribute 'org-table nil :font doom-font :weight 'normal :height 1.0 :foreground "#bfafdf"))
|
||||
|
||||
(defun dt/org-colors-solarized-dark ()
|
||||
"Enable Solarized Dark colors for Org headers."
|
||||
(interactive)
|
||||
(dolist
|
||||
(face
|
||||
'((org-level-1 1.7 "#268bd2" ultra-bold)
|
||||
(org-level-2 1.6 "#d33682" extra-bold)
|
||||
(org-level-3 1.5 "#859900" bold)
|
||||
(org-level-4 1.4 "#b58900" semi-bold)
|
||||
(org-level-5 1.3 "#cb4b16" normal)
|
||||
(org-level-6 1.2 "#6c71c4" normal)
|
||||
(org-level-7 1.1 "#2aa198" normal)
|
||||
(org-level-8 1.0 "#657b83" normal)))
|
||||
(set-face-attribute (nth 0 face) nil :font doom-variable-pitch-font :weight (nth 3 face) :height (nth 1 face) :foreground (nth 2 face)))
|
||||
(set-face-attribute 'org-table nil :font doom-font :weight 'normal :height 1.0 :foreground "#bfafdf"))
|
||||
|
||||
(defun dt/org-colors-solarized-light ()
|
||||
"Enable Solarized Light colors for Org headers."
|
||||
(interactive)
|
||||
(dolist
|
||||
(face
|
||||
'((org-level-1 1.7 "#268bd2" ultra-bold)
|
||||
(org-level-2 1.6 "#d33682" extra-bold)
|
||||
(org-level-3 1.5 "#859900" bold)
|
||||
(org-level-4 1.4 "#b58900" semi-bold)
|
||||
(org-level-5 1.3 "#cb4b16" normal)
|
||||
(org-level-6 1.2 "#6c71c4" normal)
|
||||
(org-level-7 1.1 "#2aa198" normal)
|
||||
(org-level-8 1.0 "#657b83" normal)))
|
||||
(set-face-attribute (nth 0 face) nil :font doom-variable-pitch-font :weight (nth 3 face) :height (nth 1 face) :foreground (nth 2 face)))
|
||||
(set-face-attribute 'org-table nil :font doom-font :weight 'normal :height 1.0 :foreground "#bfafdf"))
|
||||
|
||||
(defun dt/org-colors-tomorrow-night ()
|
||||
"Enable Tomorrow Night colors for Org headers."
|
||||
(interactive)
|
||||
(dolist
|
||||
(face
|
||||
'((org-level-1 1.7 "#81a2be" ultra-bold)
|
||||
(org-level-2 1.6 "#b294bb" extra-bold)
|
||||
(org-level-3 1.5 "#b5bd68" bold)
|
||||
(org-level-4 1.4 "#e6c547" semi-bold)
|
||||
(org-level-5 1.3 "#cc6666" normal)
|
||||
(org-level-6 1.2 "#70c0ba" normal)
|
||||
(org-level-7 1.1 "#b77ee0" normal)
|
||||
(org-level-8 1.0 "#9ec400" normal)))
|
||||
(set-face-attribute (nth 0 face) nil :font doom-variable-pitch-font :weight (nth 3 face) :height (nth 1 face) :foreground (nth 2 face)))
|
||||
(set-face-attribute 'org-table nil :font doom-font :weight 'normal :height 1.0 :foreground "#bfafdf"))
|
||||
|
||||
;; Load our desired dt/org-colors-* theme on startup
|
||||
(dt/org-colors-tomorrow-night)
|
||||
|
||||
(use-package ox-man)
|
||||
(use-package ox-gemini)
|
||||
|
||||
(setq org-journal-dir "~/nc/Org/journal/"
|
||||
org-journal-date-prefix "* "
|
||||
org-journal-time-prefix "** "
|
||||
org-journal-date-format "%B %d, %Y (%A) "
|
||||
org-journal-file-format "%Y-%m-%d.org")
|
||||
|
||||
(setq org-publish-use-timestamps-flag nil)
|
||||
(setq org-export-with-broken-links t)
|
||||
|
||||
(use-package! org-auto-tangle
|
||||
:defer t
|
||||
:hook (org-mode . org-auto-tangle-mode)
|
||||
:config
|
||||
(setq org-auto-tangle-default t))
|
||||
|
||||
(map! :leader
|
||||
:desc "Switch to perspective NAME" "DEL" #'persp-switch
|
||||
:desc "Switch to buffer in perspective" "," #'persp-switch-to-buffer
|
||||
:desc "Switch to next perspective" "]" #'persp-next
|
||||
:desc "Switch to previous perspective" "[" #'persp-prev
|
||||
:desc "Add a buffer current perspective" "+" #'persp-add-buffer
|
||||
:desc "Remove perspective by name" "-" #'persp-remove-by-name)
|
||||
|
||||
(define-globalized-minor-mode global-rainbow-mode rainbow-mode
|
||||
(lambda () (rainbow-mode 1)))
|
||||
(global-rainbow-mode 1 )
|
||||
|
||||
(map! :leader
|
||||
(:prefix ("r" . "registers")
|
||||
:desc "Copy to register" "c" #'copy-to-register
|
||||
:desc "Frameset to register" "f" #'frameset-to-register
|
||||
:desc "Insert contents of register" "i" #'insert-register
|
||||
:desc "Jump to register" "j" #'jump-to-register
|
||||
:desc "List registers" "l" #'list-registers
|
||||
:desc "Number to register" "n" #'number-to-register
|
||||
:desc "Interactively choose a register" "r" #'counsel-register
|
||||
:desc "View a register" "v" #'view-register
|
||||
:desc "Window configuration to register" "w" #'window-configuration-to-register
|
||||
:desc "Increment register" "+" #'increment-register
|
||||
:desc "Point to register" "SPC" #'point-to-register))
|
||||
|
||||
(setq shell-file-name "/bin/bash"
|
||||
vterm-max-scrollback 5000)
|
||||
(setq eshell-rc-script "~/.config/doom/eshell/profile"
|
||||
eshell-aliases-file "~/.config/doom/eshell/aliases"
|
||||
eshell-history-size 5000
|
||||
eshell-buffer-maximum-lines 5000
|
||||
eshell-hist-ignoredups t
|
||||
eshell-scroll-to-bottom-on-input t
|
||||
eshell-destroy-buffer-when-process-dies t
|
||||
eshell-visual-commands'("bash" "fish" "htop" "ssh" "top" "zsh"))
|
||||
(map! :leader
|
||||
:desc "Eshell" "e s" #'eshell
|
||||
:desc "Eshell popup toggle" "e t" #'+eshell/toggle
|
||||
:desc "Counsel eshell history" "e h" #'counsel-esh-history
|
||||
:desc "Vterm popup toggle" "v t" #'+vterm/toggle)
|
||||
|
||||
(defun prefer-horizontal-split ()
|
||||
(set-variable 'split-height-threshold nil t)
|
||||
(set-variable 'split-width-threshold 40 t)) ; make this as low as needed
|
||||
(add-hook 'markdown-mode-hook 'prefer-horizontal-split)
|
||||
(map! :leader
|
||||
:desc "Clone indirect buffer other window" "b c" #'clone-indirect-buffer-other-window)
|
||||
|
||||
(map! :leader
|
||||
(:prefix ("w" . "window")
|
||||
:desc "Winner redo" "<right>" #'winner-redo
|
||||
:desc "Winner undo" "<left>" #'winner-undo))
|
||||
|
||||
(map! :leader
|
||||
:desc "Zap to char" "z" #'zap-to-char
|
||||
:desc "Zap up to char" "Z" #'zap-up-to-char)
|
||||
|
||||
(set-frame-parameter (selected-frame) 'alpha '(98 . 80))
|
||||
(add-to-list 'default-frame-alist '(alpha . (98 . 80)))
|
File diff suppressed because it is too large
Load diff
|
@ -1,19 +0,0 @@
|
|||
================= =============== =============== ======== ========
|
||||
\\ . . . . . . .\\ //. . . . . . .\\ //. . . . . . .\\ \\. . .\\// . . //
|
||||
||. . ._____. . .|| ||. . ._____. . .|| ||. . ._____. . .|| || . . .\/ . . .||
|
||||
|| . .|| ||. . || || . .|| ||. . || || . .|| ||. . || ||. . . . . . . ||
|
||||
||. . || || . .|| ||. . || || . .|| ||. . || || . .|| || . | . . . . .||
|
||||
|| . .|| ||. _-|| ||-_ .|| ||. . || || . .|| ||. _-|| ||-_.|\ . . . . ||
|
||||
||. . || ||-' || || `-|| || . .|| ||. . || ||-' || || `|\_ . .|. .||
|
||||
|| . _|| || || || || ||_ . || || . _|| || || || |\ `-_/| . ||
|
||||
||_-' || .|/ || || \|. || `-_|| ||_-' || .|/ || || | \ / |-_.||
|
||||
|| ||_-' || || `-_|| || || ||_-' || || | \ / | `||
|
||||
|| `' || || `' || || `' || || | \ / | ||
|
||||
|| .===' `===. .==='.`===. .===' /==. | \/ | ||
|
||||
|| .==' \_|-_ `===. .===' _|_ `===. .===' _-|/ `== \/ | ||
|
||||
|| .==' _-' `-_ `=' _-' `-_ `=' _-' `-_ /| \/ | ||
|
||||
|| .==' _-' '-__\._-' '-_./__-' `' |. /| | ||
|
||||
||.==' _-' `' | /==.||
|
||||
==' _-' EMACS \/ `==
|
||||
\ _-' `-_ /
|
||||
`'' ``'
|
|
@ -1,26 +0,0 @@
|
|||
# Aliases for emacs commands
|
||||
alias ff find-file $1
|
||||
|
||||
# Changing "ls" to "exa"
|
||||
alias ls exa -al --color=always --group-directories-first $* # my preferred listing
|
||||
alias la exa -a --color=always --group-directories-first $* # all files and dirs
|
||||
alias ll exa -l --color=always --group-directories-first $* # long format
|
||||
alias lt exa -aT --color=always --group-directories-first $* # tree listing
|
||||
alias l. exa -a1 $* | grep "^\." # list hidden files
|
||||
|
||||
# Merge Xresources
|
||||
alias merge xrdb -merge ~/.Xresources
|
||||
|
||||
# Aliases for doom emacs utilties
|
||||
alias doomsync ~/.emacs.d/bin/doom sync
|
||||
alias doomdoctor ~/.emacs.d/bin/doom doctor
|
||||
alias doomupgrade ~/.emacs.d/bin/doom upgrade
|
||||
alias doompurge ~/.emacs.d/bin/doom purge
|
||||
|
||||
# Confirm before overwriting something
|
||||
alias cp cp -i $1
|
||||
alias mv mv -i $1
|
||||
alias rm rm -i $1
|
||||
|
||||
# bare git repo alias for dotfiles
|
||||
alias config /usr/bin/git --git-dir=$HOME/dotfiles --work-tree=$HOME $*
|
|
@ -1 +0,0 @@
|
|||
colorscript random
|
|
@ -1,191 +0,0 @@
|
|||
;;; init.el -*- lexical-binding: t; -*-
|
||||
|
||||
;; This file controls what Doom modules are enabled and what order they load
|
||||
;; in. Remember to run 'doom sync' after modifying it!
|
||||
|
||||
;; NOTE Press 'SPC h d h' (or 'C-h d h' for non-vim users) to access Doom's
|
||||
;; documentation. There you'll find a "Module Index" link where you'll find
|
||||
;; a comprehensive list of Doom's modules and what flags they support.
|
||||
|
||||
;; NOTE Move your cursor over a module's name (or its flags) and press 'K' (or
|
||||
;; 'C-c c k' for non-vim users) to view its documentation. This works on
|
||||
;; flags as well (those symbols that start with a plus).
|
||||
;;
|
||||
;; Alternatively, press 'gd' (or 'C-c c d') on a module to browse its
|
||||
;; directory (for easy access to its source code).
|
||||
|
||||
(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
|
||||
;;ido ; the other *other* search engine...
|
||||
(ivy +fonts +childframe) ; a search engine for love and life
|
||||
|
||||
:ui
|
||||
;;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
|
||||
(emoji +unicode) ; 🙂
|
||||
;;fill-column ; a `fill-column' indicator
|
||||
hl-todo ; highlight TODO/FIXME/NOTE/DEPRECATED/HACK/REVIEW
|
||||
;;hydra
|
||||
;;indent-guides ; highlighted indent columns
|
||||
(ligatures +extras) ; 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 cursor line after big motions
|
||||
neotree ; a project drawer, like NERDTree for vim
|
||||
ophints ; highlight the region an operation acts on
|
||||
(popup +defaults) ; tame sudden yet inevitable temporary windows
|
||||
;;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
|
||||
window-select ; visually switch windows
|
||||
workspaces ; tab emulation, persistence & separate workspaces
|
||||
zen ; distraction-free coding or writing
|
||||
|
||||
:editor
|
||||
(evil +everywhere) ; come to the dark side, we have cookies
|
||||
file-templates ; auto-snippets for empty files
|
||||
fold ; (nigh) universal code folding
|
||||
;;(format +onsave) ; automated prettiness
|
||||
;;god ; run Emacs commands without modifier keys
|
||||
lispy ; vim for lisp, for people who don't like vim
|
||||
;;multiple-cursors ; editing in many places at once
|
||||
;;objed ; text object editing for the innocent
|
||||
;;parinfer ; turn lisp into python, sort of
|
||||
;;rotate-text ; cycle region at point between text candidates
|
||||
snippets ; my elves. They type so I don't have to
|
||||
;;word-wrap ; soft wrapping with language-aware indent
|
||||
|
||||
:emacs
|
||||
(dired +icons) ; making dired pretty [functional]
|
||||
electric ; smarter, keyword-based electric-indent
|
||||
(ibuffer +icons) ; interactive buffer management
|
||||
undo ; persistent, smarter undo for your inevitable mistakes
|
||||
vc ; version-control and Emacs, sitting in a tree
|
||||
|
||||
:term
|
||||
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
|
||||
;;(spell +aspell) ; tasing you for misspelling mispelling
|
||||
;;grammar ; tasing grammar mistake every you make
|
||||
|
||||
:tools
|
||||
;;ansible
|
||||
;;debugger ; FIXME stepping through code, to help you add bugs
|
||||
;;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
|
||||
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
|
||||
;;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) ; improve compatibility with macOS
|
||||
;;tty ; improve the terminal Emacs experience
|
||||
|
||||
:lang
|
||||
;;agda ; types of types of types of types...
|
||||
cc ; C/C++/Obj-C madness
|
||||
;;clojure ; java with a lisp
|
||||
common-lisp ; if you've seen one lisp, you've seen them all
|
||||
;;coq ; proofs-as-programs
|
||||
;;crystal ; ruby at the speed of c
|
||||
csharp ; unity, .NET, and mono shenanigans
|
||||
;;data ; config/data formats
|
||||
;;(dart +flutter) ; paint ui and not much else
|
||||
;;elixir ; erlang done right
|
||||
;;elm ; care for a cup of TEA?
|
||||
emacs-lisp ; drown in parentheses
|
||||
;;erlang ; an elegant language for a more civilized age
|
||||
;;ess ; emacs speaks statistics
|
||||
;;faust ; dsp, but you get to keep your soul
|
||||
;;fsharp ; ML stands for Microsoft's Language
|
||||
;;fstar ; (dependent) types and (monadic) effects and Z3
|
||||
;;gdscript ; the language you waited for
|
||||
;;(go +lsp) ; the hipster dialect
|
||||
;;(haskell +dante) ; a language that's lazier than I am
|
||||
;;hy ; readability of scheme w/ speed of python
|
||||
;;idris ; a language you can depend on
|
||||
json ; At least it ain't XML
|
||||
;;(java +meghanada) ; the poster child for carpal tunnel syndrome
|
||||
javascript ; 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
|
||||
;;lean
|
||||
;;factor
|
||||
;;ledger ; an accounting system in Emacs
|
||||
lua ; one-based indices? one-based indices
|
||||
markdown ; writing docs for people to ignore
|
||||
;;nim ; python + lisp at the speed of c
|
||||
;;nix ; I hereby declare "nix geht mehr!"
|
||||
;;ocaml ; an objective camel
|
||||
(org
|
||||
+journal ; enable org journal
|
||||
+pretty ; replace asterisks with pretty org bullets
|
||||
+publish ; create static websites with org
|
||||
+roam2) ; org roam v2
|
||||
php ; perl's insecure younger brother
|
||||
;;plantuml ; diagrams for confusing people more
|
||||
;;purescript ; javascript, but functional
|
||||
python ; beautiful is better than ugly
|
||||
;;qt ; the 'cutest' gui framework ever
|
||||
;;racket ; a DSL for DSLs
|
||||
;;raku ; the artist formerly known as perl6
|
||||
;;rest ; Emacs as a REST client
|
||||
;;rst ; ReST in peace
|
||||
;;(ruby +rails) ; 1.step {|i| p "Ruby is #{i.even? ? 'love' : 'life'}"}
|
||||
;;rust ; Fe2O3.unwrap().unwrap().unwrap().unwrap()
|
||||
;;scala ; java, but good
|
||||
scheme ; a fully conniving family of lisps
|
||||
sh ; she sells {ba,z,fi}sh shells on the C xor
|
||||
;;sml
|
||||
;;solidity ; do you need a blockchain? No.
|
||||
;;swift ; who asked for emoji variables?
|
||||
;;terra ; Earth and Moon in alignment for performance.
|
||||
web ; the tubes
|
||||
yaml ; JSON, but readable
|
||||
|
||||
:email
|
||||
;;mu4e
|
||||
;;smtpmail
|
||||
;;notmuch
|
||||
;;(wanderlust +gmail)
|
||||
|
||||
:app
|
||||
;;calendar
|
||||
;; emms
|
||||
;;everywhere ; *leave* Emacs!? You must be joking
|
||||
;;irc ; how neckbeards socialize
|
||||
;;rss ; emacs as an RSS reader
|
||||
;;twitter ; twitter client https://twitter.com/vnought
|
||||
|
||||
:config
|
||||
literate
|
||||
(default +bindings +smartparens))
|
|
@ -1,90 +0,0 @@
|
|||
;; -*- no-byte-compile: t; -*-
|
||||
;;; $DOOMDIR/packages.el
|
||||
|
||||
;; To install a package with Doom you must declare them here and run 'doom sync'
|
||||
;; on the command line, then restart Emacs for the changes to take effect -- or
|
||||
;; use 'M-x doom/reload'.
|
||||
|
||||
|
||||
;; To install SOME-PACKAGE from MELPA, ELPA or emacsmirror:
|
||||
;(package! some-package)
|
||||
|
||||
;; To install a package directly from a remote git repo, you must specify a
|
||||
;; `:recipe'. You'll find documentation on what `:recipe' accepts here:
|
||||
;; https://github.com/raxod502/straight.el#the-recipe-format
|
||||
;(package! another-package
|
||||
; :recipe (:host github :repo "username/repo"))
|
||||
|
||||
;; If the package you are trying to install does not contain a PACKAGENAME.el
|
||||
;; file, or is located in a subdirectory of the repo, you'll need to specify
|
||||
;; `:files' in the `:recipe':
|
||||
;(package! this-package
|
||||
; :recipe (:host github :repo "username/repo"
|
||||
; :files ("some-file.el" "src/lisp/*.el")))
|
||||
|
||||
;; If you'd like to disable a package included with Doom, you can do so here
|
||||
;; with the `:disable' property:
|
||||
;(package! builtin-package :disable t)
|
||||
|
||||
;; You can override the recipe of a built in package without having to specify
|
||||
;; all the properties for `:recipe'. These will inherit the rest of its recipe
|
||||
;; from Doom or MELPA/ELPA/Emacsmirror:
|
||||
;(package! builtin-package :recipe (:nonrecursive t))
|
||||
;(package! builtin-package-2 :recipe (:repo "myfork/package"))
|
||||
|
||||
;; Specify a `:branch' to install a package from a particular branch or tag.
|
||||
;; This is required for some packages whose default branch isn't 'master' (which
|
||||
;; our package manager can't deal with; see raxod502/straight.el#279)
|
||||
;(package! builtin-package :recipe (:branch "develop"))
|
||||
|
||||
;; Use `:pin' to specify a particular commit to install.
|
||||
;(package! builtin-package :pin "1a2b3c4d5e")
|
||||
|
||||
|
||||
;; Doom's packages are pinned to a specific commit and updated from release to
|
||||
;; release. The `unpin!' macro allows you to unpin single packages...
|
||||
;(unpin! pinned-package)
|
||||
;; ...or multiple packages
|
||||
;(unpin! pinned-package another-pinned-package)
|
||||
;; ...Or *all* packages (NOT RECOMMENDED; will likely break things)
|
||||
;(unpin! t)
|
||||
|
||||
(package! gitconfig-mode
|
||||
:recipe (:host github :repo "magit/git-modes"
|
||||
:files ("gitconfig-mode.el")))
|
||||
(package! gitignore-mode
|
||||
:recipe (:host github :repo "magit/git-modes"
|
||||
:files ("gitignore-mode.el")))
|
||||
(package! flycheck-aspell)
|
||||
(package! async)
|
||||
(package! calfw)
|
||||
(package! calfw-org)
|
||||
(package! dashboard)
|
||||
(package! dired-open)
|
||||
(package! dired-subtree)
|
||||
(package! dmenu)
|
||||
(package! elpher)
|
||||
(package! emojify)
|
||||
(package! esxml)
|
||||
(package! evil-tutor)
|
||||
(package! imenu-list)
|
||||
(package! ivy-posframe)
|
||||
(package! mw-thesaurus)
|
||||
(package! org-board)
|
||||
(package! org-web-tools)
|
||||
(package! org-auto-tangle)
|
||||
(package! ox-gemini)
|
||||
(package! pacmacs)
|
||||
(package! peep-dired)
|
||||
(package! rainbow-mode)
|
||||
(package! request)
|
||||
(package! resize-window)
|
||||
(package! s)
|
||||
(package! tldr)
|
||||
(package! wc-mode)
|
||||
(package! beacon)
|
||||
(package! minimap)
|
||||
(package! olivetti)
|
||||
(package! sharper)
|
||||
(package! csproj-mode)
|
||||
(package! dap-mode)
|
Loading…
Reference in a new issue