diff --git a/.config/conky/conkyrc b/.config/conky/conkyrc
deleted file mode 100644
index 22efd90..0000000
--- a/.config/conky/conkyrc
+++ /dev/null
@@ -1,103 +0,0 @@
---[[
-#########################################
-## tomorrow-night-01.conkyrc (bspwm) ##
-#########################################
-]]
-
-conky.config = {
-
- --Various settings
- background = true, -- forked to background
- cpu_avg_samples = 2, -- The number of samples to average for CPU monitoring.
- diskio_avg_samples = 10, -- The number of samples to average for disk I/O monitoring.
- double_buffer = true, -- Use the Xdbe extension? (eliminates flicker)
- if_up_strictness = 'address', -- how strict if testing interface is up - up, link or address
- net_avg_samples = 2, -- The number of samples to average for net data
- no_buffers = true, -- Subtract (file system) buffers from used memory?
- temperature_unit = 'fahrenheit', -- fahrenheit or celsius
- text_buffer_size = 2048, -- size of buffer for display of content of large variables - default 256
- update_interval = 1, -- update interval
- imlib_cache_size = 0, -- disable image cache to get a new spotify cover per song
-
- -- Placement (Conky on MIDDLE of THREE monitors at 1920x1080)
- --alignment = 'top_left', -- top_left,top_middle,top_right,bottom_left,bottom_middle,bottom_right,
- --gap_x = 3540, -- pixels between right or left border
- --gap_y = 70, -- pixels between bottom or left border
-
- -- Placement (For SINGLE monitor users!)
- alignment = 'top_right', -- top_left,top_middle,top_right,bottom_left,bottom_middle,bottom_right,
- gap_x = 50, -- pixels between right or left border
- gap_y = 70, -- pixels between bottom or left border
-
- -- Size
- minimum_height = 200, -- minimum height of window
- minimum_width = 260, -- minimum width of window
- maximum_width = 260, -- maximum width of window
-
- --Graphical
- border_inner_margin = 5, -- margin between border and text
- border_outer_margin = 5, -- margin between border and edge of window
- border_width = 0, -- border width in pixels
- default_bar_width = 260, -- default is 0 - full width
- default_bar_height = 10, -- default is 6
- default_gauge_height = 25, -- default is 25
- default_gauge_width =40, -- default is 40
- default_graph_height = 40, -- default is 25
- default_graph_width = 153, -- default is 0 - full width
- default_shade_color = '#000000', -- default shading colour
- default_outline_color = '#000000', -- default outline colour
- draw_borders = false, -- draw borders around text
- draw_graph_borders = true, -- draw borders around graphs
- draw_shades = false, -- draw shades
- draw_outline = false, -- draw outline
- stippled_borders = 0, -- dashing the border
-
- --Textual
- format_human_readable = true, -- KiB, MiB rather then number of bytes
- font = 'Mononoki Nerd Font:bold:size=10', -- the default font used
- font2 = 'Mononoki Nerd Font:bold:size=30', -- font for the time
- font3 = 'Mononoki Nerd Font:size=14', -- font for the date
- font4 = 'Mononoki Nerd Font:bold:size=9', -- font for the keybindings heading
- max_text_width = 0, -- 0 will make sure line does not get broken if width too smal
- max_user_text = 16384, -- max text in conky default 16384
- override_utf8_locale = true, -- force UTF8 requires xft
- short_units = true, -- shorten units from KiB to k
- top_name_width = 21, -- width for $top name value default 15
- top_name_verbose = false, -- If true, top name shows the full command line of each process - Default value is false.
- uppercase = false, -- uppercase or not
- use_spacer = 'none', -- adds spaces around certain objects to align - default none
- use_xft = true, -- xft font - anti-aliased font
- xftalpha = 1, -- alpha of the xft font - between 0-1
-
- --Windows
- own_window = true, -- create your own window to draw
- own_window_argb_value = 255, -- real transparency - composite manager required 0-255
- own_window_argb_visual = true, -- use ARGB - composite manager required
- own_window_class = 'Conky', -- manually set the WM_CLASS name for use with xprop
- own_window_colour = '#292d3e', -- set colour if own_window_transparent no
- own_window_transparent = false, -- if own_window_argb_visual is true sets background opacity 0%
- own_window_title = 'xmonad_conky', -- set the name manually
- own_window_type = 'desktop', -- if own_window true options are: normal/override/dock/desktop/panel
- own_window_hints = 'undecorated,below,above,sticky,skip_taskbar,skip_pager', -- if own_window true - just hints - own_window_type sets it
-
- --Colors (Palenight)
- color0 = '#c792ea',
- color1 = '#d0d0d0',
- color2 = '#82aaff',
- color3 = '#ffcb6b',
-};
-
-conky.text = [[
-${alignc}${color0}${font2}${time %H:%M}${font}
-${voffset 6}${alignc}${color0}${font3}${time %m. %d, %Y}${font}${color}
-${voffset 18}${goto 12}${color3}CPU${goto 50}$cpu%
-${color2}${goto 12}${cpubar 8,254}
-${voffset 5}${goto 12}$font${color1}${top name 1}$alignr$color${top cpu 1}%
-${goto 12}${color1}${top name 2}$alignr$color${top cpu 2}%
-${goto 12}${color1}${top name 3}$alignr$color${top cpu 3}%
-${voffset 14}${goto 12}${color3}RAM${goto 50}$mem/$memmax
-${color2}${goto 12}${membar 8,254}${color}
-${goto 12}${voffset 5}${color1}${top_mem name 1}$alignr$color${top_mem mem_res 1}
-${goto 12}${color1}${top_mem name 2}$alignr$color${top_mem mem_res 2}
-${goto 12}${color1}${top_mem name 3}$alignr$color${top_mem mem_res 3}
-]];
diff --git a/.config/emacs-my/custom-themes/morning-star-theme.el b/.config/emacs-my/custom-themes/morning-star-theme.el
deleted file mode 100644
index 3bd344e..0000000
--- a/.config/emacs-my/custom-themes/morning-star-theme.el
+++ /dev/null
@@ -1,981 +0,0 @@
-;;; morning-star-theme.el --- Emacs 24 theme with a dark background.
-
-;; Copyright (C) 2016, Alexander Miller
-
-;; Author: Alexander Miller
-;;
-;; Version: 0.1
-;; Package-Requires: ((emacs "24"))
-;; Created with emacs-theme-generator, https://github.com/mswift42/theme-creator.
-
-
-;; This program is free software: you can redistribute it and/or modify
-;; it under the terms of the GNU General Public License as published by
-;; the Free Software Foundation, either version 3 of the License, or
-;; (at your option) any later version.
-
-;; This program is distributed in the hope that it will be useful,
-;; but WITHOUT ANY WARRANTY; without even the implied warranty of
-;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-;; GNU General Public License for more details.
-
-;; You should have received a copy of the GNU General Public License
-;; along with this program. If not, see .
-
-;; This file is not part of Emacs.
-
-;;; Commentary:
-
-;;; Code:
-
-(deftheme morning-star)
-(let ((class '((class color) (min-colors 89)))
- (fg "#bbbbbb")
- (bg "#2d2d31")
- (bg2 "#25252a")
- (grey1 "#666666")
- (grey2 "#383844")
- (grey3 "#343440")
- (black1 "#1a1a1a")
- (black2 "#000000")
- (red1 "#f2777a")
- (red2 "#bb6666")
- (red3 "#ab3737")
- (red4 "#221111")
- (green1 "#66aa66")
- (green2 "#559955")
- (green3 "#112211")
- (aqua1 "#55a9a9")
- (aqua2 "#1e8f8f")
- (purple1 "#997799")
- (purple2 "#886688")
- (yellow1 "#f0c674")
- (yellow2 "#ddba1a")
- (orange1 "#c98459")
- (orange2 "#b87348")
- (brown1 "#ccb18b")
- (brown2 "#9f8b6f")
- (blue1 "#5588bb")
- (blue2 "#4477aa")
- (blue3 "#333366"))
-
- (custom-theme-set-faces
- 'morning-star
-
- ;; Syntax highlghting
- `(default ((,class (:foreground ,fg :background ,bg))))
- `(default-italic ((,class (:italic t))))
- `(font-lock-builtin-face ((,class (:foreground ,aqua1))))
- `(font-lock-comment-face ((,class (:foreground ,grey1))))
- `(font-lock-comment-delimiter-face ((,class (:foreground ,grey1))))
- `(font-lock-negation-char-face ((,class (:foreground ,red1))))
- `(font-lock-constant-face ((,class (:foreground ,red1))))
- `(font-lock-reference-face ((,class (:foreground ,red1))))
- `(font-lock-preprocessor-face ((,class (:foreground ,aqua1))))
- `(font-lock-doc-face ((,class (:foreground ,brown1))))
- `(font-lock-function-name-face ((,class (:foreground ,blue1))))
- `(font-lock-keyword-face ((,class (:foreground ,purple1 :bold t))))
- `(font-lock-string-face ((,class (:foreground ,green1))))
- `(font-lock-type-face ((,class (:foreground ,yellow1))))
- `(font-lock-variable-name-face ((,class (:foreground ,orange1))))
- `(font-lock-warning-face ((,class (:foreground ,red1 :underline (:style wave)))))
-
- ;; Mode Line
- `(mode-line ((,class (:box (:color ,black2) :background ,black1 :foreground ,green1 :bold t))))
- `(mode-line-highlight ((,class (:box (:color ,black2) :underline t))))
- `(mode-line-emphasis ((,class (:box (:color ,black2) :bolt t))))
- `(mode-line-inactive ((,class (:box (:color ,black2) :background ,bg2 :foreground ,green1))))
- `(powerline-active1 ((,class (:box (:color ,black2) :background ,black1 :foreground ,purple1 :bold t))))
- `(powerline-active2 ((,class (:box (:color ,black2) :background ,black1 :foreground ,black1))))
- `(mode-line-buffer-id ((,class (:box (:color ,black2) :foreground ,orange1 :bold t))))
- `(powerline-inactive1 ((,class (:box (:color ,black2) :background ,bg2 :foreground ,purple1))))
- `(powerline-inactive2 ((,class (:box (:color ,black2) :background ,bg2 :foreground ,purple1))))
- `(spaceline-evil-normal ((,class (:box (:color ,black2) :background ,black1 :foreground ,red3))))
- `(spaceline-evil-insert ((,class (:box (:color ,black2) :background ,black1 :foreground ,green1))))
- `(spaceline-evil-visual ((,class (:box (:color ,black2) :background ,black1 :foreground ,purple1))))
- `(spaceline-evil-emacs ((,class (:box (:color ,black2) :background ,black1 :foreground ,aqua1))))
- `(spaceline-evil-motion ((,class (:box (:color ,black2) :background ,black1 :foreground ,orange1))))
- `(spaceline-evil-replace ((,class (:box (:color ,black2) :background ,black1 :foreground ,aqua2))))
- `(spaceline-flycheck-error ((,class (:box (:color ,black2) :foreground ,red2))))
- `(spaceline-flycheck-warning ((,class (:box (:color ,black2) :foreground ,yellow2))))
- `(spaceline-flycheck-info ((,class (:box (:color ,black2) :foreground ,green2))))
-
- ;; Standard UI Items
- `(show-paren-match ((,class (:underline ,aqua2 :bold t))))
- `(isearch ((,class (:background ,red3 :foreground ,yellow2))))
- `(internal-border ((,class (:background ,black2))))
- `(child-frame-border ((,class (:background ,black2))))
- `(lazy-highlight ((,class (:background ,red1 :foreground ,black1))))
- `(link ((,class (:foreground ,aqua1 :underline (:color ,aqua1)))))
- `(link-visited ((,class (:foreground ,aqua2 :underline (:color ,aqua2)))))
- `(button ((,class (:background ,bg2 :foreground ,blue1 :box (:color ,grey3 :line-width 2 :style released-button) :bold t))))
- `(linum ((,class (:background ,bg :foreground ,grey1 :bold nil :box nil :overline nil :underline nil :italic nil))))
- `(line-number ((,class (:background ,bg :foreground ,grey1 :bold t))))
- `(line-number-current-line ((,class (:background ,bg :foreground ,green1 :bold t))))
- `(region ((,class (:background ,black1 :foreground ,fg))))
- `(highlight ((,class (:background ,black1 :foreground ,fg))))
- `(hl-line ((,class (:background ,grey2))))
- `(highlight-indentation-face ((,class (:background ,grey2))))
- `(header-line ((,class (:box (:color ,black2) :background ,black1))))
- `(fringe ((,class (:background ,bg))))
- `(cursor ((,class (:background ,red1))))
- `(minibuffer-prompt ((,class (:foreground ,purple1))))
- `(vertical-border ((,class (:foreground ,black2))))
- `(error ((,class (:foreground ,red3))))
- `(success ((,class (:foreground ,green1))))
- `(warning ((,class (:foreground ,yellow2))))
- `(eval-sexp-fu-flash ((,class (:background ,green1 :foreground ,black1))))
- `(eval-sexp-fu-flash-error ((,class (:background ,red3 :foreground ,fg))))
- `(secondary-selection ((,class (nil))))
- `(match ((,class (:background ,red3 :foreground ,fg))))
- `(tooltip ((,class (:background ,bg2 :foreground ,brown1))))
- `(help-key-binding ((,class (:foreground ,orange2 :bold t))))
- `(variable-pitch ((,class (:family "Iosevka Aile"))))
-
- ;; Widgets
- `(widget-field ((,class (:foreground ,brown1 :background ,grey3 :bold t :box (:line-width -1 :color ,grey1)))))
-
- ;; Tabs
- `(tab-line ((,class (:background ,black1 :foreground ,fg :box (:line-width 3 :color ,black1) :overline ,black1))))
- `(tab-line-tab ((,class (:background ,black1 :foreground ,fg :box (:line-width 3 :color ,black1) :overline ,black1))))
- `(tab-line-tab-current ((,class (:background ,bg2 :foreground ,fg :box (:line-width 3 :color ,bg2) :overline ,blue1))))
- `(tab-line-tab-inactive ((,class (:background ,black1 :foreground ,fg :box (:line-width 3 :color ,black1) :overline ,black1))))
- `(tab-line-highlight ((,class (:background ,bg :foreground ,fg :box (:line-width 3 :color ,bg) :overline ,blue1))))
-
- ;; Anzu
- `(anzu-mode-line ((,class (:foreground ,yellow2 :background ,bg2))))
- `(anzu-replace-highlight ((,class (:foreground ,yellow2 :background ,red3))))
- `(anzu-replace-to ((,class (:foreground ,black1 :background ,blue1))))
-
- ;; Xref
- `(xref-file-header ((,class (:foreground ,brown1))))
- `(xref-line-number ((,class (:foreground ,green1))))
- `(xref-match ((,class (:background ,black1))))
-
- ;; Evil
- `(evil-search-highlight-persist-highlight-face ((,class (:foreground ,black1 :background ,red1))))
- `(evil-ex-substitute-matches ((,class (:inherit anzu-replace-highlight))))
- `(evil-ex-substitute-replacement ((,class (:inherit anzu-replace-to))))
-
- ;; Evil Goggles
- `(evil-goggles-default-face ((,class (:foreground ,black1 :background ,blue2 :bold t))))
- `(evil-goggles-delete-face ((,class (:foreground ,black1 :background ,red3 :bold t))))
- `(evil-goggles-indent-face ((,class (:foreground ,black1 :background ,orange2 :bold t))))
- `(evil-goggles-yank-face ((,class (:foreground ,black1 :background ,blue1 :bold t))))
- `(evil-goggles-join-face ((,class (:foreground ,red2 :background ,bg2 :bold t))));; TODO
- `(evil-goggles-fill-and-move-face ((,class (:foreground ,red2 :background ,bg2 :bold t))));; TODO
- `(evil-goggles-paste-face ((,class (:foreground ,black1 :background ,green1 :bold t))))
- `(evil-goggles-shift-face ((,class (:foreground ,black1 :background ,aqua1 :bold t))))
- `(evil-goggles-surround-face ((,class (:foreground ,black1 :background ,purple1 :bold t))))
- `(evil-goggles-commentary-face ((,class (:foreground ,grey3 :background ,grey1 :bold t))))
- `(evil-goggles-nerd-commenter-face ((,class (:foreground ,grey3 :background ,grey1 :bold t))))
- `(evil-goggles-replace-with-register-face ((,class (:foreground ,red2 :background ,bg2 :bold t))));; TODO
- `(evil-goggles-set-marker-face ((,class (:foreground ,black1 :background ,aqua2 :bold t))))
- `(evil-goggles-undo-redo-add-face ((,class (:foreground ,black1 :background ,green1 :bold t))))
- `(evil-goggles-undo-redo-remove-face ((,class (:foreground ,black1 :background ,red3 :bold t))))
- `(evil-goggles-undo-redo-change-face ((,class (:foreground ,black1 :background ,blue1 :bold t))))
-
- ;; Spacemacs specifica
- `(spacemacs-normal-face ((,class (:foreground ,black1 :background ,red3))))
- `(spacemacs-visual-face ((,class (:foreground ,black1 :background ,purple2))))
- `(spacemacs-insert-face ((,class (:foreground ,black1 :background ,green1))))
- `(spacemacs-motion-face ((,class (:foreground ,black1 :background ,brown1))))
- `(spacemacs-emacs-face ((,class (:foreground ,black1 :background ,aqua2))))
-
- ;; Ido
- `(ido-first-match ((,class (:foreground ,green1))))
- `(ido-incomplete-regexp ((,class (:inherit error))))
- `(ido-indicator ((,class (:background ,red3 :foreground ,yellow2))))
- `(ido-only-match ((,class (:foreground ,green2 :bold t))))
- `(ido-subdir ((,class (:foreground ,blue1))))
- `(ido-virtual ((,class (:foreground ,aqua1))))
- `(ido-vertical-match-face ((,class (:foreground ,red1))))
- `(ido-vertical-first-match ((,class (:inherit ido-first-match))))
- `(ido-vertical-only-match ((,class (:inherit ido-only-match))))
-
- ;; Group Customization
- `(custom-button ((,class (:inherit button))))
- `(custom-button-mouse ((,class (:background ,blue1 :inherit custom-button))))
- `(custom-button-pressed ((,class (:foreground ,black1 :background ,blue1 :box (:line-width -1 :color ,black1 :style pressed-button)))))
- `(custom-comment ((,class (:inherit font-lock-comment-face))))
- `(custom-comment-tag ((,class (:inherit font-lock-comment-face))))
- `(custom-documentation ((,class (:foreground ,fg))))
- `(custom-group-subtitle ((,class (:foreground ,purple1 :bold t :underline t))))
- `(custom-group-tag ((,class (:foreground ,purple1 :bold t :underline nil :height 1.25))))
- `(custom-group-tag-1 ((,class (:foreground ,aqua1 :bold t :underline t :height 1.5))))
- `(custom-state ((,class (:foreground ,green2))))
- `(custom-variable-tag ((,class (:foreground ,purple1 :bold t :underline t))))
-
- ;; Ediff
- `(ediff-current-diff-A ((,class (:foreground ,black2 :background ,purple2))))
- `(ediff-current-diff-B ((,class (:foreground ,black2 :background ,purple2))))
- `(ediff-current-diff-C ((,class (:foreground ,aqua1 :background ,bg2))));;TODO
- `(ediff-current-diff-Ancestor ((,class (:foreground ,brown1 :background ,bg2))));;TODO
- `(ediff-even-diff-A ((,class (:foreground ,black2 :background ,blue1))))
- `(ediff-even-diff-B ((,class (:foreground ,black2 :background ,blue1))))
- `(ediff-even-diff-C ((,class (:foreground ,aqua1 :background ,red3))));;TODO
- `(ediff-even-diff-Ancestor ((,class (:foreground ,brown1 :background ,red3))));;TODO
- `(ediff-fine-diff-A ((,class (:foreground ,yellow1 :background ,red3 :bold t))))
- `(ediff-fine-diff-B ((,class (:foreground ,yellow1 :background ,red3 :bold t))))
- `(ediff-fine-diff-C ((,class (:foreground ,aqua1 :background ,purple1))));;TODO
- `(ediff-fine-diff-Ancestor ((,class (:foreground ,brown1 :background ,purple1))));;TODO
- `(ediff-odd-diff-A ((,class (:foreground ,black2 :background ,blue2))))
- `(ediff-odd-diff-B ((,class (:foreground ,black2 :background ,blue2))))
- `(ediff-odd-diff-C ((,class (:foreground ,aqua1 :background ,aqua2))));;TODO
- `(ediff-odd-diff-Ancestor ((,class (:foreground ,brown1 :background ,aqua2))));;TODO
-
- ;; Macrostep
- `(macrostep-expansion-highlight-face ((,class (:inherit region))))
-
- ;; Spacemacs states
- `(spacemacs-transient-state-title-face ((,class (:foreground ,black2 :background ,green2 :bold t :box (:color ,bg2 :line-width -1)))))
- `(spacemacs-micro-state-header-face ((,class (:inherit spacemacs-transient-state-title-face))))
- `(spacemacs-micro-state-binding-face ((,class (:foreground ,blue2 :bold t))))
-
- ;; Hydra
- `(hydra-face-red ((,class (:foreground ,red2 :bold t))))
- `(hydra-face-blue ((,class (:foreground ,blue2 :bold t))))
- `(hydra-face-pink ((,class (:foreground ,purple1 :bold t))))
- `(hydra-face-teal ((,class (:foreground ,green1 :bold t))))
- `(hydra-face-amaranth ((,class (:foreground ,aqua1 :bold t))))
-
- ;; Vimish
- `(vimish-fold-fringe ((,class (:foreground ,blue1))))
- `(vimish-fold-overlay ((,class (:foreground ,fg :background ,blue3 :box (:color ,black2 :line-width -1) :underline nil :bold nil))))
- `(vimish-fold-mouse-face ((,class (:inherit vimish-fold-overlay))))
-
- ;; Which Key
- `(which-key-key-face ((,class (:foreground ,orange1))))
- `(which-key-note-face ((,class (:foreground ,yellow1))))
- `(which-key-separator-face ((,class (:foreground ,aqua1))))
- `(which-key-special-key-face ((,class (:foreground ,orange1))))
- `(which-key-group-description-face ((,class (:foreground ,purple1))))
- `(which-key-command-description-face ((,class (:foreground ,green1))))
- `(which-key-highlighted-command-face ((,class (:foreground ,red1 :bold t))))
- `(which-key-local-map-description-face ((,class (:foreground ,blue1))))
-
- ;; Flyspell
- `(flyspell-incorrect ((,class (:underline (:color ,red3 :style wave)))))
- `(flyspell-duplicate ((,class (:underline (:color ,orange2 :style wave)))))
-
- ;; Flycheck
- `(flycheck-info ((,class (:underline ,green2))))
- `(flycheck-warning ((,class (:underline ,yellow2))))
- `(flycheck-error ((,class (:underline ,red3))))
- `(flycheck-fringe-info ((,class (:foreground ,green2))))
- `(flycheck-fringe-warning ((,class (:foreground ,yellow2))))
- `(flycheck-fringe-error ((,class (:foreground ,red1))))
- `(flycheck-error-list-info ((,class (:foreground ,green2))))
- `(flycheck-error-list-warning ((,class (:foreground ,yellow1 :bold t))))
- `(flycheck-error-list-error ((,class (:foreground ,red1 :bold t))))
- `(flycheck-error-list-id ((,class (:foreground ,yellow1))))
- `(flycheck-error-list-checker-name ((,class (:foreground ,brown1))))
- `(flycheck-error-list-column-number ((,class (:foreground ,green2 :bold t))))
- `(flycheck-error-list-line-number ((,class (:foreground ,green2 :bold t))))
- `(flycheck-error-list-highlight ((,class (:background ,grey3))))
-
- ;; Rainbow delimiters
- `(rainbow-delimiters-depth-1-face ((,class :foreground ,purple1)))
- `(rainbow-delimiters-depth-2-face ((,class :foreground ,red2)))
- `(rainbow-delimiters-depth-3-face ((,class :foreground ,green1)))
- `(rainbow-delimiters-depth-4-face ((,class :foreground ,orange1)))
- `(rainbow-delimiters-depth-5-face ((,class :foreground ,blue1)))
- `(rainbow-delimiters-depth-6-face ((,class :foreground ,yellow1)))
- `(rainbow-delimiters-depth-7-face ((,class :foreground ,brown1)))
- `(rainbow-delimiters-depth-8-face ((,class :foreground ,aqua1)))
- `(rainbow-delimiters-mismatched-face ((,class :foreground ,black1)))
- `(rainbow-delimiters-unmatched-face ((,class :foreground ,black1)))
-
- ;; Smerge
- `(smerge-mine ((,class (:foreground ,black1 :background ,blue1 :bold t))))
- `(smerge-markers ((,class (:foreground ,black1 :background ,purple2 :bold t))))
- `(smerge-upper ((,class (:foreground ,blue1))))
- `(smerge-refined-added ((,class (:foreground ,bg2 :background ,green2))))
- `(smerge-lower ((,class (:foreground ,orange1))))
- `(smerge-refined-removed ((,class (:foreground ,bg2 :background ,red2))))
-
- ;; Smart-Parens
- `(sp-pair-overlay-face ((,class (:background ,black1))))
- `(sp-show-pair-match-face ((,class (:inherit show-paren-match))))
-
- ;; Highlight symbol
- `(highlight-symbol-face ((,class (:background ,grey2))))
-
- ;; Paradox
- `(paradox-name-face ((,class (:foreground ,green1))))
- `(paradox-homepage-button-face ((,class (:foreground ,blue1 :bold t))))
- `(paradox-archive-face ((,class (:foreground ,brown1 :box (:color ,bg :line-width -1)))))
- `(paradox-star-face ((,class (:foreground ,purple2 :bold t))))
-
- ;; Man Pages
- `(Man-overstrike ((,class (:foreground ,purple1 :bold t))))
- `(Man-underline ((,class (:foreground ,green1 :underline t))))
- `(Man-reverse ((,class (:foreground ,aqua1))))
-
- ;; Dired
- `(dired-header ((,class (:foreground ,purple1 :underline t :height 1.2))))
- `(dired-marked ((,class (:foreground ,black2 :background ,purple1 :box (:line-width -1)))))
- `(dired-flagged ((,class (:foreground ,fg :background ,red3 :box (:color ,black2 :line-with -1)))))
- `(dired-ignored ((,class (:foreground ,black2 :background ,grey2 :box (:color ,black2 :line-with -1)))))
- `(dired-symlink ((,class (:foreground ,aqua1))))
- `(dired-directory ((,class (:foreground ,blue1))))
- `(dired-perm-write ((,class (:foreground ,red1))))
- `(dired-warning ((,class (:underline ,red3))))
- `(dired-mark ((,class (:inherit diredp-flag-mark-line))))
-
- ;; Dired+
- `(diredp-dir-name ((,class (:inherit dired-directory))))
- `(diredp-dir-heading ((,class (:inherit dired-header))))
- `(diredp-file-name ((,class (:foreground ,brown1))))
- `(diredp-file-suffix ((,class (:foreground ,brown1))))
- `(diredp-symlink ((,class (:inherit dired-symlink))))
- `(diredp-ignored-file-name ((,class (:foreground ,grey1))))
- `(diredp-compressed-file-suffix ((,class (:foreground ,purple1))))
- `(diredp-deletion-file-name ((,class (:foreground ,red1 :bold t))))
- `(diredp-deletion ((,class (:inherit diredp-deletion-file-name))))
- `(diredp-flag-mark-line ((,class (:foreground ,fg :bold t))))
- `(diredp-flag-mark ((,class (:inherit diredp-flag-mark-line))))
- `(diredp-mode-line-marked ((,class (:foreground ,purple1 :bold t))))
- `(diredp-mode-line-flagged ((,class (:foreground ,red1 :bold t))))
- `(diredp-executable-tag ((,class (:foreground ,red1 :bold t))))
- `(diredp-number ((,class (:foreground ,purple1))))
- `(diredp-date-time ((,class (:foreground ,green1))))
- `(diredp-read-priv ((,class (:foreground ,green1))))
- `(diredp-write-priv ((,class (:foreground ,blue1))))
- `(diredp-exec-priv ((,class (:foreground ,red1))))
- `(diredp-link-priv ((,class (:foreground ,aqua1))))
- `(diredp-no-priv ((,class (:foreground ,grey2))))
- `(diredp-dir-priv ((,class (:foreground ,brown1))))
- `(diredp-rare-priv ((,class (:foreground ,yellow2 :bold t))))
- `(diredp-other-priv ((,class (:foreground ,yellow2 :bold t))))
-
- ;; NeoTree
- `(neo-banner-face ((,class (:foreground ,red1 :bold t :underline t :height 1.4))))
- `(neo-dir-link-face ((,class (:foreground ,blue1))))
- `(neo-expand-btn-face ((,class (:foreground ,green2 :bold t))))
- `(neo-file-link-face ((,class (:foreground ,brown1))))
- `(neo-header-face ((,class (:foreground ,brown1))))
- `(neo-root-dir-face ((,class (:foreground ,purple1 :bold t :underline t))))
-
- ;; treemacs
- `(treemacs-root-face ((,class (:foreground ,purple2 :bold t :underline t :overline t :height 1.2))))
- `(treemacs-help-title-face ((,class (:inherit font-lock-doc-face))))
-
- ;; Rust & Racer
- `(cargo-process--standard-face ((,class (:foreground ,blue1))))
- `(cargo-process--ok-face ((,class (:foreground ,green1))))
- `(cargo-process--warning-face ((,class (:foreground ,yellow1))))
- `(cargo-process--error-face ((,class (:foreground ,red1 :bold t))))
- `(cargo-process--pointer-face ((,class (:foreground ,purple2))))
- `(racer-help-heading-face ((,class (:foreground ,purple2 :underline t :bold t :height 1.1))))
- `(rust-unsafe-face ((,class (:foreground ,red1 :bold t :underline t))))
-
- ;; Mardown
- `(markdown-blockquote-face ((,class (:foreground ,brown1))))
- `(markdown-bold-face ((,class (:foreground ,orange1 :bold t))))
- `(markdown-comment-face ((,class (:inherit font-lock-comment-face))))
- `(markdown-footnote-face ((,class (:foreground ,red3 :bold t))))
- `(markdown-gfm-checkbox-face ((,class (:foreground ,red1 :background ,bg2 :box (:color ,grey1 :style released-button :line-width -1) :bold t))))
- `(markdown-header-delimiter-face ((,class (:foreground ,blue1 :bold t))))
- `(markdown-header-rule-face ((,class (:foreground ,blue1 :bold t))))
- `(markdown-header-face ((,class (:foreground ,purple1 :height 1.3))))
- `(markdown-header-face-1 ((,class (:foreground ,purple1 :height 1.2))))
- `(markdown-header-face-2 ((,class (:foreground ,purple1 :height 1.1))))
- `(markdown-header-face-3 ((,class (:foreground ,purple1 :height 1.05))))
- `(markdown-header-face-4 ((,class (:foreground ,purple1))))
- `(markdown-header-face-5 ((,class (:foreground ,purple1))))
- `(markdown-header-face-6 ((,class (:foreground ,purple1))))
- `(markdown-highlight-face ((,class (:inherit highlight))))
- `(markdown-inline-code-face ((,class (:foreground ,aqua2 :bold t))))
- `(markdown-italic-face ((,class (:foreground ,orange1 :italic t))))
- `(markdown-language-keyword-face ((,class (:foreground ,red1 :bold t :underline t))))
- `(markdown-line-break-face ((,class (:inherit link :height 2.0))))
- `(markdown-list-face ((,class (:foreground ,green1 :bold t))))
- `(markdown-link-face ((,class (:inherit link :underline nil))))
- `(markdown-link-title-face ((,class (:foreground ,blue1))))
- `(markdown-markup-face ((,class (:foreground ,yellow1))))
- `(markdown-math-face ((,class (:inherit markdown-inline-code-face))))
- `(markdown-metadata-key-face ((,class (:foreground ,green1))))
- `(markdown-metadata-value-face ((,class (:foreground ,red3))))
- `(markdown-missing-link-face ((,class (:inherit font-lock-warning-face))))
- `(markdown-pre-face ((,class (:inherit markdown-blockquote-face))))
- `(markdown-reference-face ((,class (:foreground ,purple1))))
- `(markdown-strike-through-face ((,class (:foreground ,orange1 :strike-through t))))
- `(markdown-url-face ((,class (:inherit link))))
-
- ;; Ace
- `(ace-jump-face-foreground ((,class (:foreground ,yellow2 :background ,red3))))
- `(aw-leading-char-face ((,class (:foreground ,yellow2 :background ,red3))))
-
- ;; Describe
- `(describe-variable-value ((,class (:foreground ,brown1))))
-
- ;; Ivy
- `(ivy-minibuffer-match-face-1 ((,class (:background ,red3 :foreground ,yellow2))))
- `(ivy-minibuffer-match-face-2 ((,class (:background ,red3 :foreground ,yellow2))))
- `(ivy-minibuffer-match-face-3 ((,class (:background ,red3 :foreground ,yellow2))))
- `(ivy-minibuffer-match-face-4 ((,class (:background ,red3 :foreground ,yellow2))))
- `(ivy-confirm-face ((,class (:background ,orange2 :foreground ,black2))))
- `(ivy-cursor ((,class (:background ,brown2 :foreground ,black2))))
- `(ivy-current-match ((,class (:background ,black1))))
- `(ivy-action ((,class (:background ,aqua2 :foreground ,black2))))
- `(ivy-match-required-face ((,class (:background ,aqua1 :foreground ,black2))))
- `(ivy-remote ((,class (:foreground ,aqua1))))
- `(ivy-modified-buffer ((,class (:foreground ,fg :underline ,green2))))
- `(ivy-virtual ((,class (:foreground ,purple1))))
- `(ivy-subdir ((,class (:foreground ,blue1))))
-
- ;; Avy
- `(avy-background-face ((,class (:background ,grey3))))
- `(avy-lead-face ((,class (:background ,red3 :foreground ,yellow2))))
- `(avy-lead-face-0 ((,class (:background ,blue1 :foreground ,black1))))
- `(avy-lead-face-1 ((,class (:background ,red3 :foreground ,yellow2))))
- `(avy-lead-face-2 ((,class (:background ,blue1 :foreground ,black1))))
-
- ;; imenu list
- `(imenu-list-entry-subalist-face-0 ((,class (:foreground ,green1))))
- `(imenu-list-entry-subalist-face-1 ((,class (:foreground ,yellow1))))
- `(imenu-list-entry-subalist-face-2 ((,class (:foreground ,green1))))
- `(imenu-list-entry-subalist-face-3 ((,class (:foreground ,blue1))))
- `(imenu-list-entry-face-0 ((,class (:foreground ,blue1))))
- `(imenu-list-entry-face-1 ((,class (:foreground ,blue1))))
- `(imenu-list-entry-face-2 ((,class (:foreground ,aqua1))))
- `(imenu-list-entry-face-3 ((,class (:foreground ,blue1))))
-
- ;; LaTeX
- `(font-latex-bold-face ((,class (:foreground ,orange1 :bold t))))
- `(font-latex-italic-face ((,class (:foreground ,orange1 :italic t))))
- `(font-latex-string-face ((,class (:foreground ,green1))))
- `(font-latex-math-face ((,class (:foreground ,aqua1))))
- `(font-latex-verbatim-face ((,class (:foreground ,orange2))))
- `(font-latex-warning-face ((,class (:foreground ,red1))))
- `(font-latex-sedate-face ((,class (:foreground ,blue1))))
- `(font-latex-sectioning-0-face ((,class (:foreground ,yellow1 :height 1.5))))
- `(font-latex-sectioning-1-face ((,class (:foreground ,yellow1 :height 1.4))))
- `(font-latex-sectioning-2-face ((,class (:foreground ,yellow1 :height 1.3))))
- `(font-latex-sectioning-3-face ((,class (:foreground ,yellow1 :height 1.2))))
- `(font-latex-sectioning-4-face ((,class (:foreground ,yellow1 :height 1.1))))
- `(font-latex-sectioning-5-face ((,class (:foreground ,yellow1))))
- `(preview-reference-face ((,class (:foreground ,fg :height 1.1))))
- `(TeX-error-description-error ((,class (:foreground ,red1 :bold t))))
- `(TeX-error-description-tex-said ((,class (:foreground ,purple1))))
-
- ;; Undo Tree
- `(undo-tree-visualizer-current-face ((,class (:foreground ,blue1 :bold t))))
- `(undo-tree-visualizer-default-face ((,class (:foreground ,fg))))
- `(undo-tree-visualizer-active-branch-face ((,class (:foreground ,red1))))
- `(undo-tree-visualizer-register-face ((,class (:foreground ,purple2))))
- `(undo-tree-visualizer-unmodified-face ((,class (:foreground ,green2))))
-
- ;; Terminal
- `(term ((,class (:foreground ,brown1))))
- `(term-bold ((,class (:bold t))))
- `(term-underline ((,class (:underline t))))
- `(term-color-black ((,class (:foreground ,black2))))
- `(term-color-blue ((,class (:foreground ,blue1))))
- `(term-color-red ((,class (:foreground ,red1))))
- `(term-color-green ((,class (:foreground ,green1))))
- `(term-color-yellow ((,class (:foreground ,yellow1))))
- `(term-color-magenta ((,class (:foreground ,purple1))))
- `(term-color-cyan ((,class (:foreground ,aqua1))))
- `(term-color-white ((,class (:foreground ,fg))))
-
- ;; Whitespace
- `(whitespace-big-indent ((,class (:foreground ,grey1))))
- `(whitespace-empty ((,class (:background ,grey1))))
- `(whitespace-trailing ((,class (:foreground ,grey1))))
- `(whitespace-hspace ((,class (:background ,grey1))))
- `(whitespace-indentation ((,class (:background ,grey1))))
- `(whitespace-line ((,class (:foreground ,grey1))))
- `(whitespace-newline ((,class (:foreground ,grey1))))
- `(whitespace-space ((,class (:foreground ,grey1))))
- `(whitespace-space-after-tab ((,class (:foreground ,grey1))))
- `(whitespace-space-before-tab ((,class (:foreground ,grey1))))
- `(whitespace-tab ((,class (:foreground ,grey1))))
- `(whitespace-trailing ((,class (:foreground ,grey1))))
-
- ;; info manual
- `(info-title-1 ((,class (:foreground ,purple1 :bold t :height 2.0))))
- `(info-title-2 ((,class (:foreground ,purple1 :bold t :height 1.75))))
- `(info-title-3 ((,class (:foreground ,purple1 :bold t :height 1.5))))
- `(info-title-4 ((,class (:foreground ,purple1 :bold t :height 1.25))))
- `(info-header-node ((,class (:foreground ,red1 :bold t :underline t))))
- `(info-menu-header ((,class (:foreground ,purple1 :bold t))))
- `(info-menu-star ((,class (:foreground ,green2 :bold t))))
- `(info-quoted-name ((,class (:foreground ,blue1 :bold t))))
- `(info-double-quoted-name ((,class (:foreground ,green1))))
- `(info-xref ((,class (:foreground ,aqua1 :underline t :bold t))))
-
- ;; Helm
- `(helm-action ((,class (:foreground ,red1))))
- `(helm-bookmark-addressbook ((,class (:foreground ,purple1))))
- `(helm-bookmark-directory ((,class (:foreground ,blue1))))
- `(helm-bookmark-file ((,class (:foreground ,brown1))))
- `(helm-bookmark-gnus ((,class (:foreground ,aqua1))))
- `(helm-bookmark-info ((,class (:foreground ,green1))))
- `(helm-bookmark-man ((,class (:foreground ,yellow1))))
- `(helm-bookmark-w3m ((,class (:foreground ,red1))))
- `(helm-buffer-directory ((,class (:foreground ,blue1))))
- `(helm-buffer-file ((,class (:foreground ,fg))))
- `(helm-buffer-not-saved ((,class (:foreground ,fg :underline (:style wave :color, green2)))))
- `(helm-buffer-process ((,class (:foreground ,orange1))))
- `(helm-buffer-saved-out ((,class (:foreground ,fg :underline (:style wave :color ,red1)))))
- `(helm-buffer-size ((,class (:foreground ,green1))))
- `(helm-candidate-number ((,class (:background ,yellow2 :foreground ,black2))))
- `(helm-etags-file ((,class (:height 2.0 :background ,fg :foreground ,blue3)))) ;; TODO
- `(helm-ff-directory ((,class (:foreground ,blue1))))
- `(helm-ff-dirs ((,class (:height 2.0 :background ,fg :foreground ,blue3)))) ;; TODO
- `(helm-ff-dotted-directory ((,class (:foreground ,orange1))))
- `(helm-ff-dotted-symlink-directory ((,class (:foreground ,orange1))))
- `(helm-ff-executable ((,class (:foreground ,red1))))
- `(helm-ff-file ((,class (:foreground ,brown1))))
- `(helm-ff-invalid-symlink ((,class (:foreground ,aqua1 :underline (:style wave :color ,red1)))))
- `(helm-ff-prefix ((,class (:foreground ,purple1))))
- `(helm-ff-symlink ((,class (:foreground ,aqua1))))
- `(helm-ff-file-extension ((,class (:foreground ,green1))))
- `(helm-grep-cmd-line ((,class (:foreground ,aqua1))))
- `(helm-grep-file ((,class (:foreground ,blue1))))
- `(helm-grep-finish ((,class (:foreground ,yellow2 :background ,bg2 :box (:color ,black2 :line-width -1) :bold t))))
- `(helm-grep-lineno ((,class (:foreground ,green1))))
- `(helm-grep-match ((,class (:foreground ,yellow2 :background ,red3))))
- `(helm-history-deleted ((,class (:height 2.0 :background ,fg :foreground ,red1)))) ;; TODO
- `(helm-history-remote ((,class (:height 2.0 :background ,fg :foreground ,green1)))) ;; TODO
- `(helm-header ((,class (:foreground ,grey2))))
- `(helm-header-line-left-margin ((,class (:foreground ,purple2 :bold t))))
- `(helm-lisp-completion-info ((,class (:height 2.0 :background ,fg :foreground ,purple2)))) ;; TODO
- `(helm-lisp-show-completion ((,class (:height 2.0 :background ,fg :foreground ,blue2)))) ;; TODO
- `(helm-match ((,class (:foreground ,yellow2 :background ,red3))))
- `(helm-match-item ((,class (:foreground ,yellow2 :background ,red3))))
- `(helm-moccur-buffer ((,class (:inherit helm-grep-file))))
- `(helm-M-x-key ((,class (:foreground ,yellow1 :bold t))))
- `(helm-prefarg ((,class (:foreground ,aqua1 :bold t))))
- `(helm-resume-need-update ((,class (:height 2.0 :background ,fg :foreground ,aqua2)))) ;; TODO
- `(helm-selection ((,class (:background ,black1 :extend t))))
- `(helm-selection-line ((,class (:background ,grey3))))
- `(helm-separator ((,class (:foreground ,green1 :bold t))))
- `(helm-source-header ((,class (:background ,aqua2 :foreground ,black2 :underline t :extend t))))
- `(helm-visible-mark ((,class (:foreground ,fg :bold t))))
-
- ;;Helm swoop
- `(helm-swoop-line-number-face ((,class (:inherit linum))))
- `(helm-swoop-target-line-face ((,class (:inherit hl-line))))
- `(helm-swoop-target-word-face ((,class (:foreground ,yellow2 :background ,red3))))
- `(helm-swoop-target-line-block-face ((,class (:foreground ,red3 :background ,green1)))) ;; TODO
-
- ;;Helm xref
- `(helm-xref-file-name ((,class (:foreground ,purple1))))
- `(helm-xref-line-number ((,class (:foreground ,green1 :bold t))))
-
- ;; Magit
- `(magit-bisect-bad ((,class (:height 2.0 :foreground ,red1 :background ,red3)))) ;; TODO
- `(magit-bisect-good ((,class (:height 2.0 :foreground ,red1 :background ,green2)))) ;; TODO
- `(magit-bisect-skip ((,class (:height 2.0 :foreground ,red1 :background ,blue2)))) ;; TODO
- `(magit-blame-date ((,class (:background ,bg2 :foreground ,green1 :bold t))))
- `(magit-blame-hash ((,class (:background ,bg2 :foreground ,brown1 :bold t))))
- `(magit-blame-heading ((,class (:background ,bg2 :bold t))))
- `(magit-blame-name ((,class (:background ,bg2 :foreground ,blue2 :bold t))))
- `(magit-blame-summary ((,class (:background ,bg2 :foreground ,brown1 :bold t))))
- `(magit-branch-current ((,class (:foreground ,blue2 :bold t))))
- `(magit-branch-remote-head ((,class (:foreground ,purple2 :bold t))))
- `(magit-branch-remote ((,class (:foreground ,aqua1 :bold t))))
- `(magit-branch-local ((,class (:foreground ,brown2 :bold t))))
- `(magit-cherry-equivalent ((,class (:foreground ,blue1))))
- `(magit-cherry-unmatched ((,class (:foreground ,red1))))
- `(magit-diff-added ((,class (:foreground ,green1))))
- `(magit-diff-added-highlight ((,class (:background ,bg2 :inherit magit-diff-added))))
- `(magit-diff-base ((,class (:foreground ,red3 :background ,aqua2)))) ;; TODO
- `(magit-diff-base-highlight ((,class (:foreground ,red3 :background ,green2)))) ;; TODO
- `(magit-diff-conflict-heading ((,class (:foreground ,black1 :background ,purple2 :bold t))))
- `(magit-diff-context ((,class (:foreground ,fg))))
- `(magit-diff-context-highlight ((,class (:background ,bg2))))
- `(magit-diff-file-heading ((,class (:foreground ,fg))))
- `(magit-diff-file-heading-highlight ((,class (:background ,bg2))))
- `(magit-diff-file-heading-selection ((,class (:foreground ,red3 :background ,green2))))
- `(magit-diff-hunk-heading ((,class (:foreground ,blue2 :bold t))))
- `(magit-diff-hunk-heading-highlight ((,class (:background ,bg2 :inherit magit-diff-hunk-heading))))
- `(magit-diff-lines-boundary ((,class (:background ,yellow2))))
- `(magit-diff-lines-heading ((,class (nil))))
- `(magit-diff-our ((,class (:foreground ,orange2))))
- `(magit-diff-our-highlight ((,class (:foreground ,orange2 :background ,bg2))))
- `(magit-diff-removed ((,class (:foreground ,red1))))
- `(magit-diff-removed-highlight ((,class (:background ,bg2 :inherit magit-diff-removed))))
- `(magit-diff-their ((,class (:foreground ,brown1))))
- `(magit-diff-their-highlight ((,class (:foreground ,brown1 :background ,bg2))))
- `(magit-whitespace-warning-face ((,class (:foreground ,red1))))
- `(magit-diffstat-added ((,class (:foreground ,green1))))
- `(magit-diffstat-removed ((,class (:foreground ,red1))))
- `(magit-dimmed ((,class (:inherit font-lock-comment-face))))
- `(magit-filename ((,class (:foreground ,fg))))
- `(magit-hash ((,class (:foreground ,orange1))))
- `(magit-head ((,class (:foreground ,purple1 :bold t))))
- `(magit-header-line ((,class (:inherit magit-section-heading))))
- `(magit-log-graph ((,class (:foreground ,orange2))))
- `(magit-log-author ((,class (:foreground ,blue1))))
- `(magit-log-date ((,class (:foreground ,green1))))
- `(magit-process-ng ((,class (:inherit error))))
- `(magit-process-ok ((,class (:inherit success))))
- `(magit-reflog-amend ((,class (:foreground ,brown1 :bold t))))
- `(magit-reflog-checkout ((,class (:foreground ,blue1 :bold t))))
- `(magit-reflog-cherry-pick ((,class (:foreground ,yellow1 :bold t))))
- `(magit-reflog-commit ((,class (:foreground ,green1 :bold t))))
- `(magit-reflog-merge ((,class (:foreground ,aqua1 :bold t))))
- `(magit-reflog-other ((,class (:foreground ,fg :bold t))))
- `(magit-reflog-rebase ((,class (:foreground ,orange1 :bold t))))
- `(magit-reflog-remote ((,class (:foreground ,purple1 :bold t))))
- `(magit-reflog-reset ((,class (:foreground ,red1 :bold t))))
- `(magit-refname ((,class (:height 2.0 :foreground ,purple2 :background ,black1)))) ;; TODO
- `(magit-refname-stash ((,class (:height 2.0 :foreground ,red1 :background ,black1)))) ;; TODO
- `(magit-refname-wip ((,class (:height 2.0 :foreground ,red1 :background ,black1)))) ;; TODO
- `(magit-refname-pullreq ((,class (:foreground ,orange2 :bold t))))
- `(magit-section-heading ((,class (:foreground ,purple1 :underline t :height 1.2))))
- `(magit-section-heading-selection ((,class (:foreground ,green1 :background ,black2))))
- `(magit-section-highlight ((,class (:background ,bg2))))
- `(magit-section-secondary-heading ((,class (:foreground ,purple1))))
- `(magit-sequence-done ((,class (:foreground ,grey1))))
- `(magit-sequence-drop ((,class (:foreground ,orange1 :bold t))))
- `(magit-sequence-head ((,class (:foreground ,purple1 :bold t))))
- `(magit-sequence-onto ((,class (:foreground ,purple1 :bold t))))
- `(magit-sequence-part ((,class (:foreground ,blue1 :bold t))))
- `(magit-sequence-pick ((,class (:foreground ,green1 :bold t))))
- `(magit-sequence-stop ((,class (:foreground ,red1 :bold t))))
- `(magit-signature-bad ((,class (:foreground ,yellow1 :italic t :underline (:style wave)))))
- `(magit-signature-good ((,class (:foreground ,green1 :italic t :underline t))))
- `(magit-signature-untrusted ((,class (:foreground ,red1 :italic t :underline (:style wave)))))
- `(magit-tag ((,class (:foreground ,yellow1 :bold t))))
-
- ;; Diff
- `(diff-refine-added ((,class (:foreground ,green2 :background ,green3 :bold t))))
- `(diff-refine-removed ((,class (:foreground ,red2 :background ,red4 :bold t))))
- `(diff-refine-changed ((,class (:foreground ,blue1 :background ,black1 :bold t))))
-
- ;; Git
- `(git-commit-keyword ((,class (:foreground ,brown2 :bold t))))
- `(git-commit-comment-action ((,class (:foreground ,orange1))))
- `(git-commit-comment-branch ((,class (:foreground ,blue1 :bold t))))
- `(git-commit-comment-detached ((,class (:foreground ,aqua1))))
- `(git-commit-comment-file ((,class (:foreground ,green1))))
- `(git-commit-comment-heading ((,class (:foreground ,purple1 :underline t))))
- `(git-commit-known-pseudo-header ((,class (:inherit git-commit-pseudo-header))))
- `(git-commit-nonempty-second-line ((,class (:foreground ,red1 :underline t))))
- `(git-commit-overlong-summary ((,class (:foreground ,red1))))
- `(git-commit-pseudo-header ((,class (:foreground ,purple1 :underline t :height 1.3))))
- `(git-commit-summary ((,class (:foreground ,yellow1))))
- `(git-rebase-hash ((,class (:inherit magit-hash))))
- `(git-rebase-description ((,class (:foreground ,fg))))
- `(git-rebase-killed-action ((,class (:foreground ,red1))))
-
- ;; Git Rebase
- `(git-rebase-description ((,class (:foreground ,fg))))
- `(git-rebase-hash ((,class (:foreground ,orange1))))
- `(git-rebase-killed-action ((,class (:foreground ,grey1 :strike-through t))))
-
- ;; Git gutter
- `(git-gutter:added ((,class (:foreground ,green1))))
- `(git-gutter:deleted ((,class (:foreground ,red1))))
- `(git-gutter:modified ((,class (:foreground ,blue1))))
- `(git-gutter+-added ((,class (:inherit git-gutter:added))))
- `(git-gutter+-deleted ((,class (:inherit git-gutter:deleted))))
- `(git-gutter+-modified ((,class (:inherit git-gutter:modified))))
- `(git-gutter-fr:added ((,class (:inherit git-gutter:added))))
- `(git-gutter-fr:deleted ((,class (:inherit git-gutter:deleted))))
- `(git-gutter-fr:modified ((,class (:inherit git-gutter:modified))))
- `(git-gutter-fr+-added ((,class (:inherit git-gutter:added))))
- `(git-gutter-fr+deleted ((,class (:inherit git-gutter:deleted))))
- `(git-gutter-fr+modified ((,class (:inherit git-gutter:modified))))
-
- ;; Transient
- `(transient-heading ((,class (:foreground ,purple1 :bold t))))
- `(transient-key ((,class (:foreground ,blue1 :bold t))))
- `(transient-value ((,class (:foreground ,aqua1 :bold t))))
- `(transient-argument ((,class (:foreground ,orange1 :bold t))))
- `(transient-unreachable-key ((,class (:foreground ,grey1 :bold t))))
- `(transient-active-infix ((,class (:foreground ,green2 :bold t))))
- `(transient-unreachable ((,class (:foreground ,grey1))))
- `(transient-teal ((,class (:inherit hydra-face-teal))))
- `(transient-pink ((,class (:inherit hydra-face-pink))))
- `(transient-amaranth ((,class (:inherit hydra-face-amaranth))))
- `(transient-blue ((,class (:inherit hydra-face-blue))))
- `(transient-red ((,class (:inherit hydra-face-red))))
-
- `(transient-inacitve-argument ((,class (:foreground ,brown1 :background ,black2))))
- `(transient-inacitve-value ((,class (:foreground ,orange1 :background ,black2))))
- `(transient-disabled-suffix ((,class (:foreground ,purple1 :background ,black2))))
- `(transient-enabled-suffix ((,class (:foreground ,red3 :background ,black2))))
- `(transient-inapt-suffix ((,class (:foreground ,aqua1 :background ,black2))))
- `(transient-mismatched-key ((,class (:foreground ,blue2 :background ,black2))))
- `(transient-nonstandard-key ((,class (:foreground ,brown2 :background ,black2))))
- `(transient-separator ((,class (:foreground ,orange2 :background ,black2))))
-
- ;; Diff hl
- `(diff-hl-change ((,class (:background ,blue2 :foreground ,black1))))
- `(diff-hl-delete ((,class (:background ,red1 :foreground ,black1))))
- `(diff-hl-insert ((,class (:background ,green2 :foreground ,black1))))
-
- ;; Compilation
- `(compilation-info ((,class (:foreground ,brown1))))
- `(compilation-error ((,class (:foreground ,red2))))
- `(compilation-line-number ((,class (:foreground ,green1))))
- `(compilation-column-number ((,class (:foreground ,green1))))
-
- ;; company
- `(company-tooltip-common-selection ((,class (:background ,bg2 :foreground ,red1))))
- `(company-tooltip-selection ((,class (:background ,bg2 :foreground ,fg :extend t))))
- `(company-scrollbar-bg ((,class (:background ,grey1))))
- `(company-scrollbar-fg ((,class (:background ,red3))))
- `(company-tooltip ((,class (:background ,grey2 :foreground ,fg ))))
- `(company-tooltip-search ((,class (:background ,fg :foreground ,red3))))
- `(company-tooltip-search-selection ((,class (:background ,fg :foreground ,red3))))
- `(company-tooltip-annotation ((,class (:background ,grey2 :foreground ,aqua1 :bold t))))
- `(company-tooltip-annotation-selection ((,class (:background ,bg2 :foreground ,aqua1 :bold t))))
- `(company-tooltip-common ((,class (:foreground ,red1))))
- `(company-preview-common ((,class (:foreground ,grey1 :background ,grey3))))
- `(company-preview ((,class (:background ,fg :foreground ,red3))))
- `(company-tooltip-mouse ((,class (:inherit company-tooltip-sele))))
- `(company-echo-common ((,class (:background ,fg :foreground ,red3))))
- `(company-template-field ((,class (:inherit yas-field-highlight-face))))
-
- ;; Org-Mode
- `(org-agenda-calendar-event ((,class (:foreground ,blue2 :bold t))))
- `(org-agenda-calendar-sexp ((,class (:foreground ,blue2 :bold t))))
- `(org-agenda-clocking ((,class (:foreground ,bg :background ,red3)))) ;; TODO
- `(org-agenda-column-dateline ((,class (:foreground ,bg :background ,red3)))) ;; TODO
- `(org-agenda-current-time ((,class (:foreground ,brown1 :bold t))))
- `(org-agenda-date ((,class (:foreground ,brown1 :bold t))))
- `(org-agenda-date-weekend ((,class (:foreground ,brown2 :bold t))))
- `(org-agenda-date-today ((,class (:foreground ,red3 :bold t :italic t :height 1.5))))
- `(org-agenda-diary ((,class (:foreground ,red2 :bold t))))
- `(org-agenda-dimmed-todo-face ((,class (:foreground ,grey1))))
- `(org-agenda-done ((,class (:foreground ,green1))))
- `(org-agenda-filter-category ((,class (:foreground ,bg :background ,red3)))) ;; TODO
- `(org-agenda-filter-regexp ((,class (:foreground ,bg :background ,red3)))) ;; TODO
- `(org-agenda-filter-tags ((,class (:foreground ,bg :background ,red3)))) ;; TODO
- `(org-agenda-restriction-lock ((,class (:foreground ,bg :background ,red3)))) ;; TODO
- `(org-agenda-structure ((,class (:foreground ,purple1 :bold t :height 1.5))))
- `(org-super-agenda-header ((,class (:foreground ,green2 :bold t :height 1.3))))
- `(org-archived ((,class (:foreground ,grey1 :bold t))))
- `(org-block ((,class (:background ,bg2 :extend t))))
- `(org-block-begin-line ((,class (:background ,brown2 :foreground ,bg2 :bold t :extend t))))
- `(org-block-end-line ((,class (:background ,brown2 :foreground ,bg2 :bold t :extend t))))
- `(org-checkbox ((,class (:background ,bg2 :foreground ,brown2 :bold t :box (:color ,brown2 :line-width -1)))))
- `(org-checkbox-statistics-done ((,class (:background ,green1 :foreground ,black1 :box (:color ,black1 :line-width -1) :bold t))))
- `(org-checkbox-statistics-todo ((,class (:background ,red2 :foreground ,black1 :box (:color ,black1 :line-width -1) :bold t))))
- `(org-clock-overlay ((,class (:foreground ,bg :background ,red3)))) ;; TODO
- `(org-code ((,class (:foreground ,purple1 :bold t))))
- `(org-column ((,class ())))
- `(org-column-title ((,class (:foreground ,purple1 :background ,bg2 :bold t :underline t))))
- `(org-date ((,class (:foreground ,brown2 :bold t))))
- `(org-date-selected ((,class (:foreground ,black1 :background ,purple2 :bold t :box (:color ,black1 :line-with -1)))))
- `(org-default ((,class (:foreground ,bg :background ,red3)))) ;; TODO
- `(org-done ((,class (:background ,green1 :foreground ,black1 :bold t :box (:color ,black2 :line-width -1)))))
- `(org-document-info ((,class (:foreground ,red2 :bold t :height 1.4))))
- `(org-document-info-keyword ((,class (:foreground ,purple2 :bold t :height 1.4))))
- `(org-document-title ((,class (:foreground ,red2 :bold t :height 1.4))))
- `(org-drawer ((,class (:inherit org-special-keyword))))
- `(org-ellipsis ((,class (:foreground ,grey1 :bold t :box nil :underline nil :overline nil))))
- `(org-footnote ((,class (:foreground ,grey1 :background ,grey3 :bold t))))
- `(org-formula ((,class (:foreground ,green1 :background ,bg2))))
- `(org-habit-alert-face ((,class (:background ,yellow1 :foreground ,black1 :box (:color ,black2 :line-with -1)))))
- `(org-habit-alert-future-face ((,class (:background ,yellow2 :foreground ,black1 :box (:color ,black2 :line-with -1)))))
- `(org-habit-clear-face ((,class (:background ,blue2 :foreground ,black1 :box (:color ,black2 :line-with -1)))))
- `(org-habit-clear-future-face ((,class (:background ,blue1 :foreground ,black2 :box (:color ,black2 :line-with -1)))))
- `(org-habit-overdue-face ((,class (:background ,red3 :foreground ,black1 :box (:color ,black2 :line-with -1)))))
- `(org-habit-overdue-future-face ((,class (:background ,red1 :foreground ,black1 :box (:color ,black2 :line-with -1)))))
- `(org-habit-ready-face ((,class (:background ,green1 :foreground ,black2 :box (:color ,black2 :line-with -1)))))
- `(org-habit-ready-future-face ((,class (:background ,green2 :foreground ,black2 :box (:color ,black2 :line-with -1)))))
- `(org-headline-done ((,class (:foreground ,bg :background ,red3)))) ;; TODO
- `(org-hide ((,class (:foreground ,bg))))
- `(org-indent ((,class (:foreground ,bg))))
- `(org-kbd ((,class (:foreground ,fg :italic t :bold t))))
- `(org-latex-and-related ((,class (:foreground ,bg :background ,red3)))) ;; TODO
- `(org-level-1 ((,class (:foreground ,blue1))))
- `(org-level-2 ((,class (:foreground ,orange1))))
- `(org-level-3 ((,class (:foreground ,green1))))
- `(org-level-4 ((,class (:foreground ,yellow1))))
- `(org-level-5 ((,class (:foreground ,blue1))))
- `(org-level-6 ((,class (:foreground ,orange1))))
- `(org-level-7 ((,class (:foreground ,green1))))
- `(org-level-8 ((,class (:foreground ,yellow1))))
- `(org-link ((,class (:foreground ,aqua2 :bold t :underline t))))
- `(org-list-dt ((,class (:foreground ,purple1 :bold t))))
- `(org-macro ((,class (:foreground ,bg :background ,red3)))) ;; TODO
- `(org-meta-line ((,class (:foreground ,purple2 :bold t))))
- `(org-mode-line-clock ((,class (:foreground ,bg :background ,red3)))) ;; TODO
- `(org-mode-line-clock-overrun ((,class (:foreground ,bg :background ,red3)))) ;; TODO
- `(org-priority ((,class (:background ,purple1 :foreground ,black1 :bold t :box (:line-width -1 :color ,black2)))))
- `(org-property-value ((,class (:foreground ,brown2 :bold t))))
- `(org-quote ((,class (:foreground ,bg :background ,red3)))) ;; TODO
- `(org-scheduled ((,class (:foreground ,green1))))
- `(org-scheduled-previously ((,class (:foreground ,purple1))))
- `(org-scheduled-today ((,class (:foreground ,aqua1))))
- `(org-sexp-date ((,class (:inherit org-date))))
- `(org-special-keyword ((,class (:foreground ,purple2 :underline t :bold t))))
- `(org-table ((,class (:foreground ,brown1 :background ,bg2))))
- `(org-tag ((,class (:foreground ,grey1))))
- `(org-tag-group ((,class (:foreground ,bg :background ,red3)))) ;; TODO
- `(org-target ((,class (:foreground ,bg :background ,red3)))) ;; TODO
- `(org-time-grid ((,class (:foreground ,brown1))))
- `(org-upcoming-distant-deadline ((,class (:foreground ,yellow1))))
- `(org-agenda-current-time ((,class (:foreground ,brown1 :background ,bg2 :bold t))))
- ;;`(org-todo ((,class (:background ,red2 :foreground ,black1 :bold t :box (:line-width -1 :color ,black2)))))
- `(org-upcoming-deadline ((,class (:foreground ,orange2))))
- `(org-verbatim ((,class (:foreground ,green2 :bold t :italic t))))
- `(org-warning ((,class (:foreground ,yellow2 :bold t))))
-
- ;; Comint
- `(comint-highlight-prompt ((,class (:foreground ,purple2 :bold t))))
- `(comint-highlight-input ((,class (:foreground ,blue1))))
-
- ;; Ledger
- `(ledger-font-xact-highlight-face ((,class (:background ,grey3))))
- `(ledger-font-posting-account-face ((,class (:foreground ,blue1))))
- `(ledger-font-posting-amount-face ((,class (:foreground ,brown1))))
- `(ledger-font-posting-date-face ((,class (:foreground ,purple1 :bold t))))
- `(ledger-font-payee-uncleared-face ((,class (:foreground ,red2 :bold t))))
- `(ledger-font-payee-cleared-face ((,class (:foreground ,green2 :bold t))))
- `(ledger-font-price-symbol-face ((,class (:foreground ,red2 :bold t))))
- `(ledger-font-price-face ((,class (:foreground ,brown2 :bold t))))
- `(ledger-font-price-date-face ((,class (:foreground ,green1 :bold t))))
- `(ledger-font-price-directive-face ((,class (:foreground ,aqua2 :bold t))))
- `(ledger-font-commodity-directive-face ((,class (:foreground ,aqua2 :bold t))))
- `(ledger-font-include-directive-face ((,class (:foreground ,aqua2 :bold t))))
- `(ledger-font-account-directive-face ((,class (:foreground ,aqua2 :bold t))))
- `(ledger-font-tag-directive-face ((,class (:foreground ,aqua2 :bold t))))
- `(ledger-font-commodity-name-face ((,class (:foreground ,red2 :bold t))))
- `(ledger-font-tag-name-face ((,class (:foreground ,yellow1))))
- `(ledger-font-commodity-format-face ((,class (:foreground ,green1))))
- `(ledger-font-include-filename-face ((,class (:foreground ,green1))))
- `(ledger-occur-xact-face ((,class (:background ,grey1 :foreground ,bg))))
- `(ledger-font-auto-xact-face ((,class (:foreground ,aqua1))))
-
- ;; ERC
- `(erc-timestamp-face ((,class (:foreground ,brown2 :bold t))))
- `(erc-nick-default-face ((,class (:foreground ,purple1))))
- `(erc-nick-msg-face ((,class (:foreground ,purple2 :bold t))))
- `(erc-current-nick-face ((,class (:foreground ,aqua1))))
- `(erc-default-face ((,class (:foreground ,fg))))
- `(erc-error-face ((,class (:foreground ,red2 :bold t))))
- `(erc-notice-face ((,class (:foreground ,green1))))
- `(erc-direct-msg-face ((,class (:foreground ,aqua1))))
- `(erc-prompt-face ((,class (:foreground ,black2 :background ,blue1 :box t :bold t))))
-
- ;; ERT
- `(ert-test-result-expected ((,class (:background ,green2 :foreground ,black2))))
- `(ert-test-result-unexpected ((,class (:background ,red3 :foreground ,black2))))
-
- ;; edebug-x
- `(hi-edebug-x-stop ((,class (:background ,blue1 :foreground ,black2))))
- `(hi-edebug-x-debug-line ((,class (:background ,green1 :foreground ,black2))))
-
- ;; Messages
- `(message-header-name ((,class (:foreground ,green1 :bold t))))
- `(message-header-other ((,class (:foreground ,blue1))))
- `(message-header-to ((,class (:foreground ,orange1))))
- `(message-header-subject ((,class (:foreground ,yellow1))))
- `(message-separator ((,class (:foreground ,grey1))))
-
- ;; Eros
- `(eros-result-overlay-face ((,class (:background ,bg :foreground ,brown1 :box (:line-width -1 :color ,black1)))))
-
- ;; elfeed
- `(elfeed-search-feed-face ((,class (:foreground ,purple1))))
- `(elfeed-search-tag-face ((,class (:foreground ,blue1))))
- `(elfeed-search-unread-title-face ((,class (:bold t))))
- `(elfeed-search-title-face ((,class (:foreground ,blue1))))
- `(elfeed-search-date-face ((,class (:foreground ,green1))))
- `(elfeed-log-date-face ((,class (:foreground ,brown1))))
- `(elfeed-log-info-level-face ((,class (:foreground ,green1))))
- `(elfeed-log-warn-level-face ((,class (:foreground ,yellow1))))
- `(elfeed-log-error-level-face ((,class (:foreground ,red2))))
-
- ;; LSP
- `(lsp-face-highlight-read ((,class (:background ,blue2 :foreground ,black2))))
- `(lsp-face-highlight-write ((,class (:background ,orange2 :foreground ,black2))))
-
-
- ;; notmuch
- `(notmuch-search-date ((,class (:foreground ,green1))))
- `(notmuch-search-count ((,class (:foreground ,aqua1))))
- `(notmuch-search-matching-authors ((,class (:foreground ,blue1))))
- `(notmuch-search-subject ((,class (:foreground ,brown1))))
-
- ;; gnus
- `(gnus-header-name ((,class (:foreground ,purple1 :bold t))))
- `(gnus-header-content ((,class (:foreground ,brown1))))
- `(gnus-header-subject ((,class (:foreground ,green1))))
- `(gnus-button ((,class (:foreground ,aqua2))))
-
- ;; frog-menu
- `(frog-menu-prompt-face ((,class (:foreground ,green1 :bold t))))
- `(frog-menu-candidates-face ((,class (:foreground ,fg))))
- `(frog-menu-actions-face ((,class (:foreground ,purple1))))
- `(frog-menu-action-keybinding-face ((,class (:foreground ,blue1 :bold t))))
- `(frog-menu-posframe-background-face ((,class (:background ,bg))))
-
- ;; markup
- `(markup-meta-hide-face ((,class (:foreground ,grey1 :bold t))))
- `(markup-meta-face ((,class (:foreground ,orange1 :bold t))))
- `(markup-secondary-text-face ((,class (:foreground ,brown2 :bold t))))
- `(markup-list-face ((,class (:foreground ,green2 :bold t))))
- `(markup-strong-face ((,class (:foreground ,red2 :bold t))))
- `(markup-code-face ((,class (:foreground ,aqua1 :bold t))))
- `(markup-emphasis-face ((,class (:foreground ,yellow1 :italic t))))
- `(markup-typewriter-face ((,class (:background ,aqua2 :foreground ,black1 :bold t))))
- `(markup-verbatim-face ((,class (:background ,aqua2 :foreground ,black1 :bold t))))
- `(markup-title-0-face ((,class (:foreground ,purple1 :underline t :height 1.2))))
- `(markup-title-1-face ((,class (:foreground ,purple1 :underline t :height 1.15))))
- `(markup-title-2-face ((,class (:foreground ,purple1 :underline t :height 1.1))))
- `(markup-title-3-face ((,class (:foreground ,purple1 :underline t :height 1.05))))
- `(markup-title-4-face ((,class (:foreground ,purple1 :underline t))))
- `(markup-title-5-face ((,class (:foreground ,purple1 :underline t))))
-
- ;; selectrum
- `(selectrum-current-candidate ((,class (:background ,black1 :extend t))))
-
- ;; orderless
- `(orderless-match-face-0 ((,class (:background ,red3 :foreground ,yellow2))))
- `(orderless-match-face-1 ((,class (:background ,green2 :foreground ,black2))))
- `(orderless-match-face-2 ((,class (:background ,blue2 :foreground ,black2))))
- `(orderless-match-face-3 ((,class (:background ,brown2 :foreground ,black2))))
-
- ;; marginalia
- `(marginalia-documentation ((,class (:inherit font-lock-doc-face))))
- `(marginalia-key ((,class (:foreground ,purple1))))
- `(marginalia-number ((,class (:background ,blue2 :foreground ,red3 :bold t))))
- `(marginalia-size ((,class (:foreground ,purple1))))
- `(marginalia-mode ((,class (:foreground ,orange2 :bold t))))
- `(marginalia-version ((,class (:background ,blue2 :foreground ,red3 :bold t))))
- `(marginalia-ligher ((,class (:foreground ,green3))))
-
- ;; mu4e
- `(mu4e-unread-face ((,class (:foreground ,blue1 :bold t))))
- `(mu4e-replied-face ((,class (:foreground ,green1 :bold t))))
- `(mu4e-header-face ((,class (:foreground ,brown1))))
- `(mu4e-title-face ((,class (:foreground ,purple1 :bold t :height 1.1))))
- `(mu4e-trashed-face ((,class (:foreground ,grey1))))
- `(mu4e-header-key-face ((,class (:foreground ,brown1))))
- `(mu4e-header-title-face ((,class (:foreground ,blue1 :bold t))))
- `(mu4e-header-marks-face ((,class (:foreground ,purple2 :bold t))))
- `(mu4e-header-value-face ((,class (:foreground ,brown1))))
- `(mu4e-header-highlight-face ((,class (:background ,grey3))))
- `(mu4e-special-header-value-face ((,class (:foreground ,aqua1))))
- `(mu4e-contact-face ((,class (:foreground ,green1))))
- `(mu4e-highlight-face ((,class (:foreground ,green1 :bold t))))
- `(mu4e-maildirs-extension-maildir-face ((,class (:foreground ,brown1))))
-
-
- (custom-theme-set-variables
- 'morning-star
- `(ansi-color-names-vector [,black1 ,red2 ,green1 ,yellow1 ,blue1 ,purple1 ,aqua1 ,fg]))))
-
-;;;###autoload
-(when load-file-name
- (add-to-list 'custom-theme-load-path
- (file-name-as-directory (file-name-directory load-file-name))))
-
-(provide-theme 'morning-star)
-
-;; Local Variables:
-;; no-byte-compile: t
-;; End:
-
-;;; morning-star-theme.el ends here
diff --git a/.config/emacs-my/desktop.org b/.config/emacs-my/desktop.org
deleted file mode 100644
index e726949..0000000
--- a/.config/emacs-my/desktop.org
+++ /dev/null
@@ -1,199 +0,0 @@
-#+TITLE: Desktop
-
-* Exwm Desktop
-#+begin_src config :mkdirp yes :tangle ~/.config/emacs/exwm/EXWM.desktop
-[Desktop Entry]
-Name=EXWM
-Comment=Emacs Window Manager
-Exec=sh /home/jaeus/.config/emacs/exwm/start-exwm.sh
-TryExec=sh
-Type=Application
-X-LightDM-DesktopName=exwm
-DesktopNames=exwm
-#+end_src
-
-#+begin_src shell :mkdirp yes :tangle ~/.config/emacs/exwm/start-exwm.sh
- #!/bin/sh
- # Fire it up for WSL
- #source ~/scripts/wsl_get_display.sh
- picom &
- exec dbus-launch --exit-with-session emacs -mm --debug-init -l ~/.config/emacs/desktop.el
-#+end_src
-
-
-* Configuration
-
-** App Launcher
-#+begin_src emacs-lisp :tangle ~/.config/emacs/desktop.el
- (use-package app-launcher
- :straight (app-launcher :type git :host github :repo "SebastienWae/app-launcher"))
-#+end_src
-** EXWM
-#+begin_src emacs-lisp :tangle ~/.config/emacs/desktop.el
-
- (defun efs/run-in-background (command)
- (let ((command-parts (split-string command "[ ]+")))
- (apply #'call-process `(,(car command-parts) nil 0 nil ,@(cdr command-parts)))))
- (defun vifon/exwm-terminal ()
- (interactive)
- (let ((default-directory (if (derived-mode-p 'dired-mode)
- (dired-current-directory)
- default-directory)))
- (start-process "alacritty" nil "alacritty")))
- (defun efs/exwm-init-hook ()
- ;; Make workspace 1 be the one where we land at startup
- (exwm-workspace-switch-create 1)
- (efs/start-panel)
- ;; if not wsl
- ;;(efs/run-in-background "xsetroot -cursor_name left_ptr")
- ;;(efs/run-in-background "nm-applet")
- ;;(efs/run-in-background "pamac-tray")
- ;;(efs/run-in-background "volumeicon")
- ;;(efs/run-in-background "numlockx on")
- ;;(efs/run-in-background "blueberry-tray")
- ;;(efs/run-in-background "enpass -minimize")
-
- ;; Launch apps that will run in the background
- ;;(efs/run-in-background "fcitx"))
- )
-
- (defun efs/exwm-update-class ()
- (exwm-workspace-rename-buffer exwm-class-name))
-
- (defun efs/exwm-update-title ()
- (pcase exwm-class-name
- ("Firefox" (exwm-workspace-rename-buffer (format "Firefox: %s" exwm-title)))))
-
- ;; This function isn't currently used, only serves as an example how to
- ;; position a window
- (defun efs/position-window ()
- (let* ((pos (frame-position))
- (pos-x (car pos))
- (pos-y (cdr pos)))
-
- (exwm-floating-move (- pos-x) (- pos-y))))
- (use-package exwm
- :config
- ;; Set the default number of workspaces
- (setq exwm-workspace-number 10)
-
- ;; When window "class" updates, use it to set the buffer name
- (add-hook 'exwm-update-class-hook #'efs/exwm-update-class)
-
- ;; When window title updates, use it to set the buffer name
- (add-hook 'exwm-update-title-hook #'efs/exwm-update-title)
-
- ;; Configure windows as they're created
- ;;(add-hook 'exwm-manage-finish-hook #'efs/configure-window-by-class)
-
- ;; When EXWM starts up, do some extra confifuration
- (add-hook 'exwm-init-hook #'efs/exwm-init-hook)
-
- ;; Automatically send the mouse cursor to the selected workspace's display
- (setq exwm-workspace-warp-cursor t)
-
- ;; Window focus should follow the mouse pointer
- (setq mouse-autoselect-window t
- focus-follows-mouse t)
-
- (add-hook 'exwm-floating-setup-hook
- (lambda ()
- (exwm-layout-hide-mode-line)))
-
- ;; These keys should always pass through to Emacs
- (setq exwm-input-prefix-keys
- '(?\C-x
- ?\C-u
- ?\C-h
- ?\M-x
- ?\M-`
- ?\M-&
- ?\M-:
- ?\C-\M-j ;; Buffer list
- ?\C-\ )) ;; Ctrl+Space
-
- ;; Ctrl+Q will enable the next key to be sent directly
- (define-key exwm-mode-map [?\C-q] 'exwm-input-send-next-key)
-
- ;; Set up global key bindings. These always work, no matter the input state!
- ;; Keep in mind that changing this list after EXWM initializes has no effect.
- (setq exwm-input-global-keys
- `(
- ;; Reset to line-mode (C-c C-k switches to char-mode via exwm-input-release-keyboard)
- ([?\s-r] . exwm-reset)
-
- ;; Move between windows
- ([?\s-h] . windmove-left)
- ([?\s-l] . windmove-right)
- ([?\s-k] . windmove-up)
- ([?\s-j] . windmove-down)
-
- ;;([s-space] . toggle-frame-fullscreen)
- ([?\s-f] . exwm-floating-toggle-floating)
-
- ;; Launch applications via shell command
- ([?\s-&] . (lambda (command)
- (interactive (list (read-shell-command "$ ")))
- (start-process-shell-command command nil command)))
-
- ([?\s-C] . (lambda () (interactive) (kill-buffer)))
-
- ;; App
- (,(kbd "") . vifon/exwm-terminal)
- ([?\s-d] . app-launcher-run-app)
- ;; Switch workspace
- ([?\s-w] . exwm-workspace-switch)
- ([?\s-`] . (lambda () (interactive) (exwm-workspace-switch-create 0)))
-
- ;; 's-N': Switch to certain workspace with Super (Win) plus a number key (0 - 9)
- ,@(mapcar (lambda (i)
- `(,(kbd (format "s-%d" i)) .
- (lambda ()
- (interactive)
- (exwm-workspace-switch-create ,i))))
- (number-sequence 0 9))))
-
- (exwm-enable))
-
- ;; if not wsl
- (use-package desktop-environment
- :disabled
- :after exwm
- :config (desktop-environment-mode))
- ;;:custom
- ;;(desktop-environment-brightness-small-increment "2%+")
- ;;(desktop-environment-brightness-small-decrement "2%-")
- ;;(desktop-environment-brightness-normal-increment "5%+")
- ;;(desktop-environment-brightness-normal-decrement "5%-"))
-
- ;; Make sure the server is started (better to do this in your main Emacs config!)
- (server-start)
-
-#+end_src
-** Polybar
-#+begin_src emacs-lisp :tangle ~/.config/emacs/desktop.el
-
- (defvar efs/polybar-process nil
- "Holds the process of the running Polybar instance, if any")
-
- (defun efs/kill-panel ()
- (interactive)
- (when efs/polybar-process
- (ignore-errors
- (kill-process efs/polybar-process)))
- (setq efs/polybar-process nil))
-
- (defun efs/start-panel ()
- (interactive)
- (efs/kill-panel)
- (setq efs/polybar-process (start-process-shell-command "polybar" nil "polybar panel")))
-
- (defun efs/send-polybar-hook (module-name hook-index)
- (start-process-shell-command "polybar-msg" nil (format "polybar-msg hook %s %s" module-name hook-index)))
-
- (defun efs/send-polybar-exwm-workspace ()
- (efs/send-polybar-hook "exwm-workspace" 1))
-
- ;; Update panel indicator when workspace changes
- (add-hook 'exwm-workspace-switch-hook #'efs/send-polybar-exwm-workspace)
-#+end_src
diff --git a/.config/emacs-my/emacs.org b/.config/emacs-my/emacs.org
deleted file mode 100755
index 3b677f7..0000000
--- a/.config/emacs-my/emacs.org
+++ /dev/null
@@ -1,1790 +0,0 @@
-#+title: Emacs Configuration
-#+author: JaeYoo-Im
-#+email: (cpu3792@gmail.com)
-
-* Basic Configuration
-Emacs Configuration for emacs 29.50
-** Early Init
-#+begin_src emacs-lisp :tangle ~/.config/emacs/early-init.el
- ;;; early-init.el -*- lexical-binding: t; -*-
- ;; garbage collection
- (setq gc-cons-threshold (* 50 1024 1024)) ;; 50MB
- ;; prefers newest version of a file
- (customize-set-variable 'load-prefer-newer t)
-
- ;;; Native compilation settings
- (when (featurep 'native-compile)
- ;; Silence compiler warnings as they can be pretty disruptive
- (setq native-comp-async-report-warnings-errors nil)
-
- ;; Make native compilation happens asynchronously
- (setq native-comp-deferred-compilation t))
-
- (setq inhibit-startup-message nil)
- (setq frame-resize-pixelwise t)
- (scroll-bar-mode -1)
- (tool-bar-mode -1)
- (tooltip-mode -1)
- (set-fringe-mode 10)
- (menu-bar-mode -1)
- ;;(blink-cursor-mode 0)
-
- ;; initial load with blue theme
- (load-theme 'deeper-blue)
-
- (customize-set-variable 'initial-major-mode 'fundamental-mode)
-
-#+end_src
-** Init
-*** Startup hook
-#+begin_src emacs-lisp :tangle ~/.config/emacs/init.el
- ;;; init.el -*- lexical-binding: t; -*-
- (add-hook 'emacs-startup-hook
- (lambda ()
- (message "Emacs loaded in %s"
- (emacs-init-time))))
-#+end_src
-*** Package Function
-**** Use-package
-#+begin_src emacs-lisp :tangle ~/.config/emacs/init.el
- (require 'package)
- (when (version< emacs-version "28")
- (add-to-list 'package-archives '("nongnu" . "https://elpa.nongnu.org/nongnu/")))
- (add-to-list 'package-archives '("stable" . "https://stable.melpa.org/packages/"))
- (add-to-list 'package-archives '("melpa" . "https://melpa.org/packages/"))
-
- (customize-set-variable 'package-archive-priorities
- '(("gnu" . 99) ; prefer GNU packages
- ("nongnu" . 80) ; use non-gnu packages if
- ; not found in GNU elpa
- ("stable" . 70) ; prefer "released" versions
- ; from melpa
- ("melpa" . 0))) ; if all else fails, get it
- ; from melpa
- (customize-set-variable 'package-user-dir
- (expand-file-name "elpa/" user-emacs-directory))
-
- (unless (package-installed-p 'use-package)
- (package-install 'use-package))
-
- (require 'use-package)
- (setq use-package-always-ensure t)
-#+end_src
-*** Add other modules
-#+begin_src emacs-lisp :tangle ~/.config/emacs/init.el
- (add-to-list 'load-path (expand-file-name "modules/" user-emacs-directory))
- (setq custom-theme-directory (expand-file-name "custom-themes/" user-emacs-directory))
-#+end_src
-*** Edit options
-**** Whitespace clean
-#+begin_src emacs-lisp :tangle ~/.config/emacs/init.el
- (add-hook 'before-save-hook #'whitespace-cleanup)
-#+end_src
-**** Tabs
-#+begin_src emacs-lisp :tangle ~/.config/emacs/init.el
- (setq-default indent-tabs-mode nil)
- (setq-default tab-width 4)
-#+end_src
-
-협업에 있어서 코드에 tabs 크기를 명시하는 것도 방법일듯.
-***** Modeline Indentation example
-- Emacs
- #+begin_src rust
- /* -*- Mode: rust; tab-width: 4; indent-tabs-mode: t; c-basic-offset: 4 -*- */
- #+end_src
-- Vim
- #+begin_src shell
- # Embeded VIM Configurations
- # vim: filetype=sh noet sw=4 ts=4 fdm=marker
- #+end_src
-- Visual Studio Code
- install extension =modeline=.
- #+begin_src javascript
- // vim: set ft=js ts=4 sw=4 et:
- // vim :ts=4 :sw=4 :et :ft=js
- // -*- mode: js; indent-tabs-mode: nil; tab-width: 4 -*-
- // code: language=rust insertSpaces=false tabSize=4
- #+end_src
-
-*** Backup options
-#+begin_src emacs-lisp :tangle ~/.config/emacs/init.el
- (use-package no-littering
- :config
- (setq no-littering-etc-directory
- (expand-file-name "config/" user-emacs-directory))
- (setq no-littering-var-directory
- (expand-file-name "data/" user-emacs-directory)))
- (require 'recentf)
- (add-to-list 'recentf-exclude no-littering-var-directory)
- (add-to-list 'recentf-exclude no-littering-etc-directory)
-
- ;; interlocking file name
- (setq lock-file-name-transforms
- `((".*" ,(no-littering-expand-var-file-name "lock/") t)))
-
- ;; Auto save
- (setq auto-save-file-name-transforms
- `((".*" ,(no-littering-expand-var-file-name "auto-save/") t)))
- ;;(when (fboundp 'startup-redirect-eln-cache)
- ;; (startup-redirect-eln-cache
- ;; (convert-standard-filename
- ;; (expand-file-name "var/eln-cache/" user-emacs-directory))))
-
- ;;(setq backup-directory-alist `(("." . ,(no-litter "auto-save/"))))
- (setq custom-file (no-littering-expand-etc-file-name "custom.el"))
- (when (file-exists-p custom-file)
- (load custom-file))
- (setq delete-by-moving-to-trash t
- trash-directory "~/.local/share/Trash/files/")
- (setq undo-limit 100000000
- auto-save-default t)
-#+end_src
-
-
-*** Other options
-#+begin_src emacs-lisp :tangle ~/.config/emacs/init.el
- (set-default-coding-systems 'utf-8)
- (set-language-environment "utf-8")
- (prefer-coding-system 'utf-8)
- (customize-set-variable 'large-file-warning-threshold 100000000) ;; 100MB
-
- (defconst ON-LINUX (eq system-type 'gnu/linux))
- (defconst ON-MAC (eq system-type 'darwin))
- (defconst ON-WINDOWS (memq system-type '(cygwin windows-nt ms-dos)))
-
- (setq gc-cons-threshold (* 2 1024 1024)) ; decreasing the threshold to 2MB
-
- (defvar my-config-file (expand-file-name "config.el" user-emacs-directory))
- (load my-config-file nil 'nomessage)
-
- (setq use-short-answer t)
-
- (setq global-auto-revert-non-file-buffers t)
- (global-auto-revert-mode t)
-
- (set-frame-parameter (selected-frame) 'fullscreen 'maximized)
- (add-to-list 'default-frame-alist '(fullscreen . maximized))
- (unless (display-graphic-p)
- (xterm-mouse-mode))
-#+end_src
-* Define some unused variable.
-#+begin_src emacs-lisp :tangle ~/.config/emacs/config.el
- (setq global-linum-mode nil)
-#+end_src
-* Modules Selection module
-#+begin_src emacs-lisp :tangle ~/.config/emacs/config.el
- ;;; config.el -*- lexical-binding: t; -*-
- (setq user-full-name "JaeYoo-Im"
- user-mail-address "cpu3792@gmail.com")
-
- (setq default-input-method "korean-hangul")
-
- ;; when programming _
- (modify-syntax-entry ?_ "w")
- (setq visible-bell t)
-
- ;; split threshold
- (setq split-width-threshold 160
- split-height-threshold nil)
- (add-hook 'emacs-startup-hook
- (lambda ()
- (custom-set-faces
- `(default ((t (:font "Fira Code Nerd Font 13"))))
- `(fixed-pitch ((t (:inherit (default)))))
- `(fixed-pitch-serif ((t (:inherit (default)))))
- `(variable-pitch ((t (:font "Ubuntu 13")))))))
-
- (require 'custom-ui)
- (require 'custom-keybindings)
- (require 'custom-default)
- (require 'custom-completion)
- ;;(require 'custom-edit)
- ;;(require 'custom-projects)
- ;;(require 'custom-latex)
- ;;(require 'custom-org)
- ;;(require 'custom-languages)
- ;;(require 'custom-extra)
-
- ;;(require 'custom-workspaces)
-
- ;;; config.el ends here
-#+end_src
-
-** Module Lists
-*** Default
-emacs built-in package config
-**** Ediff
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-default.el
-;; Don't let ediff break EXWM, keep it in one frame
-(setq ediff-diff-options "-w"
- ediff-split-window-function 'split-window-horizontally
- ediff-window-setup-function 'ediff-setup-windows-plain)
-#+end_src
-**** Eshell
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-default.el
- (when (eq system-type 'windows-nt)
- (setq explicit-shell-file-name "powershell.exe")
- (setq explicit-powershell.exe-args '()))
- (defun ju/get-prompt-path ()
- (let* ((current-path (eshell/pwd))
- (git-output (shell-command-to-string "git rev-parse --show-toplevel"))
- (has-path (not (string-match "^fatal" git-output))))
- (if (not has-path)
- (abbreviate-file-name current-path)
- (string-remove-prefix (file-name-directory git-output) current-path))))
-
- (defun ju/eshell-prompt ()
- (let ((current-branch (magit-get-current-branch)))
- (concat
- "\n"
- (propertize (system-name) 'face `(:foreground "#62aeed"))
- (propertize " ॐ " 'face `(:foreground "white"))
- (propertize (ju/get-prompt-path) 'face `(:foreground "#82cfd3"))
- (when current-branch
- (concat
- (propertize " • " 'face `(:foreground "white"))
- (propertize (concat " " current-branch) 'face `(:foreground "#c475f0"))))
- (propertize " • " 'face `(:foreground "white"))
- (propertize (format-time-string "%I:%M:%S %p") 'face `(:foreground "#5a5b7f"))
- (if (= (user-uid) 0)
- (propertize "\n#" 'face `(:foreground "red2"))
- (propertize "\nλ" 'face `(:foreground "#aece4a")))
- (propertize " " 'face `(:foreground "white")))))
-
- (defun ju/configure-eshell ()
- ;; Save command history when commands are entered
- (add-hook 'eshell-pre-command-hook 'eshell-save-some-history)
-
- ;; Truncate buffer for performance
- (add-to-list 'eshell-output-filter-functions 'eshell-truncate-buffer)
-
- ;; Bind some useful keys for evil-mode
- (evil-define-key '(normal insert visual) eshell-mode-map (kbd "C-r") 'counsel-esh-history)
- (evil-define-key '(normal insert visual) eshell-mode-map (kbd "") 'eshell-bol)
- (evil-normalize-keymaps)
-
- (setq eshell-prompt-function 'ju/eshell-prompt
- eshell-prompt-regexp "^λ "
- eshell-history-size 10000
- eshell-buffer-maximum-lines 10000
- eshell-hist-ignoredups t
- eshell-scroll-to-bottom-on-input t))
- (add-hook 'eshell-first-time-mode-hook #'ju/configure-eshell)
- (setq eshell-prompt-function
- (lambda ()
- (concat (abbreviate-file-name (eshell/pwd))
- (if (= (user-uid) 0) " # " " λ ")))
- eshell-prompt-regexp "^[^#λ\n]* [#λ] ")
-#+end_src
-**** Dired
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-default.el
- (use-package dired
- :ensure nil
- :straight (:type built-in)
- :commands (dired dired-jump)
- :bind (("C-x C-j" . dired-jump))
- :custom ((dired-listing-switches "-agho --group-directories-first"))
- :config
- (evil-collection-define-key 'normal 'dired-mode-map
- "h" 'dired-single-up-directory
- "l" 'dired-single-buffer
- "e" 'my/dired-openwith-external-program))
- (defun my/dired-openwith-external-program ()
- (interactive)
- (let (current-file current-ex)
- (setq current-file
- (dired-get-filename nil t))
- (setq current-ex
- (file-name-extension current-file))
- (cond ((string-equal current-ex "pdf")
- (async-shell-command
- (format "zathura \"%s\"" current-file)))
- ((string-equal current-ex "html")
- (async-shell-command
- (format "qutebrowser \"%s\"" current-file)))
- (t (message "file exception.")))))
- (use-package dired-single
- :defer t
- :commands (dired dired-jump))
- (use-package diredfl ;; colorful dired
- :defer t
- :hook dired-mode)
- (use-package dired-git-info
- :defer t
- :config
- (evil-collection-define-key 'normal 'dired-mode-map
- ")" 'dired-git-info-mode))
- (use-package diff-hl
- :defer t
- :hook ((dired-mode . diff-hl-dired-mode-unless-remote)
- (magit-post-refresh . diff-hl-magit-post-refresh))
- :config
- (diff-hl-margin-mode))
- (use-package dired-rsync
- :defer t
- :bind (:map dired-mode-map
- ("C-c C-r" . dired-rsync)))
- (use-package all-the-icons-dired
- :defer t
- :hook dired-mode)
- (use-package dired-hide-dotfiles
- :defer t
- :hook (dired-mode)
- :config
- (evil-collection-define-key 'normal 'dired-mode-map
- "H" 'dired-hide-dotfiles-mode))
-
- ;; HACK:Fixes #1929: icons break file renaming in Emacs 27+, because the icon
- ;; is considered part of the filename, so we disable icons while we're in
- ;; wdired-mode.
- ;;(when EMACS27+
- (defvar +wdired-icons-enabled -1)
-
- ;; TODO: check emacs29 updates
- ;;(csetq dired-mouse-drag-files t
- ;; mouse-drag-and-drop-region-cross-program t)
-
- (use-package peep-dired
- :defer t
- :hook (peep-dired . evil-normalize-keymaps)
- :config
- (evil-define-key 'normal peep-dired-mode-map
- (kbd "j") 'peep-dired-next-file
- (kbd "k") 'peep-dired-prev-file))
-#+end_src
-**** Provide Modules
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-default.el
- (provide 'custom-default)
- ;;; custom-default.el ends here
-#+end_src
-*** UI
-**** Line number
-#+begin_src emacs-lisp :tangle ~/.config/emacs/init.el
- (column-number-mode)
- (global-display-line-numbers-mode t)
- ;; Disable line numbers for some modes
- (dolist (mode '(org-mode-hook
- nov-mode-hook
- dashboard-mode-hook
- dired-mode-hook
- eshell-mode-hook))
- (add-hook mode (lambda () (display-line-numbers-mode 0))))
-#+end_src
-
-**** Doom themes
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-ui.el
- (use-package doom-themes
- :defer t
- :init
- (disable-theme 'deeper-blue)
- (if (display-graphic-p)
- ;;(load-theme 'doom-palenight t)
- (load-theme 'doom-one t)
- (load-theme 'doom-gruvbox t)))
-#+end_src
-**** Rainbow Delimiters
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-ui.el
- (use-package rainbow-delimiters
- :defer t
- :hook (prog-mode . rainbow-delimiters-mode))
-#+end_src
-**** Setting Transparency
-***** emacs 28
-#+begin_src emacs-lisp :mkdirp yes
-;;:tangle ~/.config/emacs/modules/custom-ui.el
- (set-frame-parameter (selected-frame) 'alpha '(85 . 50))
- (add-to-list 'default-frame-alist '(alpha . '(85 . 50)))
- (defun toggle-transparency ()
- (interactive)
- (let ((alpha (frame-parameter nil 'alpha)))
- (set-frame-parameter
- nil 'alpha
- (if (eql (cond ((numberp alpha) alpha)
- ((numberp (cdr alpha)) (cdr alpha))
- ;; Also handle undocumented ( ) form.
- ((numberp (cadr alpha)) (cadr alpha)))
- 100)
- '(85 . 50) '(100 . 100)))))
- (defun my/transparency-round (val)
- "Round VAL to the nearest tenth of an integer."
- (/ (round (* 10 val)) 10.0))
-
- (defun my/increase-frame-alpha-background ()
- "Increase current frame’s alpha background."
- (interactive)
- (set-frame-parameter nil
- 'alpha-background
- (my/transparency-round
- (min 1.0
- (+ (frame-parameter nil 'alpha-background) 0.1))))
- (message "%s" (frame-parameter nil 'alpha-background)))
-
- (defun my/decrease-frame-alpha-background ()
- "Decrease current frame’s alpha background."
- (interactive)
- (set-frame-parameter nil
- 'alpha-background
- (my/transparency-round
- (max 0.0
- (- (frame-parameter nil 'alpha-background) 0.1))))
- (message "%s" (frame-parameter nil 'alpha-background)))
- (global-set-key (kbd "C-c t") 'toggle-transparency)
-#+end_src
-***** emacs 29
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-ui.el
- (set-frame-parameter nil 'alpha-background 0.9)
- (add-to-list 'default-frame-alist '(alpha-background . 0.9))
- (defun toggle-transparency ()
- "toggle transparency."
- (interactive)
- (let ((alpha-transparency 1.0))
- (if (eq (frame-parameter nil 'alpha-background) alpha-transparency)
- (set-frame-parameter nil 'alpha-background 0.9)
- (set-frame-parameter nil 'alpha-background alpha-transparency))))
- (defun my/transparency-round (val)
- "Round VAL to the nearest tenth of an integer."
- (/ (round (* 10 val)) 10.0))
-
- (defun my/increase-frame-alpha-background ()
- "Increase current frame’s alpha background."
- (interactive)
- (set-frame-parameter nil
- 'alpha-background
- (my/transparency-round
- (min 1.0
- (+ (frame-parameter nil 'alpha-background) 0.1))))
- (message "%s" (frame-parameter nil 'alpha-background)))
-
- (defun my/decrease-frame-alpha-background ()
- "Decrease current frame’s alpha background."
- (interactive)
- (set-frame-parameter nil
- 'alpha-background
- (my/transparency-round
- (max 0.0
- (- (frame-parameter nil 'alpha-background) 0.1))))
- (message "%s" (frame-parameter nil 'alpha-background)))
- (global-set-key (kbd "C-c t") 'toggle-transparency)
-#+end_src
-**** Modeline
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-ui.el
- (use-package doom-modeline
- :defer t
- :init (doom-modeline-mode 1)
- :config
- (setq doom-modeline-height 15
- doom-modeline-env-version t
- doom-modeline-persp-name t
- doom-modeline-persp-icon t
- doom-modeline-display-default-persp-name t
- doom-modeline-indent-info t))
-#+end_src
-**** Writeroom mode
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-ui.el
- (use-package writeroom-mode
- :defer t
- :init (global-writeroom-mode 1)
- :config
- (setq writeroom-width 100
- writeroom-fullscreen-effect nil
- writeroom-maximize-window nil
- writeroom-mode-line t
- writeroom-major-modes '(org-mode markdown-mode nov-mode)))
-#+end_src
-**** All The Icons
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-ui.el
- (use-package all-the-icons)
-#+end_src
-**** Dashboard
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-ui.el
- (use-package dashboard
- :after all-the-icons
- :config
- (setq dashboard-set-heading-icons t)
- (setq dashboard-set-file-icons t)
- ;;(setq dashboard-banner-logo-title "Emacs is more than a text editor!")
- ;; logo from github.com/egstatsml/emacs_fancy_logos
- ;;(setq dashboard-startup-banner "~/.config/emacs/logos/xemacs_color.png")
- ;;(setq dashboard-startup-banner 'logo)
- (setq dashboard-center-content t)
- (setq dashboard-week-agenda t)
- (setq dashboard-set-footer t)
- (setq dashboard-page-separator "\n\n")
- ;;(setq dashboard-page-separator "\n\f\n")
- (setq dashboard-agenda-time-string-format "%d/%m/%Y %A %H:%M")
- (setq dashboard-projects-backend 'project-el)
- (setq dashboard-items '((recents . 10)
- (agenda . 5)
- (bookmarks . 5)
- ;;(if (version< emacs-version "29")
- ;;(projects . 5)
- (registers . 5)))
- (setq dashboard-set-navigator t)
-
- (setq dashboard-navigator-buttons
- `(;; line1
- ((,(all-the-icons-octicon "mark-github" :height 1.1 :v-adjust 0.0)
- "Github"
- "Browse my Github"
- (lambda (&rest _) (browse-url "https://github.com/JaeUs3792/")))
- (,(all-the-icons-octicon "home" :height 1.1 :v-adjust 0.0)
- "Homepage"
- "Browse my Homepage"
- (lambda (&rest _) (browse-url "https://jaeus.net")))
- (,(all-the-icons-octicon "zap" :height 1.1 :v-adjust 0.0)
- "Refresh"
- "Refresh Packages"
- (lambda (&rest _) (package-refresh-contents)) warning))))
-
- (dashboard-setup-startup-hook)
- (dashboard-modify-heading-icons '((recents . "file-text")
- (bookmarks . "book")))
- (setq initial-buffer-choice (lambda () (get-buffer-create "*dashboard*"))))
-#+end_src
-**** Beacon
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-ui.el
- (use-package beacon
- :defer t
- :config (beacon-mode 1))
-#+end_src
-**** Others
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-ui.el
- (defun my/self-screenshot (&optional type)
- "Save a screenshot of type TYPE of the current Emacs frame.
- As shown by the function `', type can weild the value `svg',
- `png', `pdf'.
-
- This function will output in /tmp a file beginning with \"Emacs\"
- and ending with the extension of the requested TYPE."
- (interactive)
- (let* ((type (if type type
- (intern (completing-read "Screenshot Type: "
- '(png svg pdf postscript)))))
- (extension (pcase type
- ('png ".png")
- ('svg ".svg")
- ('pdf ".pdf")
- ('postscript ".ps")
- (otherwise (error "Cannot export screenshot of type %s" otherwise))))
- (filename (make-temp-file "Emacs-" nil extension))
- (data (x-export-frames nil type)))
- (with-temp-file filename
- (insert data))
- (kill-new filename)
- (rename-file filename (expand-file-name (file-name-nondirectory filename) "~"))
- (message filename)))
-#+end_src
-
-**** Provide Modules
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-ui.el
-(provide 'custom-ui)
-;;; custom-ui.el ends here
-#+end_src
-
-*** Key Bindings
-**** Global Key
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-keybindings.el
- ;; Make ESC quit prompts
- (global-set-key (kbd "") 'keyboard-escape-quit)
- ;; this annoying binding.
- (global-unset-key (kbd "C-j"))
- (global-unset-key (kbd "C-k"))
- (global-unset-key (kbd "S-SPC")) ;; use only S-\
-#+end_src
-**** Which keys
-When you begin a keybind, whichkey will show you all keybinds you can follow the first one with in order to form a full keywords.
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-keybindings.el
- (use-package which-key
- :defer t
- :init (which-key-mode)
- :diminish which-key-mode
- :config
- (setq which-key-idle-delay 0.5))
-#+end_src
-**** General
-for managing keybindings.
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-keybindings.el
- (use-package general
- :init
- (general-auto-unbind-keys)
- :config
- (general-evil-setup t)
- (general-create-definer ju/leader-key-def
- :keymaps '(normal insert visual emacs)
- :prefix "SPC"
- :global-prefix "C-SPC"))
-
- (ju/leader-key-def
- "." 'find-file
- ;; Buffer
- "b" '(:ignore t :which-key "buffer handling")
- "b i" '(ibuffer :which-key "IBuffer")
- "b r" '(revert-buffer :which-key "Revert Buffer")
- "b k" '(kill-current-buffer :which-key "Kill current buffer")
- "b n" '(next-buffer :which-key "Next buffer")
- "b p" '(previous-buffer :which-key "Previous buffer")
- "b B" '(ibuffer-list-buffers :which-key "IBuffer List Buffers")
- "b K" '(kill-buffer :which-key "IBuffer Kill Buffers")
- ;; Eshell
- "e" '(:ignore t :which-key "eshell")
- "e h" '(counsel-esh-history :which-key "Kill history")
- "e s" '(eshell :which-key "run eshell")
- "e e" '(elfeed :which-key "elfeed")
- ;; Counsel
- "f" '(:ignore t :which-key "file op.")
- "f r" '(consult-recent-file :which-key "Recent files")
- ;; Shortcut
- "f o" '(:ignore t :which-key "dOt files")
- "f o d" '((lambda () (interactive) (find-file "~/.config/emacs/desktop.org")) :which-key "open exwm config")
- "f o c" '((lambda () (interactive) (find-file "~/.config/emacs/emacs.org")) :which-key "open emacs config")
- ;; Insert something
- "i" '(:ignore t :which-key "insert something.")
- ;; Project-el
- "p" '(:ignore t :which-key "project")
- "p ." '(project-switch-project :which-key "switch project")
- "p p" '(project-switch-project :which-key "switch project")
- "p c" '(project-compile :which-key "compile")
- "p f" '(project-find-file :which-key "find-file")
- "p k" '(project-kill-buffers :which-key "kill buffers")
- "p s" '(project-shell :which-key "shell")
- "p e" '(project-eshell :which-key "eshell")
- "p d" '(project-dired :which-key "dired")
- ;;"p g" '(project-find-regexp :which-key "find-regexp")
- "p g" '(consult-ripgrep :which-key "ripgrep")
- ;; register
- "r" '(:ignore t :which-key "register")
- "r y" '(consult-register-save :which-key "yank to register")
- "r p" '(consult-register-load :which-key "paste to buffer")
- ;; Extra
- "t" '(:ignore t :which-key "extra")
- "t a" '(toggle-transparency :which-key "Toggle Transparency")
- "t t" '(toggle-truncate-lines :which-key "Toggle truncate lines"))
-#+end_src
-**** Evil Mode
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-keybindings.el
- (use-package evil
- :after general
- :init
- (setq evil-want-integration t
- evil-want-keybinding nil
- evil-want-C-u-scroll t
- evil-want-C-i-jump nil)
- ;;(setq evil-respect-visual-line-mode nil) ; t : on the screen, nil : by cr characters
- (require 'evil-vars)
- (evil-set-undo-system 'undo-tree)
- ;;(evil-set-undo-system 'undo-redo)
-
- ;; Make evil search more like vim (makes emacs slow)
- ;;(evil-select-search-module 'evil-search-module 'evil-search)
-
- :config
- (evil-mode 1)
- (setq evil-want-fine-undo t) ; more granular undo with evil
- (evil-set-initial-state 'messages-buffer-mode 'normal)
- (evil-set-initial-state 'dashboard-mode 'normal)
- ;; eshell no evil
- (dolist (mode '(eshell-mode))
- (add-to-list 'evil-emacs-state-modes mode)))
-
- (use-package evil-collection
- :after evil
- :config
- (evil-collection-init))
-
- (use-package evil-nerd-commenter
- :after evil
- :config
- ;; evil nerd commenter
- (define-key evil-normal-state-map (kbd "g c") 'evilnc-comment-or-uncomment-lines)
- (define-key evil-visual-state-map (kbd "g c") 'evilnc-comment-or-uncomment-lines))
-
- (use-package evil-numbers
- :after evil
- :config
- ;; evil numbers
- ;; unfortunately C-x is emacs common key binding.
- (define-key evil-normal-state-map (kbd "g =") 'evil-numbers/inc-at-pt)
- (define-key evil-normal-state-map (kbd "g -") 'evil-numbers/dec-at-pt)
- (define-key evil-visual-state-map (kbd "g =") 'evil-numbers/inc-at-pt)
- (define-key evil-visual-state-map (kbd "g -") 'evil-numbers/dec-at-pt))
-
-
-#+end_src
-**** Undo Tree
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-keybindings.el
- (use-package undo-tree
- :defer t
- :custom
- (undo-tree-history-directory-alist
- `(("." . ,(expand-file-name (file-name-as-directory "undo-tree-hist")
- user-emacs-directory))))
- :init
- (global-undo-tree-mode)
- :config
- (setq undo-tree-visualizer-diff t
- undo-tree-visualizer-timestamps t
- undo-tree-auto-save-history t
- undo-tree-enable-undo-in-region t
- undo-limit (* 800 1024)
- undo-strong-limit (* 12 1024 1024)
- undo-outer-limit (* 128 1024 1024)))
-#+end_src
-**** Hydra
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-keybindings.el
- (use-package hydra
- :defer t)
- (defhydra hydra-text-scale (:timeout 4)
- "scale text"
- ("t" text-scale-increase "in")
- ("s" text-scale-decrease "out")
- ("q" nil "finished" :exit t))
- (defhydra hydra-writeroom-scale (:timeout 4)
- "scale whiteroom"
- ("t" writeroom-increase-width "enlarge")
- ("S" writeroom-decrease-width "shrink")
- ("r" writeroom-adjust-width "adjust")
- ("q" nil "finished" :exit t))
- (defhydra hydra-modify-alpha ()
- ("s" my/decrease-frame-alpha-background "decrease alpha")
- ("t" my/increase-frame-alpha-background "increase alpha")
- ("q" nil "finished" :exit t))
- (ju/leader-key-def
- ;; Hydra
- "h" '(:ignore t :which-key "hydra")
- "h t" '(hydra-text-scale/body :which-key "scale text")
- "h w" '(hydra-writeroom-scale/body :which-key "scale whiteroom")
- "h a" '(hydra-modify-alpha/body :which-key "modify alpha background"))
-#+end_src
-
-**** Provide Modules
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-keybindings.el
-(provide 'custom-keybindings)
-;;; custom-keybindings.el ends here
-#+end_src
-
-*** Completion
-config from crafted-emacs
-https://github.com/SystemCrafters/crafted-emacs
-**** Vertico
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-completion.el
- (use-package vertico
- :bind (:map vertico-map
- ("C-j" . vertico-next)
- ("C-k" . vertico-previous))
- :custom
- (vertico-cycle t)
- :init
- (vertico-mode))
-#+end_src
-**** Prescient
-simple but effective sorting and filtering for emacs.
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-completion.el
- (use-package vertico-prescient
- :defer t
- :config
- (vertico-prescient-mode))
-#+end_src
-**** Marginalia
-annotations placed at the margin of the minibuffer
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-completion.el
- (use-package marginalia
- :after vertico
- :defer t
- :custom
- (marginalia-annotators '(marginalia-annotators-heavy marginalia-annotators-light nil))
- :init (marginalia-mode))
-#+end_src
-**** Consult
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-completion.el
- (use-package consult
- :demand t
- :bind (:map minibuffer-local-map
- ("C-r" . consult-history))
- :custom
- (completion-in-region-function #'consult-completion-in-region)
- :config
- (global-set-key (kbd "C-s") 'consult-line)
- (global-set-key (kbd "C-M-j") 'consult-buffer))
-#+end_src
-**** Orderless
-orderless completion
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-completion.el
- (use-package orderless
- :defer t
- :custom
- (completion-styles '(orderless basic))
- (completion-category-overrides '((file (style basic partial-completion)))))
-#+end_src
-**** Embark / Embark Consult
-Quick Action in minibuffer
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-completion.el
- (use-package embark
- :defer t
- :bind (("C-." . embark-act))
- :config
- (with-eval-after-load 'embark-consult
- (add-hook 'embark-collect-mode-hook #'consult-preview-at-point-mode))
- (global-set-key [remap describe-bindings] #'embark-bindings)
- ;; Use Embark to show bindings in a key prefix with `C-h`
- (setq prefix-help-command #'embark-prefix-help-command))
-
- (use-package embark-consult
- :defer t
- :after embark)
-#+end_src
-
-**** Corfu / Cape
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-completion.el
- ;;; Corfu
- (use-package corfu
- :custom
- (corfu-cycle t) ;; Enable cycling for `corfu-next/previous'
- (corfu-auto t) ;; Enable auto completion
- (corfu-auto-prefix 2)
- (corfu-auto-delay 0.0)
- (corfu-echo-documentation 0.25)
- ;; (corfu-separator ?\s) ;; Orderless field separator
- ;; (corfu-quit-at-boundary nil) ;; Never quit at completion boundary
- ;; (corfu-quit-no-match nil) ;; Never quit, even if there is no match
- ;; (corfu-preview-current nil) ;; Disable current candidate preview
- ;; (corfu-preselect 'prompt) ;; Preselect the prompt
- ;; (corfu-on-exact-match nil) ;; Configure handling of exact matches
- ;; (corfu-scroll-margin 5) ;; Use scroll margin
- :init
- (global-corfu-mode))
- ;; load extension
- (add-to-list 'load-path
- (expand-file-name "straight/build/corfu/extensions"
- straight-base-dir))
- (require 'corfu-popupinfo)
- (corfu-popupinfo-mode 1)
- (eldoc-add-command #'corfu-insert)
- (define-key corfu-map (kbd "M-p") #'corfu-popupinfo-scroll-down)
- (define-key corfu-map (kbd "M-n") #'corfu-popupinfo-scroll-up)
- (define-key corfu-map (kbd "M-d") #'corfu-popupinfo-toggle)
-
- ;;; Cape
- ;; Setup Cape for better completion-at-point support and more
- (use-package cape
- :config
- ;; Add useful defaults completion sources from cape
- (add-to-list 'completion-at-point-functions #'cape-file)
- (add-to-list 'completion-at-point-functions #'cape-dabbrev)
- ;;(add-to-list 'completion-at-point-functions #'cape-ispell)
- ;; Silence the pcomplete capf, no errors or messages!
- ;; Important for corfu
- (advice-add 'pcomplete-completions-at-point :around #'cape-wrap-silent)
- ;; Ensure that pcomplete does not write to the buffer
- ;; and behaves as a pure `completion-at-point-function'.
- (advice-add 'pcomplete-completions-at-point :around #'cape-wrap-purify)
- (add-hook 'eshell-mode-hook
- (lambda () (setq-local corfu-quit-at-boundary t
- corfu-quit-no-match t
- corfu-auto nil)
- (corfu-mode))))
- (unless (package-installed-p 'corfu-terminal)
- (package-install 'corfu-terminal))
- (unless (display-graphic-p)
- (require 'corfu-terminal)
- (corfu-terminal-mode +1))
-#+end_src
-**** Provide Modules
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-completion.el
-(provide 'custom-completion)
-;;; custom-completion.el ends here
-#+end_src
-*** Edit
-**** Helpful
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-edit.el
- (use-package helpful
- :defer t
- :custom
- (counsel-describe-function-function #'helpful-callable)
- (counsel-describe-variable-function #'helpful-variable))
- ;;:commands (helpful-callable helpful-variable helpful-command helpful-key)
- (global-set-key [remap describe-function] #'describe-function)
- (global-set-key [remap describe-command] #'helpful-command)
- (global-set-key [remap describe-variable] #'describe-variable)
- (global-set-key [remap describe-key] #'helpful-key)
-#+end_src
-**** Avy
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-edit.el
- (use-package avy
- :defer t
- :config
- (setq avy-all-windows t))
- (ju/leader-key-def
- "v" '(:ignore t :which-key "Avy")
- "vc" '(avy-goto-char :which-key "Avy Goto Char")
- "vw" '(avy-goto-word-0 :which-key "Avy Goto Word")
- "vl" '(avy-goto-line :which-key "Avy Goto Line"))
-#+end_src
-**** Snippet
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-edit.el
- (use-package yasnippet
- :defer t
- :hook (prog-mode . yas-minor-mode)
- :config
- (defvar yas-snippet-dirs nil)
- (add-to-list 'yas-snippet-dirs "~/.config/emacs/snippets")
- (yas-global-mode 1))
- (ju/leader-key-def
- "i s" '(yas-insert-snippet :which-key "snippet"))
-#+end_src
-***** Doom-Snippet
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-edit.el
- (use-package doom-snippets
- :straight (doom-snippets :type git :host github :repo "doomemacs/snippets" :files ("*.el" "*"))
- :after yasnippet)
-#+end_src
-
-**** Emojify
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-edit.el
- (use-package emojify
- :defer t
- :init (global-emojify-mode 1))
- (ju/leader-key-def
- "i e" '(emojify-insert-emoji :which-key "emoji"))
-#+end_src
-**** Provide Modules
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-edit.el
-(provide 'custom-edit)
-;;; custom-completion.el ends here
-#+end_src
-
-*** Org Mode
-**** Normal Function
-***** configure org
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-org.el
- (setq org-directory "~/org") ; use for relative file location
- (with-no-warnings
- (custom-declare-face '+org-todo-active '((t (:inherit (bold font-lock-constant-face org-todo)))) "")
- (custom-declare-face '+org-todo-project '((t (:inherit (bold font-lock-doc-face org-todo)))) "")
- (custom-declare-face '+org-todo-onhold '((t (:inherit (bold warning org-todo)))) "")
- (custom-declare-face '+org-todo-cancel '((t (:inherit (bold error org-todo)))) ""))
- (use-package org
- :defer t
- :config
- (add-hook 'org-mode-hook #'org-indent-mode)
- (add-hook 'org-mode-hook #'org-fold-hide-drawer-all)
- (add-hook 'org-mode-hook #'visual-line-mode)
- (setq org-todo-keywords
- '((sequence
- "TODO(t)" ; A task that needs doing & is ready to do
- "PROJ(p)" ; A project, which usually contains other tasks
- "STRT(s)" ; A task that is in progress
- "WAIT(w)" ; Something external is holding up this task
- "HOLD(h)" ; This task is paused/on hold because of me
- "IDEA(i)" ; An unconfirmed and unapproved task or notion
- "|"
- "DONE(d)" ; Task successfully completed
- "KILL(k)") ; Task was cancelled, aborted or is no longer applicable
- (sequence
- "[ ](T)" ; A task that needs doing
- "[-](S)" ; Task is in progress
- "[?](W)" ; Task is being held up or paused
- "|"
- "[X](D)") ; Task was completed
- ))
- (setq org-todo-keyword-faces
- '(("[-]" . +org-todo-active)
- ("STRT" . +org-todo-active)
- ("[?]" . +org-todo-onhold)
- ("WAIT" . +org-todo-onhold)
- ("HOLD" . +org-todo-onhold)
- ("PROJ" . +org-todo-project)
- ("KILL" . +org-todo-cancel)))
- (setq org-ellipsis " ⤵"
- org-hide-emphasis-markers t
- org-redisplay-inline-images t
- org-display-inline-images t
- org-startup-with-inline-images "inlineimages"
- org-src-fontify-natively t
- org-fontify-quote-and-verse-blocks t
- org-agenda-start-with-log-mode t
- org-startup-indented t
- org-startup-align-all-tables t
- org-log-done 'time
- org-log-into-drawer "LOGBOOK"
- org-clock-into-drawer "CLOCKING"
- org-lowest-priority 68)
- ;;(setq org-format-latex-options (plist-put org-format-latex-options :scale 1.8))
-
- (setq org-use-sub-superscripts '{})
- ;; Do not ask when run code block
- (setq org-confirm-babel-evaluate nil)
-
- (setq org-image-actual-width nil)
-
- (custom-set-faces
- '(org-level-1 ((t (:height 1.7 :weight ultra-bold :foreground "#81a2be")))) ;; :foreground "#81a2be"
- '(org-level-2 ((t (:height 1.6 :weight extra-bold :foreground "#b294bb")))) ;; :foreground "#b294bb"
- '(org-level-3 ((t (:height 1.5 :weight bold :foreground "#b5bd68")))) ;; :foreground "#b5bd68"
- '(org-level-4 ((t (:height 1.4 :weight semi-bold :foreground "#e6c547")))) ;; :foreground "#e6c547"
- '(org-level-5 ((t (:height 1.3 :weight normal :foreground "#cc6666")))) ;; :foreground "#cc6666"
- '(org-level-6 ((t (:height 1.2 :weight normal :foreground "#70c0ba")))) ;; :foreground "#70c0ba"
- '(org-level-7 ((t (:height 1.1 :weight normal :foreground "#b77ee0")))) ;; :foreground "#b77ee0"
- '(org-level-8 ((t (:height 1.0 :weight normal :foreground "#9ec400"))))
- '(org-document-title ((t (:height 2.0 :weight ultra-bold :foreground "#9ec400")))))
- ;; org latex preview scaled.
- (setq org-format-latex-options (plist-put org-format-latex-options :scale 2.5))
- ;; odt -> docx
- (setq org-odt-preferred-output-format "docx" ;; opt -> docx
- org-export-with-sub-superscripts '{} ;; ODT export to docx
- org-latex-compiler "xelatex"))
- (use-package org-contrib
- :after org
- :defer t)
- #+end_src
-***** Org fancy Priorities
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-org.el
- (use-package org-fancy-priorities
- :defer t
- :after (org all-the-icons)
- :hook (org-mode org-agenda-mode)
- :config
- (setq org-fancy-priorities-list `(,(all-the-icons-faicon "flag" :height 1.1 :v-adjust 0.0)
- ,(all-the-icons-faicon "arrow-up" :height 1.1 :v-adjust 0.0)
- ,(all-the-icons-faicon "square" :height 1.1 :v-adjust 0.0)
- ,(all-the-icons-faicon "ban" :height 1.1 :v-adjust 0.0))))
-#+end_src
-***** Org superstar
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-org.el
- (use-package org-superstar
- :hook (org-mode)
- :config
- (setq org-superstar-item-bullet-alist
- '((?+ . ?➢)
- (?* . ?✰)
- (?- . ?➸))))
-#+end_src
-***** Valign
-| 12345678 | |
-|----------+---|
-| 일이삼사 | |
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-org.el
- (use-package valign
- :defer t
- :custom
- (valign-fancy-bar t))
-#+end_src
-***** Emphasize text
-bold : *bold*
-italic : /italic/
-unerline : _unerline_
-verbatim : =verbatim=
-code : ~code~
-strike-through : +strike-through+
-***** Org Appear
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-org.el
- (use-package org-appear
- :defer t
- :hook (org-mode)
- :config
- (setq org-appear-autoemphasis t
- org-appear-autolinks t
- org-appear-autoentities t
- org-appear-autosubmarkers t))
-#+end_src
-***** Org fragtog
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-org.el
- (use-package org-fragtog
- :defer t
- :hook (org-mode))
-#+end_src
-**** Attachment
-***** Org attach screenshot (linux)
-to use org-screenshot-take
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-org.el
- (use-package org-attach-screenshot
- :defer t)
-#+end_src
-***** Org download
-download image link
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-org.el
- (use-package org-download
- :defer t)
-#+end_src
-
-***** ob-latex-as-png
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-org.el
- (use-package ob-latex-as-png
- :defer t)
-#+end_src
-
-****** Example 1
-#+begin_src latex-as-png :results replace :file neural-networks :exports both
-\usepackage{neuralnetwork}
-% in
-\begin{neuralnetwork}[height=4]
- \newcommand{\x}[2]{$x_#2$}
- \newcommand{\y}[2]{$y_#2$}
- \newcommand{\hfirst}[2]{\small $h^{(1)}_#2$}
- \newcommand{\hsecond}[2]{\small $h^{(2)}_#2$}
- \newcommand{\mylinktext}[4] {
- % from layer=#1, from node=#2
- % to layer=#3, to node=#4
- \ifnum1=#1\relax
- \ifnum3=#4\relax $w^{#1}_{#4,#2}$ \fi
- \else \fi
- }
- % Then assign it:
- \setdefaultlinklabel{\mylinktext}
- \inputlayer[count=3, bias=false, title=Input\\layer, text=\x]
- \hiddenlayer[count=4, bias=false, title=Hidden\\layer 1, text=\hfirst] \linklayers
- \hiddenlayer[count=3, bias=false, title=Hidden\\layer 2, text=\hsecond] \linklayers
- \outputlayer[count=2, title=Output\\layer, text=\y] \linklayers
-\end{neuralnetwork}
-#+end_src
-
-#+RESULTS:
-[[file:neural-networks.png]]
-
-****** Example 2
-#+PROPERTY: header-args:latex-as-png :results raw value replace
-#+begin_src latex-as-png :file example.pdf :resolution 120
- \smartdiagram[bubble diagram]{Emacs,Org-mode, \LaTeX, Pretty Images, HTML}
-#+end_src
-
-****** Example 3
-#+begin_src latex-as-png :file using-picture-environment :exports both
-\input GoudyIn.fd \input Acorn.fd
-\def\light#1{\huge \usefont{U}{Acorn}{xl}{n} #1}
-\def\thick#1{\fontsize{50}{60}\selectfont \usefont{U}{GoudyIn}{xl}{n} #1}
-% \fontsize{X}{Y} ⇒ Write with point size X, using Y point size between lines
-
-\pagecolor{brown}
-
-\begin{picture}(124,60)
-\put(0,0){\thick{ORG}}
-\put(18,42){\light{JaeUs}}
-\put(0,55){\rotatebox{-45}{\scriptsize \LaTeX}}
-\put(109,43){\rotatebox{45}{\scriptsize \texttt{HTML}}}
-\end{picture}
-#+end_src
-
-#+RESULTS:
-[[file:using-picture-environment.png]]
-***** def-functions
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-org.el
- (defun my/org-remove-link-and-trash-linked-file ()
- "Remove `org-mode' link at point and trash linked file."
- (interactive)
- (let* ((link (org-element-context))
- (path (org-element-property :path link)))
- (move-file-to-trash path)
- (delete-region (org-element-property :begin link)
- (org-element-property :end link))))
- (defun my/powershell (script)
- "executes the given script within a powershell and returns its return value"
- (call-process "powershell.exe" nil nil nil
- "-Command" (concat "& {" script "}")))
- (defun my/as-windows-path (unix-path)
- "Takes a unix path and returns a matching WSL path"
- ;; substring removes the trailing \n
- (substring
- (shell-command-to-string
- (concat "wslpath -w " unix-path)) 0 -1))
- (defun my/org-paste-image-win2wsl ()
- "Paste an image into a time stamped unique-named file in the
- same directory as the org-buffer and insert a link to this file."
- (interactive)
- (let* ((target-file
- (concat
- (make-temp-name
- (concat org-directory
- "/images/"
- (f-filename buffer-file-name)
- "_"
- (format-time-string "%Y%m%d_%H%M%S_"))) ".png"))
- (wsl-path
- (concat (my/as-windows-path(file-name-directory target-file))
- "/"
- (file-name-nondirectory target-file)))
- (ps-script
- (concat "(Get-Clipboard -Format image).Save('" wsl-path "')")))
-
- (my/powershell ps-script)
-
- (if (file-exists-p target-file)
- (progn (insert (concat "[[" target-file "]]"))
- (org-display-inline-images))
- (user-error
- "Error pasting the image, make sure you have an image in the clipboard!"))
- ))
- (defun org-time-stamp-with-time()
- "Insert org mode timestamp at point with current date and time"
- (interactive)
- (org-insert-time-stamp (current-time) t))
-#+end_src
-**** Exporter
-***** Hugo
-my-blog jaeus.net
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-org.el
- (use-package ox-hugo
- :defer t
- :after ox)
-#+end_src
-***** TODO Engrave-faces
-latex export code block
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-org.el
- ;;(usr-package-install 'engrave-faces)
- ;;(require 'engrave-faces)
- ;;(require 'engrave-faces-latex)
- ;;(setq org-latex-src-block-backend 'engraved)
-#+end_src
-***** Code Block Minted
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-org.el
- (setq org-latex-minted-options '(("breaklines" "true")
- ("tabsize" "4")
- ("autogobble")
- ("breakanywhere" "true")
- ("bgcolor" "gray!40")
- ("frame" "single")
- ("numbers" "left")))
- (setq org-latex-listings 'minted
- org-latex-packages-alist '(("" "minted"))
- org-latex-pdf-process
- '("pdflatex -shell-escape -interaction nonstopmode -output-directory %o %f"
- "pdflatex -interaction nonstopmode -output-directory %o %f"))
-#+end_src
-***** Org latex classes
-=article= is default.
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-org.el
- (with-eval-after-load 'ox-latex
- (add-to-list 'org-latex-classes
- '("article"
- "\\documentclass[11pt,a4paper]{article}
- \\usepackage[left=2.5cm,right=2.5cm,top=3cm,bottom=3cm,a4paper]{geometry}
- [DEFAULT-PACKAGES]
- \\usepackage{kotex}
- [PACKAGES]
- [EXTRA]
- \\linespread{1.1}
- \\hypersetup{pdfborder=0 0 0}"
- ("\\section{%s}" . "\\section*{%s}")
- ("\\subsection{%s}" . "\\subsection*{%s}")
- ("\\subsubsection{%s}" . "\\subsubsection*{%s}")
- ("\\paragraph{%s}" . "\\paragraph*{%s}")))
- (add-to-list 'org-latex-classes
- '("org-plain-latex"
- "\\documentclass[a4paper,11pt,titlepage]{memoir}
- \\usepackage[left=2.5cm,right=2.5cm,top=3cm,bottom=3cm,a4paper]{geometry}
- [DEFAULT-PACKAGES]
- \\usepackage{kotex}
- [PACKAGES]
- [EXTRA]
- \\linespread{1.1}
- \\hypersetup{pdfborder=0 0 0}"
- ("\\chapter{%s}" . "\\chapter*{%s}")
- ("\\section{%s}" . "\\section*{%s}")
- ("\\subsection{%s}" . "\\subsection*{%s}")
- ("\\subsubsection{%s}" . "\\subsubsection*{%s}")
- ("\\paragraph{%s}" . "\\paragraph*{%s}")
- ("\\subparagraph{%s}" . "\\subparagraph*{%s}"))))
-
-#+end_src
-
-**** Additional Functions
-***** Org Journal
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-org.el
- (use-package org-journal
- :defer t
- :config
- (setq org-journal-dir (expand-file-name "journal/" org-directory))
- (setq org-journal-file-type 'weekly))
-#+end_src
-
-***** Org Agenda
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-org.el
- (defvar my/org-agenda-default-file "~/org/agenda/agenda.org")
- (setq org-agenda-files (list my/org-agenda-default-file))
-#+end_src
-***** Org Roam
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-org.el
- (use-package org-roam
- :ensure t
- ;;:demand t ;; ensure org-roam is loaded by default
- :custom
- (org-roam-directory "~/org/roam")
- (org-roam-node-display-template (concat "${title:*} " (propertize "${tags:*}" 'face 'org-tag)))
- ;;(org-roam-completion-everywhere t)
- :config
- (setq org-roam-capture-templates '(("d" "default" plain "%?"
- :target (file+head
- "%<%Y%m%d%H%M%S>-${slug}.org"
- "#+title: ${title}\n")
- :unnarrowed t)
- ("p" "project" plain "* TODO %?"
- :target (file+head+olp
- "%<%Y%m%d%H%M%S>-${slug}.org"
- "#+title: ${title}\n#+category: ${title}\n#+filetags: Project"
- ("Tasks"))
- :unnarrowed t)))
- (org-roam-db-autosync-mode))
- ;; Org roam ui
- (use-package org-roam-ui
- :defer t
- :config
- (setq org-roam-ui-sync-theme t
- org-roam-ui-follow t
- org-roam-ui-update-on-save t
- org-roam-ui-open-on-start nil))
-#+end_src
-
-- Org roam related function
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-org.el
- (defun my/org-roam-rg-search ()
- "Search org-roam directory using consult-ripgrep. With live-preview."
- (interactive)
- (let ((consult-ripgrep-command "rg --null --ignore-case --type org --line-buffered --color=always --max-columns=500 --no-heading --line-number . -e ARG OPTS"))
- (consult-ripgrep org-roam-directory)))
- (defun my/org-roam-filter-by-tag (tag-name)
- (lambda (node)
- (member tag-name (org-roam-node-tags node))))
- (defun my/org-roam-list-notes-by-tag (tag-name)
- (mapcar #'org-roam-node-file
- (seq-filter
- (my/org-roam-filter-by-tag tag-name)
- (org-roam-node-list))))
- (defun my/org-roam-refresh-agenda-list ()
- (interactive)
- (setq org-agenda-files (my/org-roam-list-notes-by-tag "Project"))
- (add-to-list 'org-agenda-files my/org-agenda-default-file))
- (defun my/org-roam-project-finalize-hook ()
- "Adds the captured project file to `org-agenda-files' if the
- capture was not aborted."
- ;; Remove the hook since it was added temporarily
- (remove-hook 'org-capture-after-finalize-hook #'my/org-roam-project-finalize-hook)
-
- ;; Add project file to the agenda list if the capture was confirmed
- (unless org-note-abort
- (with-current-buffer (org-capture-get :buffer)
- (add-to-list 'org-agenda-files (buffer-file-name)))))
- (my/org-roam-refresh-agenda-list)
-#+end_src
-
-**** Tools
-***** ob-async
-asynchronous execution of org-babel src blocks
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-org.el
- (use-package ob-async
- :defer t)
-#+end_src
-
-some language should add
-#+begin_src emacs-lisp
-(setq ob-async-no-async-languages-alist '("ipython"))
-#+end_src
-***** Org PDF tools
-get link from pdf,
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-org.el
- (use-package org-pdftools
- :defer t
- :hook (org-mode . org-pdftools-setup-link))
-#+end_src
-**** Keybindings
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-org.el
- (ju/leader-key-def
- ;; Org mode
- "o" '(:ignore t :which-key "Org mode")
- "o a" '(:ignore t :which-key "Org Agenda")
- "o a a" '(org-agenda :which-key "open org agenda")
- "o a r" '(my/org-roam-refresh-agenda-list :which-key "Org agenda refresh list")
- "o a c" '((lambda () (interactive) (find-file (expand-file-name "agenda/agenda.org" org-directory))) :which-key "org agenda file")
- "o c" '(cfw:open-org-calendar :which-key "org calendar"))
- (ju/leader-key-def
- "n j" '(:ignore t :which-key "Org Journal")
- "n j j" '(org-journal-new-entry :which-key "new Entry")
- "n j J" '(org-journal-new-scheduled-entry :which-key "New Scheduled entry")
- "n j s" '(org-journal-search :which-key "Journal Search"))
- (ju/leader-key-def
- "n r" '(:ignore t :which-key "Org Roam")
- "n r c" '(org-roam-capture :which-key "capture")
- "n r u" '(org-roam-ui-open :which-key "UI")
- "n r l" '(org-roam-buffer-toggle :which-key "buffer toggle")
- "n r f" '(org-roam-node-find :which-key "node find")
- "n r i" '(org-roam-node-insert :which-key "node insert")
- "n r I" '(org-id-get-create :which-key "create id")
- "n r g" '(my/org-roam-rg-search :which-key "roam ripgrep")
- "n r t" '(:ignore t :which-key "Org Roam Tags")
- "n r t t" '(org-roam-tag-add :which-key "new tag")
- "n r t d" '(org-roam-tag-remove :which-key "delete tag"))
-#+end_src
-
-**** Provide Modules
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-org.el
- (provide 'custom-org)
- ;;; custom-org.el ends here
-#+end_src
-*** Projects
-**** MAGIT
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-projects.el
- (use-package magit
- :defer t
- :commands (magit-status magit-get-current-branch)
- :custom
- (magit-display-buffer-function #'magit-display-buffer-same-window-except-diff-v1)
- :config
- (setq magit-clone-default-directory "~/Project/"))
- (ju/leader-key-def
- ;; Magit
- "g" '(:ignore t :which-key "magit")
- "g g" '(magit :which-key "magit"))
-#+end_src
-**** Gitgutter
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-projects.el
- (use-package git-gutter
- :defer t
- :init (global-git-gutter-mode)
- :custom
- (git-gutter:update-interval 2)
- (git-gutter:linum-enabled nil))
-#+end_src
-**** Highlight TODOs
-***** TODO: test
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-projects.el
- (use-package hl-todo
- :defer t
- :init (global-hl-todo-mode 1)
- :config
- (setq hl-todo-keyword-faces
- `(;; For things that need to be done, just not today.
- ("TODO" warning bold)
- ;; For problems that will become bigger problems later if not
- ;; fixed ASAP.
- ("FIXME" error bold)
- ;; For tidbits that are unconventional and not intended uses of the
- ;; constituent parts, and may break in a future update.
- ("HACK" font-lock-constant-face bold)
- ;; For things that were done hastily and/or hasn't been thoroughly
- ;; tested. It may not even be necessary!
- ("REVIEW" font-lock-keyword-face bold)
- ;; For especially important gotchas with a given implementation,
- ;; directed at another user other than the author.
- ("NOTE" success bold)
- ;; For things that just gotta go and will soon be gone.
- ("DEPRECATED" font-lock-doc-face bold)
- ;; For a known bug that needs a workaround
- ("BUG" error bold)
- ;; For warning about a problematic or misguiding code
- ("XXX" font-lock-constant-face bold))))
-#+end_src
-**** Magit TODOs
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-projects.el
- (use-package magit-todos
- :defer t
- :after (magit hl-todo)
- :hook (magit-mode))
-#+end_src
-**** Provide Modules
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-projects.el
- (provide 'custom-projects)
- ;;; custom-projects.el ends here
-#+end_src
-*** Workspaces
-**** Tabspace
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-workspaces.el
- ;;(use-package tabspaces
- ;; :disabled
- ;; ;; use this next line only if you also use straight, otherwise ignore it.
- ;; :hook (after-init . tabspaces-mode) ;; use this only if you want the minor-mode loaded at startup.
- ;; :commands (tabspaces-switch-or-create-workspace
- ;; tabspaces-open-or-create-project-and-workspace)
- ;; :custom
- ;; (tabspaces-use-filtered-buffers-as-default t)
- ;; (tabspaces-default-tab "Default")
- ;; (tabspaces-remove-to-default t)
- ;; (tabspaces-include-buffers '("*scratch*"))
- ;; ;; sessions
- ;; (tabspaces-session t)
- ;; (tabspaces-session-auto-restore t)
- ;; :config
- ;; (ju/leader-key-def
- ;; "TAB" '(tabspaces-command-map :which-key "tabspaces-command-map")))
-#+end_src
-
-**** Perspective
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-workspaces.el
- ;;(use-package perspective
- ;; :disabled
- ;; :demand t
- ;; :bind (("C-M-j" . consult-buffer)
- ;; ("C-M-k" . persp-switch)
- ;; ("C-M-n" . persp-next)
- ;; ("C-x k" . persp-kill-buffer*))
- ;; :custom
- ;; (persp-initial-frame-name "Main")
- ;; (persp-mode-prefix-key (kbd "C-c p"))
- ;; :config
- ;; (ju/leader-key-def
- ;; "TAB" '(perspective-map :which-key "perspective"))
- ;; ;; Running `persp-mode' multiple times resets the perspective list...
- ;; (unless (equal persp-mode t)
- ;; (persp-mode)))
- ;;(provide 'custom-workspaces)
- ;;; custom-workspaces.el ends here
-#+end_src
-*** Latex
-**** AUCTEX
-writing and formatting tex file in Emacs.
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-latex.el
- (use-package auctex
- :defer t
- :custom
- (TeX-auto-save t)
- (TeX-parse-self t)
- ;; to use pdfview with auctex
- (TeX-view-program-selection '((output-pdf "PDF Tools")))
- (TeX-view-program-list '(("PDF Tools" TeX-pdf-tools-sync-view)))
- (TeX-source-correlate-start-server t)
- ;; electric pairs in auctex
- (TeX-electric-sub-and-superscript t)
- (LaTeX-electric-left-right-brace t)
- (TeX-electric-math (cons "$" "$"))
- :config
- (setq-default TeX-master nil)
- ;; compile to pdf
- (tex-pdf-mode)
- ;; correlate the source and the output
- (TeX-source-correlate-mode)
- ;; set a correct indentation in a few additional environments
- (add-to-list 'LaTeX-indent-environment-list '("lstlisting" current-indentation))
- (add-to-list 'LaTeX-indent-environment-list '("tikzcd" LaTeX-indent-tabular))
- (add-to-list 'LaTeX-indent-environment-list '("tikzpicture" current-indentation))
- ;; add a few macros and environment as verbatim
- (add-to-list 'LaTeX-verbatim-environments "lstlisting")
- (add-to-list 'LaTeX-verbatim-environments "Verbatim")
- (add-to-list 'LaTeX-verbatim-macros-with-braces "lstinline")
- (add-to-list 'LaTeX-verbatim-macros-with-delims "lstinline")
-
- ;; open all buffers with the math mode and auto-fill mode
- (add-hook 'LaTeX-mode-hook #'auto-fill-mode)
- (add-hook 'LaTeX-mode-hook #'LaTeX-math-mode)
-
- ;; add support for references
- (add-hook 'LaTeX-mode-hook 'turn-on-reftex)
- (customize-set-variable 'reftex-plug-into-AUCTeX t)
-
- ;; to have the buffer refresh after compilation
- (add-hook 'TeX-after-compilation-finished-functions #'TeX-revert-document-buffer))
-#+end_src
-**** Cdlatex
-speed-up insertion of environments and math templates.
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-latex.el
- ;;(use-package cdlatex
- ;; :hook
- ;; ;(org-mode . org-cdlatex-mode)
- ;; (LaTex-mode . cdlatex-mode)
- ;; :config
- ;; (setq cdlatex-use-dollar-to-ensure-math nil))
-#+end_src
-**** Provide Modules
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-latex.el
- (provide 'custom-latex)
- ;;; custom-latex.el ends here
-#+end_src
-*** Extra
-**** PDF Tool
-enhanced PDF viewer on emacs
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-extra.el
- (use-package pdf-tools
- :defer t
- :hook ((pdf-tools-enabled . pdf-view-themed-minor-mode)
- (pdf-tools-enabled . pdf-view-fit-page-to-window))
- :config
-
- (pdf-tools-install :no-query)
- (setq-default pdf-view-display-size 'fit-width))
- (defun my/pdf-view-open-in-zathura ()
- (interactive)
- (save-window-excursion
- (let ((current-file (buffer-file-name))
- (current-page (number-to-string (pdf-view-current-page))))
- (async-shell-command
- (format "zathura -P %s \"%s\"" current-page current-file))))
- (message "Sent to zathura"))
-#+end_src
-**** PDF view restore
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-extra.el
- (use-package pdf-view-restore
- :defer t
- :hook (pdf-view-mode . pdf-view-restore-mode)
- :config
- (setq pdf-view-restore-filename (no-littering-expand-var-file-name "pdf-view-restore")))
-#+end_src
-**** Nov
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-extra.el
- (use-package nov
- :defer t
- :config
- (add-to-list 'auto-mode-alist '("\\.epub\\'" . nov-mode)))
-#+end_src
-**** Openwith
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-extra.el
- (defun my/html-file-open-in-qutebrowser ()
- (interactive)
- (save-window-excursion
- (let ((current-file (buffer-file-name)))
- (async-shell-command
- (format "qutebrowser \"%s\"" current-file))))
- (message "Sent to qutebrowser"))
-
-#+end_src
-**** Calfw
-calendar
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-extra.el
- (use-package calfw)
- (use-package calfw-org
- :after calfw)
-#+end_src
-**** ELFEED
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-extra.el
- (use-package elfeed
- :defer t)
- (use-package elfeed-goodies
- :defer t)
- (use-package elfeed-org
- :defer t
- :config
- (elfeed-org)
- (setq rmh-elfeed-org-files (list (expand-file-name "elfeed.org" user-emacs-directory))))
-#+end_src
-**** Chat-GPT
-https://github.com/xenodium/chatgpt-shell
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-extra.el
- (use-package chatgpt-shell
- :config
- (setq chatgpt-shell-openai-key "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"))
-#+end_src
-**** Provide Modules
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-extra.el
- (provide 'custom-extra)
- ;;; custom-extra.el ends here
-#+end_src
-
-*** Languages
-**** Treesitter
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-languages.el
- ;;(if (version< emacs-version "29")
- ;;(use-package tree-sitter
- ;; :defer t
- ;; :init (global-tree-sitter-mode))
- ;;(use-package tree-sitter-langs
- ;; :defer t
- ;; :after tree-sitter))
-#+end_src
-**** eglot
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-languages.el
- (if (version< emacs-version "29")
- (use-package eglot
- :defer t))
-#+end_src
-**** Rust
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-languages.el
- (use-package rust-mode
- :defer t)
-#+end_src
-**** Python
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-languages.el
- (use-package jupyter
- :ensure t)
-#+end_src
-**** CMAKE
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-languages.el
- ;;(use-package cmake-mode
- ;; :defer t)
-#+end_src
-
-**** Markdown
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-languages.el
- (use-package markdown-mode
- :defer t
- :config
- (add-to-list 'auto-mode-alist '("README\\.md\\'" . gfm-mode))
- (add-to-list 'auto-mode-alist '("\\.md\\'" . markdown-mode))
- (add-to-list 'auto-mode-alist '("\\.markdown\\'" . markdown-mode))
- (setq markdown-command "multimarkdown"))
-#+end_src
-**** PKGBUILD
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-languages.el
- (use-package pkgbuild-mode
- :defer t)
-#+end_src
-**** Systemd
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-languages.el
- (use-package systemd
- :defer t)
-#+end_src
-**** Toml
-#+begin_src emacs-lisp
- (use-package toml-mode
- :defer t
- :config
- (add-to-list 'auto-mode-alist '("/\\(Cargo.lock\\|\\.cargo/config\\)\\'" . toml-mode)))
-#+end_src
-**** Nu
-#+begin_src emacs-lisp
- (use-package nushell-mode
- :straight (nushell-mode :type git :host github :repo "azzamsa/emacs-nushell"))
-#+end_src
-
-#+RESULTS:
-
-**** Gnuplot
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-languages.el
- (use-package gnuplot
- :defer t)
-#+end_src
-**** Graphviz dot Mode
-org mode graph drawing with graphviz
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-languages.el
- (use-package graphviz-dot-mode
- :defer t)
-#+end_src
-**** Verilog Indent
-LSP -> veriloter
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-languages.el
- (custom-set-variables
- '(verilog-indent-level 4)
- '(verilog-indent-level-module 0)
- '(verilog-indent-level-declaration 0)
- '(verilog-indent-level-behavioral 0)
- '(verilog-indent-level-directive 0)
- '(verilog-cexp-indent 0)
- '(verilog-case-indent 4)
-
- '(verilog-auto-newline nil))
-#+end_src
-**** Default
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-languages.el
- (with-eval-after-load 'org
- (org-babel-do-load-languages
- 'org-babel-load-languages
- '((emacs-lisp . t)
- (python . t)
- ;;(jupyter . t)
- (dot . t)
- (latex . t)))
- ;;(org-babel-jupyter-override-src-block "python")
- (push '("conf-unix" . conf-unix) org-src-lang-modes)
- ;; This is needed as of Org 9.2
- (require 'org-tempo)
-
- (add-to-list 'org-structure-template-alist '("sh" . "src shell"))
- (add-to-list 'org-structure-template-alist '("el" . "src emacs-lisp"))
- (add-to-list 'org-structure-template-alist '("hs" . "src haskell"))
- (add-to-list 'org-structure-template-alist '("cc" . "src c"))
- (add-to-list 'org-structure-template-alist '("cp" . "src c++"))
- (add-to-list 'org-structure-template-alist '("rs" . "src rust"))
- (add-to-list 'org-structure-template-alist '("py" . "src python"))
- (add-to-list 'org-structure-template-alist '("oc" . "src octave"))
- (add-to-list 'org-structure-template-alist '("vl" . "src verilog"))
- (add-to-list 'org-structure-template-alist '("vh" . "src vhdl"))
- (org-reload))
-#+end_src
-**** Provide modules
-#+begin_src emacs-lisp :mkdirp yes :tangle ~/.config/emacs/modules/custom-languages.el
- (provide 'custom-languages)
- ;;; custom-languages.el ends here
-#+end_src
diff --git a/.config/i3/config b/.config/i3/config
deleted file mode 100644
index e8d0ae6..0000000
--- a/.config/i3/config
+++ /dev/null
@@ -1,179 +0,0 @@
-# This file has been auto-generated by i3-config-wizard(1).
-# It will not be overwritten, so edit it as you like.
-#
-# Should you change your keyboard layout some time, delete
-# this file and re-run i3-config-wizard(1).
-#
-
-# i3 config file (v4)
-#
-# Please see https://i3wm.org/docs/userguide.html for a complete reference!
-
-set $mod Mod4
-
-# Font for window titles. Will also be used by the bar unless a different font
-# is used in the bar {} block below.
-font pango:monospace 8
-
-# This font is widely installed, provides lots of unicode glyphs, right-to-left
-# text rendering and scalability on retina/hidpi displays (thanks to pango).
-#font pango:DejaVu Sans Mono 8
-
-# The combination of xss-lock, nm-applet and pactl is a popular choice, so
-# they are included here as an example. Modify as you see fit.
-
-# xss-lock grabs a logind suspend inhibit lock and will use i3lock to lock the
-# screen before suspend. Use loginctl lock-session to lock your screen.
-exec --no-startup-id xss-lock --transfer-sleep-lock -- i3lock --nofork
-
-# NetworkManager is the most popular way to manage wireless networks on Linux,
-# and nm-applet is a desktop environment-independent system tray GUI for it.
-exec --no-startup-id nm-applet
-
-# Use pactl to adjust volume in PulseAudio.
-set $refresh_i3status killall -SIGUSR1 i3status
-bindsym XF86AudioRaiseVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ +10% && $refresh_i3status
-bindsym XF86AudioLowerVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ -10% && $refresh_i3status
-bindsym XF86AudioMute exec --no-startup-id pactl set-sink-mute @DEFAULT_SINK@ toggle && $refresh_i3status
-bindsym XF86AudioMicMute exec --no-startup-id pactl set-source-mute @DEFAULT_SOURCE@ toggle && $refresh_i3status
-
-# Use Mouse+$mod to drag floating windows to their wanted position
-floating_modifier $mod
-
-# start a terminal
-#bindsym $mod+Return exec i3-sensible-terminal
-bindsym $mod+Return exec alacritty
-
-# kill focused window
-bindsym $mod+Shift+c kill
-
-# start dmenu (a program launcher)
-#bindsym $mod+d exec dmenu_run
-bindsym $mod+d exec rofi -show drun
-bindsym $mod+f exec firefox
-bindsym $mod+n exec nautilus
-bindsym $mod+t exec gnome-control-center
-bindsym $mod+e exec emacs
-
-# There also is the (new) i3-dmenu-desktop which only displays applications
-# shipping a .desktop file. It is a wrapper around dmenu, so you need that
-# installed.
-# bindsym $mod+d exec --no-startup-id i3-dmenu-desktop
-
-# change focus
-bindsym $mod+h focus left
-bindsym $mod+j focus down
-bindsym $mod+k focus up
-bindsym $mod+l focus right
-
-# move focused window
-bindsym $mod+Shift+h move left
-bindsym $mod+Shift+j move down
-bindsym $mod+Shift+k move up
-bindsym $mod+Shift+l move right
-
-# split in horizontal orientation
-#bindsym $mod+h split h
-
-# split in vertical orientation
-#bindsym $mod+v split v
-
-# enter fullscreen mode for the focused container
-bindsym $mod+space fullscreen toggle
-
-# full screen window change
-bindsym $mod+Control+j exec "i3-msg -t command 'fullscreen disable; focus next; fullscreen enable'"
-bindsym $mod+Control+k exec "i3-msg -t command 'fullscreen disable; focus prev; fullscreen enable'"
-
-# change container layout (stacked, tabbed, toggle split)
-bindsym $mod+Control+s layout stacking
-bindsym $mod+Control+w layout tabbed
-bindsym $mod+Control+e layout toggle split
-
-# toggle tiling / floating
-bindsym $mod+Shift+space floating toggle
-
-# change focus between tiling / floating windows
-#bindsym $mod+space focus mode_toggle
-
-# focus the parent container
-bindsym $mod+a focus parent
-
-# focus the child container
-#bindsym $mod+d focus child
-
-# Define names for default workspaces for which we configure key bindings later on.
-# We use variables to avoid repeating the names in multiple places.
-set $ws1 "1"
-set $ws2 "2"
-set $ws3 "3"
-set $ws4 "4"
-set $ws5 "5"
-set $ws6 "6"
-set $ws7 "7"
-set $ws8 "8"
-set $ws9 "9"
-set $ws10 "10"
-
-# switch to workspace
-bindsym $mod+1 workspace number $ws1
-bindsym $mod+2 workspace number $ws2
-bindsym $mod+3 workspace number $ws3
-bindsym $mod+4 workspace number $ws4
-bindsym $mod+5 workspace number $ws5
-bindsym $mod+6 workspace number $ws6
-bindsym $mod+7 workspace number $ws7
-bindsym $mod+8 workspace number $ws8
-bindsym $mod+9 workspace number $ws9
-bindsym $mod+0 workspace number $ws10
-
-# move focused container to workspace
-bindsym $mod+Shift+1 move container to workspace number $ws1
-bindsym $mod+Shift+2 move container to workspace number $ws2
-bindsym $mod+Shift+3 move container to workspace number $ws3
-bindsym $mod+Shift+4 move container to workspace number $ws4
-bindsym $mod+Shift+5 move container to workspace number $ws5
-bindsym $mod+Shift+6 move container to workspace number $ws6
-bindsym $mod+Shift+7 move container to workspace number $ws7
-bindsym $mod+Shift+8 move container to workspace number $ws8
-bindsym $mod+Shift+9 move container to workspace number $ws9
-bindsym $mod+Shift+0 move container to workspace number $ws10
-
-# reload the configuration file
-bindsym $mod+Shift+q reload
-# restart i3 inplace (preserves your layout/session, can be used to upgrade i3)
-bindsym $mod+Shift+r restart
-# exit i3 (logs you out of your X session)
-bindsym $mod+Shift+e exec "i3-nagbar -t warning -m 'You pressed the exit shortcut. Do you really want to exit i3? This will end your X session.' -B 'Yes, exit i3' 'i3-msg exit'"
-
-
-# Need for i3-gaps
-for_window [class="^.*"] border pixel 5
-for_window [class="alacritty"] border pixel 0
-for_window [class="Org.gnome.Nautilus"] border pixel 0
-
-smart_gaps on
-smart_borders on
-
-gaps inner 5
-
-set $bg-color #2f343f
-set $inactive-bg-color #2f343f
-set $text-color #f3f4f5
-set $inactive-text-color #676E7D
-set $urgent-bg-color #E53935
-
-# class border backgr. text indicator child_border
-client.focused #4545a8 #4545a8 #ffffff #752b30 #4545a8
-client.focused_inactive #617d9e #617d9e #ffffff #424f5f #617d9e
-client.unfocused #424f5f #424f5f #83a5bc #424f5f #424f5f
-
-exec_always picom
-exec_always feh --bg-fill /home/jaeus/wallpaper/colony.jpg
-
-#exec_always --no-startup-id $HOME/.config/polybar/launch.sh
-# Start i3bar to display a workspace bar (plus the system information i3status
-# finds out, if available)
-bar {
- status_command i3status
-}
diff --git a/.config/nushell/config.nu b/.config/nushell/config.nu
deleted file mode 100644
index bccff8b..0000000
--- a/.config/nushell/config.nu
+++ /dev/null
@@ -1,672 +0,0 @@
-# Nushell Config File
-
-module completions {
- # Custom completions for external commands (those outside of Nushell)
- # Each completions has two parts: the form of the external command, including its flags and parameters
- # and a helper command that knows how to complete values for those flags and parameters
- #
- # This is a simplified version of completions for git branches and git remotes
- def "nu-complete git branches" [] {
- ^git branch | lines | each { |line| $line | str replace '[\*\+] ' '' | str trim }
- }
-
- def "nu-complete git remotes" [] {
- ^git remote | lines | each { |line| $line | str trim }
- }
-
- # Download objects and refs from another repository
- export extern "git fetch" [
- repository?: string@"nu-complete git remotes" # name of the repository to fetch
- branch?: string@"nu-complete git branches" # name of the branch to fetch
- --all # Fetch all remotes
- --append(-a) # Append ref names and object names to .git/FETCH_HEAD
- --atomic # Use an atomic transaction to update local refs.
- --depth: int # Limit fetching to n commits from the tip
- --deepen: int # Limit fetching to n commits from the current shallow boundary
- --shallow-since: string # Deepen or shorten the history by date
- --shallow-exclude: string # Deepen or shorten the history by branch/tag
- --unshallow # Fetch all available history
- --update-shallow # Update .git/shallow to accept new refs
- --negotiation-tip: string # Specify which commit/glob to report while fetching
- --negotiate-only # Do not fetch, only print common ancestors
- --dry-run # Show what would be done
- --write-fetch-head # Write fetched refs in FETCH_HEAD (default)
- --no-write-fetch-head # Do not write FETCH_HEAD
- --force(-f) # Always update the local branch
- --keep(-k) # Keep downloaded pack
- --multiple # Allow several arguments to be specified
- --auto-maintenance # Run 'git maintenance run --auto' at the end (default)
- --no-auto-maintenance # Don't run 'git maintenance' at the end
- --auto-gc # Run 'git maintenance run --auto' at the end (default)
- --no-auto-gc # Don't run 'git maintenance' at the end
- --write-commit-graph # Write a commit-graph after fetching
- --no-write-commit-graph # Don't write a commit-graph after fetching
- --prefetch # Place all refs into the refs/prefetch/ namespace
- --prune(-p) # Remove obsolete remote-tracking references
- --prune-tags(-P) # Remove any local tags that do not exist on the remote
- --no-tags(-n) # Disable automatic tag following
- --refmap: string # Use this refspec to map the refs to remote-tracking branches
- --tags(-t) # Fetch all tags
- --recurse-submodules: string # Fetch new commits of populated submodules (yes/on-demand/no)
- --jobs(-j): int # Number of parallel children
- --no-recurse-submodules # Disable recursive fetching of submodules
- --set-upstream # Add upstream (tracking) reference
- --submodule-prefix: string # Prepend to paths printed in informative messages
- --upload-pack: string # Non-default path for remote command
- --quiet(-q) # Silence internally used git commands
- --verbose(-v) # Be verbose
- --progress # Report progress on stderr
- --server-option(-o): string # Pass options for the server to handle
- --show-forced-updates # Check if a branch is force-updated
- --no-show-forced-updates # Don't check if a branch is force-updated
- -4 # Use IPv4 addresses, ignore IPv6 addresses
- -6 # Use IPv6 addresses, ignore IPv4 addresses
- --help # Display the help message for this command
- ]
-
- # Check out git branches and files
- export extern "git checkout" [
- ...targets: string@"nu-complete git branches" # name of the branch or files to checkout
- --conflict: string # conflict style (merge or diff3)
- --detach(-d) # detach HEAD at named commit
- --force(-f) # force checkout (throw away local modifications)
- --guess # second guess 'git checkout ' (default)
- --ignore-other-worktrees # do not check if another worktree is holding the given ref
- --ignore-skip-worktree-bits # do not limit pathspecs to sparse entries only
- --merge(-m) # perform a 3-way merge with the new branch
- --orphan: string # new unparented branch
- --ours(-2) # checkout our version for unmerged files
- --overlay # use overlay mode (default)
- --overwrite-ignore # update ignored files (default)
- --patch(-p) # select hunks interactively
- --pathspec-from-file: string # read pathspec from file
- --progress # force progress reporting
- --quiet(-q) # suppress progress reporting
- --recurse-submodules: string # control recursive updating of submodules
- --theirs(-3) # checkout their version for unmerged files
- --track(-t) # set upstream info for new branch
- -b: string # create and checkout a new branch
- -B: string # create/reset and checkout a branch
- -l # create reflog for new branch
- --help # Display the help message for this command
- ]
-
- # Push changes
- export extern "git push" [
- remote?: string@"nu-complete git remotes", # the name of the remote
- ...refs: string@"nu-complete git branches" # the branch / refspec
- --all # push all refs
- --atomic # request atomic transaction on remote side
- --delete(-d) # delete refs
- --dry-run(-n) # dry run
- --exec: string # receive pack program
- --follow-tags # push missing but relevant tags
- --force(-f) # force updates
- --ipv4(-4) # use IPv4 addresses only
- --ipv6(-6) # use IPv6 addresses only
- --mirror # mirror all refs
- --no-verify # bypass pre-push hook
- --porcelain # machine-readable output
- --progress # force progress reporting
- --prune # prune locally removed refs
- --push-option(-o): string # option to transmit
- --quiet(-q) # be more quiet
- --receive-pack: string # receive pack program
- --recurse-submodules: string # control recursive pushing of submodules
- --repo: string # repository
- --set-upstream(-u) # set upstream for git pull/status
- --signed: string # GPG sign the push
- --tags # push tags (can't be used with --all or --mirror)
- --thin # use thin pack
- --verbose(-v) # be more verbose
- --help # Display the help message for this command
- ]
-}
-
-# Get just the extern definitions without the custom completion commands
-use completions *
-
-# For more information on themes, see
-# https://www.nushell.sh/book/coloring_and_theming.html
-let dark_theme = {
- # color for nushell primitives
- separator: white
- leading_trailing_space_bg: { attr: n } # no fg, no bg, attr none effectively turns this off
- header: green_bold
- empty: blue
- # Closures can be used to choose colors for specific values.
- # The value (in this case, a bool) is piped into the closure.
- bool: { if $in { 'light_cyan' } else { 'light_gray' } }
- int: white
- filesize: {|e|
- if $e == 0b {
- 'white'
- } else if $e < 1mb {
- 'cyan'
- } else { 'blue' }
- }
- duration: white
- date: { (date now) - $in |
- if $in < 1hr {
- '#e61919'
- } else if $in < 6hr {
- '#e68019'
- } else if $in < 1day {
- '#e5e619'
- } else if $in < 3day {
- '#80e619'
- } else if $in < 1wk {
- '#19e619'
- } else if $in < 6wk {
- '#19e5e6'
- } else if $in < 52wk {
- '#197fe6'
- } else { 'light_gray' }
- }
- range: white
- float: white
- string: white
- nothing: white
- binary: white
- cellpath: white
- row_index: green_bold
- record: white
- list: white
- block: white
- hints: gray
-
- shape_and: purple_bold
- shape_binary: purple_bold
- shape_block: blue_bold
- shape_bool: light_cyan
- shape_custom: green
- shape_datetime: cyan_bold
- shape_directory: cyan
- shape_external: cyan
- shape_externalarg: green_bold
- shape_filepath: cyan
- shape_flag: blue_bold
- shape_float: purple_bold
- # shapes are used to change the cli syntax highlighting
- shape_garbage: { fg: "#FFFFFF" bg: "#FF0000" attr: b}
- shape_globpattern: cyan_bold
- shape_int: purple_bold
- shape_internalcall: cyan_bold
- shape_list: cyan_bold
- shape_literal: blue
- shape_matching_brackets: { attr: u }
- shape_nothing: light_cyan
- shape_operator: yellow
- shape_or: purple_bold
- shape_pipe: purple_bold
- shape_range: yellow_bold
- shape_record: cyan_bold
- shape_redirection: purple_bold
- shape_signature: green_bold
- shape_string: green
- shape_string_interpolation: cyan_bold
- shape_table: blue_bold
- shape_variable: purple
-}
-
-let light_theme = {
- # color for nushell primitives
- separator: dark_gray
- leading_trailing_space_bg: { attr: n } # no fg, no bg, attr none effectively turns this off
- header: green_bold
- empty: blue
- # Closures can be used to choose colors for specific values.
- # The value (in this case, a bool) is piped into the closure.
- bool: { if $in { 'dark_cyan' } else { 'dark_gray' } }
- int: dark_gray
- filesize: {|e|
- if $e == 0b {
- 'dark_gray'
- } else if $e < 1mb {
- 'cyan_bold'
- } else { 'blue_bold' }
- }
- duration: dark_gray
- date: { (date now) - $in |
- if $in < 1hr {
- 'red3b'
- } else if $in < 6hr {
- 'orange3'
- } else if $in < 1day {
- 'yellow3b'
- } else if $in < 3day {
- 'chartreuse2b'
- } else if $in < 1wk {
- 'green3b'
- } else if $in < 6wk {
- 'darkturquoise'
- } else if $in < 52wk {
- 'deepskyblue3b'
- } else { 'dark_gray' }
- }
- range: dark_gray
- float: dark_gray
- string: dark_gray
- nothing: dark_gray
- binary: dark_gray
- cellpath: dark_gray
- row_index: green_bold
- record: white
- list: white
- block: white
- hints: dark_gray
-
- shape_and: purple_bold
- shape_binary: purple_bold
- shape_block: blue_bold
- shape_bool: light_cyan
- shape_custom: green
- shape_datetime: cyan_bold
- shape_directory: cyan
- shape_external: cyan
- shape_externalarg: green_bold
- shape_filepath: cyan
- shape_flag: blue_bold
- shape_float: purple_bold
- # shapes are used to change the cli syntax highlighting
- shape_garbage: { fg: "#FFFFFF" bg: "#FF0000" attr: b}
- shape_globpattern: cyan_bold
- shape_int: purple_bold
- shape_internalcall: cyan_bold
- shape_list: cyan_bold
- shape_literal: blue
- shape_matching_brackets: { attr: u }
- shape_nothing: light_cyan
- shape_operator: yellow
- shape_or: purple_bold
- shape_pipe: purple_bold
- shape_range: yellow_bold
- shape_record: cyan_bold
- shape_redirection: purple_bold
- shape_signature: green_bold
- shape_string: green
- shape_string_interpolation: cyan_bold
- shape_table: blue_bold
- shape_variable: purple
-}
-
-# External completer example
-# let carapace_completer = {|spans|
-# carapace $spans.0 nushell $spans | from json
-# }
-let fish_completer = {|spans|
- fish --command $'complete "--do-complete=($spans | str join " ")"' | str trim | split row "\n" | each { |line| $line | split column "\t" value description } | flatten
-}
-
-# The default config record. This is where much of your global configuration is setup.
-let-env config = {
- ls: {
- use_ls_colors: true # use the LS_COLORS environment variable to colorize output
- clickable_links: true # enable or disable clickable links. Your terminal has to support links.
- }
- rm: {
- always_trash: false # always act as if -t was given. Can be overridden with -p
- }
- cd: {
- abbreviations: false # allows `cd s/o/f` to expand to `cd some/other/folder`
- }
- table: {
- mode: rounded # basic, compact, compact_double, light, thin, with_love, rounded, reinforced, heavy, none, other
- index_mode: always # "always" show indexes, "never" show indexes, "auto" = show indexes when a table has "index" column
- trim: {
- methodology: wrapping # wrapping or truncating
- wrapping_try_keep_words: true # A strategy used by the 'wrapping' methodology
- truncating_suffix: "..." # A suffix used by the 'truncating' methodology
- }
- }
-
- explore: {
- help_banner: true
- exit_esc: true
-
- command_bar_text: '#C4C9C6'
- # command_bar: {fg: '#C4C9C6' bg: '#223311' }
-
- status_bar_background: {fg: '#1D1F21' bg: '#C4C9C6' }
- # status_bar_text: {fg: '#C4C9C6' bg: '#223311' }
-
- highlight: {bg: 'yellow' fg: 'black' }
-
- status: {
- # warn: {bg: 'yellow', fg: 'blue'}
- # error: {bg: 'yellow', fg: 'blue'}
- # info: {bg: 'yellow', fg: 'blue'}
- }
-
- try: {
- # border_color: 'red'
- # highlighted_color: 'blue'
-
- # reactive: false
- }
-
- table: {
- split_line: '#404040'
-
- cursor: true
-
- line_index: true
- line_shift: true
- line_head_top: true
- line_head_bottom: true
-
- show_head: true
- show_index: true
-
- # selected_cell: {fg: 'white', bg: '#777777'}
- # selected_row: {fg: 'yellow', bg: '#C1C2A3'}
- # selected_column: blue
-
- # padding_column_right: 2
- # padding_column_left: 2
-
- # padding_index_left: 2
- # padding_index_right: 1
- }
-
- config: {
- cursor_color: {bg: 'yellow' fg: 'black' }
-
- # border_color: white
- # list_color: green
- }
- }
-
- history: {
- max_size: 10000 # Session has to be reloaded for this to take effect
- sync_on_enter: true # Enable to share history between multiple sessions, else you have to close the session to write history to file
- file_format: "plaintext" # "sqlite" or "plaintext"
- }
- completions: {
- case_sensitive: false # set to true to enable case-sensitive completions
- quick: true # set this to false to prevent auto-selecting completions when only one remains
- partial: true # set this to false to prevent partial filling of the prompt
- algorithm: "prefix" # prefix or fuzzy
- external: {
- enable: true # set to false to prevent nushell looking into $env.PATH to find more suggestions, `false` recommended for WSL users as this look up my be very slow
- max_results: 100 # setting it lower can improve completion performance at the cost of omitting some options
- completer: null # check 'carapace_completer' above as an example
- }
- }
- filesize: {
- metric: true # true => KB, MB, GB (ISO standard), false => KiB, MiB, GiB (Windows standard)
- format: "auto" # b, kb, kib, mb, mib, gb, gib, tb, tib, pb, pib, eb, eib, zb, zib, auto
- }
- color_config: $dark_theme # if you want a light theme, replace `$dark_theme` to `$light_theme`
- use_grid_icons: true
- footer_mode: "25" # always, never, number_of_rows, auto
- float_precision: 2
- # buffer_editor: "emacs" # command that will be used to edit the current line buffer with ctrl+o, if unset fallback to $env.EDITOR and $env.VISUAL
- use_ansi_coloring: true
- edit_mode: emacs # emacs, vi
- shell_integration: true # enables terminal markers and a workaround to arrow keys stop working issue
- show_banner: false # true or false to enable or disable the banner
- render_right_prompt_on_last_line: false # true or false to enable or disable right prompt to be rendered on last line of the prompt.
-
- hooks: {
- pre_prompt: [{
- null # replace with source code to run before the prompt is shown
- }]
- pre_execution: [{
- null # replace with source code to run before the repl input is run
- }]
- env_change: {
- PWD: [{|before, after|
- null # replace with source code to run if the PWD environment is different since the last repl input
- }]
- }
- display_output: {
- if (term size).columns >= 100 { table -e } else { table }
- }
- }
- menus: [
- # Configuration for default nushell menus
- # Note the lack of source parameter
- {
- name: completion_menu
- only_buffer_difference: false
- marker: "| "
- type: {
- layout: columnar
- columns: 4
- col_width: 20 # Optional value. If missing all the screen width is used to calculate column width
- col_padding: 2
- }
- style: {
- text: green
- selected_text: green_reverse
- description_text: yellow
- }
- }
- {
- name: history_menu
- only_buffer_difference: true
- marker: "? "
- type: {
- layout: list
- page_size: 10
- }
- style: {
- text: green
- selected_text: green_reverse
- description_text: yellow
- }
- }
- {
- name: help_menu
- only_buffer_difference: true
- marker: "? "
- type: {
- layout: description
- columns: 4
- col_width: 20 # Optional value. If missing all the screen width is used to calculate column width
- col_padding: 2
- selection_rows: 4
- description_rows: 10
- }
- style: {
- text: green
- selected_text: green_reverse
- description_text: yellow
- }
- }
- # Example of extra menus created using a nushell source
- # Use the source field to create a list of records that populates
- # the menu
- {
- name: commands_menu
- only_buffer_difference: false
- marker: "# "
- type: {
- layout: columnar
- columns: 4
- col_width: 20
- col_padding: 2
- }
- style: {
- text: green
- selected_text: green_reverse
- description_text: yellow
- }
- source: { |buffer, position|
- $nu.scope.commands
- | where name =~ $buffer
- | each { |it| {value: $it.name description: $it.usage} }
- }
- }
- {
- name: vars_menu
- only_buffer_difference: true
- marker: "# "
- type: {
- layout: list
- page_size: 10
- }
- style: {
- text: green
- selected_text: green_reverse
- description_text: yellow
- }
- source: { |buffer, position|
- $nu.scope.vars
- | where name =~ $buffer
- | sort-by name
- | each { |it| {value: $it.name description: $it.type} }
- }
- }
- {
- name: commands_with_description
- only_buffer_difference: true
- marker: "# "
- type: {
- layout: description
- columns: 4
- col_width: 20
- col_padding: 2
- selection_rows: 4
- description_rows: 10
- }
- style: {
- text: green
- selected_text: green_reverse
- description_text: yellow
- }
- source: { |buffer, position|
- $nu.scope.commands
- | where name =~ $buffer
- | each { |it| {value: $it.name description: $it.usage} }
- }
- }
- ]
- keybindings: [
- {
- name: completion_menu
- modifier: none
- keycode: tab
- mode: [emacs vi_normal vi_insert]
- event: {
- until: [
- { send: menu name: completion_menu }
- { send: menunext }
- ]
- }
- }
- {
- name: completion_previous
- modifier: shift
- keycode: backtab
- mode: [emacs, vi_normal, vi_insert] # Note: You can add the same keybinding to all modes by using a list
- event: { send: menuprevious }
- }
- {
- name: history_menu
- modifier: control
- keycode: char_r
- mode: emacs
- event: { send: menu name: history_menu }
- }
- {
- name: next_page
- modifier: control
- keycode: char_x
- mode: emacs
- event: { send: menupagenext }
- }
- {
- name: undo_or_previous_page
- modifier: control
- keycode: char_z
- mode: emacs
- event: {
- until: [
- { send: menupageprevious }
- { edit: undo }
- ]
- }
- }
- {
- name: yank
- modifier: control
- keycode: char_y
- mode: emacs
- event: {
- until: [
- {edit: pastecutbufferafter}
- ]
- }
- }
- {
- name: unix-line-discard
- modifier: control
- keycode: char_u
- mode: [emacs, vi_normal, vi_insert]
- event: {
- until: [
- {edit: cutfromlinestart}
- ]
- }
- }
- {
- name: kill-line
- modifier: control
- keycode: char_k
- mode: [emacs, vi_normal, vi_insert]
- event: {
- until: [
- {edit: cuttolineend}
- ]
- }
- }
- # Keybindings used to trigger the user defined menus
- {
- name: commands_menu
- modifier: control
- keycode: char_t
- mode: [emacs, vi_normal, vi_insert]
- event: { send: menu name: commands_menu }
- }
- {
- name: vars_menu
- modifier: alt
- keycode: char_o
- mode: [emacs, vi_normal, vi_insert]
- event: { send: menu name: vars_menu }
- }
- {
- name: commands_with_description
- modifier: control
- keycode: char_s
- mode: [emacs, vi_normal, vi_insert]
- event: { send: menu name: commands_with_description }
- }
- ]
-}
-
-alias ll = ls -al
-alias emd = emacs --daemon
-alias emdk = emacsclient --eval '(kill-emacs)'
-alias em = emacsclient -c -a 'emacs'
-alias emt = emacsclient -c -a 'emacs -nw'
-alias emtangle = emacs --batch -eval "(require 'org)" --eval '(org-babel-tangle-file "~/.config/emacs/emacs.org")'
-alias startsv = ssh odroid startsv
-alias stopsv = ssh odroid stopsv
-alias cat = bat
-#alias gpulls = enter ~/.config/emacs; git pull; enter ~/org; git pull; exit; exit
-
-alias vi = nvim
-
-let vether_ip = (cat /etc/resolv.conf | grep nameserver | tr -s ' ' | cut -d ' ' -f2) + ":10"
-let-env DISPLAY = $vether_ip
-let-env PYTHONSTARTUP = $env.HOME + "/scripts/my_imports.py"
-
-
-
-source ~/.cache/starship/init.nu
-source ~/.local/share/atuin/init.nu
-#let hostname = (cat /etc/hostname)
-#figlet -w 100 $hostname
diff --git a/.config/nushell/env.nu b/.config/nushell/env.nu
deleted file mode 100644
index 8fb27b0..0000000
--- a/.config/nushell/env.nu
+++ /dev/null
@@ -1,66 +0,0 @@
-# Nushell Environment Config File
-
-def create_left_prompt [] {
- let path_segment = if (is-admin) {
- $"(ansi red_bold)($env.PWD)"
- } else {
- $"(ansi green_bold)($env.PWD)"
- }
-
- $path_segment
-}
-
-def create_right_prompt [] {
- let time_segment = ([
- (date now | date format '%m/%d/%Y %r')
- ] | str join)
-
- $time_segment
-}
-
-# Use nushell functions to define your right and left prompt
-let-env PROMPT_COMMAND = { create_left_prompt }
-let-env PROMPT_COMMAND_RIGHT = { create_right_prompt }
-
-# The prompt indicators are environmental variables that represent
-# the state of the prompt
-let-env PROMPT_INDICATOR = { "〉" }
-let-env PROMPT_INDICATOR_VI_INSERT = { ": " }
-let-env PROMPT_INDICATOR_VI_NORMAL = { "〉" }
-let-env PROMPT_MULTILINE_INDICATOR = { "::: " }
-
-# Specifies how environment variables are:
-# - converted from a string to a value on Nushell startup (from_string)
-# - converted from a value back to a string when running external commands (to_string)
-# Note: The conversions happen *after* config.nu is loaded
-let-env ENV_CONVERSIONS = {
- "PATH": {
- from_string: { |s| $s | split row (char esep) | path expand -n }
- to_string: { |v| $v | path expand -n | str join (char esep) }
- }
- "Path": {
- from_string: { |s| $s | split row (char esep) | path expand -n }
- to_string: { |v| $v | path expand -n | str join (char esep) }
- }
-}
-
-# Directories to search for scripts when calling source or use
-#
-# By default, /scripts is added
-let-env NU_LIB_DIRS = [
- ($nu.config-path | path dirname | path join 'scripts')
-]
-
-# Directories to search for plugin binaries when calling register
-#
-# By default, /plugins is added
-let-env NU_PLUGIN_DIRS = [
- ($nu.config-path | path dirname | path join 'plugins')
-]
-
-# To add entries to PATH (on Windows you might use Path), you can use the following pattern:
-# let-env PATH = ($env.PATH | split row (char esep) | prepend '/some/path')
-
-mkdir ~/.cache/starship
-starship init nu | save -f ~/.cache/starship/init.nu
-
diff --git a/.config/rofi/config.rasi b/.config/rofi/config.rasi
deleted file mode 100644
index 17c3e44..0000000
--- a/.config/rofi/config.rasi
+++ /dev/null
@@ -1,9 +0,0 @@
-/* Rofi config file */
-configuration {
- lines: 12;
- font: "hack 10";
- show-icons: true;
- theme: "~/.config/rofi/themes/onedark";
- display-window: "Window";
- display-drun: "Search";
-}
diff --git a/.config/rofi/themes/material.rasi b/.config/rofi/themes/material.rasi
deleted file mode 100644
index c2a1b18..0000000
--- a/.config/rofi/themes/material.rasi
+++ /dev/null
@@ -1,131 +0,0 @@
-/*
- * ROFI color theme
- *
- * Based on Base16 Material Color Scheme (https://github.com/ntpeters/base16-materialtheme-scheme)
- *
- * User: Tomaszal
- * Copyright: Tomas Zaluckij
- */
-
-* {
- base00: #263238;
- base01: #2E3C43;
- base02: #314549;
- base03: #546E7A;
- base04: #B2CCD6;
- base05: #EEFFFF;
- base06: #EEFFFF;
- base07: #FFFFFF;
- base08: #F07178;
- base09: #F78C6C;
- base0A: #FFCB6B;
- base0B: #C3E88D;
- base0C: #89DDFF;
- base0D: #82AAFF;
- base0E: #C792EA;
- base0F: #FF5370;
-
- /*base0D: #00BCD4;*/
-
- spacing: 0;
- background-color: transparent;
-
- font: "Roboto Mono 13";
-}
-
-window {
- transparency: "real";
- /*fullscreen: true;*/
- background-color: #263238CC; /*base00 + CC (80% opacity)*/
-}
-
-mainbox {
- children: [inputbar, message, mode-switcher, listview];
- spacing: 30px;
- /*margin: 20%;*/
- padding: 30px 0;
- border: 1px;
- border-color: @base0D;
-}
-
-inputbar {
- padding: 0 30px;
- children: [prompt, textbox-prompt-colon, entry, case-indicator];
-}
-
-prompt {
- text-color: @base0D;
-}
-
-textbox-prompt-colon {
- expand: false;
- str: ":";
- margin: 0 1ch 0 0;
- text-color: @base0D;
-}
-
-entry {
- text-color: @base07;
-}
-
-case-indicator {
- text-color: @base0F;
-}
-
-mode-switcher, message {
- border: 1px 0;
- border-color: @base0D;
-}
-
-button, textbox {
- background-color: @base03;
- text-color: @base07;
- padding: 5px;
-}
-
-button selected {
- background-color: @base0D;
-}
-
-listview {
- scrollbar: true;
- margin: 0 10px 0 30px;
-}
-
-scrollbar {
- background-color: @base03;
- handle-color: @base0D;
- handle-width: 10px;
- border: 0 1px;
- border-color: @base0D;
- margin: 0 0 0 20px;
-}
-
-element {
- padding: 5px;
- highlight: bold underline;
-}
-
-element normal {
- background-color: transparent;
-}
-
-element selected {
- background-color: @base0D;
-}
-
-element alternate {
- /*background-color: @base03;*/
-}
-
-element normal normal, element selected normal, element alternate normal {
- text-color: @base07;
-}
-
-element normal urgent, element selected urgent, element alternate urgent {
- text-color: @base0F;
-}
-
-element normal active, element selected active, element alternate active {
- text-color: @base0B;
-}
diff --git a/.config/rofi/themes/onedark.rasi b/.config/rofi/themes/onedark.rasi
deleted file mode 100644
index 22e3693..0000000
--- a/.config/rofi/themes/onedark.rasi
+++ /dev/null
@@ -1,101 +0,0 @@
-/*
- * ROFI One Dark
- *
- * Based on OneDark.vim (https://github.com/joshdick/onedark.vim)
- *
- * Author: Benjamin Stauss
- * User: me-benni
- *
- */
-
-
-* {
- black: #000000;
- red: #eb6e67;
- green: #95ee8f;
- yellow: #f8c456;
- blue: #6eaafb;
- mangenta: #d886f3;
- cyan: #6cdcf7;
- emphasis: #50536b;
- text: #dfdfdf;
- text-alt: #b2b2b2;
- fg: #abb2bf;
- bg: #282c34;
-
- spacing: 0;
- background-color: transparent;
-
- font: "Fira Code 12";
- text-color: @text;
-}
-
-window {
- transparency: "real";
- fullscreen: true;
- background-color: #282c34dd;
- border: 0px;
-}
-
-mainbox {
- padding: 30% 30%;
-}
-
-inputbar {
- margin: 0px 0px 20px 0px;
- children: [prompt, textbox-prompt-colon, entry, case-indicator];
-}
-
-prompt {
- text-color: @blue;
-}
-
-textbox-prompt-colon {
- expand: false;
- str: ":";
- text-color: @text-alt;
-}
-
-entry {
- margin: 0px 10px;
-}
-
-listview {
- spacing: 5px;
- dynamic: true;
- scrollbar: false;
-}
-
-element {
- padding: 5px;
- text-color: @text-alt;
- highlight: bold #95ee8f; /* green */
- border-radius: 3px;
-}
-
-element selected {
- background-color: @emphasis;
- text-color: @text;
-}
-
-element urgent, element selected urgent {
- text-color: @red;
-}
-
-element active, element selected active {
- text-color: @purple;
-}
-
-message {
- padding: 5px;
- border-radius: 3px;
- background-color: @emphasis;
- border: 1px;
- border-color: @cyan;
-}
-
-button selected {
- padding: 5px;
- border-radius: 3px;
- background-color: @emphasis;
-}
diff --git a/.config/rofi/themes/oxide.rasi b/.config/rofi/themes/oxide.rasi
deleted file mode 100644
index e6826bf..0000000
--- a/.config/rofi/themes/oxide.rasi
+++ /dev/null
@@ -1,170 +0,0 @@
-/**
- * Oxide Color theme
- * Author: Diki Ananta
- * Repository: https://github.com/dikiaap/dotfiles
- * License: MIT
- **/
-* {
- selected-normal-foreground: var(lightfg);
- foreground: rgba ( 196, 202, 212, 100 % );
- normal-foreground: var(foreground);
- alternate-normal-background: rgba ( 42, 42, 42, 100 % );
- red: rgba ( 194, 65, 65, 100 % );
- selected-urgent-foreground: var(lightfg);
- blue: rgba ( 43, 131, 166, 100 % );
- urgent-foreground: var(lightfg);
- alternate-urgent-background: var(red);
- active-foreground: var(lightfg);
- lightbg: var(foreground);
- selected-active-foreground: var(lightfg);
- alternate-active-background: var(blue);
- background: rgba ( 33, 33, 33, 100 % );
- alternate-normal-foreground: var(foreground);
- normal-background: var(background);
- lightfg: rgba ( 249, 249, 249, 100 % );
- selected-normal-background: rgba ( 90, 90, 90, 100 % );
- separatorcolor: rgba ( 183, 183, 183, 100 % );
- spacing: 2;
- border-color: var(foreground);
- urgent-background: var(red);
- alternate-active-foreground: var(active-foreground);
- alternate-urgent-foreground: var(urgent-foreground);
- background-color: rgba ( 0, 0, 0, 0 % );
- selected-urgent-background: rgba ( 214, 78, 78, 100 % );
- active-background: var(blue);
- selected-active-background: rgba ( 39, 141, 182, 100 % );
-}
-element {
- border: 0;
- spacing: 4px;
- padding: 1px;
-}
-element normal.normal {
- background-color: var(normal-background);
- text-color: var(normal-foreground);
-}
-element normal.urgent {
- background-color: var(urgent-background);
- text-color: var(urgent-foreground);
-}
-element normal.active {
- background-color: var(active-background);
- text-color: var(active-foreground);
-}
-element selected.normal {
- background-color: var(selected-normal-background);
- text-color: var(selected-normal-foreground);
-}
-element selected.urgent {
- background-color: var(selected-urgent-background);
- text-color: var(selected-urgent-foreground);
-}
-element selected.active {
- background-color: var(selected-active-background);
- text-color: var(selected-active-foreground);
-}
-element alternate.normal {
- background-color: var(alternate-normal-background);
- text-color: var(alternate-normal-foreground);
-}
-element alternate.urgent {
- background-color: var(alternate-urgent-background);
- text-color: var(alternate-urgent-foreground);
-}
-element alternate.active {
- background-color: var(alternate-active-background);
- text-color: var(alternate-active-foreground);
-}
-element-text {
- background-color: rgba ( 0, 0, 0, 0 % );
- highlight: inherit;
- text-color: inherit;
-}
-element-icon {
- background-color: rgba ( 0, 0, 0, 0 % );
- size: 21px;
- text-color: inherit;
-}
-window {
- background-color: var(background);
- border: 0;
- padding: 8;
-}
-mainbox {
- border: 0;
- padding: 0;
-}
-message {
- border: 2px dash 0px 0px;
- border-color: var(separatorcolor);
- padding: 1px;
-}
-textbox {
- text-color: var(foreground);
-}
-listview {
- fixed-height: 0;
- border: 0;
- border-color: var(separatorcolor);
- spacing: 2px;
- scrollbar: true;
- padding: 2px 0px 0px;
-}
-scrollbar {
- width: 4px;
- border: 0;
- handle-color: rgba ( 85, 85, 85, 100 % );
- handle-width: 8px;
- padding: 0;
-}
-sidebar {
- border: 2px dash 0px 0px;
- border-color: var(separatorcolor);
-}
-button {
- spacing: 0;
- text-color: var(normal-foreground);
-}
-button selected {
- background-color: var(selected-normal-background);
- text-color: var(selected-normal-foreground);
-}
-num-filtered-rows {
- expand: false;
- text-color: rgba ( 128, 128, 128, 100 % );
-}
-num-rows {
- expand: false;
- text-color: rgba ( 128, 128, 128, 100 % );
-}
-textbox-num-sep {
- expand: false;
- str: "/";
- text-color: rgba ( 128, 128, 128, 100 % );
-}
-inputbar {
- spacing: 0px;
- text-color: var(normal-foreground);
- padding: 1px;
- children: [ prompt,textbox-prompt-colon,entry,overlay,case-indicator ];
-}
-case-indicator {
- spacing: 0;
- text-color: var(normal-foreground);
-}
-entry {
- placeholder: "";
- spacing: 0;
- text-color: var(normal-foreground);
- placeholder-color: rgba ( 128, 128, 128, 100 % );
-}
-prompt {
- spacing: 0;
- text-color: var(normal-foreground);
-}
-textbox-prompt-colon {
- expand: false;
- str: ":";
- margin: 0px 0.3000em 0.0000em 0.0000em;
- text-color: inherit;
-}
diff --git a/.config/xmobar/get_workspace_exwm.py b/.config/xmobar/get_workspace_exwm.py
deleted file mode 100644
index 0c577e1..0000000
--- a/.config/xmobar/get_workspace_exwm.py
+++ /dev/null
@@ -1,48 +0,0 @@
-#!/usr/bin/env python3
-import sys
-import os
-import glob
-import json
-import re
-from kitchen.text.converters import to_bytes, to_unicode
-
-curr = os.popen('xdotool get_desktop').read().strip()
-numtotal = os.popen('xdotool get_num_desktops').read().strip()
-
-curr = int(curr)
-numtotal = int(numtotal)
-
-re_ws = re.compile('\s+')
-
-try:
- wm_info = os.popen('wmctrl -m').readlines()
- wm_name = [x for x in wm_info if 'Name:' in x]
- wm_name = wm_name[0].strip().replace('Name: ', '')
-except:
- exit() # probably no wm
-
-windows = os.popen("wmctrl -l").readlines()
-used_windows = [int(re_ws.split(w)[1]) for w in windows]
-used_windows = set(used_windows)
-
-def xmobar_color(s, col):
- if col is None:
- return str(s)
- else:
- return '{}'.format(col, s)
-
-out = []
-for i in range(int(numtotal)):
- if i == curr:
- # col = "#c84c00"
- col = "#e67128"
- elif i in used_windows:
- col = None
- else:
- col = "#606060"
- # if wm_name == 'LG3D' or wm_name == 'EXWM': # xmonad
- index = (i+1) % 10
- s = xmobar_color(index, col)
- out.append(s)
-
-print(' '.join(out))
diff --git a/.config/xmobar/scripts/battery_icon.sh b/.config/xmobar/scripts/battery_icon.sh
deleted file mode 100755
index 1764f5b..0000000
--- a/.config/xmobar/scripts/battery_icon.sh
+++ /dev/null
@@ -1,12 +0,0 @@
-#!/usr/bin/env bash
-
-STATUS=`cat /sys/class/power_supply/BAT0/status`
-
-if [ $STATUS = "Charging" ]; then
- echo ""
-elif [ $STATUS = "Discharging" ]; then
- echo ""
-else
- echo ""
-fi
-
diff --git a/.config/xmobar/trayer-padding-icon.sh b/.config/xmobar/trayer-padding-icon.sh
deleted file mode 100755
index adee04a..0000000
--- a/.config/xmobar/trayer-padding-icon.sh
+++ /dev/null
@@ -1,48 +0,0 @@
-#!/bin/sh
-# Copied from https://github.com/jaor/xmobar/issues/239#issuecomment-233206552
-# Detects the width of running trayer-srg window (xprop name 'panel')
-# and creates an XPM icon of that width, 1px height, and transparent.
-# Outputs an -tag for use in xmobar to display the generated
-# XPM icon.
-#
-# Run script from xmobar:
-# `Run Com "/where/ever/trayer-padding-icon.sh" [] "trayerpad" 10`
-# and use `%trayerpad%` in your template.
-
-
-# Function to create a transparent Wx1 px XPM icon
-create_xpm_icon () {
- timestamp=$(date)
- pixels=$(for i in `seq $1`; do echo -n "."; done)
-
- cat << EOF > "$2"
-/* XPM *
-static char * trayer_pad_xpm[] = {
-/* This XPM icon is used for padding in xmobar to */
-/* leave room for trayer-srg. It is dynamically */
-/* updated by by trayer-padding-icon.sh which is run */
-/* by xmobar. */
-/* Created: ${timestamp} */
-/* */
-"$1 1 1 1",
-/* Colors (none: transparent) */
-". c none",
-/* Pixels */
-"$pixels"
-};
-EOF
-}
-
-# Width of the trayer window
-width=$(xprop -name panel | grep 'program specified minimum size' | cut -d ' ' -f 5)
-
-# Icon file name
-iconfile="/tmp/trayer-padding-${width}px.xpm"
-
-# If the desired icon does not exist create it
-if [ ! -f $iconfile ]; then
- create_xpm_icon $width $iconfile
-fi
-
-# Output the icon tag for xmobar
-echo ""
diff --git a/.config/xmobar/xmobarrc_desktop_fhd b/.config/xmobar/xmobarrc_desktop_fhd
deleted file mode 100644
index 9dd2a93..0000000
--- a/.config/xmobar/xmobarrc_desktop_fhd
+++ /dev/null
@@ -1,43 +0,0 @@
--- http://projects.haskell.org/xmobar/
--- install xmobar with these flags: --flags="with_alsa" --flags="with_mpd" --flags="with_xft" OR --flags="all_extensions"
--- you can find weather location codes here: http://weather.noaa.gov/index.html
-
-Config { font = "xft:NanumGothic:weight=bold:pixelsize=11:antialias=true:hinting=true"
- , additionalFonts = [ "xft:Mononoki Nerd Font:pixelsize=11:antialias=true:hinting=true"
- , "xft:FontAwesome:pixelsize=12"
- ]
- , bgColor = "#282c34"
- , fgColor = "#ff6c6b"
- , position = Static { xpos = 2560 , ypos = 0, width = 1920, height = 24 }
- , lowerOnStart = True
- , hideOnStart = False
- , allDesktops = True
- , persistent = True
- , iconRoot = "/home/jaeus/.xmonad/" -- default: "."
- , commands = [
- -- Time and date
- Run Date "\xf133 %b %d %Y - (%H:%M) " "date" 50
- -- Network up and down
- , Run Network "enp10s0" ["-t", "\xf0ab kb \xf0aa kb"] 20
- -- Cpu usage in percent
- , Run Cpu ["-t", "\xf108 cpu: (%)","-H","50","--high","red"] 20
- -- Ram used number and percent
- , Run Memory ["-t", "\xf233 mem: M (%)"] 20
- -- Disk space free
- , Run DiskU [("/", "\xf0c7 hdd: free")] [] 60
- -- Runs custom script to check for pacman updates.
- -- This script is in my dotfiles repo in .local/bin.
- , Run Com "~/.local/bin/pacupdate" [] "pacupdate" 36000
- -- Runs a standard shell command 'uname -r' to get kernel version
- , Run Com "uname" ["-r"] "" 3600
- -- Prints out the left side items such as workspaces, layout, etc.
- -- The workspaces are 'clickable' in my configs.
- , Run Com "/bin/sh" [ "-c", "/home/jaeus/.config/xmobar/trayer-padding-icon.sh" ] "trayerpad" 20
- -- Prints out the left side items such as workspaces, layout, etc.
- -- The workspaces are 'clickable' in my configs.
- , Run UnsafeStdinReader
- ]
- , sepChar = "%"
- , alignSep = "}{"
- , template = " | %UnsafeStdinReader% }{ | %uname% | %cpu% | %memory% | %disku% | %enp10s0% | %date% "
- }
diff --git a/.config/xmobar/xmobarrc_desktop_qhd b/.config/xmobar/xmobarrc_desktop_qhd
deleted file mode 100644
index 4dd448a..0000000
--- a/.config/xmobar/xmobarrc_desktop_qhd
+++ /dev/null
@@ -1,52 +0,0 @@
--- http://projects.haskell.org/xmobar/
--- install xmobar with these flags: --flags="with_alsa" --flags="with_mpd" --flags="with_xft" OR --flags="all_extensions"
--- you can find weather location codes here: http://weather.noaa.gov/index.html
-
-Config { -- font = "xft:Noto Sans CJK KR:weight=bold:pixelsize=14:antialias=true:hinting=true"
- -- , additionalFonts = [ "xft:Mononoki Nerd Font:pixelsize=14:antialias=true:hinting=true"
- -- , "xft:FontAwesome:pixelsize=16"
- -- ]
- --font = "xft:DejaVu Sans:size=9.5:antialias=true"
- font = "xft:NanumGothic:weight=bold:pixelsize=14:antialias=true:hinting=true"
- , additionalFonts = [ "xft:Mononoki Nerd Font:pixelsize=11:antialias=true:hinting=true"
- , "xft:FontAwesome:pixelsize=12"
- ]
- , bgColor = "#282c34"
- , fgColor = "#ff6c6b"
- , position = Static { xpos = 0 , ypos = 0, width = 2560, height = 36 }
- , lowerOnStart = True
- , hideOnStart = False
- , allDesktops = True
- , persistent = True
- , iconRoot = "/home/jaeus/.xmonad/" -- default: "."
- , commands = [
- Run Date " %A %B %d %H:%M" "date" 50
- , Run BatteryP ["BAT0"] ["-t", " ()", "-S", "True"
- ,"-L","20","-H","70"
- ,"-l","#ff3333",
- "--normal","#f0c674",
- "--high", "#99cc99" ] 50
- , Run Com "bash" ["/home/jaeus/.config/xmobar/scripts/battery_icon.sh"] "batteryIcon" 50
- -- Time and date
- -- Run Date "\xf133 %b %d %Y - (%H:%M) " "date" 50
- -- Network up and down
- , Run Network "enp10s0" ["-t", "\xf0ab kb \xf0aa kb"] 20
- -- Cpu usage in percent
- , Run Cpu ["-t", "\xf108 (%)","-H","50","--high","red"] 20
- -- Ram used number and percent
- , Run Memory ["-t", "\xf233 M (%)"] 20
- -- Disk space free
- , Run DiskU [("/", "\xf0c7 free")] [] 60
- -- Runs a standard shell command 'uname -r' to get kernel version
- , Run Com "uname" ["-r"] "" 3600
- -- Prints out the left side items such as workspaces, layout, etc.
- -- The workspaces are 'clickable' in my configs.
- , Run Com "/bin/sh" [ "-c", "/home/jaeus/.config/xmobar/trayer-padding-icon.sh" ] "trayerpad" 20
- -- Prints out the left side items such as workspaces, layout, etc.
- -- The workspaces are 'clickable' in my configs.
- , Run UnsafeStdinReader
- ]
- , sepChar = "%"
- , alignSep = "}{"
- , template = " | %UnsafeStdinReader% }{ | %uname% | %cpu% | %memory% | %disku% | %enp10s0% | %date% |%trayerpad%"
- }
\ No newline at end of file
diff --git a/.config/xmobar/xmobarrc_exwm b/.config/xmobar/xmobarrc_exwm
deleted file mode 100644
index 63fc369..0000000
--- a/.config/xmobar/xmobarrc_exwm
+++ /dev/null
@@ -1,44 +0,0 @@
--- http://projects.haskell.org/xmobar/
--- install xmobar with these flags: --flags="with_alsa" --flags="with_mpd" --flags="with_xft" OR --flags="all_extensions"
--- you can find weather location codes here: http://weather.noaa.gov/index.html
-
-Config { font = "xft:NanumGothic:weight=bold:pixelsize=11:antialias=true:hinting=true"
- , additionalFonts = [ "xft:Mononoki Nerd Font:pixelsize=11:antialias=true:hinting=true"
- , "xft:FontAwesome:pixelsize=12"
- ]
- , bgColor = "#282c34"
- , fgColor = "#ff6c6b"
- , position = Static { xpos = 2560 , ypos = 0, width = 1920, height = 24 }
- , lowerOnStart = True
- , hideOnStart = False
- , allDesktops = True
- , persistent = True
- , iconRoot = "/home/jaeus/.xmonad/" -- default: "."
- , commands = [
- -- Time and date
- Run Date "\xf133 %b %d %Y - (%H:%M) " "date" 50
- -- Network up and down
- , Run Network "enp10s0" ["-t", "\xf0ab kb \xf0aa kb"] 20
- -- Cpu usage in percent
- , Run Cpu ["-t", "\xf108 cpu: (%)","-H","50","--high","red"] 20
- -- Ram used number and percent
- , Run Memory ["-t", "\xf233 mem: M (%)"] 20
- -- Disk space free
- , Run DiskU [("/", "\xf0c7 hdd: free")] [] 60
- -- Runs custom script to check for pacman updates.
- -- This script is in my dotfiles repo in .local/bin.
- , Run Com "~/.local/bin/pacupdate" [] "pacupdate" 36000
- -- Runs a standard shell command 'uname -r' to get kernel version
- , Run Com "uname" ["-r"] "" 3600
- -- Prints out the left side items such as workspaces, layout, etc.
- -- The workspaces are 'clickable' in my configs.
- , Run Com "/usr/bin/python3" ["$HOME/.config/xmobar/get_workspace_exwm.py"] "workspaces" 10
- , Run Com "/bin/sh" [ "-c", "/home/jaeus/.config/xmobar/trayer-padding-icon.sh" ] "trayerpad" 20
- -- Prints out the left side items such as workspaces, layout, etc.
- -- The workspaces are 'clickable' in my configs.
- , Run UnsafeStdinReader
- ]
- , sepChar = "%"
- , alignSep = "}{"
- , template = " | %UnsafeStdinReader% }{ | %uname% | %cpu% | %memory% | %disku% | %enp10s0% | %date% "
- }
diff --git a/.config/xmobar/xmobarrc_labtop_fhd b/.config/xmobar/xmobarrc_labtop_fhd
deleted file mode 100644
index 559acaf..0000000
--- a/.config/xmobar/xmobarrc_labtop_fhd
+++ /dev/null
@@ -1,43 +0,0 @@
-Config { font = "xft:NanumGothic:weight=bold:pixelsize=11:antialias=true:hinting=true"
- , additionalFonts = [ "xft:Mononoki Nerd Font:pixelsize=11:antialias=true:hinting=true"
- , "xft:FontAwesome:pixelsize=12"
- ]
- , bgColor = "#282c34"
- , fgColor = "#ff6c6b"
- , position = Static { xpos = 0 , ypos = 0, width = 1920, height = 24 }
- , lowerOnStart = True
- , hideOnStart = False
- , allDesktops = True
- , persistent = True
- , iconRoot = "/home/jaeus/.xmonad/" -- default: "."
- , commands = [
- Run Date " %A %B %d %H:%M" "date" 50
- , Run BatteryP ["BAT0"] ["-t", " ()", "-S", "True"
- ,"-L","20","-H","70"
- ,"-l","#ff3333",
- "--normal","#f0c674",
- "--high", "#99cc99" ] 50
- , Run Com "bash" ["/home/jaeus/.config/xmobar/scripts/battery_icon.sh"] "batteryIcon" 50
- -- Time and date
- -- Run Date "\xf133 %b %d %Y - (%H:%M) " "date" 50
- -- Network up and down
- , Run Network "wlp3s0" ["-t", "\xf0ab kb \xf0aa kb"] 20
- -- Cpu usage in percent
- , Run Cpu ["-t", "\xf108 (%)","-H","50","--high","red"] 20
- -- Ram used number and percent
- , Run Memory ["-t", "\xf233 M (%)"] 20
- -- Disk space free
- , Run DiskU [("/", "\xf0c7 free")] [] 60
- -- Runs a standard shell command 'uname -r' to get kernel version
- , Run Com "uname" ["-r"] "" 3600
- -- Prints out the left side items such as workspaces, layout, etc.
- -- The workspaces are 'clickable' in my configs.
- , Run Com "/bin/sh" [ "-c", "/home/jaeus/.config/xmobar/trayer-padding-icon.sh" ] "trayerpad" 20
- -- Prints out the left side items such as workspaces, layout, etc.
- -- The workspaces are 'clickable' in my configs.
- , Run UnsafeStdinReader
- ]
- , sepChar = "%"
- , alignSep = "}{"
- , template = " | %UnsafeStdinReader% }{ | %uname% | %cpu% | %memory% | %disku% | %wlp3s0% | %date% | %batteryIcon% %battery% |%trayerpad%"
- }
diff --git a/.doom.d.bak/config.el b/.doom.d.bak/config.el
deleted file mode 100644
index 13731f2..0000000
--- a/.doom.d.bak/config.el
+++ /dev/null
@@ -1,565 +0,0 @@
-;;; $DOOMDIR/config.el -*- lexical-binding: t; -*-
-(setq-default tab-width 4)
-(defvaralias 'c-basic-offset 'tab-width)
-(setq! indent-tabs-mode t)
-;; Place your private configuration here! Remember, you do not need to run 'doom
-;; sync' after modifying this file!
-(setq default-input-method "korean-hangul")
-(global-set-key (kbd "") 'toggle-input-method)
-;; Some functionality uses this to identify you, e.g. GPG configuration, email
-;; clients, file templates and snippets. It is optional.
-(setq user-full-name "JaeYoo-Im"
- user-mail-address "cpu3792@gmail.com")
-
-;; Doom exposes five (optional) variables for controlling fonts in Doom:
-;;
-;; - `doom-font' -- the primary font to use
-;; - `doom-variable-pitch-font' -- a non-monospace font (where applicable)
-;; - `doom-big-font' -- used for `doom-big-font-mode'; use this for
-;; presentations or streaming.
-;; - `doom-unicode-font' -- for unicode glyphs
-;; - `doom-serif-font' -- for the `fixed-pitch-serif' face
-;;
-;; See 'C-h v doom-font' for documentation and more examples of what they
-;; accept. For example:
-;;
-;;(setq doom-font (font-spec :family "Fira Code" :size 12 :weight 'semi-light)
-;; doom-variable-pitch-font (font-spec :family "Fira Sans" :size 13))
-;;
-;; If you or Emacs can't find your font, use 'M-x describe-font' to look them
-;; up, `M-x eval-region' to execute elisp code, and 'M-x doom/reload-font' to
-;; refresh your font settings. If Emacs still can't find your font, it likely
-;; wasn't installed correctly. Font issues are rarely Doom issues!
-
-;; | 12345678 | |
-;; |----------+---|
-;; | 일이삼사 | |
-
-(setq doom-font (font-spec :family "Fira Code" :size 12 :weight 'semi-light)
- doom-variable-pitch-font (font-spec :family "Ubuntu" :size 13))
-(set-fontset-font t 'hangul (font-spec :name "NanumGothic"))
-;; There are two ways to load a theme. Both assume the theme is installed and
-;; available. You can either set `doom-theme' or manually load a theme with the
-;; `load-theme' function. This is the default:
-(if (display-graphic-p)
- (setq doom-theme 'doom-palenight)
- (setq doom-theme 'doom-gruvbox))
-(unless (display-graphic-p)
- (xterm-mouse-mode))
-(beacon-mode 1)
-
-(global-auto-revert-mode 1)
-(setq global-auto-revert-non-file-buffers t)
-;; This determines the style of line numbers in effect. If set to `nil', line
-;; numbers are disabled. For relative line numbers, set this to `relative'.
-(setq display-line-numbers-type t)
-
-;; If you use `org' and don't want your org files in the default location below,
-;; change `org-directory'. It must be set before org loads!
-(setq org-directory "~/org/")
-
-
-;; Whenever you reconfigure a package, make sure to wrap your config in an
-;; `after!' block, otherwise Doom's defaults may override your settings. E.g.
-;;
-;; (after! PACKAGE
-;; (setq x y))
-;;
-;; The exceptions to this rule:
-;;
-;; - Setting file/directory variables (like `org-directory')
-;; - Setting variables which explicitly tell you to set them before their
-;; package is loaded (see 'C-h v VARIABLE' to look up their documentation).
-;; - Setting doom variables (which start with 'doom-' or '+').
-;;
-;; Here are some additional functions/macros that will help you configure Doom.
-;;
-;; - `load!' for loading external *.el files relative to this one
-;; - `use-package!' for configuring packages
-;; - `after!' for running code after a package has loaded
-;; - `add-load-path!' for adding directories to the `load-path', relative to
-;; this file. Emacs searches the `load-path' when you load packages with
-;; `require' or `use-package'.
-;; - `map!' for binding new keys
-;;
-;; To get information about any of these functions/macros, move the cursor over
-;; the highlighted symbol at press 'K' (non-evil users must press 'C-c c k').
-;; This will open documentation for it, including demos of how they are used.
-;; Alternatively, use `C-h o' to look up a symbol (functions, variables, faces,
-;; etc).
-;;
-;; You can also try 'gd' (or 'C-c c d') to jump to their definition and see how
-;; they are implemented.
-
-;; --------------------------------------------------------------------------------------------
-;; -Virtico
-;; --------------------------------------------------------------------------------------------
-;;(if (display-graphic-p)
-;; (vertico-posframe-mode 1))
-;; --------------------------------------------------------------------------------------------
-;; -Transparency
-;; --------------------------------------------------------------------------------------------
-(defvar gvar/frame-transparency '(85 . 85))
-
-(defun toggle-transparency ()
- (interactive)
- (let ((alpha (frame-parameter nil 'alpha)))
- (set-frame-parameter
- nil 'alpha
- (if (eql (cond ((numberp alpha) alpha)
- ((numberp (cdr alpha)) (cdr alpha))
- ;; Also handle undocumented ( ) form.
- ((numberp (cadr alpha)) (cadr alpha)))
- 100)
- gvar/frame-transparency '(100 . 100)))))
-
-(global-set-key (kbd "C-c t") 'toggle-transparency)
-(defun my/org-roam-rg-search ()
- "Search org-roam directory using consult-ripgrep. With live-preview."
- (interactive)
- (let ((consult-ripgrep-command "rg --null --ignore-case --type org --line-buffered --color=always --max-columns=500 --no-heading --line-number . -e ARG OPTS"))
- (consult-ripgrep org-roam-directory)))
-
-;; --------------------------------------------------------------------------------------------
-;; - Language Server Client
-;; --------------------------------------------------------------------------------------------
-(after! dap-mode
- (setq dap-python-debugger 'debugpy))
-;; --------------------------------------------------------------------------------------------
-;; - Org Paste Clipboard image for windows, in linux(use org-screenshot-take)
-;; --------------------------------------------------------------------------------------------
-(defun my-org-paste-image ()
- "Paste an image into a time stamped unique-named file in the
-same directory as the org-buffer and insert a link to this file."
- (interactive)
- (let* ((target-file
- (concat
- (make-temp-name
- (concat "~/org/images/"
- (f-filename buffer-file-name)
- "_"
- (format-time-string "%Y%m%d_%H%M%S_"))) ".png"))
- (wsl-path
- (concat (as-windows-path(file-name-directory target-file))
- "/"
- (file-name-nondirectory target-file)))
- (ps-script
- (concat "(Get-Clipboard -Format image).Save('" wsl-path "')")))
-
- (powershell ps-script)
-
- (if (file-exists-p target-file)
- (progn (insert (concat "[[" target-file "]]"))
- (org-display-inline-images))
- (user-error
- "Error pasting the image, make sure you have an image in the clipboard!"))
- ))
-(defun my-org-remove-link-and-trash-linked-file ()
- "Remove `org-mode' link at point and trash linked file."
- (interactive)
- (let* ((link (org-element-context))
- (path (org-element-property :path link)))
- (move-file-to-trash path)
- (delete-region (org-element-property :begin link)
- (org-element-property :end link))))
-
-(defun as-windows-path (unix-path)
- "Takes a unix path and returns a matching WSL path"
- ;; substring removes the trailing \n
- (substring
- (shell-command-to-string
- (concat "wslpath -w " unix-path)) 0 -1))
-
-(defun powershell (script)
- "executes the given script within a powershell and returns its return value"
- (call-process "powershell.exe" nil nil nil
- "-Command" (concat "& {" script "}")))
-;; --------------------------------------------------------------------------------------------
-;; - Dashboard
-;; --------------------------------------------------------------------------------------------
-(use-package dashboard
- :init ;; tweak dashboard config before loading it
- (setq dashboard-set-heading-icons t)
- (setq dashboard-set-file-icons t)
- (setq dashboard-startup-banner 'logo) ;; use standard emacs logo as banner
- ;;(setq dashboard-startup-banner "~/.config/doom/doom-emacs-dash.png") ;; use custom image as banner
- (setq dashboard-center-content t) ;; set to 't' for centered content
- (setq dashboard-items '((recents . 10)
- (bookmarks . 5)
- (projects . 10)))
- (setq dashboard-set-footer t)
- (setq dashboard-page-separator "\n\f\n")
- (setq dashboard-set-navigator t)
- ;; Format: "(icon title help action face prefix suffix)"
- (setq dashboard-navigator-buttons
- `(;; line1
- ((,(all-the-icons-octicon "mark-github" :height 1.1 :v-adjust 0.0)
- "Github"
- "Browse my Github"
- (lambda (&rest _) (browse-url "https://github.com/JaeUs3792/")))
- (,(all-the-icons-octicon "home" :height 1.1 :v-adjust 0.0)
- "Homepage"
- "Browse my Homepage"
- (lambda (&rest _) (browse-url "https://jaeus.net")))
- (,(all-the-icons-octicon "zap" :height 1.1 :v-adjust 0.0)
- "Update"
- "Doom upgrade"
- (lambda (&rest _) (doom/upgrade)) warning))))
- :config
- (dashboard-setup-startup-hook)
- (dashboard-modify-heading-icons '((recents . "file-text")
- (bookmarks . "book"))))
-
-(setq doom-fallback-buffer-name "*dashboard*")
-(after! dashboard
- (page-break-lines-mode))
-;; --------------------------------------------------------------------------------------------
-;; - Rainbow delimiter mode for programming.
-;; --------------------------------------------------------------------------------------------
-(add-hook 'verilog-mode-hook #'rainbow-delimiters-mode)
-;; --------------------------------------------------------------------------------------------
-;; Avy multi-buffer
-;; --------------------------------------------------------------------------------------------
-(setq! avy-all-windows t)
-;; --------------------------------------------------------------------------------------------
-;; - Calendar
-;; --------------------------------------------------------------------------------------------
-(use-package! calfw)
-(use-package! calfw-org)
-;; --------------------------------------------------------------------------------------------
-;; - Neotree
-;; --------------------------------------------------------------------------------------------
-;; comment ~/.emacs.d/modules/ui/doom/config.el (add-hook 'doom-load-theme-hook #'doom-themes-neotree-config)
-(setq! neo-theme (if (display-graphic-p) 'icons 'arrow))
-(setq! neo-smart-open t)
-;;(doom-themes-neotree-config)
-;;(setq! doom-themes-neotree-file-icons t)
-;;;; --------------------------------------------------------------------------------------------
-;; - Org Mode
-;; --------------------------------------------------------------------------------------------
-(with-eval-after-load 'org
- ;; This is needed as of Org 9.2
- (require 'org-tempo)
-
- (add-to-list 'org-structure-template-alist '("sh" . "src shell"))
- (add-to-list 'org-structure-template-alist '("el" . "src emacs-lisp"))
- (add-to-list 'org-structure-template-alist '("hs" . "src haskell"))
- (add-to-list 'org-structure-template-alist '("cc" . "src c"))
- (add-to-list 'org-structure-template-alist '("cp" . "src c++"))
- (add-to-list 'org-structure-template-alist '("rs" . "src rust"))
- (add-to-list 'org-structure-template-alist '("py" . "src jupyter-python"))
- (add-to-list 'org-structure-template-alist '("oc" . "src octave"))
- (add-to-list 'org-structure-template-alist '("vl" . "src verilog"))
- (add-to-list 'org-structure-template-alist '("vh" . "src vhdl")))
-
-(after! org
- (setq! org-hide-emphasis-markers t)
- (setq org-superstar-item-bullet-alist
- '((?+ . ?➤)
- (?* . ?–)
- (?- . ?•)))
- (custom-set-faces!
- '(org-level-1 :height 1.7 :weight ultra-bold :foreground "#81a2be") ;; :foreground "#81a2be"
- '(org-level-2 :height 1.6 :weight extra-bold :foreground "#b294bb") ;; :foreground "#b294bb"
- '(org-level-3 :height 1.5 :weight bold :foreground "#b5bd68") ;; :foreground "#b5bd68"
- '(org-level-4 :height 1.4 :weight semi-bold :foreground "#e6c547") ;; :foreground "#e6c547"
- '(org-level-5 :height 1.3 :weight normal :foreground "#cc6666") ;; :foreground "#cc6666"
- '(org-level-6 :height 1.2 :weight normal :foreground "#70c0ba") ;; :foreground "#70c0ba"
- '(org-level-7 :height 1.1 :weight normal :foreground "#b77ee0") ;; :foreground "#b77ee0"
- '(org-level-8 :height 1.0 :weight normal :foreground "#9ec400")) ;; :foreground "#9ec400"
- (custom-set-faces!
- '(org-document-title :height 2.0)))
-(setq org-use-sub-superscripts '{})
-(setq org-export-with-sub-superscripts '{})
-;; --------------------------------------------------------------------------------------------
-;; - Org Roam
-;; --------------------------------------------------------------------------------------------
-(defun my/org-roam-list-notes-by-tag (tag-name)
- (mapcar #'org-roam-node-file
- (seq-filter
- (my/org-roam-filter-by-tag tag-name)
- (org-roam-node-list))))
-
-(defun my/org-roam-refresh-agenda-list ()
- (interactive)
- (setq org-agenda-files (my/org-roam-list-notes-by-tag "Project"))
- (add-to-list 'org-agenda-files "~/org/agenda/agenda.org"))
-(defun my/org-roam-filter-by-tag (tag-name)
- (lambda (node)
- (member tag-name (org-roam-node-tags node))))
-
-;;(with-eval-after-load 'org-roam
-;; (defun my/org-roam-project-finalize-hook ()
-;; "Adds the captured project file to `org-agenda-files' if the
-;;capture was not aborted."
-;; ;; Remove the hook since it was added temporarily
-;; (remove-hook 'org-capture-after-finalize-hook #'my/org-roam-project-finalize-hook)
-;;
-;; ;; Add project file to the agenda list if the capture was confirmed
-;; (unless org-note-abort
-;; (with-current-buffer (org-capture-get :buffer)
-;; (add-to-list 'org-agenda-files (buffer-file-name)))))
-;; (defun my/org-roam-find-project ()
-;; (interactive)
-;; ;; Add the project file to the agenda after capture is finished
-;; (add-hook 'org-capture-after-finalize-hook #'my/org-roam-project-finalize-hook)
-;;
-;; ;; Select a project file to open, creating it if necessary
-;; (org-roam-node-find
-;; nil
-;; nil
-;; (my/org-roam-filter-by-tag "Project")
-;; :templates
-;; '(("p" "project" plain "* Goals\n\n%?\n\n* Tasks\n\n** TODO Add initial tasks\n\n* Dates\n\n"
-;; :if-new (file+head "%<%Y%m%d%H%M%S>-${slug}.org" "#+title: ${title}\n#+category: ${title}\n#+filetags: Project")
-;; :unnarrowed t))))
-;; (defun my/org-roam-capture-inbox ()
-;; (interactive)
-;; (org-roam-capture- :node (org-roam-node-create)
-;; :templates '(("i" "inbox" plain "* %?"
-;; :if-new (file+head "Inbox.org" "#+title: Inbox\n")))))
-;;
-;; (defun my/org-roam-copy-todo-to-today ()
-;; (interactive)
-;; (let ((org-refile-keep t) ;; Set this to nil to delete the original!
-;; (org-roam-dailies-capture-templates
-;; '(("t" "tasks" entry "%?"
-;; :if-new (file+head+olp "%<%Y-%m-%d>.org" "#+title: %<%Y-%m-%d>\n" ("Tasks")))))
-;; (org-after-refile-insert-hook #'save-buffer)
-;; today-file
-;; pos)
-;; (save-window-excursion
-;; (org-roam-dailies--capture (current-time) t)
-;; (setq today-file (buffer-file-name))
-;; (setq pos (point)))
-;;
-;; ;; Only refile if the target file is different than the current file
-;; (unless (equal (file-truename today-file)
-;; (file-truename (buffer-file-name)))
-;; (org-refile nil nil (list "Tasks" today-file nil pos))))))
-
-;; --------------------------------------------------------------------------------------------
-;; - Org Agenda
-;; --------------------------------------------------------------------------------------------
-(use-package! org-super-agenda
- :after org
- :config
- (org-super-agenda-mode 1)
- (my/org-roam-refresh-agenda-list))
-(setq org-agenda-custom-commands
- '(("z" "Org mode super agenda"
- ((alltodo "" ((org-agenda-overriding-header "")
- (org-super-agenda-groups
- '((:name "Important"
- :tag "Important"
- :priority "A"
- :order 6)
- (:name "Due Today"
- :deadline today
- :order 2)
- (:name "Due Soon"
- :deadline future
- :order 8)
- (:name "Overdue"
- :deadline past
- :order 7)
- (:name "Projects"
- :tag "Project"
- :order 14)
- (:name "To read"
- :tag "Read"
- :order 30)
- (:name "Waiting"
- :todo "WAIT"
- :order 20)
- (:name "Holding"
- :todo "HOLD"
- :order 21)
- (:name "trivial"
- :priority<= "C"
- :tag ("Trivial" "Unimportant")
- :order 90)
- (:discard (:tag ("Chore" "Routine" "Daily")))))))))))
-(after! org
- ;;(setq org-todo-keywords
- ;; '((sequence "TODO(t@/!)" "NEXT(n)" "WAIT(w)" "HOLD(h)" "|" "DONE(d)" "KILL(k)")))
- (setq! org-log-into-drawer "LOGBOOK")
- (setq! org-clock-into-drawer "CLOCKING")
- (setq! org-lowest-priority 68))
-(use-package! org-fancy-priorities
- :config
- (setq org-fancy-priorities-list '("⚡" "⬆" "⬇" "☕")))
-;; --------------------------------------------------------------------------------------------
-;; - Org Graphviz
-;; --------------------------------------------------------------------------------------------
-(org-babel-do-load-languages
- 'org-babel-load-languages
- '((dot . t)))
-;; --------------------------------------------------------------------------------------------
-;; - Org Mode extra configuration
-;; --------------------------------------------------------------------------------------------
-(setq org-odt-preferred-output-format "docx")
-;;(use-package! ob-translate
-;; :config
-;; (setq ob-translate:default-dest "ko")
-;; (setq google-translate-backend-method 'wget))
-(setq google-translate-backend-method 'curl)
-(use-package! org-journal
- :config
- (setq org-journal-file-type 'weekly))
-
-;; --------------------------------------------------------------------------------------------
-;; - Org Caldav
-;; --------------------------------------------------------------------------------------------
-;;(use-package! org-caldav
-;; :after org)
-;;(defun my/caldav-sync-perso ()
-;; "Sync my local calendar in ~/org/calendar.org with my remote calendar"
-;; (interactive)
-;; (let ((org-caldav-inbox "~/org/cal_inbox.org")
-;; (org-caldav-calendar-id "org")
-;; (org-caldav-url "https://jaeus.net/webdav")
-;; (org-caldav-files '("~/org/calendar.org")))
-;; (call-interactively 'org-caldav-sync)))
-;; --------------------------------------------------------------------------------------------
-;; - Org Roam UI Mode
-;; --------------------------------------------------------------------------------------------
-(use-package! websocket
- :after org-roam)
-
-(use-package! org-roam-ui
- :after org-roam ;; or :after org
- ;; normally we'd recommend hooking orui after org-roam, but since org-roam does not have
- ;; a hookable mode anymore, you're advised to pick something yourself
- ;; if you don't care about startup time, use
- ;;:hook (after-init . org-roam-ui-mode)
- :config
- (setq! org-roam-ui-sync-theme t
- org-roam-ui-follow t
- org-roam-ui-update-on-save t
- org-roam-ui-open-on-start nil))
-;; --------------------------------------------------------------------------------------------
-;; - Org Publish
-;; --------------------------------------------------------------------------------------------
-(setq org-publish-use-timestamps-flag nil)
-(setq org-export-with-broken-lilnks t)
-(setq org-publish-project-alist
- '(("jaeus.net"
- :base-directory "~/org/www/"
- :base-extension "org"
- :publishing-directory "~/Projects/html/"
- :recursive t
- :publishing-function org-html-publish-to-html
- :headline-levels 4
- :auto-preamble t)))
-;; --------------------------------------------------------------------------------------------
-;; - EPUB
-;; --------------------------------------------------------------------------------------------
-(use-package! nov)
-(add-to-list 'auto-mode-alist '("\\.epub\\'" . nov-mode))
-;; --------------------------------------------------------------------------------------------
-;; - Open with external program
-;; --------------------------------------------------------------------------------------------
-;;(use-package openwith
-;; :after-call pre-command-hook
-;; :config
-;; (setq large-file-warning-threshold nil)
-;; (openwith-mode t)
-;; (setq openwith-associations
-;; (list (list (openwith-make-extension-regexp
-;; '("mpg" "mpeg" "mp3" "mp4" "m4v"
-;; "avi" "wmv" "wav" "mov" "flv"
-;; "ogm" "ogg" "mkv"))
-;; "mpv"
-;; '(file))
-;; (list (openwith-make-extension-regexp
-;; '("pdf"))
-;; "zathura"
-;; '(file)))))
-;; --------------------------------------------------------------------------------------------
-;; - Lang - Latex
-;; --------------------------------------------------------------------------------------------
-(setq! +latex-viewers '(zathura))
-;; --------------------------------------------------------------------------------------------
-;; - Lang - Verilog
-;; --------------------------------------------------------------------------------------------
-(setq! verilog-auto-newline nil)
-(setq! verilog-highlight-translate-off t)
-(setq! verilog-indent-level 4)
-(setq! verilog-indent-level-module 0)
-(setq! verilog-indent-level-behavioral 4)
-(setq! verilog-indent-level-declaration 0)
-(setq! verilog-case-indent 4)
-(setq! verilog-cexp-indent 4)
-(setq! verilog-indent-lists nil)
- ; --------------------------------------------------------------------------------------------
-;; - Dired
-;; --------------------------------------------------------------------------------------------
-(use-package! dired
- :config
- (evil-collection-define-key 'normal 'dired-mode-map
- "h" 'dired-up-directory
- "l" 'dired-find-file))
-(use-package! dired-hide-dotfiles
- :hook (dired-mode . dired-hide-dotfiles-mode)
- :config
- (evil-collection-define-key 'normal 'dired-mode-map
- "H" 'dired-hide-dotfiles-mode))
-(setq! delete-by-moving-to-trash t
- trash-directory "~/.local/share/Trash/files/")
-(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 peep-dired-mode-map
- (kbd "j") 'peep-dired-next-file
- (kbd "k") 'peep-dired-prev-file)
-(add-hook 'peep-dired-hook 'evil-normalize-keymaps)
- ; --------------------------------------------------------------------------------------------
-;; - KeyBindings
-;; --------------------------------------------------------------------------------------------
-(map! "C-s" 'consult-line)
-(map! "C-M-l" 'consult-imenu)
-(map! "C-M-j" 'persp-switch-to-buffer)
-
-(map! :leader
- ;; file bind
- :desc "Org Agenda Common"
- "oac" '(lambda () (interactive) (find-file (expand-file-name "~/org/agenda/agenda.org")))
- :desc "Org Calendar"
- "oc" 'cfw:open-org-calendar
- :desc "dOtfiles"
- "fo" '(:ignore t)
- :desc "doom config.el"
- "foc" '(lambda () (interactive) (find-file (expand-file-name "~/.doom.d/config.el")))
- :desc "doom package.el"
- "fop" '(lambda () (interactive) (find-file (expand-file-name "~/.doom.d/packages.el")))
- :desc "doom init.el"
- "foi" '(lambda () (interactive) (find-file (expand-file-name "~/.doom.d/init.el")))
- ;; Eshell
- :desc "eshell"
- "e" '(:ignore t)
- :desc "eshell"
- "e s" 'eshell
- ;; AVY
- :desc "AVY"
- "v" '(:ignore t)
- :desc "Avy goto char"
- "vc" 'avy-goto-char
- :desc "Avy goto word"
- "vw" 'avy-goto-word-0
- :desc "Avy goto line"
- "vl" 'avy-goto-line
- ;; Org mode
- :desc "org roam refresh agenda list"
- "oar" 'my/org-roam-refresh-agenda-list
- :desc "org roam ui open"
- "nru" 'org-roam-ui-open
- :desc "org roam find tag:project"
- "nrp" 'my/org-roam-find-project
- :desc "org roam find with ripgrep (preview)"
- "nrg" 'my/org-roam-rg-search)
diff --git a/.doom.d.bak/custom.el b/.doom.d.bak/custom.el
deleted file mode 100644
index f215921..0000000
--- a/.doom.d.bak/custom.el
+++ /dev/null
@@ -1,14 +0,0 @@
-(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.
- '(auth-source-save-behavior nil)
- '(custom-safe-themes
- '("47db50ff66e35d3a440485357fb6acb767c100e135ccdf459060407f8baea7b2" "234dbb732ef054b109a9e5ee5b499632c63cc24f7c2383a849815dacc1727cb6" "835868dcd17131ba8b9619d14c67c127aa18b90a82438c8613586331129dda63" default)))
-(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.d.bak/init.el b/.doom.d.bak/init.el
deleted file mode 100644
index ed5fcbc..0000000
--- a/.doom.d.bak/init.el
+++ /dev/null
@@ -1,200 +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 link to Doom's Module Index where all
-;; of our modules are listed, including 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
- ;;bidi ; (tfel ot) thgir etirw uoy gnipleh
- ;;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 ; a search engine for love and life
- (vertico +icons) ; the search engine of the future
-
- :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) ; 🙂
- 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 +flyspell) ; tasing you for misspelling mispelling
- ;;grammar ; tasing grammar mistake every you make
-
- :tools
- ;;ansible
- ;;biblio ; Writes a PhD for you (citation needed)
- (debugger +lsp) ; 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 +peek) ; M-x vscode
- 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...
- ;;beancount ; mind the GAAP
- ;;(cc +lsp) ; C > C++ == 1
- ;;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
- ;;dhall
- ;;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
- ;;factor
- ;;faust ; dsp, but you get to keep your soul
- ;;fortran ; in FORTRAN, GOD is REAL (unless declared INTEGER)
- ;;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
- ;;(graphql +lsp) ; Give queries a REST
- ;;(haskell +lsp) ; 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 +lsp) ; 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 +latexmk +fold) ; writing papers in Emacs has never been so fun
- ;;lean ; for folks with too much to prove
- ;;ledger ; be audit you can be
- ;;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
- +dragndrop
- +roam2
- +journal
- +jupyter
- +pretty
- +gnuplot
- +hugo) ; organize your plain life in plain text
- ;;php ; perl's insecure younger brother
- ;;plantuml ; diagrams for confusing people more
- ;;purescript ; javascript, but functional
- (python +lsp) ; 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 +lsp) ; Fe2O3.unwrap().unwrap().unwrap().unwrap()
- ;;scala ; java, but good
- ;;(scheme +guile) ; 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
- ;;zig ; C, but simpler
-
- :email
- ;;(mu4e +org +gmail)
- ;;notmuch
- ;;(wanderlust +gmail)
-
- :app
- ;;calendar
- ;;emms
- ;;everywhere ; *leave* Emacs!? You must be joking
- ;;irc ; how neckbeards socialize
- (rss +org) ; emacs as an RSS reader
- ;;twitter ; twitter client https://twitter.com/vnought
-
- :config
- ;;literate
- (default +bindings +smartparens))
diff --git a/.doom.d.bak/packages.el b/.doom.d.bak/packages.el
deleted file mode 100644
index 9a4f4e8..0000000
--- a/.doom.d.bak/packages.el
+++ /dev/null
@@ -1,68 +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)
-(unpin! org-roam)
-(package! org-roam-ui)
-;;(package! ob-translate)
-(package! google-translate)
-(package! dired-hide-dotfiles)
-(package! nov)
-;;(package! org-caldav)
-(package! openwith)
-(package! org-super-agenda)
-(package! graphviz-dot-mode)
-(package! vertico-posframe)
-(package! peep-dired)
-(package! beacon)
-(package! calfw)
-(package! calfw-org)
-(package! dashboard)
-(package! page-break-lines)
-;;(package! eglot)
diff --git a/.doom.d.bak/snippets/verilog-mode/AUTO State ASCII b/.doom.d.bak/snippets/verilog-mode/AUTO State ASCII
deleted file mode 100755
index e6893ca..0000000
--- a/.doom.d.bak/snippets/verilog-mode/AUTO State ASCII
+++ /dev/null
@@ -1,29 +0,0 @@
-# -*- mode: snippet -*-
-# name: AUTO State ASCII
-# uuid:
-# key: trigger-key
-# condition: t
-# --
-
-localparam // auto enum state_info
- S_IDLE = 0;
-reg [2:0] // auto enum state_info
- cstate, nstate;
-// synthesis translate_off
-/*AUTOASCIIENUM("cstate", "cstate_ascii_r", "")*/
-// synthesis translate_on
-always@(posedge clk) begin
- if(rst) begin
- cstate <= S_IDLE;
- end
- else begin
- cstate <= nstate;
- end
-end
-
-always@* begin
- case(cstate)
- S_IDLE : nstate = S_IDLE;
- default : nstate = S_IDLE;
- endcase
-end
diff --git a/.doom.d.bak/snippets/verilog-mode/always(async rst) b/.doom.d.bak/snippets/verilog-mode/always(async rst)
deleted file mode 100755
index c5379c2..0000000
--- a/.doom.d.bak/snippets/verilog-mode/always(async rst)
+++ /dev/null
@@ -1,11 +0,0 @@
-# -*- mode: snippet -*-
-# name: always(async rst)
-# key:
-# --
-always@(posedge clk or posedge rst) begin
-if(rst) begin
-/*AUTORESET*/
-end
-else begin
-end
-end
diff --git a/.doom.d.bak/snippets/verilog-mode/always(async rstn) b/.doom.d.bak/snippets/verilog-mode/always(async rstn)
deleted file mode 100755
index d1aa15a..0000000
--- a/.doom.d.bak/snippets/verilog-mode/always(async rstn)
+++ /dev/null
@@ -1,11 +0,0 @@
-# -*- mode: snippet -*-
-# name: always(async rstn)
-# key:
-# --
-always@(posedge clk or negedge rstn) begin
-if(!rstn) begin
-/*AUTORESET*/
-end
-else begin
-end
-end
diff --git a/.doom.d.bak/snippets/verilog-mode/always(sync rst) b/.doom.d.bak/snippets/verilog-mode/always(sync rst)
deleted file mode 100755
index fa92a38..0000000
--- a/.doom.d.bak/snippets/verilog-mode/always(sync rst)
+++ /dev/null
@@ -1,11 +0,0 @@
-# -*- mode: snippet -*-
-# name: always(sync rst)
-# key:
-# --
-always@(posedge clk) begin
-if(rst) begin
-/*AUTORESET*/
-end
-else begin
-end
-end
diff --git a/.doom.d.bak/snippets/verilog-mode/always(sync rstn) b/.doom.d.bak/snippets/verilog-mode/always(sync rstn)
deleted file mode 100755
index 41f3b16..0000000
--- a/.doom.d.bak/snippets/verilog-mode/always(sync rstn)
+++ /dev/null
@@ -1,11 +0,0 @@
-# -*- mode: snippet -*-
-# name: always(sync rstn)
-# key:
-# --
-always@(posedge clk) begin
-if(!rstn) begin
-/*AUTORESET*/
-end
-else begin
-end
-end
diff --git a/.doom.d.bak/snippets/verilog-mode/module(base) b/.doom.d.bak/snippets/verilog-mode/module(base)
deleted file mode 100755
index c040a49..0000000
--- a/.doom.d.bak/snippets/verilog-mode/module(base)
+++ /dev/null
@@ -1,18 +0,0 @@
-# -*- mode: snippet -*-
-# name: module(base)
-# key:
-# --
-module example
-#(
-parameter DIN_LEN = 8
-)
-(/*AUTOARG*/);
-
-/*AUTOINPUT*/
-/*AUTOOUTPUT*/
-
-/*AUTOWIRE*/
-/*AUTOREG*/
-
-
-endmodule
diff --git a/.doom.d.bak/themes/morning-star-theme.el b/.doom.d.bak/themes/morning-star-theme.el
deleted file mode 100644
index a1b9d92..0000000
--- a/.doom.d.bak/themes/morning-star-theme.el
+++ /dev/null
@@ -1,981 +0,0 @@
-;;; morning-star-theme.el --- Emacs 24 theme with a dark background.
-
-;; Copyright (C) 2016, Alexander Miller
-
-;; Author: Alexander Miller
-;;
-;; Version: 0.1
-;; Package-Requires: ((emacs "24"))
-;; Created with emacs-theme-generator, https://github.com/mswift42/theme-creator.
-
-
-;; This program is free software: you can redistribute it and/or modify
-;; it under the terms of the GNU General Public License as published by
-;; the Free Software Foundation, either version 3 of the License, or
-;; (at your option) any later version.
-
-;; This program is distributed in the hope that it will be useful,
-;; but WITHOUT ANY WARRANTY; without even the implied warranty of
-;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-;; GNU General Public License for more details.
-
-;; You should have received a copy of the GNU General Public License
-;; along with this program. If not, see .
-
-;; This file is not part of Emacs.
-
-;;; Commentary:
-
-;;; Code:
-
-(deftheme morning-star)
-(let ((class '((class color) (min-colors 89)))
- (fg "#bbbbbb")
- (bg "#2d2d31")
- (bg2 "#25252a")
- (grey1 "#666666")
- (grey2 "#383844")
- (grey3 "#343440")
- (black1 "#1a1a1a")
- (black2 "#000000")
- (red1 "#f2777a")
- (red2 "#bb6666")
- (red3 "#ab3737")
- (red4 "#221111")
- (green1 "#66aa66")
- (green2 "#559955")
- (green3 "#112211")
- (aqua1 "#55a9a9")
- (aqua2 "#1e8f8f")
- (purple1 "#997799")
- (purple2 "#886688")
- (yellow1 "#f0c674")
- (yellow2 "#ddba1a")
- (orange1 "#c98459")
- (orange2 "#b87348")
- (brown1 "#ccb18b")
- (brown2 "#9f8b6f")
- (blue1 "#5588bb")
- (blue2 "#4477aa")
- (blue3 "#333366"))
-
- (custom-theme-set-faces
- 'morning-star
-
- ;; Syntax highlghting
- `(default ((,class (:foreground ,fg :background ,bg))))
- `(default-italic ((,class (:italic t))))
- `(font-lock-builtin-face ((,class (:foreground ,aqua1))))
- `(font-lock-comment-face ((,class (:foreground ,grey1))))
- `(font-lock-comment-delimiter-face ((,class (:foreground ,grey1))))
- `(font-lock-negation-char-face ((,class (:foreground ,red1))))
- `(font-lock-constant-face ((,class (:foreground ,red1))))
- `(font-lock-reference-face ((,class (:foreground ,red1))))
- `(font-lock-preprocessor-face ((,class (:foreground ,aqua1))))
- `(font-lock-doc-face ((,class (:foreground ,brown1))))
- `(font-lock-function-name-face ((,class (:foreground ,blue1))))
- `(font-lock-keyword-face ((,class (:foreground ,purple1 :bold t))))
- `(font-lock-string-face ((,class (:foreground ,green1))))
- `(font-lock-type-face ((,class (:foreground ,yellow1))))
- `(font-lock-variable-name-face ((,class (:foreground ,orange1))))
- `(font-lock-warning-face ((,class (:foreground ,red1 :underline (:style wave)))))
-
- ;; Mode Line
- `(mode-line ((,class (:box (:color ,black2) :background ,black1 :foreground ,green1 :bold t))))
- `(mode-line-highlight ((,class (:box (:color ,black2) :underline t))))
- `(mode-line-emphasis ((,class (:box (:color ,black2) :bolt t))))
- `(mode-line-inactive ((,class (:box (:color ,black2) :background ,bg2 :foreground ,green1))))
- `(powerline-active1 ((,class (:box (:color ,black2) :background ,black1 :foreground ,purple1 :bold t))))
- `(powerline-active2 ((,class (:box (:color ,black2) :background ,black1 :foreground ,black1))))
- `(mode-line-buffer-id ((,class (:box (:color ,black2) :foreground ,orange1 :bold t))))
- `(powerline-inactive1 ((,class (:box (:color ,black2) :background ,bg2 :foreground ,purple1))))
- `(powerline-inactive2 ((,class (:box (:color ,black2) :background ,bg2 :foreground ,purple1))))
- `(spaceline-evil-normal ((,class (:box (:color ,black2) :background ,black1 :foreground ,red3))))
- `(spaceline-evil-insert ((,class (:box (:color ,black2) :background ,black1 :foreground ,green1))))
- `(spaceline-evil-visual ((,class (:box (:color ,black2) :background ,black1 :foreground ,purple1))))
- `(spaceline-evil-emacs ((,class (:box (:color ,black2) :background ,black1 :foreground ,aqua1))))
- `(spaceline-evil-motion ((,class (:box (:color ,black2) :background ,black1 :foreground ,orange1))))
- `(spaceline-evil-replace ((,class (:box (:color ,black2) :background ,black1 :foreground ,aqua2))))
- `(spaceline-flycheck-error ((,class (:box (:color ,black2) :foreground ,red2))))
- `(spaceline-flycheck-warning ((,class (:box (:color ,black2) :foreground ,yellow2))))
- `(spaceline-flycheck-info ((,class (:box (:color ,black2) :foreground ,green2))))
-
- ;; Standard UI Items
- `(show-paren-match ((,class (:underline ,aqua2 :bold t))))
- `(isearch ((,class (:background ,red3 :foreground ,yellow2))))
- `(internal-border ((,class (:background ,black2))))
- `(child-frame-border ((,class (:background ,black2))))
- `(lazy-highlight ((,class (:background ,red1 :foreground ,black1))))
- `(link ((,class (:foreground ,aqua1 :underline (:color ,aqua1)))))
- `(link-visited ((,class (:foreground ,aqua2 :underline (:color ,aqua2)))))
- `(button ((,class (:background ,bg2 :foreground ,blue1 :box (:color ,grey3 :line-width 2 :style released-button) :bold t))))
- `(linum ((,class (:background ,bg :foreground ,grey1 :bold nil :box nil :overline nil :underline nil :italic nil))))
- `(line-number ((,class (:background ,bg :foreground ,grey1 :bold t))))
- `(line-number-current-line ((,class (:background ,bg :foreground ,green1 :bold t))))
- `(region ((,class (:background ,black1 :foreground ,fg))))
- `(highlight ((,class (:background ,black1 :foreground ,fg))))
- `(hl-line ((,class (:background ,grey2))))
- `(highlight-indentation-face ((,class (:background ,grey2))))
- `(header-line ((,class (:box (:color ,black2) :background ,black1))))
- `(fringe ((,class (:background ,bg))))
- `(cursor ((,class (:background ,red1))))
- `(minibuffer-prompt ((,class (:foreground ,purple1))))
- `(vertical-border ((,class (:foreground ,black2))))
- `(error ((,class (:foreground ,red3))))
- `(success ((,class (:foreground ,green1))))
- `(warning ((,class (:foreground ,yellow2))))
- `(eval-sexp-fu-flash ((,class (:background ,green1 :foreground ,black1))))
- `(eval-sexp-fu-flash-error ((,class (:background ,red3 :foreground ,fg))))
- `(secondary-selection ((,class (nil))))
- `(match ((,class (:background ,red3 :foreground ,fg))))
- `(tooltip ((,class (:background ,bg2 :foreground ,brown1))))
- `(help-key-binding ((,class (:foreground ,orange2 :bold t))))
- `(variable-pitch ((,class (:family "Iosevka Aile"))))
-
- ;; Widgets
- `(widget-field ((,class (:foreground ,brown1 :background ,grey3 :bold t :box (:line-width -1 :color ,grey1)))))
-
- ;; Tabs
- `(tab-line ((,class (:background ,black1 :foreground ,fg :box (:line-width 3 :color ,black1) :overline ,black1))))
- `(tab-line-tab ((,class (:background ,black1 :foreground ,fg :box (:line-width 3 :color ,black1) :overline ,black1))))
- `(tab-line-tab-current ((,class (:background ,bg2 :foreground ,fg :box (:line-width 3 :color ,bg2) :overline ,blue1))))
- `(tab-line-tab-inactive ((,class (:background ,black1 :foreground ,fg :box (:line-width 3 :color ,black1) :overline ,black1))))
- `(tab-line-highlight ((,class (:background ,bg :foreground ,fg :box (:line-width 3 :color ,bg) :overline ,blue1))))
-
- ;; Anzu
- `(anzu-mode-line ((,class (:foreground ,yellow2 :background ,bg2))))
- `(anzu-replace-highlight ((,class (:foreground ,yellow2 :background ,red3))))
- `(anzu-replace-to ((,class (:foreground ,black1 :background ,blue1))))
-
- ;; Xref
- `(xref-file-header ((,class (:foreground ,brown1))))
- `(xref-line-number ((,class (:foreground ,green1))))
- `(xref-match ((,class (:background ,black1))))
-
- ;; Evil
- `(evil-search-highlight-persist-highlight-face ((,class (:foreground ,black1 :background ,red1))))
- `(evil-ex-substitute-matches ((,class (:inherit anzu-replace-highlight))))
- `(evil-ex-substitute-replacement ((,class (:inherit anzu-replace-to))))
-
- ;; Evil Goggles
- `(evil-goggles-default-face ((,class (:foreground ,black1 :background ,blue2 :bold t))))
- `(evil-goggles-delete-face ((,class (:foreground ,black1 :background ,red3 :bold t))))
- `(evil-goggles-indent-face ((,class (:foreground ,black1 :background ,orange2 :bold t))))
- `(evil-goggles-yank-face ((,class (:foreground ,black1 :background ,blue1 :bold t))))
- `(evil-goggles-join-face ((,class (:foreground ,red2 :background ,bg2 :bold t))));; TODO
- `(evil-goggles-fill-and-move-face ((,class (:foreground ,red2 :background ,bg2 :bold t))));; TODO
- `(evil-goggles-paste-face ((,class (:foreground ,black1 :background ,green1 :bold t))))
- `(evil-goggles-shift-face ((,class (:foreground ,black1 :background ,aqua1 :bold t))))
- `(evil-goggles-surround-face ((,class (:foreground ,black1 :background ,purple1 :bold t))))
- `(evil-goggles-commentary-face ((,class (:foreground ,grey3 :background ,grey1 :bold t))))
- `(evil-goggles-nerd-commenter-face ((,class (:foreground ,grey3 :background ,grey1 :bold t))))
- `(evil-goggles-replace-with-register-face ((,class (:foreground ,red2 :background ,bg2 :bold t))));; TODO
- `(evil-goggles-set-marker-face ((,class (:foreground ,black1 :background ,aqua2 :bold t))))
- `(evil-goggles-undo-redo-add-face ((,class (:foreground ,black1 :background ,green1 :bold t))))
- `(evil-goggles-undo-redo-remove-face ((,class (:foreground ,black1 :background ,red3 :bold t))))
- `(evil-goggles-undo-redo-change-face ((,class (:foreground ,black1 :background ,blue1 :bold t))))
-
- ;; Spacemacs specifica
- `(spacemacs-normal-face ((,class (:foreground ,black1 :background ,red3))))
- `(spacemacs-visual-face ((,class (:foreground ,black1 :background ,purple2))))
- `(spacemacs-insert-face ((,class (:foreground ,black1 :background ,green1))))
- `(spacemacs-motion-face ((,class (:foreground ,black1 :background ,brown1))))
- `(spacemacs-emacs-face ((,class (:foreground ,black1 :background ,aqua2))))
-
- ;; Ido
- `(ido-first-match ((,class (:foreground ,green1))))
- `(ido-incomplete-regexp ((,class (:inherit error))))
- `(ido-indicator ((,class (:background ,red3 :foreground ,yellow2))))
- `(ido-only-match ((,class (:foreground ,green2 :bold t))))
- `(ido-subdir ((,class (:foreground ,blue1))))
- `(ido-virtual ((,class (:foreground ,aqua1))))
- `(ido-vertical-match-face ((,class (:foreground ,red1))))
- `(ido-vertical-first-match ((,class (:inherit ido-first-match))))
- `(ido-vertical-only-match ((,class (:inherit ido-only-match))))
-
- ;; Group Customization
- `(custom-button ((,class (:inherit button))))
- `(custom-button-mouse ((,class (:background ,blue1 :inherit custom-button))))
- `(custom-button-pressed ((,class (:foreground ,black1 :background ,blue1 :box (:line-width -1 :color ,black1 :style pressed-button)))))
- `(custom-comment ((,class (:inherit font-lock-comment-face))))
- `(custom-comment-tag ((,class (:inherit font-lock-comment-face))))
- `(custom-documentation ((,class (:foreground ,fg))))
- `(custom-group-subtitle ((,class (:foreground ,purple1 :bold t :underline t))))
- `(custom-group-tag ((,class (:foreground ,purple1 :bold t :underline nil :height 1.25))))
- `(custom-group-tag-1 ((,class (:foreground ,aqua1 :bold t :underline t :height 1.5))))
- `(custom-state ((,class (:foreground ,green2))))
- `(custom-variable-tag ((,class (:foreground ,purple1 :bold t :underline t))))
-
- ;; Ediff
- `(ediff-current-diff-A ((,class (:foreground ,black2 :background ,purple2))))
- `(ediff-current-diff-B ((,class (:foreground ,black2 :background ,purple2))))
- `(ediff-current-diff-C ((,class (:foreground ,aqua1 :background ,bg2))));;TODO
- `(ediff-current-diff-Ancestor ((,class (:foreground ,brown1 :background ,bg2))));;TODO
- `(ediff-even-diff-A ((,class (:foreground ,black2 :background ,blue1))))
- `(ediff-even-diff-B ((,class (:foreground ,black2 :background ,blue1))))
- `(ediff-even-diff-C ((,class (:foreground ,aqua1 :background ,red3))));;TODO
- `(ediff-even-diff-Ancestor ((,class (:foreground ,brown1 :background ,red3))));;TODO
- `(ediff-fine-diff-A ((,class (:foreground ,yellow1 :background ,red3 :bold t))))
- `(ediff-fine-diff-B ((,class (:foreground ,yellow1 :background ,red3 :bold t))))
- `(ediff-fine-diff-C ((,class (:foreground ,aqua1 :background ,purple1))));;TODO
- `(ediff-fine-diff-Ancestor ((,class (:foreground ,brown1 :background ,purple1))));;TODO
- `(ediff-odd-diff-A ((,class (:foreground ,black2 :background ,blue2))))
- `(ediff-odd-diff-B ((,class (:foreground ,black2 :background ,blue2))))
- `(ediff-odd-diff-C ((,class (:foreground ,aqua1 :background ,aqua2))));;TODO
- `(ediff-odd-diff-Ancestor ((,class (:foreground ,brown1 :background ,aqua2))));;TODO
-
- ;; Macrostep
- `(macrostep-expansion-highlight-face ((,class (:inherit region))))
-
- ;; Spacemacs states
- `(spacemacs-transient-state-title-face ((,class (:foreground ,black2 :background ,green2 :bold t :box (:color ,bg2 :line-width -1)))))
- `(spacemacs-micro-state-header-face ((,class (:inherit spacemacs-transient-state-title-face))))
- `(spacemacs-micro-state-binding-face ((,class (:foreground ,blue2 :bold t))))
-
- ;; Hydra
- `(hydra-face-red ((,class (:foreground ,red2 :bold t))))
- `(hydra-face-blue ((,class (:foreground ,blue2 :bold t))))
- `(hydra-face-pink ((,class (:foreground ,purple1 :bold t))))
- `(hydra-face-teal ((,class (:foreground ,green1 :bold t))))
- `(hydra-face-amaranth ((,class (:foreground ,aqua1 :bold t))))
-
- ;; Vimish
- `(vimish-fold-fringe ((,class (:foreground ,blue1))))
- `(vimish-fold-overlay ((,class (:foreground ,fg :background ,blue3 :box (:color ,black2 :line-width -1) :underline nil :bold nil))))
- `(vimish-fold-mouse-face ((,class (:inherit vimish-fold-overlay))))
-
- ;; Which Key
- `(which-key-key-face ((,class (:foreground ,orange1))))
- `(which-key-note-face ((,class (:foreground ,yellow1))))
- `(which-key-separator-face ((,class (:foreground ,aqua1))))
- `(which-key-special-key-face ((,class (:foreground ,orange1))))
- `(which-key-group-description-face ((,class (:foreground ,purple1))))
- `(which-key-command-description-face ((,class (:foreground ,green1))))
- `(which-key-highlighted-command-face ((,class (:foreground ,red1 :bold t))))
- `(which-key-local-map-description-face ((,class (:foreground ,blue1))))
-
- ;; Flyspell
- `(flyspell-incorrect ((,class (:underline (:color ,red3 :style wave)))))
- `(flyspell-duplicate ((,class (:underline (:color ,orange2 :style wave)))))
-
- ;; Flycheck
- `(flycheck-info ((,class (:underline ,green2))))
- `(flycheck-warning ((,class (:underline ,yellow2))))
- `(flycheck-error ((,class (:underline ,red3))))
- `(flycheck-fringe-info ((,class (:foreground ,green2))))
- `(flycheck-fringe-warning ((,class (:foreground ,yellow2))))
- `(flycheck-fringe-error ((,class (:foreground ,red1))))
- `(flycheck-error-list-info ((,class (:foreground ,green2))))
- `(flycheck-error-list-warning ((,class (:foreground ,yellow1 :bold t))))
- `(flycheck-error-list-error ((,class (:foreground ,red1 :bold t))))
- `(flycheck-error-list-id ((,class (:foreground ,yellow1))))
- `(flycheck-error-list-checker-name ((,class (:foreground ,brown1))))
- `(flycheck-error-list-column-number ((,class (:foreground ,green2 :bold t))))
- `(flycheck-error-list-line-number ((,class (:foreground ,green2 :bold t))))
- `(flycheck-error-list-highlight ((,class (:background ,grey3))))
-
- ;; Rainbow delimiters
- `(rainbow-delimiters-depth-1-face ((,class :foreground ,purple1)))
- `(rainbow-delimiters-depth-2-face ((,class :foreground ,red2)))
- `(rainbow-delimiters-depth-3-face ((,class :foreground ,green1)))
- `(rainbow-delimiters-depth-4-face ((,class :foreground ,orange1)))
- `(rainbow-delimiters-depth-5-face ((,class :foreground ,blue1)))
- `(rainbow-delimiters-depth-6-face ((,class :foreground ,yellow1)))
- `(rainbow-delimiters-depth-7-face ((,class :foreground ,brown1)))
- `(rainbow-delimiters-depth-8-face ((,class :foreground ,aqua1)))
- `(rainbow-delimiters-mismatched-face ((,class :foreground ,black1)))
- `(rainbow-delimiters-unmatched-face ((,class :foreground ,black1)))
-
- ;; Smerge
- `(smerge-mine ((,class (:foreground ,black1 :background ,blue1 :bold t))))
- `(smerge-markers ((,class (:foreground ,black1 :background ,purple2 :bold t))))
- `(smerge-upper ((,class (:foreground ,blue1))))
- `(smerge-refined-added ((,class (:foreground ,bg2 :background ,green2))))
- `(smerge-lower ((,class (:foreground ,orange1))))
- `(smerge-refined-removed ((,class (:foreground ,bg2 :background ,red2))))
-
- ;; Smart-Parens
- `(sp-pair-overlay-face ((,class (:background ,black1))))
- `(sp-show-pair-match-face ((,class (:inherit show-paren-match))))
-
- ;; Highlight symbol
- `(highlight-symbol-face ((,class (:background ,grey2))))
-
- ;; Paradox
- `(paradox-name-face ((,class (:foreground ,green1))))
- `(paradox-homepage-button-face ((,class (:foreground ,blue1 :bold t))))
- `(paradox-archive-face ((,class (:foreground ,brown1 :box (:color ,bg :line-width -1)))))
- `(paradox-star-face ((,class (:foreground ,purple2 :bold t))))
-
- ;; Man Pages
- `(Man-overstrike ((,class (:foreground ,purple1 :bold t))))
- `(Man-underline ((,class (:foreground ,green1 :underline t))))
- `(Man-reverse ((,class (:foreground ,aqua1))))
-
- ;; Dired
- `(dired-header ((,class (:foreground ,purple1 :underline t :height 1.2))))
- `(dired-marked ((,class (:foreground ,black2 :background ,purple1 :box (:line-width -1)))))
- `(dired-flagged ((,class (:foreground ,fg :background ,red3 :box (:color ,black2 :line-with -1)))))
- `(dired-ignored ((,class (:foreground ,black2 :background ,grey2 :box (:color ,black2 :line-with -1)))))
- `(dired-symlink ((,class (:foreground ,aqua1))))
- `(dired-directory ((,class (:foreground ,blue1))))
- `(dired-perm-write ((,class (:foreground ,red1))))
- `(dired-warning ((,class (:underline ,red3))))
- `(dired-mark ((,class (:inherit diredp-flag-mark-line))))
-
- ;; Dired+
- `(diredp-dir-name ((,class (:inherit dired-directory))))
- `(diredp-dir-heading ((,class (:inherit dired-header))))
- `(diredp-file-name ((,class (:foreground ,brown1))))
- `(diredp-file-suffix ((,class (:foreground ,brown1))))
- `(diredp-symlink ((,class (:inherit dired-symlink))))
- `(diredp-ignored-file-name ((,class (:foreground ,grey1))))
- `(diredp-compressed-file-suffix ((,class (:foreground ,purple1))))
- `(diredp-deletion-file-name ((,class (:foreground ,red1 :bold t))))
- `(diredp-deletion ((,class (:inherit diredp-deletion-file-name))))
- `(diredp-flag-mark-line ((,class (:foreground ,fg :bold t))))
- `(diredp-flag-mark ((,class (:inherit diredp-flag-mark-line))))
- `(diredp-mode-line-marked ((,class (:foreground ,purple1 :bold t))))
- `(diredp-mode-line-flagged ((,class (:foreground ,red1 :bold t))))
- `(diredp-executable-tag ((,class (:foreground ,red1 :bold t))))
- `(diredp-number ((,class (:foreground ,purple1))))
- `(diredp-date-time ((,class (:foreground ,green1))))
- `(diredp-read-priv ((,class (:foreground ,green1))))
- `(diredp-write-priv ((,class (:foreground ,blue1))))
- `(diredp-exec-priv ((,class (:foreground ,red1))))
- `(diredp-link-priv ((,class (:foreground ,aqua1))))
- `(diredp-no-priv ((,class (:foreground ,grey2))))
- `(diredp-dir-priv ((,class (:foreground ,brown1))))
- `(diredp-rare-priv ((,class (:foreground ,yellow2 :bold t))))
- `(diredp-other-priv ((,class (:foreground ,yellow2 :bold t))))
-
- ;; NeoTree
- `(neo-banner-face ((,class (:foreground ,red1 :bold t :underline t :height 1.4))))
- `(neo-dir-link-face ((,class (:foreground ,blue1))))
- `(neo-expand-btn-face ((,class (:foreground ,green2 :bold t))))
- `(neo-file-link-face ((,class (:foreground ,brown1))))
- `(neo-header-face ((,class (:foreground ,brown1))))
- `(neo-root-dir-face ((,class (:foreground ,purple1 :bold t :underline t))))
-
- ;; treemacs
- `(treemacs-root-face ((,class (:foreground ,purple2 :bold t :underline t :overline t :height 1.2))))
- `(treemacs-help-title-face ((,class (:inherit font-lock-doc-face))))
-
- ;; Rust & Racer
- `(cargo-process--standard-face ((,class (:foreground ,blue1))))
- `(cargo-process--ok-face ((,class (:foreground ,green1))))
- `(cargo-process--warning-face ((,class (:foreground ,yellow1))))
- `(cargo-process--error-face ((,class (:foreground ,red1 :bold t))))
- `(cargo-process--pointer-face ((,class (:foreground ,purple2))))
- `(racer-help-heading-face ((,class (:foreground ,purple2 :underline t :bold t :height 1.1))))
- `(rust-unsafe-face ((,class (:foreground ,red1 :bold t :underline t))))
-
- ;; Mardown
- `(markdown-blockquote-face ((,class (:foreground ,brown1))))
- `(markdown-bold-face ((,class (:foreground ,orange1 :bold t))))
- `(markdown-comment-face ((,class (:inherit font-lock-comment-face))))
- `(markdown-footnote-face ((,class (:foreground ,red3 :bold t))))
- `(markdown-gfm-checkbox-face ((,class (:foreground ,red1 :background ,bg2 :box (:color ,grey1 :style released-button :line-width -1) :bold t))))
- `(markdown-header-delimiter-face ((,class (:foreground ,blue1 :bold t))))
- `(markdown-header-rule-face ((,class (:foreground ,blue1 :bold t))))
- `(markdown-header-face ((,class (:foreground ,purple1 :height 1.3))))
- `(markdown-header-face-1 ((,class (:foreground ,purple1 :height 1.2))))
- `(markdown-header-face-2 ((,class (:foreground ,purple1 :height 1.1))))
- `(markdown-header-face-3 ((,class (:foreground ,purple1 :height 1.05))))
- `(markdown-header-face-4 ((,class (:foreground ,purple1))))
- `(markdown-header-face-5 ((,class (:foreground ,purple1))))
- `(markdown-header-face-6 ((,class (:foreground ,purple1))))
- `(markdown-highlight-face ((,class (:inherit highlight))))
- `(markdown-inline-code-face ((,class (:foreground ,aqua2 :bold t))))
- `(markdown-italic-face ((,class (:foreground ,orange1 :italic t))))
- `(markdown-language-keyword-face ((,class (:foreground ,red1 :bold t :underline t))))
- `(markdown-line-break-face ((,class (:inherit link :height 2.0))))
- `(markdown-list-face ((,class (:foreground ,green1 :bold t))))
- `(markdown-link-face ((,class (:inherit link :underline nil))))
- `(markdown-link-title-face ((,class (:foreground ,blue1))))
- `(markdown-markup-face ((,class (:foreground ,yellow1))))
- `(markdown-math-face ((,class (:inherit markdown-inline-code-face))))
- `(markdown-metadata-key-face ((,class (:foreground ,green1))))
- `(markdown-metadata-value-face ((,class (:foreground ,red3))))
- `(markdown-missing-link-face ((,class (:inherit font-lock-warning-face))))
- `(markdown-pre-face ((,class (:inherit markdown-blockquote-face))))
- `(markdown-reference-face ((,class (:foreground ,purple1))))
- `(markdown-strike-through-face ((,class (:foreground ,orange1 :strike-through t))))
- `(markdown-url-face ((,class (:inherit link))))
-
- ;; Ace
- `(ace-jump-face-foreground ((,class (:foreground ,yellow2 :background ,red3))))
- `(aw-leading-char-face ((,class (:foreground ,yellow2 :background ,red3))))
-
- ;; Describe
- `(describe-variable-value ((,class (:foreground ,brown1))))
-
- ;; Ivy
- `(ivy-minibuffer-match-face-1 ((,class (:background ,red3 :foreground ,yellow2))))
- `(ivy-minibuffer-match-face-2 ((,class (:background ,red3 :foreground ,yellow2))))
- `(ivy-minibuffer-match-face-3 ((,class (:background ,red3 :foreground ,yellow2))))
- `(ivy-minibuffer-match-face-4 ((,class (:background ,red3 :foreground ,yellow2))))
- `(ivy-confirm-face ((,class (:background ,orange2 :foreground ,black2))))
- `(ivy-cursor ((,class (:background ,brown2 :foreground ,black2))))
- `(ivy-current-match ((,class (:background ,black1))))
- `(ivy-action ((,class (:background ,aqua2 :foreground ,black2))))
- `(ivy-match-required-face ((,class (:background ,aqua1 :foreground ,black2))))
- `(ivy-remote ((,class (:foreground ,aqua1))))
- `(ivy-modified-buffer ((,class (:foreground ,fg :underline ,green2))))
- `(ivy-virtual ((,class (:foreground ,purple1))))
- `(ivy-subdir ((,class (:foreground ,blue1))))
-
- ;; Avy
- `(avy-background-face ((,class (:background ,grey3))))
- `(avy-lead-face ((,class (:background ,red3 :foreground ,yellow2))))
- `(avy-lead-face-0 ((,class (:background ,blue1 :foreground ,black1))))
- `(avy-lead-face-1 ((,class (:background ,red3 :foreground ,yellow2))))
- `(avy-lead-face-2 ((,class (:background ,blue1 :foreground ,black1))))
-
- ;; imenu list
- `(imenu-list-entry-subalist-face-0 ((,class (:foreground ,green1))))
- `(imenu-list-entry-subalist-face-1 ((,class (:foreground ,yellow1))))
- `(imenu-list-entry-subalist-face-2 ((,class (:foreground ,green1))))
- `(imenu-list-entry-subalist-face-3 ((,class (:foreground ,blue1))))
- `(imenu-list-entry-face-0 ((,class (:foreground ,blue1))))
- `(imenu-list-entry-face-1 ((,class (:foreground ,blue1))))
- `(imenu-list-entry-face-2 ((,class (:foreground ,aqua1))))
- `(imenu-list-entry-face-3 ((,class (:foreground ,blue1))))
-
- ;; LaTeX
- `(font-latex-bold-face ((,class (:foreground ,orange1 :bold t))))
- `(font-latex-italic-face ((,class (:foreground ,orange1 :italic t))))
- `(font-latex-string-face ((,class (:foreground ,green1))))
- `(font-latex-math-face ((,class (:foreground ,aqua1))))
- `(font-latex-verbatim-face ((,class (:foreground ,orange2))))
- `(font-latex-warning-face ((,class (:foreground ,red1))))
- `(font-latex-sedate-face ((,class (:foreground ,blue1))))
- `(font-latex-sectioning-0-face ((,class (:foreground ,yellow1 :height 1.5))))
- `(font-latex-sectioning-1-face ((,class (:foreground ,yellow1 :height 1.4))))
- `(font-latex-sectioning-2-face ((,class (:foreground ,yellow1 :height 1.3))))
- `(font-latex-sectioning-3-face ((,class (:foreground ,yellow1 :height 1.2))))
- `(font-latex-sectioning-4-face ((,class (:foreground ,yellow1 :height 1.1))))
- `(font-latex-sectioning-5-face ((,class (:foreground ,yellow1))))
- `(preview-reference-face ((,class (:foreground ,fg :height 1.1))))
- `(TeX-error-description-error ((,class (:foreground ,red1 :bold t))))
- `(TeX-error-description-tex-said ((,class (:foreground ,purple1))))
-
- ;; Undo Tree
- `(undo-tree-visualizer-current-face ((,class (:foreground ,blue1 :bold t))))
- `(undo-tree-visualizer-default-face ((,class (:foreground ,fg))))
- `(undo-tree-visualizer-active-branch-face ((,class (:foreground ,red1))))
- `(undo-tree-visualizer-register-face ((,class (:foreground ,purple2))))
- `(undo-tree-visualizer-unmodified-face ((,class (:foreground ,green2))))
-
- ;; Terminal
- `(term ((,class (:foreground ,brown1))))
- `(term-bold ((,class (:bold t))))
- `(term-underline ((,class (:underline t))))
- `(term-color-black ((,class (:foreground ,black2))))
- `(term-color-blue ((,class (:foreground ,blue1))))
- `(term-color-red ((,class (:foreground ,red1))))
- `(term-color-green ((,class (:foreground ,green1))))
- `(term-color-yellow ((,class (:foreground ,yellow1))))
- `(term-color-magenta ((,class (:foreground ,purple1))))
- `(term-color-cyan ((,class (:foreground ,aqua1))))
- `(term-color-white ((,class (:foreground ,fg))))
-
- ;; Whitespace
- `(whitespace-big-indent ((,class (:foreground ,grey1))))
- `(whitespace-empty ((,class (:background ,grey1))))
- `(whitespace-trailing ((,class (:foreground ,grey1))))
- `(whitespace-hspace ((,class (:background ,grey1))))
- `(whitespace-indentation ((,class (:background ,grey1))))
- `(whitespace-line ((,class (:foreground ,grey1))))
- `(whitespace-newline ((,class (:foreground ,grey1))))
- `(whitespace-space ((,class (:foreground ,grey1))))
- `(whitespace-space-after-tab ((,class (:foreground ,grey1))))
- `(whitespace-space-before-tab ((,class (:foreground ,grey1))))
- `(whitespace-tab ((,class (:foreground ,grey1))))
- `(whitespace-trailing ((,class (:foreground ,grey1))))
-
- ;; info manual
- `(info-title-1 ((,class (:foreground ,purple1 :bold t :height 2.0))))
- `(info-title-2 ((,class (:foreground ,purple1 :bold t :height 1.75))))
- `(info-title-3 ((,class (:foreground ,purple1 :bold t :height 1.5))))
- `(info-title-4 ((,class (:foreground ,purple1 :bold t :height 1.25))))
- `(info-header-node ((,class (:foreground ,red1 :bold t :underline t))))
- `(info-menu-header ((,class (:foreground ,purple1 :bold t))))
- `(info-menu-star ((,class (:foreground ,green2 :bold t))))
- `(info-quoted-name ((,class (:foreground ,blue1 :bold t))))
- `(info-double-quoted-name ((,class (:foreground ,green1))))
- `(info-xref ((,class (:foreground ,aqua1 :underline t :bold t))))
-
- ;; Helm
- `(helm-action ((,class (:foreground ,red1))))
- `(helm-bookmark-addressbook ((,class (:foreground ,purple1))))
- `(helm-bookmark-directory ((,class (:foreground ,blue1))))
- `(helm-bookmark-file ((,class (:foreground ,brown1))))
- `(helm-bookmark-gnus ((,class (:foreground ,aqua1))))
- `(helm-bookmark-info ((,class (:foreground ,green1))))
- `(helm-bookmark-man ((,class (:foreground ,yellow1))))
- `(helm-bookmark-w3m ((,class (:foreground ,red1))))
- `(helm-buffer-directory ((,class (:foreground ,blue1))))
- `(helm-buffer-file ((,class (:foreground ,fg))))
- `(helm-buffer-not-saved ((,class (:foreground ,fg :underline (:style wave :color, green2)))))
- `(helm-buffer-process ((,class (:foreground ,orange1))))
- `(helm-buffer-saved-out ((,class (:foreground ,fg :underline (:style wave :color ,red1)))))
- `(helm-buffer-size ((,class (:foreground ,green1))))
- `(helm-candidate-number ((,class (:background ,yellow2 :foreground ,black2))))
- `(helm-etags-file ((,class (:height 2.0 :background ,fg :foreground ,blue3)))) ;; TODO
- `(helm-ff-directory ((,class (:foreground ,blue1))))
- `(helm-ff-dirs ((,class (:height 2.0 :background ,fg :foreground ,blue3)))) ;; TODO
- `(helm-ff-dotted-directory ((,class (:foreground ,orange1))))
- `(helm-ff-dotted-symlink-directory ((,class (:foreground ,orange1))))
- `(helm-ff-executable ((,class (:foreground ,red1))))
- `(helm-ff-file ((,class (:foreground ,brown1))))
- `(helm-ff-invalid-symlink ((,class (:foreground ,aqua1 :underline (:style wave :color ,red1)))))
- `(helm-ff-prefix ((,class (:foreground ,purple1))))
- `(helm-ff-symlink ((,class (:foreground ,aqua1))))
- `(helm-ff-file-extension ((,class (:foreground ,green1))))
- `(helm-grep-cmd-line ((,class (:foreground ,aqua1))))
- `(helm-grep-file ((,class (:foreground ,blue1))))
- `(helm-grep-finish ((,class (:foreground ,yellow2 :background ,bg2 :box (:color ,black2 :line-width -1) :bold t))))
- `(helm-grep-lineno ((,class (:foreground ,green1))))
- `(helm-grep-match ((,class (:foreground ,yellow2 :background ,red3))))
- `(helm-history-deleted ((,class (:height 2.0 :background ,fg :foreground ,red1)))) ;; TODO
- `(helm-history-remote ((,class (:height 2.0 :background ,fg :foreground ,green1)))) ;; TODO
- `(helm-header ((,class (:foreground ,grey2))))
- `(helm-header-line-left-margin ((,class (:foreground ,purple2 :bold t))))
- `(helm-lisp-completion-info ((,class (:height 2.0 :background ,fg :foreground ,purple2)))) ;; TODO
- `(helm-lisp-show-completion ((,class (:height 2.0 :background ,fg :foreground ,blue2)))) ;; TODO
- `(helm-match ((,class (:foreground ,yellow2 :background ,red3))))
- `(helm-match-item ((,class (:foreground ,yellow2 :background ,red3))))
- `(helm-moccur-buffer ((,class (:inherit helm-grep-file))))
- `(helm-M-x-key ((,class (:foreground ,yellow1 :bold t))))
- `(helm-prefarg ((,class (:foreground ,aqua1 :bold t))))
- `(helm-resume-need-update ((,class (:height 2.0 :background ,fg :foreground ,aqua2)))) ;; TODO
- `(helm-selection ((,class (:background ,black1 :extend t))))
- `(helm-selection-line ((,class (:background ,grey3))))
- `(helm-separator ((,class (:foreground ,green1 :bold t))))
- `(helm-source-header ((,class (:background ,aqua2 :foreground ,black2 :underline t :extend t))))
- `(helm-visible-mark ((,class (:foreground ,fg :bold t))))
-
- ;;Helm swoop
- `(helm-swoop-line-number-face ((,class (:inherit linum))))
- `(helm-swoop-target-line-face ((,class (:inherit hl-line))))
- `(helm-swoop-target-word-face ((,class (:foreground ,yellow2 :background ,red3))))
- `(helm-swoop-target-line-block-face ((,class (:foreground ,red3 :background ,green1)))) ;; TODO
-
- ;;Helm xref
- `(helm-xref-file-name ((,class (:foreground ,purple1))))
- `(helm-xref-line-number ((,class (:foreground ,green1 :bold t))))
-
- ;; Magit
- `(magit-bisect-bad ((,class (:height 2.0 :foreground ,red1 :background ,red3)))) ;; TODO
- `(magit-bisect-good ((,class (:height 2.0 :foreground ,red1 :background ,green2)))) ;; TODO
- `(magit-bisect-skip ((,class (:height 2.0 :foreground ,red1 :background ,blue2)))) ;; TODO
- `(magit-blame-date ((,class (:background ,bg2 :foreground ,green1 :bold t))))
- `(magit-blame-hash ((,class (:background ,bg2 :foreground ,brown1 :bold t))))
- `(magit-blame-heading ((,class (:background ,bg2 :bold t))))
- `(magit-blame-name ((,class (:background ,bg2 :foreground ,blue2 :bold t))))
- `(magit-blame-summary ((,class (:background ,bg2 :foreground ,brown1 :bold t))))
- `(magit-branch-current ((,class (:foreground ,blue2 :bold t))))
- `(magit-branch-remote-head ((,class (:foreground ,purple2 :bold t))))
- `(magit-branch-remote ((,class (:foreground ,aqua1 :bold t))))
- `(magit-branch-local ((,class (:foreground ,brown2 :bold t))))
- `(magit-cherry-equivalent ((,class (:foreground ,blue1))))
- `(magit-cherry-unmatched ((,class (:foreground ,red1))))
- `(magit-diff-added ((,class (:foreground ,green1))))
- `(magit-diff-added-highlight ((,class (:background ,bg2 :inherit magit-diff-added))))
- `(magit-diff-base ((,class (:foreground ,red3 :background ,aqua2)))) ;; TODO
- `(magit-diff-base-highlight ((,class (:foreground ,red3 :background ,green2)))) ;; TODO
- `(magit-diff-conflict-heading ((,class (:foreground ,black1 :background ,purple2 :bold t))))
- `(magit-diff-context ((,class (:foreground ,fg))))
- `(magit-diff-context-highlight ((,class (:background ,bg2))))
- `(magit-diff-file-heading ((,class (:foreground ,fg))))
- `(magit-diff-file-heading-highlight ((,class (:background ,bg2))))
- `(magit-diff-file-heading-selection ((,class (:foreground ,red3 :background ,green2))))
- `(magit-diff-hunk-heading ((,class (:foreground ,blue2 :bold t))))
- `(magit-diff-hunk-heading-highlight ((,class (:background ,bg2 :inherit magit-diff-hunk-heading))))
- `(magit-diff-lines-boundary ((,class (:background ,yellow2))))
- `(magit-diff-lines-heading ((,class (nil))))
- `(magit-diff-our ((,class (:foreground ,orange2))))
- `(magit-diff-our-highlight ((,class (:foreground ,orange2 :background ,bg2))))
- `(magit-diff-removed ((,class (:foreground ,red1))))
- `(magit-diff-removed-highlight ((,class (:background ,bg2 :inherit magit-diff-removed))))
- `(magit-diff-their ((,class (:foreground ,brown1))))
- `(magit-diff-their-highlight ((,class (:foreground ,brown1 :background ,bg2))))
- `(magit-whitespace-warning-face ((,class (:foreground ,red1))))
- `(magit-diffstat-added ((,class (:foreground ,green1))))
- `(magit-diffstat-removed ((,class (:foreground ,red1))))
- `(magit-dimmed ((,class (:inherit font-lock-comment-face))))
- `(magit-filename ((,class (:foreground ,fg))))
- `(magit-hash ((,class (:foreground ,orange1))))
- `(magit-head ((,class (:foreground ,purple1 :bold t))))
- `(magit-header-line ((,class (:inherit magit-section-heading))))
- `(magit-log-graph ((,class (:foreground ,orange2))))
- `(magit-log-author ((,class (:foreground ,blue1))))
- `(magit-log-date ((,class (:foreground ,green1))))
- `(magit-process-ng ((,class (:inherit error))))
- `(magit-process-ok ((,class (:inherit success))))
- `(magit-reflog-amend ((,class (:foreground ,brown1 :bold t))))
- `(magit-reflog-checkout ((,class (:foreground ,blue1 :bold t))))
- `(magit-reflog-cherry-pick ((,class (:foreground ,yellow1 :bold t))))
- `(magit-reflog-commit ((,class (:foreground ,green1 :bold t))))
- `(magit-reflog-merge ((,class (:foreground ,aqua1 :bold t))))
- `(magit-reflog-other ((,class (:foreground ,fg :bold t))))
- `(magit-reflog-rebase ((,class (:foreground ,orange1 :bold t))))
- `(magit-reflog-remote ((,class (:foreground ,purple1 :bold t))))
- `(magit-reflog-reset ((,class (:foreground ,red1 :bold t))))
- `(magit-refname ((,class (:height 2.0 :foreground ,purple2 :background ,black1)))) ;; TODO
- `(magit-refname-stash ((,class (:height 2.0 :foreground ,red1 :background ,black1)))) ;; TODO
- `(magit-refname-wip ((,class (:height 2.0 :foreground ,red1 :background ,black1)))) ;; TODO
- `(magit-refname-pullreq ((,class (:foreground ,orange2 :bold t))))
- `(magit-section-heading ((,class (:foreground ,purple1 :underline t :height 1.2))))
- `(magit-section-heading-selection ((,class (:foreground ,green1 :background ,black2))))
- `(magit-section-highlight ((,class (:background ,bg2))))
- `(magit-section-secondary-heading ((,class (:foreground ,purple1))))
- `(magit-sequence-done ((,class (:foreground ,grey1))))
- `(magit-sequence-drop ((,class (:foreground ,orange1 :bold t))))
- `(magit-sequence-head ((,class (:foreground ,purple1 :bold t))))
- `(magit-sequence-onto ((,class (:foreground ,purple1 :bold t))))
- `(magit-sequence-part ((,class (:foreground ,blue1 :bold t))))
- `(magit-sequence-pick ((,class (:foreground ,green1 :bold t))))
- `(magit-sequence-stop ((,class (:foreground ,red1 :bold t))))
- `(magit-signature-bad ((,class (:foreground ,yellow1 :italic t :underline (:style wave)))))
- `(magit-signature-good ((,class (:foreground ,green1 :italic t :underline t))))
- `(magit-signature-untrusted ((,class (:foreground ,red1 :italic t :underline (:style wave)))))
- `(magit-tag ((,class (:foreground ,yellow1 :bold t))))
-
- ;; Diff
- `(diff-refine-added ((,class (:foreground ,green2 :background ,green3 :bold t))))
- `(diff-refine-removed ((,class (:foreground ,red2 :background ,red4 :bold t))))
- `(diff-refine-changed ((,class (:foreground ,blue1 :background ,black1 :bold t))))
-
- ;; Git
- `(git-commit-keyword ((,class (:foreground ,brown2 :bold t))))
- `(git-commit-comment-action ((,class (:foreground ,orange1))))
- `(git-commit-comment-branch ((,class (:foreground ,blue1 :bold t))))
- `(git-commit-comment-detached ((,class (:foreground ,aqua1))))
- `(git-commit-comment-file ((,class (:foreground ,green1))))
- `(git-commit-comment-heading ((,class (:foreground ,purple1 :underline t))))
- `(git-commit-known-pseudo-header ((,class (:inherit git-commit-pseudo-header))))
- `(git-commit-nonempty-second-line ((,class (:foreground ,red1 :underline t))))
- `(git-commit-overlong-summary ((,class (:foreground ,red1))))
- `(git-commit-pseudo-header ((,class (:foreground ,purple1 :underline t :height 1.3))))
- `(git-commit-summary ((,class (:foreground ,yellow1))))
- `(git-rebase-hash ((,class (:inherit magit-hash))))
- `(git-rebase-description ((,class (:foreground ,fg))))
- `(git-rebase-killed-action ((,class (:foreground ,red1))))
-
- ;; Git Rebase
- `(git-rebase-description ((,class (:foreground ,fg))))
- `(git-rebase-hash ((,class (:foreground ,orange1))))
- `(git-rebase-killed-action ((,class (:foreground ,grey1 :strike-through t))))
-
- ;; Git gutter
- `(git-gutter:added ((,class (:foreground ,green1))))
- `(git-gutter:deleted ((,class (:foreground ,red1))))
- `(git-gutter:modified ((,class (:foreground ,blue1))))
- `(git-gutter+-added ((,class (:inherit git-gutter:added))))
- `(git-gutter+-deleted ((,class (:inherit git-gutter:deleted))))
- `(git-gutter+-modified ((,class (:inherit git-gutter:modified))))
- `(git-gutter-fr:added ((,class (:inherit git-gutter:added))))
- `(git-gutter-fr:deleted ((,class (:inherit git-gutter:deleted))))
- `(git-gutter-fr:modified ((,class (:inherit git-gutter:modified))))
- `(git-gutter-fr+-added ((,class (:inherit git-gutter:added))))
- `(git-gutter-fr+deleted ((,class (:inherit git-gutter:deleted))))
- `(git-gutter-fr+modified ((,class (:inherit git-gutter:modified))))
-
- ;; Transient
- `(transient-heading ((,class (:foreground ,purple1 :bold t))))
- `(transient-key ((,class (:foreground ,blue1 :bold t))))
- `(transient-value ((,class (:foreground ,aqua1 :bold t))))
- `(transient-argument ((,class (:foreground ,orange1 :bold t))))
- `(transient-unreachable-key ((,class (:foreground ,grey1 :bold t))))
- `(transient-active-infix ((,class (:foreground ,green2 :bold t))))
- `(transient-unreachable ((,class (:foreground ,grey1))))
- `(transient-teal ((,class (:inherit hydra-face-teal))))
- `(transient-pink ((,class (:inherit hydra-face-pink))))
- `(transient-amaranth ((,class (:inherit hydra-face-amaranth))))
- `(transient-blue ((,class (:inherit hydra-face-blue))))
- `(transient-red ((,class (:inherit hydra-face-red))))
-
- `(transient-inacitve-argument ((,class (:foreground ,brown1 :background ,black2))))
- `(transient-inacitve-value ((,class (:foreground ,orange1 :background ,black2))))
- `(transient-disabled-suffix ((,class (:foreground ,purple1 :background ,black2))))
- `(transient-enabled-suffix ((,class (:foreground ,red3 :background ,black2))))
- `(transient-inapt-suffix ((,class (:foreground ,aqua1 :background ,black2))))
- `(transient-mismatched-key ((,class (:foreground ,blue2 :background ,black2))))
- `(transient-nonstandard-key ((,class (:foreground ,brown2 :background ,black2))))
- `(transient-separator ((,class (:foreground ,orange2 :background ,black2))))
-
- ;; Diff hl
- `(diff-hl-change ((,class (:background ,blue2 :foreground ,black1))))
- `(diff-hl-delete ((,class (:background ,red1 :foreground ,black1))))
- `(diff-hl-insert ((,class (:background ,green2 :foreground ,black1))))
-
- ;; Compilation
- `(compilation-info ((,class (:foreground ,brown1))))
- `(compilation-error ((,class (:foreground ,red2))))
- `(compilation-line-number ((,class (:foreground ,green1))))
- `(compilation-column-number ((,class (:foreground ,green1))))
-
- ;; company
- `(company-tooltip-common-selection ((,class (:background ,bg2 :foreground ,red1))))
- `(company-tooltip-selection ((,class (:background ,bg2 :foreground ,fg :extend t))))
- `(company-scrollbar-bg ((,class (:background ,grey1))))
- `(company-scrollbar-fg ((,class (:background ,red3))))
- `(company-tooltip ((,class (:background ,grey2 :foreground ,fg ))))
- `(company-tooltip-search ((,class (:background ,fg :foreground ,red3))))
- `(company-tooltip-search-selection ((,class (:background ,fg :foreground ,red3))))
- `(company-tooltip-annotation ((,class (:background ,grey2 :foreground ,aqua1 :bold t))))
- `(company-tooltip-annotation-selection ((,class (:background ,bg2 :foreground ,aqua1 :bold t))))
- `(company-tooltip-common ((,class (:foreground ,red1))))
- `(company-preview-common ((,class (:foreground ,grey1 :background ,grey3))))
- `(company-preview ((,class (:background ,fg :foreground ,red3))))
- `(company-tooltip-mouse ((,class (:inherit company-tooltip-sele))))
- `(company-echo-common ((,class (:background ,fg :foreground ,red3))))
- `(company-template-field ((,class (:inherit yas-field-highlight-face))))
-
- ;; Org-Mode
- `(org-agenda-calendar-event ((,class (:foreground ,blue2 :bold t))))
- `(org-agenda-calendar-sexp ((,class (:foreground ,blue2 :bold t))))
- `(org-agenda-clocking ((,class (:foreground ,bg :background ,red3)))) ;; TODO
- `(org-agenda-column-dateline ((,class (:foreground ,bg :background ,red3)))) ;; TODO
- `(org-agenda-current-time ((,class (:foreground ,brown1 :bold t))))
- `(org-agenda-date ((,class (:foreground ,brown1 :bold t))))
- `(org-agenda-date-weekend ((,class (:foreground ,brown2 :bold t))))
- `(org-agenda-date-today ((,class (:foreground ,red3 :bold t :italic t :height 1.5))))
- `(org-agenda-diary ((,class (:foreground ,red2 :bold t))))
- `(org-agenda-dimmed-todo-face ((,class (:foreground ,grey1))))
- `(org-agenda-done ((,class (:foreground ,green1))))
- `(org-agenda-filter-category ((,class (:foreground ,bg :background ,red3)))) ;; TODO
- `(org-agenda-filter-regexp ((,class (:foreground ,bg :background ,red3)))) ;; TODO
- `(org-agenda-filter-tags ((,class (:foreground ,bg :background ,red3)))) ;; TODO
- `(org-agenda-restriction-lock ((,class (:foreground ,bg :background ,red3)))) ;; TODO
- `(org-agenda-structure ((,class (:foreground ,purple1 :bold t :height 1.5))))
- `(org-super-agenda-header ((,class (:foreground ,green2 :bold t :height 1.3))))
- `(org-archived ((,class (:foreground ,grey1 :bold t))))
- `(org-block ((,class (:background ,bg2 :extend t))))
- `(org-block-begin-line ((,class (:background ,brown2 :foreground ,bg2 :bold t :extend t))))
- `(org-block-end-line ((,class (:background ,brown2 :foreground ,bg2 :bold t :extend t))))
- `(org-checkbox ((,class (:background ,bg2 :foreground ,brown2 :bold t :box (:color ,brown2 :line-width -1)))))
- `(org-checkbox-statistics-done ((,class (:background ,green1 :foreground ,black1 :box (:color ,black1 :line-width -1) :bold t))))
- `(org-checkbox-statistics-todo ((,class (:background ,red2 :foreground ,black1 :box (:color ,black1 :line-width -1) :bold t))))
- `(org-clock-overlay ((,class (:foreground ,bg :background ,red3)))) ;; TODO
- `(org-code ((,class (:foreground ,purple1 :bold t))))
- `(org-column ((,class ())))
- `(org-column-title ((,class (:foreground ,purple1 :background ,bg2 :bold t :underline t))))
- `(org-date ((,class (:foreground ,brown2 :bold t))))
- `(org-date-selected ((,class (:foreground ,black1 :background ,purple2 :bold t :box (:color ,black1 :line-with -1)))))
- `(org-default ((,class (:foreground ,bg :background ,red3)))) ;; TODO
- `(org-done ((,class (:background ,green1 :foreground ,black1 :bold t :box (:color ,black2 :line-width -1)))))
- `(org-document-info ((,class (:foreground ,red2 :bold t :height 1.4))))
- `(org-document-info-keyword ((,class (:foreground ,purple2 :bold t :height 1.4))))
- `(org-document-title ((,class (:foreground ,red2 :bold t :height 1.4))))
- `(org-drawer ((,class (:inherit org-special-keyword))))
- `(org-ellipsis ((,class (:foreground ,grey1 :bold t :box nil :underline nil :overline nil))))
- `(org-footnote ((,class (:foreground ,grey1 :background ,grey3 :bold t))))
- `(org-formula ((,class (:foreground ,green1 :background ,bg2))))
- `(org-habit-alert-face ((,class (:background ,yellow1 :foreground ,black1 :box (:color ,black2 :line-with -1)))))
- `(org-habit-alert-future-face ((,class (:background ,yellow2 :foreground ,black1 :box (:color ,black2 :line-with -1)))))
- `(org-habit-clear-face ((,class (:background ,blue2 :foreground ,black1 :box (:color ,black2 :line-with -1)))))
- `(org-habit-clear-future-face ((,class (:background ,blue1 :foreground ,black2 :box (:color ,black2 :line-with -1)))))
- `(org-habit-overdue-face ((,class (:background ,red3 :foreground ,black1 :box (:color ,black2 :line-with -1)))))
- `(org-habit-overdue-future-face ((,class (:background ,red1 :foreground ,black1 :box (:color ,black2 :line-with -1)))))
- `(org-habit-ready-face ((,class (:background ,green1 :foreground ,black2 :box (:color ,black2 :line-with -1)))))
- `(org-habit-ready-future-face ((,class (:background ,green2 :foreground ,black2 :box (:color ,black2 :line-with -1)))))
- `(org-headline-done ((,class (:foreground ,bg :background ,red3)))) ;; TODO
- `(org-hide ((,class (:foreground ,bg))))
- `(org-indent ((,class (:foreground ,bg))))
- `(org-kbd ((,class (:foreground ,fg :italic t :bold t))))
- `(org-latex-and-related ((,class (:foreground ,bg :background ,red3)))) ;; TODO
- `(org-level-1 ((,class (:foreground ,blue1))))
- `(org-level-2 ((,class (:foreground ,orange1))))
- `(org-level-3 ((,class (:foreground ,green1))))
- `(org-level-4 ((,class (:foreground ,yellow1))))
- `(org-level-5 ((,class (:foreground ,blue1))))
- `(org-level-6 ((,class (:foreground ,orange1))))
- `(org-level-7 ((,class (:foreground ,green1))))
- `(org-level-8 ((,class (:foreground ,yellow1))))
- `(org-link ((,class (:foreground ,aqua2 :bold t :underline t))))
- `(org-list-dt ((,class (:foreground ,purple1 :bold t))))
- `(org-macro ((,class (:foreground ,bg :background ,red3)))) ;; TODO
- `(org-meta-line ((,class (:foreground ,purple2 :bold t))))
- `(org-mode-line-clock ((,class (:foreground ,bg :background ,red3)))) ;; TODO
- `(org-mode-line-clock-overrun ((,class (:foreground ,bg :background ,red3)))) ;; TODO
- `(org-priority ((,class (:background ,purple1 :foreground ,black1 :bold t :box (:line-width -1 :color ,black2)))))
- `(org-property-value ((,class (:foreground ,brown2 :bold t))))
- `(org-quote ((,class (:foreground ,bg :background ,red3)))) ;; TODO
- `(org-scheduled ((,class (:foreground ,green1))))
- `(org-scheduled-previously ((,class (:foreground ,purple1))))
- `(org-scheduled-today ((,class (:foreground ,aqua1))))
- `(org-sexp-date ((,class (:inherit org-date))))
- `(org-special-keyword ((,class (:foreground ,purple2 :underline t :bold t))))
- `(org-table ((,class (:foreground ,brown1 :background ,bg2))))
- `(org-tag ((,class (:foreground ,grey1))))
- `(org-tag-group ((,class (:foreground ,bg :background ,red3)))) ;; TODO
- `(org-target ((,class (:foreground ,bg :background ,red3)))) ;; TODO
- `(org-time-grid ((,class (:foreground ,brown1))))
- `(org-upcoming-distant-deadline ((,class (:foreground ,yellow1))))
- `(org-agenda-current-time ((,class (:foreground ,brown1 :background ,bg2 :bold t))))
- `(org-todo ((,class (:background ,red2 :foreground ,black1 :bold t :box (:line-width -1 :color ,black2)))))
- `(org-upcoming-deadline ((,class (:foreground ,orange2))))
- `(org-verbatim ((,class (:foreground ,green2 :bold t :italic t))))
- `(org-warning ((,class (:foreground ,yellow2 :bold t))))
-
- ;; Comint
- `(comint-highlight-prompt ((,class (:foreground ,purple2 :bold t))))
- `(comint-highlight-input ((,class (:foreground ,blue1))))
-
- ;; Ledger
- `(ledger-font-xact-highlight-face ((,class (:background ,grey3))))
- `(ledger-font-posting-account-face ((,class (:foreground ,blue1))))
- `(ledger-font-posting-amount-face ((,class (:foreground ,brown1))))
- `(ledger-font-posting-date-face ((,class (:foreground ,purple1 :bold t))))
- `(ledger-font-payee-uncleared-face ((,class (:foreground ,red2 :bold t))))
- `(ledger-font-payee-cleared-face ((,class (:foreground ,green2 :bold t))))
- `(ledger-font-price-symbol-face ((,class (:foreground ,red2 :bold t))))
- `(ledger-font-price-face ((,class (:foreground ,brown2 :bold t))))
- `(ledger-font-price-date-face ((,class (:foreground ,green1 :bold t))))
- `(ledger-font-price-directive-face ((,class (:foreground ,aqua2 :bold t))))
- `(ledger-font-commodity-directive-face ((,class (:foreground ,aqua2 :bold t))))
- `(ledger-font-include-directive-face ((,class (:foreground ,aqua2 :bold t))))
- `(ledger-font-account-directive-face ((,class (:foreground ,aqua2 :bold t))))
- `(ledger-font-tag-directive-face ((,class (:foreground ,aqua2 :bold t))))
- `(ledger-font-commodity-name-face ((,class (:foreground ,red2 :bold t))))
- `(ledger-font-tag-name-face ((,class (:foreground ,yellow1))))
- `(ledger-font-commodity-format-face ((,class (:foreground ,green1))))
- `(ledger-font-include-filename-face ((,class (:foreground ,green1))))
- `(ledger-occur-xact-face ((,class (:background ,grey1 :foreground ,bg))))
- `(ledger-font-auto-xact-face ((,class (:foreground ,aqua1))))
-
- ;; ERC
- `(erc-timestamp-face ((,class (:foreground ,brown2 :bold t))))
- `(erc-nick-default-face ((,class (:foreground ,purple1))))
- `(erc-nick-msg-face ((,class (:foreground ,purple2 :bold t))))
- `(erc-current-nick-face ((,class (:foreground ,aqua1))))
- `(erc-default-face ((,class (:foreground ,fg))))
- `(erc-error-face ((,class (:foreground ,red2 :bold t))))
- `(erc-notice-face ((,class (:foreground ,green1))))
- `(erc-direct-msg-face ((,class (:foreground ,aqua1))))
- `(erc-prompt-face ((,class (:foreground ,black2 :background ,blue1 :box t :bold t))))
-
- ;; ERT
- `(ert-test-result-expected ((,class (:background ,green2 :foreground ,black2))))
- `(ert-test-result-unexpected ((,class (:background ,red3 :foreground ,black2))))
-
- ;; edebug-x
- `(hi-edebug-x-stop ((,class (:background ,blue1 :foreground ,black2))))
- `(hi-edebug-x-debug-line ((,class (:background ,green1 :foreground ,black2))))
-
- ;; Messages
- `(message-header-name ((,class (:foreground ,green1 :bold t))))
- `(message-header-other ((,class (:foreground ,blue1))))
- `(message-header-to ((,class (:foreground ,orange1))))
- `(message-header-subject ((,class (:foreground ,yellow1))))
- `(message-separator ((,class (:foreground ,grey1))))
-
- ;; Eros
- `(eros-result-overlay-face ((,class (:background ,bg :foreground ,brown1 :box (:line-width -1 :color ,black1)))))
-
- ;; elfeed
- `(elfeed-search-feed-face ((,class (:foreground ,purple1))))
- `(elfeed-search-tag-face ((,class (:foreground ,blue1))))
- `(elfeed-search-unread-title-face ((,class (:bold t))))
- `(elfeed-search-title-face ((,class (:foreground ,blue1))))
- `(elfeed-search-date-face ((,class (:foreground ,green1))))
- `(elfeed-log-date-face ((,class (:foreground ,brown1))))
- `(elfeed-log-info-level-face ((,class (:foreground ,green1))))
- `(elfeed-log-warn-level-face ((,class (:foreground ,yellow1))))
- `(elfeed-log-error-level-face ((,class (:foreground ,red2))))
-
- ;; LSP
- `(lsp-face-highlight-read ((,class (:background ,blue2 :foreground ,black2))))
- `(lsp-face-highlight-write ((,class (:background ,orange2 :foreground ,black2))))
-
-
- ;; notmuch
- `(notmuch-search-date ((,class (:foreground ,green1))))
- `(notmuch-search-count ((,class (:foreground ,aqua1))))
- `(notmuch-search-matching-authors ((,class (:foreground ,blue1))))
- `(notmuch-search-subject ((,class (:foreground ,brown1))))
-
- ;; gnus
- `(gnus-header-name ((,class (:foreground ,purple1 :bold t))))
- `(gnus-header-content ((,class (:foreground ,brown1))))
- `(gnus-header-subject ((,class (:foreground ,green1))))
- `(gnus-button ((,class (:foreground ,aqua2))))
-
- ;; frog-menu
- `(frog-menu-prompt-face ((,class (:foreground ,green1 :bold t))))
- `(frog-menu-candidates-face ((,class (:foreground ,fg))))
- `(frog-menu-actions-face ((,class (:foreground ,purple1))))
- `(frog-menu-action-keybinding-face ((,class (:foreground ,blue1 :bold t))))
- `(frog-menu-posframe-background-face ((,class (:background ,bg))))
-
- ;; markup
- `(markup-meta-hide-face ((,class (:foreground ,grey1 :bold t))))
- `(markup-meta-face ((,class (:foreground ,orange1 :bold t))))
- `(markup-secondary-text-face ((,class (:foreground ,brown2 :bold t))))
- `(markup-list-face ((,class (:foreground ,green2 :bold t))))
- `(markup-strong-face ((,class (:foreground ,red2 :bold t))))
- `(markup-code-face ((,class (:foreground ,aqua1 :bold t))))
- `(markup-emphasis-face ((,class (:foreground ,yellow1 :italic t))))
- `(markup-typewriter-face ((,class (:background ,aqua2 :foreground ,black1 :bold t))))
- `(markup-verbatim-face ((,class (:background ,aqua2 :foreground ,black1 :bold t))))
- `(markup-title-0-face ((,class (:foreground ,purple1 :underline t :height 1.2))))
- `(markup-title-1-face ((,class (:foreground ,purple1 :underline t :height 1.15))))
- `(markup-title-2-face ((,class (:foreground ,purple1 :underline t :height 1.1))))
- `(markup-title-3-face ((,class (:foreground ,purple1 :underline t :height 1.05))))
- `(markup-title-4-face ((,class (:foreground ,purple1 :underline t))))
- `(markup-title-5-face ((,class (:foreground ,purple1 :underline t))))
-
- ;; selectrum
- `(selectrum-current-candidate ((,class (:background ,black1 :extend t))))
-
- ;; orderless
- `(orderless-match-face-0 ((,class (:background ,red3 :foreground ,yellow2))))
- `(orderless-match-face-1 ((,class (:background ,green2 :foreground ,black2))))
- `(orderless-match-face-2 ((,class (:background ,blue2 :foreground ,black2))))
- `(orderless-match-face-3 ((,class (:background ,brown2 :foreground ,black2))))
-
- ;; marginalia
- `(marginalia-documentation ((,class (:inherit font-lock-doc-face))))
- `(marginalia-key ((,class (:foreground ,purple1))))
- `(marginalia-number ((,class (:background ,blue2 :foreground ,red3 :bold t))))
- `(marginalia-size ((,class (:foreground ,purple1))))
- `(marginalia-mode ((,class (:foreground ,orange2 :bold t))))
- `(marginalia-version ((,class (:background ,blue2 :foreground ,red3 :bold t))))
- `(marginalia-ligher ((,class (:foreground ,green3))))
-
- ;; mu4e
- `(mu4e-unread-face ((,class (:foreground ,blue1 :bold t))))
- `(mu4e-replied-face ((,class (:foreground ,green1 :bold t))))
- `(mu4e-header-face ((,class (:foreground ,brown1))))
- `(mu4e-title-face ((,class (:foreground ,purple1 :bold t :height 1.1))))
- `(mu4e-trashed-face ((,class (:foreground ,grey1))))
- `(mu4e-header-key-face ((,class (:foreground ,brown1))))
- `(mu4e-header-title-face ((,class (:foreground ,blue1 :bold t))))
- `(mu4e-header-marks-face ((,class (:foreground ,purple2 :bold t))))
- `(mu4e-header-value-face ((,class (:foreground ,brown1))))
- `(mu4e-header-highlight-face ((,class (:background ,grey3))))
- `(mu4e-special-header-value-face ((,class (:foreground ,aqua1))))
- `(mu4e-contact-face ((,class (:foreground ,green1))))
- `(mu4e-highlight-face ((,class (:foreground ,green1 :bold t))))
- `(mu4e-maildirs-extension-maildir-face ((,class (:foreground ,brown1))))
-
-
- (custom-theme-set-variables
- 'morning-star
- `(ansi-color-names-vector [,black1 ,red2 ,green1 ,yellow1 ,blue1 ,purple1 ,aqua1 ,fg]))))
-
-;;;###autoload
-(when load-file-name
- (add-to-list 'custom-theme-load-path
- (file-name-as-directory (file-name-directory load-file-name))))
-
-(provide-theme 'morning-star)
-
-;; Local Variables:
-;; no-byte-compile: t
-;; End:
-
-;;; morning-star-theme.el ends here
diff --git a/.doom.d/config.el b/.doom.d/config.el
deleted file mode 100644
index d78f5bb..0000000
--- a/.doom.d/config.el
+++ /dev/null
@@ -1,309 +0,0 @@
-;;; $DOOMDIR/config.el -*- lexical-binding: t; -*-
-;; Input method
-(setq default-input-method "korean-hangul")
-(global-set-key (kbd "") 'toggle-input-method)
-
-;; Tabs
-;;(setq! indent-tabs-mode t)
-(setq-default tab-width 4)
-
-;;
-(setq user-full-name "JaeYoo-Im"
- user-mail-address "cpu3792@gmail.com")
-
-;; Frame parameter
-(set-frame-parameter (selected-frame) 'fullscreen 'maximized)
-(add-to-list 'default-frame-alist '(fullscreen . maximized))
-(unless (display-graphic-p)
- (xterm-mouse-mode))
-
-;; Fonts
-(setq doom-font (font-spec :family "Fira Code" :size 14 :weight 'semi-light)
- doom-variable-pitch-font (font-spec :family "Ubuntu" :size 14))
-(set-fontset-font t 'hangul (font-spec :name "NanumGothic"))
-
-;; 'nil 't 'relative
-(setq display-line-numbers-type t)
-
-;; to use relative path for org
-(setq org-directory "~/org/")
-(setq visible-bell t)
-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
-;; Default
-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
-; Eshell
-(when (eq system-type 'windows-nt)
- (setq explicit-shell-file-name "powershell.exe")
- (setq explicit-powershell.exe-args '()))
-(defun ju/get-prompt-path ()
- (let* ((current-path (eshell/pwd))
- (git-output (shell-command-to-string "git rev-parse --show-toplevel"))
- (has-path (not (string-match "^fatal" git-output))))
- (if (not has-path)
- (abbreviate-file-name current-path)
- (string-remove-prefix (file-name-directory git-output) current-path))))
-
-(defun ju/eshell-prompt ()
- (let ((current-branch (magit-get-current-branch)))
- (concat
- "\n"
- (propertize (system-name) 'face `(:foreground "#62aeed"))
- (propertize " ॐ " 'face `(:foreground "white"))
- (propertize (ju/get-prompt-path) 'face `(:foreground "#82cfd3"))
- (when current-branch
- (concat
- (propertize " • " 'face `(:foreground "white"))
- (propertize (concat " " current-branch) 'face `(:foreground "#c475f0"))))
- (propertize " • " 'face `(:foreground "white"))
- (propertize (format-time-string "%I:%M:%S %p") 'face `(:foreground "#5a5b7f"))
- (if (= (user-uid) 0)
- (propertize "\n#" 'face `(:foreground "red2"))
- (propertize "\nλ" 'face `(:foreground "#aece4a")))
- (propertize " " 'face `(:foreground "white")))))
-
-(defun ju/configure-eshell ()
- ;; Save command history when commands are entered
- (add-hook 'eshell-pre-command-hook 'eshell-save-some-history)
-
- ;; Truncate buffer for performance
- (add-to-list 'eshell-output-filter-functions 'eshell-truncate-buffer)
-
- ;; Bind some useful keys for evil-mode
- (evil-define-key '(normal insert visual) eshell-mode-map (kbd "C-r") 'counsel-esh-history)
- (evil-define-key '(normal insert visual) eshell-mode-map (kbd "") 'eshell-bol)
- (evil-normalize-keymaps)
-
- (setq eshell-prompt-function 'ju/eshell-prompt
- eshell-prompt-regexp "^λ "
- eshell-history-size 10000
- eshell-buffer-maximum-lines 10000
- eshell-hist-ignoredups t
- eshell-scroll-to-bottom-on-input t))
-(add-hook 'eshell-first-time-mode-hook #'ju/configure-eshell)
-(setq eshell-prompt-function
- (lambda ()
- (concat (abbreviate-file-name (eshell/pwd))
- (if (= (user-uid) 0) " # " " λ ")))
- eshell-prompt-regexp "^[^#λ\n]* [#λ] ")
-; Dired ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
-(use-package! dired
- :config
- (evil-collection-define-key 'normal 'dired-mode-map
- "h" 'dired-up-directory
- "l" 'dired-find-file))
-(use-package! dired-hide-dotfiles
- :hook (dired-mode . dired-hide-dotfiles-mode)
- :config
- (evil-collection-define-key 'normal 'dired-mode-map
- "H" 'dired-hide-dotfiles-mode))
-(setq! delete-by-moving-to-trash t
- trash-directory "~/.local/share/Trash/files/")
-(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 peep-dired-mode-map
- (kbd "j") 'peep-dired-next-file
- (kbd "k") 'peep-dired-prev-file)
-(add-hook 'peep-dired-hook 'evil-normalize-keymaps)
-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
-;; UI
-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
-; themes ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
-(if (display-graphic-p)
- (setq doom-theme 'doom-palenight)
- (setq doom-theme 'doom-gruvbox))
-; dashboard ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
-(use-package! page-break-lines
- :init
- (global-page-break-lines-mode t))
-(use-package! dashboard
- :init
- (setq dashboard-set-heading-icons t)
- (setq dashboard-set-file-icons t)
- ;;(setq dashboard-banner-logo-title "Emacs is more than a text editor!")
- ;;(setq dashboard-startup-banner 'logo)
- (setq dashboard-center-content t)
- (setq dashboard-week-agenda t)
- (setq dashboard-set-footer t)
- (setq dashboard-page-separator "\n\f\n")
- (setq dashboard-agenda-time-string-format "%d/%m/%Y %A %H:%M")
- (setq dashboard-items '((recents . 10)
- (agenda . 5)
- (bookmarks . 5)
- (projects . 5)
- (registers . 5)))
- (setq dashboard-set-navigator t)
- (setq dashboard-navigator-buttons
- `(;; line1
- ((,(all-the-icons-octicon "mark-github" :height 1.1 :v-adjust 0.0)
- "Github"
- "Browse my Github"
- (lambda (&rest _) (browse-url "https://github.com/JaeUs3792/")))
- (,(all-the-icons-octicon "home" :height 1.1 :v-adjust 0.0)
- "Homepage"
- "Browse my Homepage"
- (lambda (&rest _) (browse-url "https://jaeus.net")))
- (,(all-the-icons-octicon "zap" :height 1.1 :v-adjust 0.0)
- "Refresh"
- "Refresh Packages"
- (lambda (&rest _) (package-refresh-contents)) warning))))
- :config
- (dashboard-setup-startup-hook)
- (dashboard-modify-heading-icons '((recents . "file-text")
- (bookmarks . "book"))))
-(setq initial-buffer-choice (lambda () (get-buffer-create "*dashboard*")))
-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
-;; Org Mode
-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
-; write room ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
-(use-package! visual-fill-column)
-(defun write-room-enable ()
- (setq visual-fill-column-width 100
- visual-fill-column-center-text t)
- (visual-fill-column-mode 1))
-(add-hook 'org-mode-hook #'(lambda () (display-line-numbers-mode 0)))
-(add-hook 'org-mode-hook #'write-room-enable)
-
-;; orgmode
-(with-eval-after-load 'org
- ;; This is needed as of Org 9.2
- (require 'org-tempo)
- (add-to-list 'org-structure-template-alist '("sh" . "src shell"))
- (add-to-list 'org-structure-template-alist '("el" . "src emacs-lisp"))
- (add-to-list 'org-structure-template-alist '("hs" . "src haskell"))
- (add-to-list 'org-structure-template-alist '("cc" . "src c"))
- (add-to-list 'org-structure-template-alist '("cp" . "src c++"))
- (add-to-list 'org-structure-template-alist '("rs" . "src rust"))
- (add-to-list 'org-structure-template-alist '("py" . "src jupyter-python"))
- (add-to-list 'org-structure-template-alist '("oc" . "src octave"))
- (add-to-list 'org-structure-template-alist '("vl" . "src verilog"))
- (add-to-list 'org-structure-template-alist '("vh" . "src vhdl")))
-
-(after! org
- (setq! org-ellipsis " ⤵"
- org-hide-emphasis-markers t
- org-image-actual-width 600
- org-redisplay-inline-images t
- org-display-inline-images t
- org-startup-with-inline-images "inlineimages"
- org-src-fontify-natively t
- org-fontify-quote-and-verse-blocks t
- org-agenda-start-with-log-mode t
- org-startup-indented t
- org-startup-align-all-tables t
- org-log-done 'time
- org-log-into-drawer "LOGBOOK"
- org-clock-into-drawer "CLOCKING"
- org-lowest-priority 68)
- ;;(setq org-todo-keywords
- ;; '((sequence "TODO(t)" "HOLD(h)" "|" "KILL(k)" "DONE(d)")))
- (setq! org-superstar-item-bullet-alist
- '((?+ . ?➢)
- (?* . ?✰)
- (?- . ?➸)))
- (custom-set-faces!
- '(org-level-1 :height 1.7 :weight ultra-bold :foreground "#81a2be") ;; :foreground "#81a2be"
- '(org-level-2 :height 1.6 :weight extra-bold :foreground "#b294bb") ;; :foreground "#b294bb"
- '(org-level-3 :height 1.5 :weight bold :foreground "#b5bd68") ;; :foreground "#b5bd68"
- '(org-level-4 :height 1.4 :weight semi-bold :foreground "#e6c547") ;; :foreground "#e6c547"
- '(org-level-5 :height 1.3 :weight normal :foreground "#cc6666") ;; :foreground "#cc6666"
- '(org-level-6 :height 1.2 :weight normal :foreground "#70c0ba") ;; :foreground "#70c0ba"
- '(org-level-7 :height 1.1 :weight normal :foreground "#b77ee0") ;; :foreground "#b77ee0"
- '(org-level-8 :height 1.0 :weight normal :foreground "#9ec400")) ;; :foreground "#9ec400"
- (custom-set-faces!
- '(org-document-title :height 2.0)))
-(setq! org-use-sub-superscripts '{})
-(setq! org-export-with-sub-superscripts '{})
-
-;; fancy priorities
-(setq! org-fancy-priorities-list `(,(all-the-icons-faicon "flag" :height 1.1 :v-adjust 0.0)
- ,(all-the-icons-faicon "arrow-up" :height 1.1 :v-adjust 0.0)
- ,(all-the-icons-faicon "square" :height 1.1 :v-adjust 0.0)
- ,(all-the-icons-faicon "ban" :height 1.1 :v-adjust 0.0)))
-;; TODO somewhere
-(add-hook 'markdown-mode-hook #'write-room-enable)
-(add-hook 'nov-mode-hook #'write-room-enable)
-
-;; valign
-;; make table align
-(use-package! valign
- :custom
- (valign-fancy-bar t))
-
-;; org appear (bug.1)
-;;(use-package! org-appear
-;; :hook (org-mode-hook . org-appear-mode)
-;; :config
-;; (setq org-appear-autoemphasis t
-;; org-appear-autolinks t
-;; org-appear-autoentities t
-;; org-appear-autosubmarkers t))
-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
-; Function Definition
-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
-;; Screen Shot ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
-(defun my/self-screenshot (&optional type)
- "Save a screenshot of type TYPE of the current Emacs frame.
- As shown by the function `', type can weild the value `svg',
- `png', `pdf'.
-
- This function will output in /tmp a file beginning with \"Emacs\"
- and ending with the extension of the requested TYPE."
- (interactive)
- (let* ((type (if type type
- (intern (completing-read "Screenshot Type: "
- '(png svg pdf postscript)))))
- (extension (pcase type
- ('png ".png")
- ('svg ".svg")
- ('pdf ".pdf")
- ('postscript ".ps")
- (otherwise (error "Cannot export screenshot of type %s" otherwise))))
- (filename (make-temp-file "Emacs-" nil extension))
- (data (x-export-frames nil type)))
- (with-temp-file filename
- (insert data))
- (kill-new filename)
- (rename-file filename (expand-file-name (file-name-nondirectory filename) "~"))
- (message filename)))
-;;Transparency;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
-;; After Emacs 29
-;;(set-frame-parameter nil 'alpha-background 0.9)
-;;(add-to-list 'default-frame-alist '(alpha-background . 0.9))
-;;(defun toggle-transparency ()
-;; "toggle transparency."
-;; (interactive)
-;; (let ((alpha-transparency 1.0))
-;; (if (eq (frame-parameter nil 'alpha-background) alpha-transparency)
-;; (set-frame-parameter nil 'alpha-background 0.9)
-;; (set-frame-parameter nil 'alpha-background alpha-transparency))))
-;;(defun my/transparency-round (val)
-;; "Round VAL to the nearest tenth of an integer."
-;; (/ (round (* 10 val)) 10.0))
-;;
-;;(defun my/increase-frame-alpha-background ()
-;; "Increase current frame’s alpha background."
-;; (interactive)
-;; (set-frame-parameter nil
-;; 'alpha-background
-;; (my/transparency-round
-;; (min 1.0
-;; (+ (frame-parameter nil 'alpha-background) 0.1))))
-;; (message "%s" (frame-parameter nil 'alpha-background)))
-;;
-;;(defun my/decrease-frame-alpha-background ()
-;; "Decrease current frame’s alpha background."
-;; (interactive)
-;; (set-frame-parameter nil
-;; 'alpha-background
-;; (my/transparency-round
-;; (max 0.0
-;; (- (frame-parameter nil 'alpha-background) 0.1))))
-;; (message "%s" (frame-parameter nil 'alpha-background)))
-;; bind key
-;;(global-set-key (kbd "C-c t") 'toggle-transparency)
diff --git a/.doom.d/init.el b/.doom.d/init.el
deleted file mode 100644
index 7caad20..0000000
--- a/.doom.d/init.el
+++ /dev/null
@@ -1,202 +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 link to Doom's Module Index where all
-;; of our modules are listed, including 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
- ;;bidi ; (tfel ot) thgir etirw uoy gnipleh
- ;;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 ; a search engine for love and life
- vertico ; the search engine of the future
-
- :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) ; 🙂
- 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 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 +pretty) ; 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 +tree) ; 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 +flyspell) ; tasing you for misspelling mispelling
- ;;grammar ; tasing grammar mistake every you make
-
- :tools
- ;;ansible
- ;;biblio ; Writes a PhD for you (citation needed)
- ;;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 +eglot) ; M-x vscode
- 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
- tree-sitter ; syntax and parsing, sitting in a tree...
- ;;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...
- ;;beancount ; mind the GAAP
- ;;(cc +lsp) ; C > C++ == 1
- ;;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
- ;;dhall
- ;;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
- ;;factor
- ;;faust ; dsp, but you get to keep your soul
- ;;fortran ; in FORTRAN, GOD is REAL (unless declared INTEGER)
- ;;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
- ;;(graphql +lsp) ; Give queries a REST
- ;;(haskell +lsp) ; 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 +lsp) ; 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 +latexmk +fold) ; writing papers in Emacs has never been so fun
- ;;lean ; for folks with too much to prove
- ;;ledger ; be audit you can be
- ;;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
- +dragndrop
- +gnuplot
- +hugo
- +journal
- +jupyter
- +pretty
- +roam2)
- ; organize your plain life in plain text
- ;;php ; perl's insecure younger brother
- ;;plantuml ; diagrams for confusing people more
- ;;purescript ; javascript, but functional
- (python +lsp) ; 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 +lsp) ; Fe2O3.unwrap().unwrap().unwrap().unwrap()
- ;;scala ; java, but good
- ;;(scheme +guile) ; 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
- ;;zig ; C, but simpler
-
- :email
- ;;(mu4e +org +gmail)
- ;;notmuch
- ;;(wanderlust +gmail)
-
- :app
- ;;calendar
- ;;emms
- ;;everywhere ; *leave* Emacs!? You must be joking
- ;;irc ; how neckbeards socialize
- (rss +org) ; emacs as an RSS reader
- ;;twitter ; twitter client https://twitter.com/vnought
-
- :config
- ;;literate
- (default +bindings +smartparens))
diff --git a/.doom.d/packages.el b/.doom.d/packages.el
deleted file mode 100644
index d4409ec..0000000
--- a/.doom.d/packages.el
+++ /dev/null
@@ -1,58 +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/radian-software/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 radian-software/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! dired-hide-dotfiles)
-(package! peep-dired)
-(package! visual-fill-column)
-(package! dashboard)
-(package! page-break-lines)
-(package! valign)
diff --git a/.minttyrc b/.minttyrc
deleted file mode 100644
index 8c58f19..0000000
--- a/.minttyrc
+++ /dev/null
@@ -1,39 +0,0 @@
-# Dracula
-
-Background=_/mnt/c/Users/User/wallpaper/colony.jpg,39
-ForegroundColour=248,248,242
-BackgroundColour=40,42,54
-Black=0,0,0
-BoldBlack=104,104,104
-Red=255,85,85
-BoldRed=255,110,103
-Green=80,250,123
-BoldGreen=90,247,142
-Yellow=241,250,140
-BoldYellow=244,249,157
-Blue=202,169,250
-BoldBlue=202,169,250
-Magenta=255,121,198
-BoldMagenta=255,146,208
-Cyan=139,233,253
-BoldCyan=154,237,254
-White=191,191,191
-BoldWhite=230,230,230
-
-
-Font=Fira Code Retina
-FontHeight=12
-Term=xterm-256color
-Locale=ko_KR
-Charset=UTF-8
-FontSmoothing=default
-AllowBlinking=no
-BoldAsFont=no
-CursorType=block
-CursorBlinks=yes
-BellTaskbar=no
-BellType=0
-BellFlash=no
-FontWeight=400
-FontIsBold=no
-Transparency=medium
diff --git a/.xmonad/haskell_20.xpm b/.xmonad/haskell_20.xpm
deleted file mode 100644
index 9e11ae2..0000000
--- a/.xmonad/haskell_20.xpm
+++ /dev/null
@@ -1,25 +0,0 @@
-/* XPM */
-static char * haskell_20_xpm[] = {
-"20 20 2 1",
-" c None",
-". c #FFFFFF",
-" ",
-" ",
-" ",
-".... .... ",
-" .... ... ",
-" ... .... ",
-" .... .... ",
-" .... ... ........",
-" ... .... .......",
-" .... .... ",
-" .... .... ",
-" ... ...... .....",
-" .... ....... ....",
-" .... .... ... ",
-" ... .... .... ",
-" .... ... .... ",
-".... .... ... ",
-" ",
-" ",
-" "};
diff --git a/.xmonad/scripts/autostart.sh b/.xmonad/scripts/autostart.sh
deleted file mode 100755
index ced872a..0000000
--- a/.xmonad/scripts/autostart.sh
+++ /dev/null
@@ -1,41 +0,0 @@
-#!/bin/bash
-
-function run {
- if ! pgrep $1 ;
- then
- $@&
- fi
-}
-
-#(sleep 2; run $HOME/.config/polybar/launch.sh) &
-
-# cursor
-xsetroot -cursor_name left_ptr &
-
-# background
-#feh --bg-fill /usr/share/backgrounds/arcolinux/arco-wallpaper.jpg &
-#dwall -p -s firewatch
-source ~/scripts/wsl_get_display.sh
-~/scripts/random_wallpaper.sh
-
-# other apps
-#run variety &
-#run nm-applet &
-#run pamac-tray &
-#run xfce4-power-manager &
-#run volumeicon &
-#run bitwarden-desktop &
-#numlockx on &
-#blueberry-tray &
-#run lxsession &
-
-#fcitx &
-picom &
-#/usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1 &
-#/usr/lib/xfce4/notifyd/xfce4-notifyd &
-#seadrive-gui &
-
-#emacs --daemon &
-
-#sleep 2
-#trayer --edge top --align right --widthtype request --padding 6 --SetDockType true --SetPartialStrut true --expand true --monitor 0 --transparent true --alpha 0 --tint 0x282c34 --height 16 &
diff --git a/.xmonad/xmonad.hs b/.xmonad/xmonad.hs
deleted file mode 100644
index dc9cafc..0000000
--- a/.xmonad/xmonad.hs
+++ /dev/null
@@ -1,489 +0,0 @@
- -- Base
-import XMonad
-import System.Directory
-import System.IO (hClose, hPutStr, hPutStrLn)
-import System.Exit (exitSuccess)
-import qualified XMonad.StackSet as W
-
- -- Actions
-import XMonad.Actions.CopyWindow (kill1)
-import XMonad.Actions.CycleWS (Direction1D(..), moveTo, shiftTo, WSType(..), nextScreen, prevScreen)
-import XMonad.Actions.GridSelect
-import XMonad.Actions.MouseResize
-import XMonad.Actions.Promote
-import XMonad.Actions.RotSlaves (rotSlavesDown, rotAllDown)
-import XMonad.Actions.WindowGo (runOrRaise)
-import XMonad.Actions.WithAll (sinkAll, killAll)
-import qualified XMonad.Actions.Search as S
-
- -- Data
-import Data.Char (isSpace, toUpper)
-import Data.Maybe (fromJust)
-import Data.Monoid
-import Data.Maybe (isJust)
-import Data.Tree
-import qualified Data.Map as M
-
- -- Hooks
-import XMonad.Hooks.DynamicLog (dynamicLogWithPP, wrap, xmobarPP, xmobarColor, shorten, PP(..))
-import XMonad.Hooks.EwmhDesktops -- for some fullscreen events, also for xcomposite in obs.
-import XMonad.Hooks.ManageDocks (avoidStruts, docks, manageDocks, ToggleStruts(..))
-import XMonad.Hooks.ManageHelpers (isFullscreen, doFullFloat, doCenterFloat)
-import XMonad.Hooks.ServerMode
-import XMonad.Hooks.SetWMName
-import XMonad.Hooks.StatusBar
-import XMonad.Hooks.StatusBar.PP
-import XMonad.Hooks.WindowSwallowing
-import XMonad.Hooks.WorkspaceHistory
-
- -- Layouts
-import XMonad.Layout.Accordion
-import XMonad.Layout.GridVariants (Grid(Grid))
-import XMonad.Layout.SimplestFloat
-import XMonad.Layout.Spiral
-import XMonad.Layout.ResizableTile
-import XMonad.Layout.Tabbed
-import XMonad.Layout.ThreeColumns
-
- -- Layouts modifiers
-import XMonad.Layout.LayoutModifier
-import XMonad.Layout.LimitWindows (limitWindows, increaseLimit, decreaseLimit)
-import XMonad.Layout.MultiToggle (mkToggle, single, EOT(EOT), (??))
-import XMonad.Layout.MultiToggle.Instances (StdTransformers(NBFULL, MIRROR, NOBORDERS))
-import XMonad.Layout.NoBorders
-import XMonad.Layout.Renamed
-import XMonad.Layout.ShowWName
-import XMonad.Layout.Simplest
-import XMonad.Layout.Spacing
-import XMonad.Layout.SubLayouts
-import XMonad.Layout.WindowArranger (windowArrange, WindowArrangerMsg(..))
-import XMonad.Layout.WindowNavigation
-import qualified XMonad.Layout.ToggleLayouts as T (toggleLayouts, ToggleLayout(Toggle))
-import qualified XMonad.Layout.MultiToggle as MT (Toggle(..))
-
- -- Utilities
-import XMonad.Util.Dmenu
-import XMonad.Util.EZConfig (additionalKeysP, mkNamedKeymap)
-import XMonad.Util.NamedActions
-import XMonad.Util.NamedScratchpad
-import XMonad.Util.Run (runProcessWithInput, safeSpawn, spawnPipe)
-import XMonad.Util.SpawnOnce
-
- -- ColorScheme module (SET ONLY ONE!)
- -- Possible choice are:
- -- DoomOne
- -- Dracula
- -- GruvboxDark
- -- MonokaiPro
- -- Nord
- -- OceanicNext
- -- Palenight
- -- SolarizedDark
- -- SolarizedLight
- -- TomorrowNight
-
-colorScheme = "doom-one"
-
-colorBack = "#282c34"
-colorFore = "#bbc2cf"
-
-color01 = "#1c1f24"
-color02 = "#ff6c6b"
-color03 = "#98be65"
-color04 = "#da8548"
-color05 = "#51afef"
-color06 = "#c678dd"
-color07 = "#5699af"
-color08 = "#202328"
-color09 = "#5b6268"
-color10 = "#da8548"
-color11 = "#4db5bd"
-color12 = "#ecbe7b"
-color13 = "#3071db"
-color14 = "#a9a1e1"
-color15 = "#46d9ff"
-color16 = "#dfdfdf"
-
-colorTrayer :: String
-colorTrayer = "--tint 0x282c34"
-
-myFont :: String
-myFont = "xft:NanumGothic:regular:size=9:antialias=true:hinting=true"
-
-myEmojiFont :: String
-myEmojiFont = "xft:Noto Fonts Emoji:regular:size=9:antialias=true:hinting=true"
-
-myModMask :: KeyMask
-myModMask = mod4Mask -- Sets modkey to super/windows key
-
-myTerminal :: String
-myTerminal = "alacritty" -- Sets default terminal
-
-myBrowser :: String
-myBrowser = "qutebrowser " -- Sets qutebrowser as browser
-
-myEmacs :: String
-myEmacs = "emacsclient -c -a 'emacs' " -- Makes emacs keybindings easier to type
-
-myEditor :: String
-myEditor = "emacsclient -c -a 'emacs' " -- Sets emacs as editor
--- myEditor = myTerminal ++ " -e vim " -- Sets vim as editor
-
-myBorderWidth :: Dimension
-myBorderWidth = 2 -- Sets border width for windows
-
-myNormColor :: String
-myNormColor = "#282c34" -- Border color of normal windows
-
-myFocusColor :: String
-myFocusColor = "#46d9ff" -- Border color of focused windows
-
-altMask :: KeyMask
-altMask = mod1Mask -- Setting this for use in xprompts
-
-windowCount :: X (Maybe String)
-windowCount = gets $ Just . show . length . W.integrate' . W.stack . W.workspace . W.current . windowset
-
-myStartupHook :: X ()
-myStartupHook = do
- --spawnOnce "xrandr --output DP-4 --primary --mode 2560x1440 --pos 0x0 --rotate normal --output HDMI-0 --mode 1920x1080 --pos 2560x0 --rotate normal"
- spawn "$HOME/.xmonad/scripts/autostart.sh"
- --spawnOnce "nm-applet &"
- --spawnOnce "picom -b --config ~/.xmonad/picom.conf &"
- --spawnOnce "picom --experimental-backends -b --config ~/.xmonad/picom.conf &"
- --spawnOnce "dwall -s firewatch &"
- --spawnOnce "fcitx &"
- --spawnOnce "seafile-applet &"
- --spawnOnce "seadrive-gui &"
- --spawnOnce "blueberry-tray &"
- --spawnOnce "volumeicon &"
- --spawnOnce "enpass"
- --spawnOnce "green-tunnel -s &"
- --spawnOnce "trayer --edge top --align right --widthtype request --padding 6 --SetDockType true --SetPartialStrut true --expand true --monitor 0 --transparent true --alpha 0 --tint 0x282c34 --height 24 &"
- --spawnOnce "/usr/bin/emacs --daemon &"
- -- spawnOnce "/usr/bin/emacs --daemon &" -- emacs daemon for the emacsclient
- -- spawnOnce "kak -d -s mysession &" -- kakoune daemon for better performance
- -- spawnOnce "urxvtd -q -o -f &" -- urxvt daemon for better performance
-
- --spawnOnce "xargs xwallpaper --stretch < ~/.xwallpaper" -- set last saved with xwallpaper
- -- spawnOnce "/bin/ls ~/wallpapers | shuf -n 1 | xargs xwallpaper --stretch" -- set random xwallpaper
- -- spawnOnce "~/.fehbg &" -- set last saved feh wallpaper
- -- spawnOnce "feh --randomize --bg-fill ~/wallpapers/*" -- feh set random wallpaper
- -- spawnOnce "nitrogen --restore &" -- if you prefer nitrogen to feh
- setWMName "LG3D"
-
--- Theme for showWName which prints current workspace when you change workspaces.
---Makes setting the spacingRaw simpler to write. The spacingRaw module adds a configurable amount of space around windows.
-mySpacing :: Integer -> l a -> XMonad.Layout.LayoutModifier.ModifiedLayout Spacing l a
-mySpacing i = spacingRaw False (Border i i i i) True (Border i i i i) True
-
--- Below is a variation of the above except no borders are applied
--- if fewer than two windows. So a single window has no gaps.
-mySpacing' :: Integer -> l a -> XMonad.Layout.LayoutModifier.ModifiedLayout Spacing l a
-mySpacing' i = spacingRaw True (Border i i i i) True (Border i i i i) True
-
--- Defining a bunch of layouts, many that I don't use.
--- limitWindows n sets maximum number of windows displayed for layout.
--- mySpacing n sets the gap size around the windows.
-tall = renamed [Replace "tall"]
- $ limitWindows 5
- $ smartBorders
- $ windowNavigation
- $ addTabs shrinkText myTabTheme
- $ subLayout [] (smartBorders Simplest)
- $ mySpacing 8
- $ ResizableTall 1 (3/100) (1/2) []
-monocle = renamed [Replace "monocle"]
- $ smartBorders
- $ windowNavigation
- $ addTabs shrinkText myTabTheme
- $ subLayout [] (smartBorders Simplest)
- $ Full
-floats = renamed [Replace "floats"]
- $ smartBorders
- $ simplestFloat
-grid = renamed [Replace "grid"]
- $ limitWindows 9
- $ smartBorders
- $ windowNavigation
- $ addTabs shrinkText myTabTheme
- $ subLayout [] (smartBorders Simplest)
- $ mySpacing 8
- $ mkToggle (single MIRROR)
- $ Grid (16/10)
-spirals = renamed [Replace "spirals"]
- $ limitWindows 9
- $ smartBorders
- $ windowNavigation
- $ addTabs shrinkText myTabTheme
- $ subLayout [] (smartBorders Simplest)
- $ mySpacing' 8
- $ spiral (6/7)
-threeCol = renamed [Replace "threeCol"]
- $ limitWindows 7
- $ smartBorders
- $ windowNavigation
- $ addTabs shrinkText myTabTheme
- $ subLayout [] (smartBorders Simplest)
- $ ThreeCol 1 (3/100) (1/2)
-threeRow = renamed [Replace "threeRow"]
- $ limitWindows 7
- $ smartBorders
- $ windowNavigation
- $ addTabs shrinkText myTabTheme
- $ subLayout [] (smartBorders Simplest)
- -- Mirror takes a layout and rotates it by 90 degrees.
- -- So we are applying Mirror to the ThreeCol layout.
- $ Mirror
- $ ThreeCol 1 (3/100) (1/2)
-tabs = renamed [Replace "tabs"]
- -- I cannot add spacing to this layout because it will
- -- add spacing between window and tabs which looks bad.
- $ tabbed shrinkText myTabTheme
-tallAccordion = renamed [Replace "tallAccordion"]
- $ Accordion
-wideAccordion = renamed [Replace "wideAccordion"]
- $ Mirror Accordion
-
--- setting colors for tabs layout and tabs sublayout.
-myTabTheme = def { fontName = myFont
- , activeColor = color15
- , inactiveColor = color08
- , activeBorderColor = color15
- , inactiveBorderColor = colorBack
- , activeTextColor = colorBack
- , inactiveTextColor = color16
- }
-
--- Theme for showWName which prints current workspace when you change workspaces.
-myShowWNameTheme :: SWNConfig
-myShowWNameTheme = def
- { swn_font = "xft:Ubuntu:bold:size=60"
- , swn_fade = 1.0
- , swn_bgcolor = "#1c1f24"
- , swn_color = "#ffffff"
- }
-
--- The layout hook
-myLayoutHook = avoidStruts
- $ mouseResize
- $ windowArrange
- $ T.toggleLayouts floats
- $ mkToggle (NBFULL ?? NOBORDERS ?? EOT) myDefaultLayout
- where
- myDefaultLayout = withBorder myBorderWidth tall
- ||| noBorders monocle
- ||| floats
- ||| noBorders tabs
- ||| grid
- ||| spirals
- ||| threeCol
- ||| threeRow
- ||| tallAccordion
- ||| wideAccordion
-
-myWorkspaces = [" 1 ", " 2 ", " 3 ", " 4 ", " 5 ", " 6 ", " 7 ", " 8 ", " 9 "]
--- myWorkspaces = [" dev ", " www ", " sys ", " doc ", " vbox ", " chat ", " mus ", " vid ", " gfx "]
-myWorkspaceIndices = M.fromList $ zipWith (,) myWorkspaces [1..] -- (,) == \x y -> (x,y)
-
-clickable ws = ""++ws++""
- where i = fromJust $ M.lookup ws myWorkspaceIndices
-
-myManageHook :: XMonad.Query (Data.Monoid.Endo WindowSet)
-myManageHook = composeAll
- -- 'doFloat' forces a window to float. Useful for dialog boxes and such.
- -- using 'doShift ( myWorkspaces !! 7)' sends program to workspace 8!
- -- I'm doing it this way because otherwise I would have to write out the full
- -- name of my workspaces and the names would be very long if using clickable workspaces.
- [ className =? "confirm" --> doFloat
- , className =? "file_progress" --> doFloat
- , className =? "dialog" --> doFloat
- , className =? "download" --> doFloat
- , className =? "error" --> doFloat
- , className =? "Gimp" --> doFloat
- , className =? "notification" --> doFloat
- , className =? "pinentry-gtk-2" --> doFloat
- , className =? "splash" --> doFloat
- , className =? "toolbar" --> doFloat
- --, title =? "Oracle VM VirtualBox Manager" --> doFloat
- --, title =? "Mozilla Firefox" --> doShift ( myWorkspaces !! 1 )
- --, className =? "brave-browser" --> doShift ( myWorkspaces !! 1 )
- --, className =? "qutebrowser" --> doShift ( myWorkspaces !! 1 )
- --, className =? "mpv" --> doShift ( myWorkspaces !! 7 )
- --, className =? "Gimp" --> doShift ( myWorkspaces !! 8 )
- --, className =? "VirtualBox Manager" --> doShift ( myWorkspaces !! 4 )
- , (className =? "firefox" <&&> resource =? "Dialog") --> doFloat -- Float Firefox Dialog
- , (className =? "steam" <&&> resource =? "Dialog") --> doFloat -- Float Firefox Dialog
- ]
-
-myKeys :: [(String, X ())]
-myKeys =
- -- Xmonad
- [ ("M-C-r", spawn "xmonad --recompile") -- Recompiles xmonad
- , ("M-S-r", spawn "xmonad --restart") -- Restarts xmonad
- , ("M-S-q", io exitSuccess) -- Quits xmonad
-
- -- Run Prompt
- -- M-p was the default keybinding. I've changed it to M-S-RET because I will use
- -- M-p as part of the keychord for the other dmenu script bindings.
- , ("M-S-", spawn "dmenu_run -i -p \"Run: \"") -- Dmenu
-
- -- Launch Apps
- , ("M-f", spawn "firefox")
- , ("M-v", spawn "vivaldi-stable")
- , ("M-t", spawn "thunar")
- , ("M-p", spawn "bitwarden-desktop")
- --, ("M-e", spawn "emacs")
- , ("M-e", spawn myEmacs)
- , ("M-l", spawn "arcolinux-logout")
-
- -- Useful programs to have a keybinding for launch
- , ("M-", spawn (myTerminal))
- --, ("M-b", spawn (myBrowser ++ " www.youtube.com/c/DistroTube/"))
- --, ("M-M1-h", spawn (myTerminal ++ " -e htop"))
-
- -- Kill windows
- , ("M-S-c", kill1) -- Kill the currently focused client
- --, ("M-S-a", killAll) -- Kill all windows on current workspace
-
- -- Workspaces
- --, ("M-.", nextScreen) -- Switch focus to next monitor
- --, ("M-,", prevScreen) -- Switch focus to prev monitor
- --, ("M-S-", shiftTo Next nonNSP >> moveTo Next nonNSP) -- Shifts focused window to next ws
- --, ("M-S-", shiftTo Prev nonNSP >> moveTo Prev nonNSP) -- Shifts focused window to prev ws
-
- -- Floating windows
- --, ("M-f", sendMessage (T.Toggle "floats")) -- Toggles my 'floats' layout
- --, ("M-t", withFocused $ windows . W.sink) -- Push floating window back to tile
- --, ("M-S-t", sinkAll) -- Push ALL floating windows to tile
-
- -- Increase/decrease spacing (gaps)
- --, ("M-d", decWindowSpacing 4) -- Decrease window spacing
- --, ("M-i", incWindowSpacing 4) -- Increase window spacing
- --, ("M-S-d", decScreenSpacing 4) -- Decrease screen spacing
- --, ("M-S-i", incScreenSpacing 4) -- Increase screen spacing
-
- -- Grid Select (CTR-g followed by a key)
- --, ("M-g g", spawnSelected' myAppGrid) -- grid select favorite apps
- --, ("M-g t", goToSelected $ mygridConfig myColorizer) -- goto selected window
- --, ("C-g b", bringSelected $ mygridConfig myColorizer) -- bring selected window
-
- -- Windows navigation
- --, ("M-m", windows W.focusMaster) -- Move focus to the master window
- , ("M-j", windows W.focusDown) -- Move focus to the next window
- , ("M-k", windows W.focusUp) -- Move focus to the prev window
- --, ("M-S-m", windows W.swapMaster) -- Swap the focused window and the master window
- --, ("M-S-j", windows W.swapDown) -- Swap focused window with next window
- --, ("M-S-k", windows W.swapUp) -- Swap focused window with prev window
- --, ("M-", promote) -- Moves focused window to master, others maintain order
- --, ("M-S-", rotSlavesDown) -- Rotate all windows except master and keep focus in place
- , ("M-C-", rotAllDown) -- Rotate all the windows in the current stack
-
- -- Layouts
- --, ("M-", sendMessage NextLayout) -- Switch to next layout
- --, ("M-C-M1-", sendMessage Arrange)
- --, ("M-C-M1-", sendMessage DeArrange)
- --, ("M-S-", sendMessage ToggleStruts) -- Toggles struts
- --, ("M-S-n", sendMessage $ MT.Toggle NOBORDERS) -- Toggles noborder
- , ("M-", sendMessage (MT.Toggle NBFULL) >> sendMessage ToggleStruts) -- Toggles noborder/full
-
- -- Increase/decrease windows in the master pane or the stack
- --, ("M-S-", sendMessage (IncMasterN 1)) -- Increase # of clients master pane
- --, ("M-S-", sendMessage (IncMasterN (-1))) -- Decrease # of clients master pane
- --, ("M-C-", increaseLimit) -- Increase # of windows
- --, ("M-C-", decreaseLimit) -- Decrease # of windows
-
- -- Window resizing
- --, ("M-h", sendMessage Shrink) -- Shrink horiz window width
- --, ("M-l", sendMessage Expand) -- Expand horiz window width
- --, ("M-M1-j", sendMessage MirrorShrink) -- Shrink vert window width
- --, ("M-M1-k", sendMessage MirrorExpand) -- Expand vert window width
-
- -- Systemwise
- , ("C-S-", spawn $ "xfce4-taskmanager")
- -- Sublayouts
- -- This is used to push windows to tabbed sublayouts, or pull them out of it.
- --, ("M-C-h", sendMessage $ pullGroup L)
- --, ("M-C-l", sendMessage $ pullGroup R)
- --, ("M-C-k", sendMessage $ pullGroup U)
- --, ("M-C-j", sendMessage $ pullGroup D)
- --, ("M-C-m", withFocused (sendMessage . MergeAll))
- ---- , ("M-C-u", withFocused (sendMessage . UnMerge))
- --, ("M-C-/", withFocused (sendMessage . UnMergeAll))
- --, ("M-C-.", onGroup W.focusUp') -- Switch focus to next tab
- --, ("M-C-,", onGroup W.focusDown') -- Switch focus to prev tab
-
- -- Scratchpads
- -- Toggle show/hide these programs. They run on a hidden workspace.
- -- When you toggle them to show, it brings them to your current workspace.
- -- Toggle them to hide and it sends them back to hidden workspace (NSP).
- --, ("C-s t", namedScratchpadAction myScratchPads "terminal")
- --, ("C-s m", namedScratchpadAction myScratchPads "mocp")
- --, ("C-s c", namedScratchpadAction myScratchPads "calculator")
-
- -- Set wallpaper with 'feh'. Type 'SUPER+F1' to launch sxiv in the wallpapers directory.
- -- Then in sxiv, type 'C-x w' to set the wallpaper that you choose.
- --, ("M-", spawn "sxiv -r -q -t -o ~/wallpapers/*")
- --, ("M-", spawn "/bin/ls ~/wallpapers | shuf -n 1 | xargs xwallpaper --stretch")
- --, ("M-", spawn "feh --randomize --bg-fill ~/wallpapers/*")
-
- -- Multimedia Keys
- --, ("", spawn (myTerminal ++ "mocp --play"))
- --, ("", spawn (myTerminal ++ "mocp --previous"))
- --, ("", spawn (myTerminal ++ "mocp --next"))
- --, ("", spawn "amixer set Master toggle")
- --, ("", spawn "amixer set Master 5%- unmute")
- --, ("", spawn "amixer set Master 5%+ unmute")
- --, ("", spawn "firefox")
- --, ("", safeSpawn "firefox" ["https://www.duckduckgo.com/"])
- --, ("", runOrRaise "thunderbird" (resource =? "thunderbird"))
- --, ("", runOrRaise "qalculate-gtk" (resource =? "qalculate-gtk"))
- --, ("", spawn "toggleeject")
- --, ("", spawn "scrotd 0")
- ]
- -- The following lines are needed for named scratchpads.
- where nonNSP = WSIs (return (\ws -> W.tag ws /= "NSP"))
- nonEmptyNonNSP = WSIs (return (\ws -> isJust (W.stack ws) && W.tag ws /= "NSP"))
-
-main :: IO ()
-main = do
- -- Launching three instances of xmobar on their monitors.
- -- xmproc0 <- spawnPipe "xmobar -x 0 $HOME/.config/xmobar/xmobarrc_desktop_qhd"
- -- xmproc1 <- spawnPipe "xmobar -x 1 $HOME/.config/xmobar/xmobarrc_desktop_fhd"
- xmproc0 <- spawnPipe "xmobar -x 0 $HOME/.config/xmobar/xmobarrc_labtop_fhd"
- -- the xmonad, ya know...what the WM is named after!
- xmonad $ ewmh def
- { manageHook = ( isFullscreen --> doFullFloat ) <+> myManageHook <+> manageDocks
- -- Run xmonad commands from command line with "xmonadctl command". Commands include:
- -- shrink, expand, next-layout, default-layout, restart-wm, xterm, kill, refresh, run,
- -- focus-up, focus-down, swap-up, swap-down, swap-master, sink, quit-wm. You can run
- -- "xmonadctl 0" to generate full list of commands written to ~/.xsession-errors.
- -- To compile xmonadctl: ghc -dynamic xmonadctl.hs
- , handleEventHook = serverModeEventHookCmd
- <+> serverModeEventHook
- <+> serverModeEventHookF "XMONAD_PRINT" (io . putStrLn)
- -- <+> fullscreenEventHook -- this does NOT work right if using multi-monitors!
- , modMask = myModMask
- , terminal = myTerminal
- , startupHook = myStartupHook
- , layoutHook = showWName' myShowWNameTheme $ myLayoutHook
- , workspaces = myWorkspaces
- , borderWidth = myBorderWidth
- , normalBorderColor = myNormColor
- , focusedBorderColor = myFocusColor
- , logHook = dynamicLogWithPP $ xmobarPP
- -- the following variables beginning with 'pp' are settings for xmobar.
- { ppOutput = \x -> hPutStrLn xmproc0 x -- xmobar on monitor 1
- -- >> hPutStrLn xmproc1 x -- xmobar on monitor 2
- -- >> hPutStrLn xmproc2 x -- xmobar on monitor 3
- , ppCurrent = xmobarColor "#FFFFFF" "" . wrap "●" "" -- Current workspace
- , ppVisible = xmobarColor "#c0a79a" "" . wrap "♼" "" . clickable -- Visible but not current workspace
- , ppHidden = xmobarColor "#c0a79a" "" . wrap "○" "" . clickable -- Hidden workspaces
- , ppHiddenNoWindows = xmobarColor "#c792ea" "" . \s -> "" -- Hidden workspaces (no windows)
- , ppTitle = xmobarColor "#b3afc2" "" . shorten 60 -- Title of active window
- , ppSep = " | " -- Separator character
- , ppUrgent = xmobarColor "#C45500" "" . wrap "!" "!" -- Urgent workspace
- , ppExtras = [windowCount] -- # of windows current workspace
- , ppOrder = \(ws:l:t:ex) -> [ws,l]++ex++[t] -- order of things in xmobar
- }
- } `additionalKeysP` myKeys
diff --git a/.xmonad/xmonad.org b/.xmonad/xmonad.org
deleted file mode 100644
index c77a462..0000000
--- a/.xmonad/xmonad.org
+++ /dev/null
@@ -1,513 +0,0 @@
-#+TITLE: Xmonad
-
-* Xmonad
-** Import
-#+begin_src haskell :tangle ./xmonad.hs
- -- Base
-import XMonad
-import System.Directory
-import System.IO (hClose, hPutStr, hPutStrLn)
-import System.Exit (exitSuccess)
-import qualified XMonad.StackSet as W
-
- -- Actions
-import XMonad.Actions.CopyWindow (kill1)
-import XMonad.Actions.CycleWS (Direction1D(..), moveTo, shiftTo, WSType(..), nextScreen, prevScreen)
-import XMonad.Actions.GridSelect
-import XMonad.Actions.MouseResize
-import XMonad.Actions.Promote
-import XMonad.Actions.RotSlaves (rotSlavesDown, rotAllDown)
-import XMonad.Actions.WindowGo (runOrRaise)
-import XMonad.Actions.WithAll (sinkAll, killAll)
-import qualified XMonad.Actions.Search as S
-
- -- Data
-import Data.Char (isSpace, toUpper)
-import Data.Maybe (fromJust)
-import Data.Monoid
-import Data.Maybe (isJust)
-import Data.Tree
-import qualified Data.Map as M
-
- -- Hooks
-import XMonad.Hooks.DynamicLog (dynamicLogWithPP, wrap, xmobarPP, xmobarColor, shorten, PP(..))
-import XMonad.Hooks.EwmhDesktops -- for some fullscreen events, also for xcomposite in obs.
-import XMonad.Hooks.ManageDocks (avoidStruts, docks, manageDocks, ToggleStruts(..))
-import XMonad.Hooks.ManageHelpers (isFullscreen, doFullFloat, doCenterFloat)
-import XMonad.Hooks.ServerMode
-import XMonad.Hooks.SetWMName
-import XMonad.Hooks.StatusBar
-import XMonad.Hooks.StatusBar.PP
-import XMonad.Hooks.WindowSwallowing
-import XMonad.Hooks.WorkspaceHistory
-
- -- Layouts
-import XMonad.Layout.Accordion
-import XMonad.Layout.GridVariants (Grid(Grid))
-import XMonad.Layout.SimplestFloat
-import XMonad.Layout.Spiral
-import XMonad.Layout.ResizableTile
-import XMonad.Layout.Tabbed
-import XMonad.Layout.ThreeColumns
-
- -- Layouts modifiers
-import XMonad.Layout.LayoutModifier
-import XMonad.Layout.LimitWindows (limitWindows, increaseLimit, decreaseLimit)
-import XMonad.Layout.MultiToggle (mkToggle, single, EOT(EOT), (??))
-import XMonad.Layout.MultiToggle.Instances (StdTransformers(NBFULL, MIRROR, NOBORDERS))
-import XMonad.Layout.NoBorders
-import XMonad.Layout.Renamed
-import XMonad.Layout.ShowWName
-import XMonad.Layout.Simplest
-import XMonad.Layout.Spacing
-import XMonad.Layout.SubLayouts
-import XMonad.Layout.WindowArranger (windowArrange, WindowArrangerMsg(..))
-import XMonad.Layout.WindowNavigation
-import qualified XMonad.Layout.ToggleLayouts as T (toggleLayouts, ToggleLayout(Toggle))
-import qualified XMonad.Layout.MultiToggle as MT (Toggle(..))
-
- -- Utilities
-import XMonad.Util.Dmenu
-import XMonad.Util.EZConfig (additionalKeysP, mkNamedKeymap)
-import XMonad.Util.NamedActions
-import XMonad.Util.NamedScratchpad
-import XMonad.Util.Run (runProcessWithInput, safeSpawn, spawnPipe)
-import XMonad.Util.SpawnOnce
-
- -- ColorScheme module (SET ONLY ONE!)
- -- Possible choice are:
- -- DoomOne
- -- Dracula
- -- GruvboxDark
- -- MonokaiPro
- -- Nord
- -- OceanicNext
- -- Palenight
- -- SolarizedDark
- -- SolarizedLight
- -- TomorrowNight
-#+end_src
-** Color Definition
-#+begin_src haskell :tangle ./xmonad.hs
-colorScheme = "doom-one"
-
-colorBack = "#282c34"
-colorFore = "#bbc2cf"
-
-color01 = "#1c1f24"
-color02 = "#ff6c6b"
-color03 = "#98be65"
-color04 = "#da8548"
-color05 = "#51afef"
-color06 = "#c678dd"
-color07 = "#5699af"
-color08 = "#202328"
-color09 = "#5b6268"
-color10 = "#da8548"
-color11 = "#4db5bd"
-color12 = "#ecbe7b"
-color13 = "#3071db"
-color14 = "#a9a1e1"
-color15 = "#46d9ff"
-color16 = "#dfdfdf"
-
-colorTrayer :: String
-colorTrayer = "--tint 0x282c34"
-#+end_src
-** Gobal Variable
-#+begin_src haskell :tangle ./xmonad.hs
-myFont :: String
-myFont = "xft:NanumGothic:regular:size=9:antialias=true:hinting=true"
-
-myEmojiFont :: String
-myEmojiFont = "xft:Noto Fonts Emoji:regular:size=9:antialias=true:hinting=true"
-
-myModMask :: KeyMask
-myModMask = mod4Mask -- Sets modkey to super/windows key
-
-myTerminal :: String
-myTerminal = "alacritty" -- Sets default terminal
-
-myBrowser :: String
-myBrowser = "qutebrowser " -- Sets qutebrowser as browser
-
-myEmacs :: String
-myEmacs = "emacsclient -c -a 'emacs' " -- Makes emacs keybindings easier to type
-
-myEditor :: String
-myEditor = "emacsclient -c -a 'emacs' " -- Sets emacs as editor
--- myEditor = myTerminal ++ " -e vim " -- Sets vim as editor
-
-myBorderWidth :: Dimension
-myBorderWidth = 2 -- Sets border width for windows
-
-myNormColor :: String
-myNormColor = "#282c34" -- Border color of normal windows
-
-myFocusColor :: String
-myFocusColor = "#46d9ff" -- Border color of focused windows
-
-altMask :: KeyMask
-altMask = mod1Mask -- Setting this for use in xprompts
-
-windowCount :: X (Maybe String)
-windowCount = gets $ Just . show . length . W.integrate' . W.stack . W.workspace . W.current . windowset
-#+end_src
-** StartupHook
-#+begin_src haskell :tangle ./xmonad.hs
-myStartupHook :: X ()
-myStartupHook = do
- --spawnOnce "xrandr --output DP-4 --primary --mode 2560x1440 --pos 0x0 --rotate normal --output HDMI-0 --mode 1920x1080 --pos 2560x0 --rotate normal"
- spawn "$HOME/.xmonad/scripts/autostart.sh"
- --spawnOnce "nm-applet &"
- --spawnOnce "picom -b --config ~/.xmonad/picom.conf &"
- --spawnOnce "picom --experimental-backends -b --config ~/.xmonad/picom.conf &"
- --spawnOnce "dwall -s firewatch &"
- --spawnOnce "fcitx &"
- --spawnOnce "seafile-applet &"
- --spawnOnce "seadrive-gui &"
- --spawnOnce "blueberry-tray &"
- --spawnOnce "volumeicon &"
- --spawnOnce "enpass"
- --spawnOnce "green-tunnel -s &"
- --spawnOnce "trayer --edge top --align right --widthtype request --padding 6 --SetDockType true --SetPartialStrut true --expand true --monitor 0 --transparent true --alpha 0 --tint 0x282c34 --height 24 &"
- --spawnOnce "/usr/bin/emacs --daemon &"
- -- spawnOnce "/usr/bin/emacs --daemon &" -- emacs daemon for the emacsclient
- -- spawnOnce "kak -d -s mysession &" -- kakoune daemon for better performance
- -- spawnOnce "urxvtd -q -o -f &" -- urxvt daemon for better performance
-
- --spawnOnce "xargs xwallpaper --stretch < ~/.xwallpaper" -- set last saved with xwallpaper
- -- spawnOnce "/bin/ls ~/wallpapers | shuf -n 1 | xargs xwallpaper --stretch" -- set random xwallpaper
- -- spawnOnce "~/.fehbg &" -- set last saved feh wallpaper
- -- spawnOnce "feh --randomize --bg-fill ~/wallpapers/*" -- feh set random wallpaper
- -- spawnOnce "nitrogen --restore &" -- if you prefer nitrogen to feh
- setWMName "LG3D"
-#+end_src
-** Layout
-#+begin_src haskell :tangle ./xmonad.hs
--- Theme for showWName which prints current workspace when you change workspaces.
---Makes setting the spacingRaw simpler to write. The spacingRaw module adds a configurable amount of space around windows.
-mySpacing :: Integer -> l a -> XMonad.Layout.LayoutModifier.ModifiedLayout Spacing l a
-mySpacing i = spacingRaw False (Border i i i i) True (Border i i i i) True
-
--- Below is a variation of the above except no borders are applied
--- if fewer than two windows. So a single window has no gaps.
-mySpacing' :: Integer -> l a -> XMonad.Layout.LayoutModifier.ModifiedLayout Spacing l a
-mySpacing' i = spacingRaw True (Border i i i i) True (Border i i i i) True
-
--- Defining a bunch of layouts, many that I don't use.
--- limitWindows n sets maximum number of windows displayed for layout.
--- mySpacing n sets the gap size around the windows.
-tall = renamed [Replace "tall"]
- $ limitWindows 5
- $ smartBorders
- $ windowNavigation
- $ addTabs shrinkText myTabTheme
- $ subLayout [] (smartBorders Simplest)
- $ mySpacing 8
- $ ResizableTall 1 (3/100) (1/2) []
-monocle = renamed [Replace "monocle"]
- $ smartBorders
- $ windowNavigation
- $ addTabs shrinkText myTabTheme
- $ subLayout [] (smartBorders Simplest)
- $ Full
-floats = renamed [Replace "floats"]
- $ smartBorders
- $ simplestFloat
-grid = renamed [Replace "grid"]
- $ limitWindows 9
- $ smartBorders
- $ windowNavigation
- $ addTabs shrinkText myTabTheme
- $ subLayout [] (smartBorders Simplest)
- $ mySpacing 8
- $ mkToggle (single MIRROR)
- $ Grid (16/10)
-spirals = renamed [Replace "spirals"]
- $ limitWindows 9
- $ smartBorders
- $ windowNavigation
- $ addTabs shrinkText myTabTheme
- $ subLayout [] (smartBorders Simplest)
- $ mySpacing' 8
- $ spiral (6/7)
-threeCol = renamed [Replace "threeCol"]
- $ limitWindows 7
- $ smartBorders
- $ windowNavigation
- $ addTabs shrinkText myTabTheme
- $ subLayout [] (smartBorders Simplest)
- $ ThreeCol 1 (3/100) (1/2)
-threeRow = renamed [Replace "threeRow"]
- $ limitWindows 7
- $ smartBorders
- $ windowNavigation
- $ addTabs shrinkText myTabTheme
- $ subLayout [] (smartBorders Simplest)
- -- Mirror takes a layout and rotates it by 90 degrees.
- -- So we are applying Mirror to the ThreeCol layout.
- $ Mirror
- $ ThreeCol 1 (3/100) (1/2)
-tabs = renamed [Replace "tabs"]
- -- I cannot add spacing to this layout because it will
- -- add spacing between window and tabs which looks bad.
- $ tabbed shrinkText myTabTheme
-tallAccordion = renamed [Replace "tallAccordion"]
- $ Accordion
-wideAccordion = renamed [Replace "wideAccordion"]
- $ Mirror Accordion
-
--- setting colors for tabs layout and tabs sublayout.
-myTabTheme = def { fontName = myFont
- , activeColor = color15
- , inactiveColor = color08
- , activeBorderColor = color15
- , inactiveBorderColor = colorBack
- , activeTextColor = colorBack
- , inactiveTextColor = color16
- }
-
--- Theme for showWName which prints current workspace when you change workspaces.
-myShowWNameTheme :: SWNConfig
-myShowWNameTheme = def
- { swn_font = "xft:Ubuntu:bold:size=60"
- , swn_fade = 1.0
- , swn_bgcolor = "#1c1f24"
- , swn_color = "#ffffff"
- }
-
--- The layout hook
-myLayoutHook = avoidStruts
- $ mouseResize
- $ windowArrange
- $ T.toggleLayouts floats
- $ mkToggle (NBFULL ?? NOBORDERS ?? EOT) myDefaultLayout
- where
- myDefaultLayout = withBorder myBorderWidth tall
- ||| noBorders monocle
- ||| floats
- ||| noBorders tabs
- ||| grid
- ||| spirals
- ||| threeCol
- ||| threeRow
- ||| tallAccordion
- ||| wideAccordion
-#+end_src
-** Workspace
-#+begin_src haskell :tangle ./xmonad.hs
-myWorkspaces = [" 1 ", " 2 ", " 3 ", " 4 ", " 5 ", " 6 ", " 7 ", " 8 ", " 9 "]
--- myWorkspaces = [" dev ", " www ", " sys ", " doc ", " vbox ", " chat ", " mus ", " vid ", " gfx "]
-myWorkspaceIndices = M.fromList $ zipWith (,) myWorkspaces [1..] -- (,) == \x y -> (x,y)
-
-clickable ws = ""++ws++""
- where i = fromJust $ M.lookup ws myWorkspaceIndices
-
-myManageHook :: XMonad.Query (Data.Monoid.Endo WindowSet)
-myManageHook = composeAll
- -- 'doFloat' forces a window to float. Useful for dialog boxes and such.
- -- using 'doShift ( myWorkspaces !! 7)' sends program to workspace 8!
- -- I'm doing it this way because otherwise I would have to write out the full
- -- name of my workspaces and the names would be very long if using clickable workspaces.
- [ className =? "confirm" --> doFloat
- , className =? "file_progress" --> doFloat
- , className =? "dialog" --> doFloat
- , className =? "download" --> doFloat
- , className =? "error" --> doFloat
- , className =? "Gimp" --> doFloat
- , className =? "notification" --> doFloat
- , className =? "pinentry-gtk-2" --> doFloat
- , className =? "splash" --> doFloat
- , className =? "toolbar" --> doFloat
- --, title =? "Oracle VM VirtualBox Manager" --> doFloat
- --, title =? "Mozilla Firefox" --> doShift ( myWorkspaces !! 1 )
- --, className =? "brave-browser" --> doShift ( myWorkspaces !! 1 )
- --, className =? "qutebrowser" --> doShift ( myWorkspaces !! 1 )
- --, className =? "mpv" --> doShift ( myWorkspaces !! 7 )
- --, className =? "Gimp" --> doShift ( myWorkspaces !! 8 )
- --, className =? "VirtualBox Manager" --> doShift ( myWorkspaces !! 4 )
- , (className =? "firefox" <&&> resource =? "Dialog") --> doFloat -- Float Firefox Dialog
- , (className =? "steam" <&&> resource =? "Dialog") --> doFloat -- Float Firefox Dialog
- ]
-
-#+end_src
-
-** Key bindings
-#+begin_src haskell :tangle ./xmonad.hs
-myKeys :: [(String, X ())]
-myKeys =
- -- Xmonad
- [ ("M-C-r", spawn "xmonad --recompile") -- Recompiles xmonad
- , ("M-S-r", spawn "xmonad --restart") -- Restarts xmonad
- , ("M-S-q", io exitSuccess) -- Quits xmonad
-
- -- Run Prompt
- -- M-p was the default keybinding. I've changed it to M-S-RET because I will use
- -- M-p as part of the keychord for the other dmenu script bindings.
- , ("M-S-", spawn "dmenu_run -i -p \"Run: \"") -- Dmenu
-
- -- Launch Apps
- , ("M-f", spawn "firefox")
- , ("M-v", spawn "vivaldi-stable")
- , ("M-t", spawn "thunar")
- , ("M-p", spawn "bitwarden-desktop")
- --, ("M-e", spawn "emacs")
- , ("M-e", spawn myEmacs)
- , ("M-l", spawn "arcolinux-logout")
-
- -- Useful programs to have a keybinding for launch
- , ("M-", spawn (myTerminal))
- --, ("M-b", spawn (myBrowser ++ " www.youtube.com/c/DistroTube/"))
- --, ("M-M1-h", spawn (myTerminal ++ " -e htop"))
-
- -- Kill windows
- , ("M-S-c", kill1) -- Kill the currently focused client
- --, ("M-S-a", killAll) -- Kill all windows on current workspace
-
- -- Workspaces
- --, ("M-.", nextScreen) -- Switch focus to next monitor
- --, ("M-,", prevScreen) -- Switch focus to prev monitor
- --, ("M-S-", shiftTo Next nonNSP >> moveTo Next nonNSP) -- Shifts focused window to next ws
- --, ("M-S-", shiftTo Prev nonNSP >> moveTo Prev nonNSP) -- Shifts focused window to prev ws
-
- -- Floating windows
- --, ("M-f", sendMessage (T.Toggle "floats")) -- Toggles my 'floats' layout
- --, ("M-t", withFocused $ windows . W.sink) -- Push floating window back to tile
- --, ("M-S-t", sinkAll) -- Push ALL floating windows to tile
-
- -- Increase/decrease spacing (gaps)
- --, ("M-d", decWindowSpacing 4) -- Decrease window spacing
- --, ("M-i", incWindowSpacing 4) -- Increase window spacing
- --, ("M-S-d", decScreenSpacing 4) -- Decrease screen spacing
- --, ("M-S-i", incScreenSpacing 4) -- Increase screen spacing
-
- -- Grid Select (CTR-g followed by a key)
- --, ("M-g g", spawnSelected' myAppGrid) -- grid select favorite apps
- --, ("M-g t", goToSelected $ mygridConfig myColorizer) -- goto selected window
- --, ("C-g b", bringSelected $ mygridConfig myColorizer) -- bring selected window
-
- -- Windows navigation
- --, ("M-m", windows W.focusMaster) -- Move focus to the master window
- , ("M-j", windows W.focusDown) -- Move focus to the next window
- , ("M-k", windows W.focusUp) -- Move focus to the prev window
- --, ("M-S-m", windows W.swapMaster) -- Swap the focused window and the master window
- --, ("M-S-j", windows W.swapDown) -- Swap focused window with next window
- --, ("M-S-k", windows W.swapUp) -- Swap focused window with prev window
- --, ("M-", promote) -- Moves focused window to master, others maintain order
- --, ("M-S-", rotSlavesDown) -- Rotate all windows except master and keep focus in place
- , ("M-C-", rotAllDown) -- Rotate all the windows in the current stack
-
- -- Layouts
- --, ("M-", sendMessage NextLayout) -- Switch to next layout
- --, ("M-C-M1-", sendMessage Arrange)
- --, ("M-C-M1-", sendMessage DeArrange)
- --, ("M-S-", sendMessage ToggleStruts) -- Toggles struts
- --, ("M-S-n", sendMessage $ MT.Toggle NOBORDERS) -- Toggles noborder
- , ("M-", sendMessage (MT.Toggle NBFULL) >> sendMessage ToggleStruts) -- Toggles noborder/full
-
- -- Increase/decrease windows in the master pane or the stack
- --, ("M-S-", sendMessage (IncMasterN 1)) -- Increase # of clients master pane
- --, ("M-S-", sendMessage (IncMasterN (-1))) -- Decrease # of clients master pane
- --, ("M-C-", increaseLimit) -- Increase # of windows
- --, ("M-C-", decreaseLimit) -- Decrease # of windows
-
- -- Window resizing
- --, ("M-h", sendMessage Shrink) -- Shrink horiz window width
- --, ("M-l", sendMessage Expand) -- Expand horiz window width
- --, ("M-M1-j", sendMessage MirrorShrink) -- Shrink vert window width
- --, ("M-M1-k", sendMessage MirrorExpand) -- Expand vert window width
-
- -- Systemwise
- , ("C-S-", spawn $ "xfce4-taskmanager")
- -- Sublayouts
- -- This is used to push windows to tabbed sublayouts, or pull them out of it.
- --, ("M-C-h", sendMessage $ pullGroup L)
- --, ("M-C-l", sendMessage $ pullGroup R)
- --, ("M-C-k", sendMessage $ pullGroup U)
- --, ("M-C-j", sendMessage $ pullGroup D)
- --, ("M-C-m", withFocused (sendMessage . MergeAll))
- ---- , ("M-C-u", withFocused (sendMessage . UnMerge))
- --, ("M-C-/", withFocused (sendMessage . UnMergeAll))
- --, ("M-C-.", onGroup W.focusUp') -- Switch focus to next tab
- --, ("M-C-,", onGroup W.focusDown') -- Switch focus to prev tab
-
- -- Scratchpads
- -- Toggle show/hide these programs. They run on a hidden workspace.
- -- When you toggle them to show, it brings them to your current workspace.
- -- Toggle them to hide and it sends them back to hidden workspace (NSP).
- --, ("C-s t", namedScratchpadAction myScratchPads "terminal")
- --, ("C-s m", namedScratchpadAction myScratchPads "mocp")
- --, ("C-s c", namedScratchpadAction myScratchPads "calculator")
-
- -- Set wallpaper with 'feh'. Type 'SUPER+F1' to launch sxiv in the wallpapers directory.
- -- Then in sxiv, type 'C-x w' to set the wallpaper that you choose.
- --, ("M-", spawn "sxiv -r -q -t -o ~/wallpapers/*")
- --, ("M-", spawn "/bin/ls ~/wallpapers | shuf -n 1 | xargs xwallpaper --stretch")
- --, ("M-", spawn "feh --randomize --bg-fill ~/wallpapers/*")
-
- -- Multimedia Keys
- --, ("", spawn (myTerminal ++ "mocp --play"))
- --, ("", spawn (myTerminal ++ "mocp --previous"))
- --, ("", spawn (myTerminal ++ "mocp --next"))
- --, ("", spawn "amixer set Master toggle")
- --, ("", spawn "amixer set Master 5%- unmute")
- --, ("", spawn "amixer set Master 5%+ unmute")
- --, ("", spawn "firefox")
- --, ("", safeSpawn "firefox" ["https://www.duckduckgo.com/"])
- --, ("", runOrRaise "thunderbird" (resource =? "thunderbird"))
- --, ("", runOrRaise "qalculate-gtk" (resource =? "qalculate-gtk"))
- --, ("", spawn "toggleeject")
- --, ("", spawn "scrotd 0")
- ]
- -- The following lines are needed for named scratchpads.
- where nonNSP = WSIs (return (\ws -> W.tag ws /= "NSP"))
- nonEmptyNonNSP = WSIs (return (\ws -> isJust (W.stack ws) && W.tag ws /= "NSP"))
-#+end_src
-
-** Main
-#+begin_src haskell :tangle ./xmonad.hs
-main :: IO ()
-main = do
- -- Launching three instances of xmobar on their monitors.
- -- xmproc0 <- spawnPipe "xmobar -x 0 $HOME/.config/xmobar/xmobarrc_desktop_qhd"
- -- xmproc1 <- spawnPipe "xmobar -x 1 $HOME/.config/xmobar/xmobarrc_desktop_fhd"
- xmproc0 <- spawnPipe "xmobar -x 0 $HOME/.config/xmobar/xmobarrc_labtop_fhd"
- -- the xmonad, ya know...what the WM is named after!
- xmonad $ ewmh def
- { manageHook = ( isFullscreen --> doFullFloat ) <+> myManageHook <+> manageDocks
- -- Run xmonad commands from command line with "xmonadctl command". Commands include:
- -- shrink, expand, next-layout, default-layout, restart-wm, xterm, kill, refresh, run,
- -- focus-up, focus-down, swap-up, swap-down, swap-master, sink, quit-wm. You can run
- -- "xmonadctl 0" to generate full list of commands written to ~/.xsession-errors.
- -- To compile xmonadctl: ghc -dynamic xmonadctl.hs
- , handleEventHook = serverModeEventHookCmd
- <+> serverModeEventHook
- <+> serverModeEventHookF "XMONAD_PRINT" (io . putStrLn)
- -- <+> fullscreenEventHook -- this does NOT work right if using multi-monitors!
- , modMask = myModMask
- , terminal = myTerminal
- , startupHook = myStartupHook
- , layoutHook = showWName' myShowWNameTheme $ myLayoutHook
- , workspaces = myWorkspaces
- , borderWidth = myBorderWidth
- , normalBorderColor = myNormColor
- , focusedBorderColor = myFocusColor
- , logHook = dynamicLogWithPP $ xmobarPP
- -- the following variables beginning with 'pp' are settings for xmobar.
- { ppOutput = \x -> hPutStrLn xmproc0 x -- xmobar on monitor 1
- -- >> hPutStrLn xmproc1 x -- xmobar on monitor 2
- -- >> hPutStrLn xmproc2 x -- xmobar on monitor 3
- , ppCurrent = xmobarColor "#FFFFFF" "" . wrap "●" "" -- Current workspace
- , ppVisible = xmobarColor "#c0a79a" "" . wrap "♼" "" . clickable -- Visible but not current workspace
- , ppHidden = xmobarColor "#c0a79a" "" . wrap "○" "" . clickable -- Hidden workspaces
- , ppHiddenNoWindows = xmobarColor "#c792ea" "" . \s -> "" -- Hidden workspaces (no windows)
- , ppTitle = xmobarColor "#b3afc2" "" . shorten 60 -- Title of active window
- , ppSep = " | " -- Separator character
- , ppUrgent = xmobarColor "#C45500" "" . wrap "!" "!" -- Urgent workspace
- , ppExtras = [windowCount] -- # of windows current workspace
- , ppOrder = \(ws:l:t:ex) -> [ws,l]++ex++[t] -- order of things in xmobar
- }
- } `additionalKeysP` myKeys
-
-#+end_src
diff --git a/wallpaper/colony.jpg b/wallpaper/colony.jpg
deleted file mode 100755
index 2d13de6..0000000
Binary files a/wallpaper/colony.jpg and /dev/null differ