emacs: overhaul config with use-package, remove most custom.el stuff
parent
9dc0df64ee
commit
1f6e84dc30
|
@ -1,4 +0,0 @@
|
||||||
(setq custom-file "~/.emacs.d/custom.el")
|
|
||||||
(load custom-file)
|
|
||||||
|
|
||||||
;; EOF
|
|
|
@ -1,16 +0,0 @@
|
||||||
(defvaralias 'c-basic-offset 'tab-width)
|
|
||||||
(defvaralias 'ruby-indent-level 'tab-width)
|
|
||||||
(defvaralias 'rust-indent-offset 'tab-width)
|
|
||||||
|
|
||||||
(defalias #'yes-or-no-p #'y-or-n-p)
|
|
||||||
|
|
||||||
(add-to-list 'default-frame-alist '(width . 80))
|
|
||||||
(add-to-list 'default-frame-alist '(height . 55))
|
|
||||||
|
|
||||||
(require 'rand-theme)
|
|
||||||
(setq rand-theme-wanted '(base16-atelier-cave
|
|
||||||
base16-atelier-forest
|
|
||||||
base16-atelier-heath))
|
|
||||||
(rand-theme)
|
|
||||||
|
|
||||||
;; EOF
|
|
|
@ -1,33 +0,0 @@
|
||||||
(defvar agw-mode-map (make-sparse-keymap)
|
|
||||||
"Global keymap for `agw-mode'.")
|
|
||||||
|
|
||||||
(define-minor-mode agw-key-map
|
|
||||||
"Minor mode for key bindings."
|
|
||||||
:global t
|
|
||||||
:keymap agw-mode-map)
|
|
||||||
|
|
||||||
(defun agw-set-key (key def)
|
|
||||||
"Binds a key into `agw-mode-map'."
|
|
||||||
(define-key agw-mode-map (kbd (concat "C-<tab> " key)) def))
|
|
||||||
|
|
||||||
(agw-set-key "b d" #'kill-this-buffer)
|
|
||||||
(agw-set-key "b e" #'ibuffer)
|
|
||||||
|
|
||||||
(agw-set-key "f" #'dired-jump)
|
|
||||||
|
|
||||||
(agw-set-key "h" #'windmove-left)
|
|
||||||
(agw-set-key "j" #'windmove-down)
|
|
||||||
(agw-set-key "k" #'windmove-up)
|
|
||||||
(agw-set-key "l" #'windmove-right)
|
|
||||||
|
|
||||||
(agw-key-map)
|
|
||||||
|
|
||||||
(evil-global-set-key 'normal (kbd "K w") #'deadgrep)
|
|
||||||
|
|
||||||
(evil-global-set-key 'visual (kbd "g s") #'sort-lines)
|
|
||||||
(evil-global-set-key 'visual (kbd "g a") #'ialign)
|
|
||||||
|
|
||||||
; just in case - bind for disabling key map mode
|
|
||||||
(global-set-key (kbd "C-x C-<tab>") #'agw-key-map)
|
|
||||||
|
|
||||||
;; EOF
|
|
|
@ -1,35 +0,0 @@
|
||||||
(defun agw-touch (fname)
|
|
||||||
"Touches a file asynchronously."
|
|
||||||
(interactive "FFile to touch: ")
|
|
||||||
(start-process "agw-touch" nil "touch" (expand-file-name fname)))
|
|
||||||
|
|
||||||
(defun agw-lisp-mode ()
|
|
||||||
"Sets up lisp and other functional language major modes."
|
|
||||||
(setq-local indent-tabs-mode nil)
|
|
||||||
(setq-local standard-indent 2)
|
|
||||||
(setq-local tab-width 2))
|
|
||||||
|
|
||||||
(defun agw-org-mode ()
|
|
||||||
"Sets up `org-mode'."
|
|
||||||
(variable-pitch-mode)
|
|
||||||
(org-bullets-mode)
|
|
||||||
(flyspell-mode)
|
|
||||||
(setq-local indent-tabs-mode nil)
|
|
||||||
(setq-local standard-indent 2)
|
|
||||||
(setq-local tab-width 2))
|
|
||||||
|
|
||||||
(defun agw-dired-mode ()
|
|
||||||
"Sets up `dired-mode'."
|
|
||||||
(local-set-key (kbd "C-c t") #'agw-touch))
|
|
||||||
|
|
||||||
(add-hook 'org-mode-hook #'agw-org-mode)
|
|
||||||
|
|
||||||
(add-hook 'emacs-lisp-mode-hook #'agw-lisp-mode)
|
|
||||||
(add-hook 'lisp-mode-hook #'agw-lisp-mode)
|
|
||||||
(add-hook 'reb-lisp-mode-hook #'agw-lisp-mode)
|
|
||||||
(add-hook 'scheme-mode-hook #'agw-lisp-mode)
|
|
||||||
(add-hook 'haskell-mode-hook #'agw-lisp-mode)
|
|
||||||
|
|
||||||
(add-hook 'dired-mode-hook #'agw-dired-mode)
|
|
||||||
|
|
||||||
;; EOF
|
|
|
@ -1,46 +0,0 @@
|
||||||
(require 'paradox)
|
|
||||||
(paradox-enable)
|
|
||||||
|
|
||||||
(require 'rust-mode)
|
|
||||||
|
|
||||||
(require 'evil)
|
|
||||||
(evil-collection-init)
|
|
||||||
(evil-mode 1)
|
|
||||||
|
|
||||||
(require 'powerline)
|
|
||||||
(powerline-center-evil-theme)
|
|
||||||
|
|
||||||
(require 'org)
|
|
||||||
(dolist (face '(org-block
|
|
||||||
org-block-begin-line
|
|
||||||
org-block-end-line
|
|
||||||
org-checkbox
|
|
||||||
org-code
|
|
||||||
org-date
|
|
||||||
org-document-info-keyword
|
|
||||||
org-verbatim))
|
|
||||||
(set-face-attribute face nil :inherit 'fixed-pitch))
|
|
||||||
|
|
||||||
(require 'smart-tabs-mode)
|
|
||||||
(smart-tabs-add-language-support rust rust-mode-hook
|
|
||||||
((rust-mode-indent-line . rust-indent-offset)))
|
|
||||||
(smart-tabs-add-language-support fish fish-mode-hook
|
|
||||||
((fish-indent-line . fish-indent-offset)))
|
|
||||||
(smart-tabs-add-language-support glsl glsl-mode-hook
|
|
||||||
((c-indent-line . c-basic-offset)
|
|
||||||
(c-indent-region . c-basic-offset)))
|
|
||||||
(smart-tabs-insinuate
|
|
||||||
'c
|
|
||||||
'fish
|
|
||||||
'javascript
|
|
||||||
'rust
|
|
||||||
'glsl)
|
|
||||||
|
|
||||||
(require 'ranger)
|
|
||||||
|
|
||||||
(require 'mozc)
|
|
||||||
(setq default-input-method "japanese-mozc")
|
|
||||||
|
|
||||||
(require 'ialign)
|
|
||||||
|
|
||||||
;; EOF
|
|
|
@ -1,5 +0,0 @@
|
||||||
(require 'package)
|
|
||||||
(add-to-list 'package-archives '("melpa" . "https://melpa.org/packages/") t)
|
|
||||||
(package-initialize)
|
|
||||||
|
|
||||||
;; EOF
|
|
102
emacs/custom.el
102
emacs/custom.el
|
@ -3,110 +3,12 @@
|
||||||
;; If you edit it by hand, you could mess it up, so be careful.
|
;; If you edit it by hand, you could mess it up, so be careful.
|
||||||
;; Your init file should contain only one such instance.
|
;; Your init file should contain only one such instance.
|
||||||
;; If there is more than one, they won't work right.
|
;; If there is more than one, they won't work right.
|
||||||
'(auto-save-default nil)
|
|
||||||
'(backup-directory-alist (quote ((".*" . "~/.emacs.d/backup"))))
|
|
||||||
'(before-save-hook (quote (copyright-update delete-trailing-whitespace)))
|
|
||||||
'(create-lockfiles nil)
|
|
||||||
'(current-language-environment "UTF-8")
|
|
||||||
'(dired-listing-switches "-alhp --si")
|
|
||||||
'(diredfl-global-mode t nil (diredfl))
|
|
||||||
'(evil-cjk-emacs-word-boundary t)
|
|
||||||
'(evil-cross-lines t)
|
|
||||||
'(evil-lookup-func (quote man))
|
|
||||||
'(evil-mode t)
|
|
||||||
'(evil-shift-width 3)
|
|
||||||
'(evil-vsplit-window-right t)
|
|
||||||
'(fill-column 80)
|
|
||||||
'(fish-indent-offset 3)
|
|
||||||
'(gc-cons-threshold 20000000)
|
|
||||||
'(global-mark-ring-max 1024)
|
|
||||||
'(global-whitespace-mode nil)
|
|
||||||
'(horizontal-scroll-bar-mode nil)
|
|
||||||
'(hscroll-step 1)
|
|
||||||
'(ialign-default-spacing 2)
|
|
||||||
'(ialign-initial-repeat t)
|
|
||||||
'(indent-tabs-mode t)
|
|
||||||
'(inhibit-startup-screen t)
|
|
||||||
'(initial-buffer-choice "~/org/init.org")
|
|
||||||
'(initial-frame-alist (quote ((width . 80) (height . 30))))
|
|
||||||
'(initial-scratch-message nil)
|
|
||||||
'(keyboard-coding-system (quote utf-8-unix))
|
|
||||||
'(line-move-ignore-invisible nil)
|
|
||||||
'(mark-ring-max 1024)
|
|
||||||
'(menu-bar-mode nil)
|
|
||||||
'(mouse-wheel-progressive-speed nil)
|
|
||||||
'(org-bullets-bullet-list (quote ("•" "‣" "⁃" "◦" "○")))
|
|
||||||
'(org-fontify-whole-heading-line t)
|
|
||||||
'(org-hide-emphasis-markers t)
|
|
||||||
'(org-hide-leading-stars t)
|
|
||||||
'(org-hide-macro-markers t)
|
|
||||||
'(org-indent-indentation-per-level 2)
|
|
||||||
'(org-link-frame-setup
|
|
||||||
(quote
|
|
||||||
((vm . vm-visit-folder)
|
|
||||||
(vm-imap . vm-visit-imap-folder)
|
|
||||||
(gnus . gnus)
|
|
||||||
(file . find-file)
|
|
||||||
(wl . wl))))
|
|
||||||
'(org-list-indent-offset 2)
|
|
||||||
'(org-log-done (quote note))
|
|
||||||
'(org-pretty-entities t)
|
|
||||||
'(org-return-follows-link t)
|
|
||||||
'(org-startup-folded nil)
|
|
||||||
'(package-enable-at-startup nil)
|
|
||||||
'(package-selected-packages
|
'(package-selected-packages
|
||||||
(quote
|
(quote
|
||||||
(ialign rand-theme glsl-mode haskell-mode fish-mode evil-collection ranger deadgrep smart-tabs-mode diredfl rainbow-delimiters org-bullets markdown-mode rust-mode base16-theme powerline evil ## undo-tree paradox)))
|
(doom-modeline use-package ialign rand-theme glsl-mode haskell-mode fish-mode evil-collection ranger deadgrep smart-tabs-mode rainbow-delimiters org-bullets markdown-mode rust-mode base16-theme evil ## undo-tree))))
|
||||||
'(prog-mode-hook
|
|
||||||
(quote
|
|
||||||
(flyspell-prog-mode prettify-symbols-mode subword-mode rainbow-delimiters-mode whitespace-mode)))
|
|
||||||
'(rainbow-delimiters-max-face-count 8)
|
|
||||||
'(ranger-override-dired (quote ranger))
|
|
||||||
'(repeat-too-dangerous nil)
|
|
||||||
'(require-final-newline t)
|
|
||||||
'(ruby-insert-encoding-magic-comment nil)
|
|
||||||
'(scroll-bar-mode nil)
|
|
||||||
'(scroll-conservatively 101)
|
|
||||||
'(scroll-step 1)
|
|
||||||
'(sentence-end-double-space nil)
|
|
||||||
'(show-paren-delay 0.0)
|
|
||||||
'(show-paren-mode t)
|
|
||||||
'(show-paren-style (quote parenthesis))
|
|
||||||
'(standard-indent 3)
|
|
||||||
'(tab-always-indent nil)
|
|
||||||
'(tab-width 3)
|
|
||||||
'(tool-bar-mode nil)
|
|
||||||
'(transient-mark-mode t)
|
|
||||||
'(vc-follow-symlinks t)
|
|
||||||
'(whitespace-style
|
|
||||||
(quote
|
|
||||||
(face trailing tabs spaces space-before-tab space-mark tab-mark))))
|
|
||||||
(custom-set-faces
|
(custom-set-faces
|
||||||
;; custom-set-faces was added by Custom.
|
;; custom-set-faces was added by Custom.
|
||||||
;; If you edit it by hand, you could mess it up, so be careful.
|
;; If you edit it by hand, you could mess it up, so be careful.
|
||||||
;; Your init file should contain only one such instance.
|
;; Your init file should contain only one such instance.
|
||||||
;; If there is more than one, they won't work right.
|
;; If there is more than one, they won't work right.
|
||||||
'(mode-line ((t (:background "#0a0a0a" :foreground "#92ebf0" :box (:line-width -1 :style released-button) :height 65 :family "Dina"))))
|
)
|
||||||
'(mode-line-buffer-id ((t (:foreground "#2a9292" :box (:line-width -1 :style released-button) :height 65 :family "Dina"))))
|
|
||||||
'(mode-line-emphasis ((t (:foreground "#e2dfe7" :box (:line-width -1 :style released-button) :slant italic :height 65 :family "Dina"))))
|
|
||||||
'(mode-line-highlight ((t (:foreground "#955ae7" :box (:line-width -1 :style released-button) :weight bold :height 65 :family "Dina"))))
|
|
||||||
'(mode-line-inactive ((t (:background "#26232a" :foreground "#655f6d" :box (:line-width -1 :style released-button) :height 65 :family "Dina"))))
|
|
||||||
'(org-document-title ((t (:foreground "#aa573c" :weight bold :height 1.6))))
|
|
||||||
'(org-level-1 ((t (:inherit outline-1 :height 1.35))))
|
|
||||||
'(org-level-2 ((t (:inherit outline-2 :height 1.3))))
|
|
||||||
'(org-level-3 ((t (:inherit outline-3 :height 1.25))))
|
|
||||||
'(org-level-4 ((t (:inherit outline-4 :foreground "dark slate blue" :height 1.2))))
|
|
||||||
'(org-level-5 ((t (:height 1.15))))
|
|
||||||
'(org-level-6 ((t (:inherit outline-6 :height 1.1))))
|
|
||||||
'(org-level-7 ((t (:inherit outline-7 :height 1.05))))
|
|
||||||
'(rainbow-delimiters-depth-1-face ((t (:foreground "#e88385"))))
|
|
||||||
'(rainbow-delimiters-depth-2-face ((t (:foreground "#ec79c0"))))
|
|
||||||
'(rainbow-delimiters-depth-3-face ((t (:foreground "#cb88e8"))))
|
|
||||||
'(rainbow-delimiters-depth-4-face ((t (:foreground "#9181e8"))))
|
|
||||||
'(rainbow-delimiters-depth-5-face ((t (:foreground "#8dc8e8"))))
|
|
||||||
'(rainbow-delimiters-depth-6-face ((t (:foreground "#9fe8b6"))))
|
|
||||||
'(rainbow-delimiters-depth-7-face ((t (:foreground "#e2e8ab"))))
|
|
||||||
'(rainbow-delimiters-depth-8-face ((t (:foreground "#e8c498"))))
|
|
||||||
'(variable-pitch ((t (:height 120 :family "Noto Sans"))))
|
|
||||||
'(whitespace-space ((t (:background "#00000000" :foreground "#7e4594"))))
|
|
||||||
'(whitespace-tab ((t (:background "#00000000" :foreground "#7e4594")))))
|
|
||||||
|
|
|
@ -0,0 +1,49 @@
|
||||||
|
(defgroup agw nil
|
||||||
|
"Alison G. Watson's customizations."
|
||||||
|
:prefix "agw-"
|
||||||
|
:group 'convenience)
|
||||||
|
|
||||||
|
(defvar agw-mode-map (make-sparse-keymap)
|
||||||
|
"Global keymap for `agw-mode'.")
|
||||||
|
|
||||||
|
(define-minor-mode agw-key-map
|
||||||
|
"Minor mode for key bindings."
|
||||||
|
:global t
|
||||||
|
:keymap agw-mode-map)
|
||||||
|
|
||||||
|
(defun agw-set-key (key def)
|
||||||
|
"Binds a key into `agw-mode-map'."
|
||||||
|
(define-key agw-mode-map (kbd (concat "C-<tab> " key)) def))
|
||||||
|
|
||||||
|
(defun agw-touch (fname)
|
||||||
|
"Touches a file asynchronously."
|
||||||
|
(interactive "FFile to touch: ")
|
||||||
|
(start-process "agw-touch" nil "touch" (expand-file-name fname)))
|
||||||
|
|
||||||
|
(defun agw-fp-mode ()
|
||||||
|
"Sets up lisp and other functional language major modes."
|
||||||
|
(setq-local indent-tabs-mode nil)
|
||||||
|
(setq-local standard-indent 2)
|
||||||
|
(setq-local tab-width 2))
|
||||||
|
|
||||||
|
(defun agw-org-mode ()
|
||||||
|
"Sets up `org-mode'."
|
||||||
|
(setq-local indent-tabs-mode nil)
|
||||||
|
(setq-local standard-indent 2)
|
||||||
|
(setq-local tab-width 2))
|
||||||
|
|
||||||
|
(defun agw-dired-mode ()
|
||||||
|
"Sets up `dired-mode'."
|
||||||
|
(local-set-key (kbd "C-c t") #'agw-touch))
|
||||||
|
|
||||||
|
(defun agw-remove-elc ()
|
||||||
|
"Removes an elc file if it exists."
|
||||||
|
(let ((elc (concat buffer-file-name "c")))
|
||||||
|
(if (file-exists-p elc)
|
||||||
|
(delete-file elc))))
|
||||||
|
|
||||||
|
(defun agw-el-mode ()
|
||||||
|
"Sets up `emacs-lisp-mode'."
|
||||||
|
(add-hook 'after-save-hook #'agw-remove-elc nil t))
|
||||||
|
|
||||||
|
;; EOF
|
327
emacs/init.el
327
emacs/init.el
|
@ -1,18 +1,319 @@
|
||||||
(add-to-list 'load-path "~/.emacs.d/auto/")
|
;; startup
|
||||||
|
(setq auto-save-default nil
|
||||||
|
backup-directory-alist '((".*" . "~/.emacs.d/backup"))
|
||||||
|
create-lockfiles nil
|
||||||
|
custom-file "~/.emacs.d/custom.el"
|
||||||
|
gc-cons-threshold 64000000
|
||||||
|
global-mark-ring-max 1024
|
||||||
|
inhibit-compacting-font-caches t
|
||||||
|
inhibit-startup-screen t
|
||||||
|
initial-buffer-choice "~/org/init.org"
|
||||||
|
initial-scratch-message nil
|
||||||
|
mark-ring-max 1024)
|
||||||
|
|
||||||
(defgroup agw nil
|
(load custom-file)
|
||||||
"Alison G. Watson's customizations."
|
|
||||||
:prefix "agw-"
|
|
||||||
:group 'convenience)
|
|
||||||
|
|
||||||
; must be set before other operations
|
;; encoding
|
||||||
(setq evil-want-keybinding nil)
|
(setq current-language-environment "UTF-8"
|
||||||
|
keyboard-coding-system 'utf-8-unix)
|
||||||
|
|
||||||
(load "-pkgdb")
|
;; visuals
|
||||||
(load "-defaults")
|
(add-to-list 'default-frame-alist '(width . 80))
|
||||||
(load "-custom")
|
(add-to-list 'default-frame-alist '(height . 30))
|
||||||
(load "-packages")
|
|
||||||
(load "-macro")
|
(add-to-list 'initial-frame-alist '(width . 80))
|
||||||
(load "-keys")
|
(add-to-list 'initial-frame-alist '(height . 30))
|
||||||
|
|
||||||
|
(setq fill-column 80)
|
||||||
|
|
||||||
|
(transient-mark-mode t)
|
||||||
|
(tool-bar-mode 0)
|
||||||
|
(menu-bar-mode 0)
|
||||||
|
|
||||||
|
(set-face-attribute 'variable-pitch nil :height 120 :family "Noto Sans")
|
||||||
|
|
||||||
|
;; ergonomics
|
||||||
|
(defalias #'yes-or-no-p #'y-or-n-p)
|
||||||
|
(setq line-move-ignore-invisible nil
|
||||||
|
mouse-wheel-progressive-speed nil
|
||||||
|
repeat-too-dangerous nil
|
||||||
|
require-final-newline t
|
||||||
|
sentence-end-double-space nil
|
||||||
|
vc-follow-symlinks t)
|
||||||
|
|
||||||
|
;; parentheses
|
||||||
|
(setq show-paren-delay 0.0
|
||||||
|
show-paren-style 'parenthesis)
|
||||||
|
(show-paren-mode t)
|
||||||
|
|
||||||
|
;; scrolling
|
||||||
|
(setq scroll-conservatively 101
|
||||||
|
scroll-step 1
|
||||||
|
hscroll-step 1)
|
||||||
|
(set-scroll-bar-mode nil)
|
||||||
|
|
||||||
|
;; tabulation
|
||||||
|
(setq tab-always-indent nil
|
||||||
|
tab-width 3
|
||||||
|
standard-indent 3
|
||||||
|
indent-tabs-mode t)
|
||||||
|
|
||||||
|
(defvaralias 'c-basic-offset 'tab-width)
|
||||||
|
(defvaralias 'ruby-indent-level 'tab-width)
|
||||||
|
(defvaralias 'rust-indent-offset 'tab-width)
|
||||||
|
|
||||||
|
(load "~/.emacs.d/data.el")
|
||||||
|
|
||||||
|
;; spelling
|
||||||
|
(add-hook 'prog-mode-hook #'flyspell-prog-mode)
|
||||||
|
|
||||||
|
;; prettify symbols
|
||||||
|
(add-hook 'prog-mode-hook #'prettify-symbols-mode)
|
||||||
|
|
||||||
|
;; subword mode
|
||||||
|
(add-hook 'prog-mode-hook #'subword-mode)
|
||||||
|
|
||||||
|
;; pkgdb
|
||||||
|
(setq package-enable-at-startup nil
|
||||||
|
package-archives '(("melpa" . "https://melpa.org/packages/")
|
||||||
|
("gnu" . "https://elpa.gnu.org/packages/")))
|
||||||
|
|
||||||
|
(require 'package)
|
||||||
|
(package-initialize)
|
||||||
|
|
||||||
|
(unless (package-installed-p 'use-package)
|
||||||
|
(package-refresh-contents)
|
||||||
|
(package-install 'use-package))
|
||||||
|
|
||||||
|
;; macros
|
||||||
|
(add-hook 'emacs-lisp-mode-hook #'agw-fp-mode)
|
||||||
|
(add-hook 'lisp-mode-hook #'agw-fp-mode)
|
||||||
|
(add-hook 'reb-lisp-mode-hook #'agw-fp-mode)
|
||||||
|
(add-hook 'scheme-mode-hook #'agw-fp-mode)
|
||||||
|
|
||||||
|
(add-hook 'before-save-hook #'copyright-update)
|
||||||
|
(add-hook 'before-save-hook #'delete-trailing-whitespace)
|
||||||
|
|
||||||
|
(agw-set-key "b d" #'kill-this-buffer)
|
||||||
|
(agw-set-key "b e" #'ibuffer)
|
||||||
|
|
||||||
|
(agw-set-key "h" #'windmove-left)
|
||||||
|
(agw-set-key "j" #'windmove-down)
|
||||||
|
(agw-set-key "k" #'windmove-up)
|
||||||
|
(agw-set-key "l" #'windmove-right)
|
||||||
|
|
||||||
|
(agw-key-map)
|
||||||
|
|
||||||
|
(global-set-key (kbd "C-x C-<tab>") #'agw-key-map)
|
||||||
|
|
||||||
|
;; theme
|
||||||
|
(use-package base16-theme
|
||||||
|
:ensure t)
|
||||||
|
|
||||||
|
(use-package rand-theme
|
||||||
|
:ensure t
|
||||||
|
:after base16-theme
|
||||||
|
:config
|
||||||
|
(setq rand-theme-wanted '(base16-atelier-cave
|
||||||
|
base16-atelier-forest
|
||||||
|
base16-atelier-heath))
|
||||||
|
(rand-theme))
|
||||||
|
|
||||||
|
(use-package doom-modeline
|
||||||
|
:ensure t
|
||||||
|
:after evil
|
||||||
|
:hook (after-init . doom-modeline-mode)
|
||||||
|
:init
|
||||||
|
(setq doom-modeline-bar-width 3
|
||||||
|
doom-modeline-buffer-encoding nil
|
||||||
|
doom-modeline-buffer-file-name-style 'truncate-with-project
|
||||||
|
doom-modeline-major-mode-icon nil
|
||||||
|
doom-modeline-minor-modes t
|
||||||
|
doom-modeline-project-detection 'project
|
||||||
|
doom-modeline-vcs-max-length 8)
|
||||||
|
(set-face-attribute 'mode-line nil :background "black"))
|
||||||
|
|
||||||
|
;; major modes
|
||||||
|
(use-package fish-mode
|
||||||
|
:ensure t
|
||||||
|
:init
|
||||||
|
(setq fish-indent-offset 3))
|
||||||
|
|
||||||
|
(use-package glsl-mode
|
||||||
|
:ensure t)
|
||||||
|
|
||||||
|
(use-package haskell-mode
|
||||||
|
:ensure t
|
||||||
|
:hook (haskell-mode . agw-fp-mode))
|
||||||
|
|
||||||
|
(use-package markdown-mode
|
||||||
|
:ensure t)
|
||||||
|
|
||||||
|
(use-package ruby-mode
|
||||||
|
:ensure t
|
||||||
|
:init
|
||||||
|
(setq ruby-insert-encoding-magic-comment nil))
|
||||||
|
|
||||||
|
(use-package rust-mode
|
||||||
|
:ensure t)
|
||||||
|
|
||||||
|
;; org-mode
|
||||||
|
(use-package org
|
||||||
|
:ensure t
|
||||||
|
:hook ((org-mode . variable-pitch-mode)
|
||||||
|
(org-mode . flyspell-mode)
|
||||||
|
(org-mode . agw-org-mode))
|
||||||
|
:init
|
||||||
|
(setq org-fontify-whole-heading-line t
|
||||||
|
org-hide-emphasis-markers t
|
||||||
|
org-hide-leading-stars t
|
||||||
|
org-hide-macro-markers t
|
||||||
|
org-indent-indentation-per-level 2
|
||||||
|
org-list-indent-offset 2
|
||||||
|
org-log-done '(note)
|
||||||
|
org-pretty-entities t
|
||||||
|
org-return-follows-link t
|
||||||
|
org-startup-folded nil
|
||||||
|
org-link-frame-setup '((vm . vm-visit-folder)
|
||||||
|
(vm-imap . vm-visit-imap-folder)
|
||||||
|
(gnus . gnus)
|
||||||
|
(file . find-file)
|
||||||
|
(wl . wl)))
|
||||||
|
:config
|
||||||
|
(dolist (face '(org-block
|
||||||
|
org-block-begin-line
|
||||||
|
org-block-end-line
|
||||||
|
org-checkbox
|
||||||
|
org-code
|
||||||
|
org-date
|
||||||
|
org-document-info-keyword
|
||||||
|
org-verbatim))
|
||||||
|
(set-face-attribute face nil :inherit 'fixed-pitch))
|
||||||
|
(set-face-attribute
|
||||||
|
'org-document-title nil
|
||||||
|
:foreground "#aa573c"
|
||||||
|
:weight 'bold
|
||||||
|
:height 1.6)
|
||||||
|
(dolist (face '((org-level-1 outline-1 . 1.35)
|
||||||
|
(org-level-2 outline-2 . 1.30)
|
||||||
|
(org-level-3 outline-3 . 1.25)
|
||||||
|
(org-level-4 outline-4 . 1.20)
|
||||||
|
(org-level-5 outline-5 . 1.15)
|
||||||
|
(org-level-6 outline-6 . 1.10)
|
||||||
|
(org-level-7 outline-7 . 1.05)))
|
||||||
|
(set-face-attribute
|
||||||
|
(car face) nil
|
||||||
|
:inherit (car (cdr face))
|
||||||
|
:height (cdr (cdr face))))
|
||||||
|
(set-face-attribute 'org-level-4 nil :foreground "dark slate blue"))
|
||||||
|
|
||||||
|
(use-package org-bullets
|
||||||
|
:ensure t
|
||||||
|
:after org
|
||||||
|
:hook (org-mode . org-bullets-mode)
|
||||||
|
:init
|
||||||
|
(setq org-bullets-bullet-list '("•" "‣" "⁃" "◦" "○")))
|
||||||
|
|
||||||
|
;; adjustments
|
||||||
|
(use-package smart-tabs-mode
|
||||||
|
:ensure t
|
||||||
|
:after (fish-mode glsl-mode rust-mode)
|
||||||
|
:config
|
||||||
|
(smart-tabs-add-language-support rust rust-mode-hook
|
||||||
|
((rust-mode-indent-line . rust-indent-offset)))
|
||||||
|
(smart-tabs-add-language-support fish fish-mode-hook
|
||||||
|
((fish-indent-line . fish-indent-offset)))
|
||||||
|
(smart-tabs-add-language-support glsl glsl-mode-hook
|
||||||
|
((c-indent-line . c-basic-offset)
|
||||||
|
(c-indent-region . c-basic-offset)))
|
||||||
|
(smart-tabs-insinuate
|
||||||
|
'c
|
||||||
|
'fish
|
||||||
|
'javascript
|
||||||
|
'rust
|
||||||
|
'glsl))
|
||||||
|
|
||||||
|
(use-package ialign
|
||||||
|
:ensure t
|
||||||
|
:init
|
||||||
|
(setq ialign-initial-repeat t))
|
||||||
|
|
||||||
|
(use-package rainbow-delimiters
|
||||||
|
:ensure t
|
||||||
|
:hook (prog-mode . rainbow-delimiters-mode)
|
||||||
|
:init
|
||||||
|
(setq rainbow-delimiters-max-face-count 8)
|
||||||
|
:config
|
||||||
|
(dolist (face '((rainbow-delimiters-depth-1-face . "#e88385")
|
||||||
|
(rainbow-delimiters-depth-2-face . "#ec79c0")
|
||||||
|
(rainbow-delimiters-depth-3-face . "#cb88e8")
|
||||||
|
(rainbow-delimiters-depth-4-face . "#9181e8")
|
||||||
|
(rainbow-delimiters-depth-5-face . "#8dc8e8")
|
||||||
|
(rainbow-delimiters-depth-6-face . "#9fe8b6")
|
||||||
|
(rainbow-delimiters-depth-7-face . "#e2e8ab")
|
||||||
|
(rainbow-delimiters-depth-8-face . "#e8c498")))
|
||||||
|
(set-face-attribute (car face) nil :foreground (cdr face))))
|
||||||
|
|
||||||
|
(use-package undo-tree
|
||||||
|
:ensure t)
|
||||||
|
|
||||||
|
(use-package whitespace
|
||||||
|
:ensure t
|
||||||
|
:hook (prog-mode . whitespace-mode)
|
||||||
|
:init
|
||||||
|
(setq whitespace-style '(face
|
||||||
|
space-before-tab
|
||||||
|
space-mark
|
||||||
|
spaces
|
||||||
|
tab-mark
|
||||||
|
tabs
|
||||||
|
trailing))
|
||||||
|
:config
|
||||||
|
(dolist (face '(whitespace-space whitespace-tab))
|
||||||
|
(set-face-attribute face nil :background nil :foreground "#7e4594")))
|
||||||
|
|
||||||
|
;; file management
|
||||||
|
(use-package dired
|
||||||
|
:hook (dired-mode . agw-dired-mode)
|
||||||
|
:config
|
||||||
|
(setq dired-listing-switches "-alhp --si")
|
||||||
|
(agw-set-key "f" #'dired-jump))
|
||||||
|
|
||||||
|
(use-package ranger
|
||||||
|
:ensure t
|
||||||
|
:after dired
|
||||||
|
:hook (dired-mode . ranger-override-dired-fn)
|
||||||
|
:config
|
||||||
|
(setq ranger-override-dired 'ranger))
|
||||||
|
|
||||||
|
(use-package deadgrep
|
||||||
|
:ensure t)
|
||||||
|
|
||||||
|
;; input
|
||||||
|
(use-package mozc
|
||||||
|
:config
|
||||||
|
(setq default-input-method "japanese-mozc"))
|
||||||
|
|
||||||
|
(use-package evil
|
||||||
|
:ensure t
|
||||||
|
:init
|
||||||
|
(setq evil-cjk-emacs-word-boundary t
|
||||||
|
evil-cross-lines t
|
||||||
|
evil-shift-width 3
|
||||||
|
evil-vsplit-window-right t
|
||||||
|
evil-want-keybinding nil)
|
||||||
|
:config
|
||||||
|
(evil-mode t)
|
||||||
|
|
||||||
|
(evil-global-set-key 'normal (kbd "K w") #'deadgrep)
|
||||||
|
|
||||||
|
(evil-global-set-key 'visual (kbd "g s") #'sort-lines)
|
||||||
|
(evil-global-set-key 'visual (kbd "g a") #'ialign))
|
||||||
|
|
||||||
|
(use-package evil-collection
|
||||||
|
:ensure t
|
||||||
|
:after evil
|
||||||
|
:config
|
||||||
|
(evil-collection-init))
|
||||||
|
|
||||||
;; EOF
|
;; EOF
|
||||||
|
|
3
links
3
links
|
@ -20,6 +20,9 @@ applications/xprofile ~/.xprofile
|
||||||
build-system/cargo.toml ~/.cargo/config
|
build-system/cargo.toml ~/.cargo/config
|
||||||
build-system/makepkg.conf ~/.config/pacman/makepkg.conf
|
build-system/makepkg.conf ~/.config/pacman/makepkg.conf
|
||||||
computers/(hostname)/vconf ~/.vim/vconf
|
computers/(hostname)/vconf ~/.vim/vconf
|
||||||
|
emacs/custom.el ~/.emacs.d/custom.el
|
||||||
|
emacs/data.el ~/.emacs.d/data.el
|
||||||
|
emacs/init.el ~/.emacs.d/init.el
|
||||||
games/alephone/marathon-1.xml ~/.alephone/Marathon Preferences
|
games/alephone/marathon-1.xml ~/.alephone/Marathon Preferences
|
||||||
games/alephone/marathon-2.xml ~/.alephone/Marathon 2 Preferences
|
games/alephone/marathon-2.xml ~/.alephone/Marathon 2 Preferences
|
||||||
games/alephone/marathon-infinity.xml ~/.alephone/Marathon Infinity Preferences
|
games/alephone/marathon-infinity.xml ~/.alephone/Marathon Infinity Preferences
|
||||||
|
|
Loading…
Reference in New Issue