master
an 2022-02-14 12:15:27 -07:00
parent dcefd01285
commit 9d0e18aaf5
3 changed files with 78 additions and 38 deletions

View File

@ -18,13 +18,17 @@
"Binds a key into `agw-mode-map'."
(define-key agw-mode-map (kbd (concat "C-<tab> " key)) def))
(defun agw-fp-mode ()
"Sets up lisp and other functional language major modes."
(defun agw-no-tabs ()
"Sets `indent-tabs-mode' to `nil'."
(setq-local indent-tabs-mode nil))
(defun agw-yes-tabs ()
"Sets `indent-tabs-mode' to `t'."
(setq-local indent-tabs-mode t))
(defun agw-org-mode ()
"Sets up `org-mode'."
(setq-local indent-tabs-mode nil)
(agw-no-tabs)
(define-key evil-normal-state-map (kbd "TAB") 'org-cycle))
(defun agw-cc-mode ()

View File

@ -37,18 +37,10 @@
(add-to-list 'default-frame-alist '(width . 80))
(add-to-list 'default-frame-alist '(height . 30))
(set-face-attribute 'default nil :family "Courier Prime Code"
:height 120 :weight 'normal :width 'normal)
(set-face-attribute 'default nil :family "JetBrains Mono"
:height 120)
(copy-face 'default 'fixed-pitch)
(copy-face 'default 'mode-line)
;; fontset usage
(dolist (range '((#x2310 . #x26bf)
(#x26c0 . #x329f)
(#x1f000 . #x1fa9f)))
(set-fontset-font t range "Noto Color Emoji"))
(set-fontset-font t '(#x2e80 . #x9fff) "Noto Sans CJK JP")
;; EOF

View File

@ -3,6 +3,9 @@
(load custom-file)
(load usr-data))
;; tabulation
(setq-default tab-width 3)
;; mode line
(setq-default mode-line-format
'("%+"
@ -22,7 +25,6 @@
;; `prog-mode'
(add-hook 'prog-mode-hook #'agw-flyspell-prog-mode)
(add-hook 'prog-mode-hook #'prettify-symbols-mode)
(add-hook 'prog-mode-hook #'subword-mode)
;; `text-mode'
@ -36,10 +38,10 @@
(current-buffer)
(find-file "~/org/init.org"))))
(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 'emacs-lisp-mode-hook #'agw-no-tabs)
(add-hook 'lisp-mode-hook #'agw-no-tabs)
(add-hook 'reb-lisp-mode-hook #'agw-no-tabs)
(add-hook 'scheme-mode-hook #'agw-no-tabs)
(add-hook 'before-save-hook #'agw-before-save)
@ -60,10 +62,9 @@
(global-set-key (kbd "C-x C-<tab>") #'agw-key-map-mode)
;; packages
(require 'package)
(unless (package-installed-p 'use-package)
(package-refresh-contents)
(package-install 'use-package))
(eval-when-compile
(add-to-list 'load-path "/home/marrub/src/use-package")
(require 'use-package))
;; theme
(use-package base16-theme
@ -106,6 +107,9 @@
(use-package elisp-mode)
(use-package eldoc)
(use-package sfz-mode
:ensure t)
(use-package yaml-mode
:ensure t)
@ -181,21 +185,24 @@
(use-package haskell-mode
:ensure t
:hook (haskell-mode . agw-fp-mode))
:hook (haskell-mode . agw-no-tabs))
(use-package markdown-mode
:ensure t
:hook ((markdown-mode . agw-flyspell-mode))
:hook (markdown-mode . agw-flyspell-mode)
:mode (("\\.mdwn\\'" . markdown-mode)))
(use-package ninja-mode
:ensure t)
(use-package ruby-mode
:hook ((ruby-mode . mmm-mode))
:init
(defvaralias 'ruby-indent-level 'tab-width)
(setq ruby-insert-encoding-magic-comment nil))
(defvaralias 'ruby-indent-tabs-mode 'indent-tabs-mode)
(setq ruby-insert-encoding-magic-comment nil
ruby-deep-arglist nil
ruby-deep-indent-paren nil
ruby-use-smie nil))
(use-package rust-mode
:hook (rust-mode . agw-maybe-smart-tabs-mode)
@ -204,7 +211,13 @@
(defvaralias 'rust-indent-offset 'tab-width))
(use-package sgml-mode
:hook (html-mode . agw-fp-mode))
:hook (html-mode . agw-no-tabs))
(use-package typescript-mode
:hook (typescript-mode . agw-maybe-smart-tabs-mode)
:ensure t
:init
(defvaralias 'typescript-indent-level 'tab-width))
;; org-mode
(use-package org
@ -266,7 +279,7 @@
;; adjustments
(use-package smart-tabs-mode
:ensure t
:after (fish-mode glsl-mode rust-mode lua-mode)
:after (fish-mode glsl-mode rust-mode lua-mode ruby-mode)
:config
(smart-tabs-add-language-support powershell powershell-mode-hook
((powershell-indent-line . powershell-indent)))
@ -277,6 +290,8 @@
(smart-tabs-add-language-support glsl glsl-mode-hook
((c-indent-line . c-basic-offset)
(c-indent-region . c-basic-offset)))
(smart-tabs-add-language-support ruby ruby-mode-hook
((ruby-indent-line . ruby-indent-level)))
(smart-tabs-add-language-support lua lua-mode-hook
((lua-indent-line . lua-indent-level))))
@ -354,15 +369,21 @@
(use-package dired
:config
(setq dired-listing-switches "-alhp --si")
(agw-set-key "f" #'dired-jump)
(agw-set-key "t" #'dired-create-empty-file))
(use-package ranger
(use-package dired-x)
(use-package diredfl
:ensure t
:hook (dired-mode . diredfl-mode))
(use-package dirvish
:ensure t
:demand t
:after dired
:hook (dired-mode . ranger-override-dired-fn)
:config
(setq ranger-override-dired 'ranger))
(agw-set-key "f" #'dirvish)
(dirvish-override-dired-mode))
(use-package deadgrep
:ensure t)
@ -382,23 +403,25 @@
(use-package evil
:ensure t
:init
:after (dirvish undo-tree)
:demand t
:hook ((evil-local-mode . turn-on-undo-tree-mode))
:config
(setq evil-cjk-emacs-word-boundary t
evil-cross-lines t
evil-mode-line-format 'after
evil-shift-width 3
evil-vsplit-window-right t
evil-want-keybinding nil
evil-indent-convert-tabs nil)
;; tags
(setq evil-normal-state-tag "~"
evil-indent-convert-tabs nil
evil-normal-state-tag "~"
evil-insert-state-tag "i"
evil-operator-state-tag "o"
evil-replace-state-tag "r"
evil-visual-state-tag 'agw-evil-visual-state-tag
evil-motion-state-tag "m"
evil-emacs-state-tag "x")
:config
evil-emacs-state-tag "x"
evil-undo-system 'undo-tree)
(evil-mode t)
(evil-global-set-key 'visual (kbd "g s") #'sort-lines)
@ -407,10 +430,31 @@
(use-package evil-collection
:ensure t
:after evil
:demand t
:config
(evil-collection-init))
;; visuals
(use-package ligature
:load-path "/home/marrub/src/ligature.el"
:config
(ligature-set-ligatures
't
'("---" "===" "!==" "=!=" "!=" "=:=" "=/=" "&&&" "&&" "&=" "+++"
"++" "***" ";;" "!!" "???" "??" "?:" "?." "?=" "<:<" "<:" ":<"
":>" ">:" "<>" "<<<" ">>>" "-|" "_|_" "||-" "||=" "####" "###"
"##" "#{" "#[" "]#" "#(" "#?" "#_(" "#_" "#:" "#!" "#=" "^="
"<$>" "<$" "$>" "<+>" "<+" "+>" "<*>" "<*" "*>" "</>" "</" "/>"
"<!--" "<#--" "-->" "--" "->>" "<<-" "<-" "<=<" "=<<" "<<="
"<==>" "<==" "<=>" "==>" "=>>" ">=>" ">>=" ">=" ">>-" "-<<" ">->"
">-" "<-<" "-<" "<-|" "<=|" "<=" "<->" "|=>" "|->" "->" "=>" "|="
"|-" "<~~" "<~>" "<~" "~~>" "~~" "~>" "~-" "-~" "~@" "[||]" "|]"
"[|" "|}" "{|" "[<" ">]" "<|>" "|||>" "<|||" "||>" "<||" "|>"
"<|" "||" "..." "..<" ".." ".=" ".?" ":::" "::=" "::" ":=" ":?"
":?>" "///" "//" "/*" "*/" "//=" "/==" "==" "/=" "@_" "__" "<<"
">>"))
(global-ligature-mode 't))
(use-package simple
:init
(setq line-move-ignore-invisible nil)