X-Git-Url: https://git.armaanb.net/?a=blobdiff_plain;f=config.org;h=12d5edf07758d4ac7e42ff5f4e2b5c946364f516;hb=7f8e8e91d8f218f0bf53f5a3e5dc5d2cdec83cac;hp=5c2419e00478da8b2b9b5bfafe67694a2fec4698;hpb=f2e9f2d8fc2b792d3d036c9b7c61ad4eac0f771b;p=config.org.git diff --git a/config.org b/config.org index 5c2419e..12d5edf 100644 --- a/config.org +++ b/config.org @@ -168,18 +168,31 @@ Invert modeline color instead of audible bell or the standard visual bell. (lambda () (invert-face 'mode-line) (run-with-timer 0.1 nil #'invert-face 'mode-line))) #+end_src +** GUI +#+begin_src emacs-lisp + (scroll-bar-mode -1) + (tool-bar-mode -1) + (menu-bar-mode -1) + (setq-default frame-title-format '("%b [%m]")) +#+end_src * Evil mode ** General #+begin_src emacs-lisp (use-package evil :custom (select-enable-clipboard nil) + :init (setq evil-want-keybinding nil + evil-want-minibuffer t + evil-want-C-d-scroll t + evil-want-C-u-scroll t) :config (evil-mode) (fset 'evil-visual-update-x-selection 'ignore) ;; Keep clipboard and register seperate ;; Use visual line motions even outside of visual-line-mode buffers (evil-global-set-key 'motion "j" 'evil-next-visual-line) (evil-global-set-key 'motion "k" 'evil-previous-visual-line) - (global-set-key (kbd "") 'keyboard-escape-quit)) + :bind + ("" . keyboard-escape-quit) + ("C-M-u" . universal-argument)) #+end_src ** Evil collection Evil bindings for tons of packages. @@ -264,17 +277,12 @@ Define templates for lots of common structure elements. Mostly just used within :straight (:type built-in) :config (dolist (addition '( - ("ag" . "src conf :tangle ~/.gnupg/gpg-agent.conf") ("ash" . "src shell :tangle ~/.config/ash/ashrc") ("el" . "src emacs-lisp") ("git" . "src conf :tangle ~/.gitconfig") - ("gp" . "src conf :tangle ~/.gnupg/gpg.conf") ("mb" . "src conf :tangle ~/.mbsyncrc") - ("pi" . "src conf :tangle ~/.config/picom/picom.conf") ("sp" . "src conf :tangle ~/.spectrwm.conf") ("tm" . "src conf :tangle ~/.tmux.conf") - ("xm" . "src conf :tangle ~/.config/xmodmap") - ("xr" . "src conf :tangle ~/.Xresources") ("za" . "src conf :tangle ~/.config/zathura/zathurarc") )) (add-to-list 'org-structure-template-alist addition))) @@ -651,9 +659,9 @@ A very good Git interface. *** Email #+begin_src emacs-lisp (use-package piem) - (use-package git-email - :straight (git-email :repo "https://git.sr.ht/~yoctocell/git-email") - :config (git-email-piem-mode)) + ;; (use-package git-email + ;; :straight (git-email :repo "https://git.sr.ht/~yoctocell/git-email") + ;; :config (git-email-piem-mode)) #+end_src ** C Modified from https://eklitzke.org/smarter-emacs-clang-format. @@ -724,9 +732,8 @@ Abbreviate things! I just use this for things like my email address and copyrigh (defun doas-edit (&optional arg) "Edit currently visited file as root. - With a prefix ARG prompt for a file to visit. - Will also prompt for a file to visit if current - buffer is not visiting a file. + With a prefix ARG prompt for a file to visit. Will also prompt + for a file to visit if current buffer is not visiting a file. Modified from Emacs Redux." (interactive "P") @@ -817,91 +824,12 @@ Similar to the ufile alias in my ashrc Automatically close unused buffers (except those of Circe) at midnight. #+begin_src emacs-lisp (midnight-mode) - (add-to-list 'clean-buffer-list-kill-never-regexps (lambda (buffer-name) - (with-current-buffer buffer-name - (derived-mode-p 'lui-mode)))) + (add-to-list 'clean-buffer-list-kill-never-regexps + (lambda (buffer-name) + (with-current-buffer buffer-name + (derived-mode-p 'lui-mode)))) #+end_src * Tangles -** Spectrwm -Spectrwm is a really awesome window manager! Would highly recommend. -*** General settings -#+begin_src conf :tangle ~/.spectrwm.conf - workspace_limit = 5 - warp_pointer = 1 - modkey = Mod4 - autorun = ws[1]:/home/armaa/src/bin/autostart -#+end_src -*** Bar -Disable the bar by default (it can still be brought back up with MOD+b). The font just needs to be set to something that you have installed, otherwise spectrwm won't launch. -#+begin_src conf :tangle ~/.spectrwm.conf - bar_enabled = 0 - bar_font = xos4 JetBrains Mono:pixelsize=14:antialias=true # any installed font -#+end_src -*** Keybindings -I'm not a huge fan of how spectrwm handles keybindings, probably my biggest gripe with it. -**** WM actions -#+begin_src conf :tangle ~/.spectrwm.conf - program[term] = st -e tmux - program[notif] = /home/armaa/src/bin/setter status - program[pass] = /home/armaa/src/bin/passmenu - program[lock] = slock - - bind[notif] = MOD+n - bind[pass] = MOD+Shift+p -#+end_src -**** Media keys -#+begin_src conf :tangle ~/.spectrwm.conf - program[paup] = /home/armaa/src/bin/setter audio +5 - program[padown] = /home/armaa/src/bin/setter audio -5 - program[pamute] = /home/armaa/src/bin/setter audio - program[brigup] = /home/armaa/src/bin/setter brightness +10% - program[brigdown] = /home/armaa/src/bin/setter brightness 10%- - - bind[padown] = XF86AudioLowerVolume - bind[paup] = XF86AudioRaiseVolume - bind[pamute] = XF86AudioMute - bind[brigdown] = XF86MonBrightnessDown - bind[brigup] = XF86MonBrightnessUp -#+end_src -**** HJKL -#+begin_src conf :tangle ~/.spectrwm.conf - program[h] = xdotool keyup h key --clearmodifiers Left - program[j] = xdotool keyup j key --clearmodifiers Down - program[k] = xdotool keyup k key --clearmodifiers Up - program[l] = xdotool keyup l key --clearmodifiers Right - - bind[h] = MOD + Control + h - bind[j] = MOD + Control + j - bind[k] = MOD + Control + k - bind[l] = MOD + Control + l -#+end_src -**** Programs -#+begin_src conf :tangle ~/.spectrwm.conf - program[email] = emacsclient -ce '(progn (switch-to-buffer "*scratch*") (mu4e))' - program[irc] = emacsclient -ce '(acheam-irc)' - program[rss] = emacsclient -ce '(elfeed)' - program[calendar] = emacsclient -ce '(acheam-calendar)' - program[calc] = emacsclient -ce '(progn (calc) (windmove-up) (delete-window))' - program[emacs] = emacsclient -c - program[bookmarks] = /home/armaa/src/bin/bookmarks - program[browser] = chorizo - - bind[email] = MOD+Control+1 - bind[irc] = MOD+Control+2 - bind[rss] = MOD+Control+3 - bind[calendar] = MOD+Control+4 - bind[calc] = MOD+Control+5 - bind[emacs] = MOD+Control+Return - bind[bookmarks] = MOD+Control+o - bind[browser] = MOD+Control+p -#+end_src -*** Quirks -Float some specific programs by default. -#+begin_src conf :tangle ~/.spectrwm.conf - quirk[Castle Menu] = FLOAT - quirk[momen] = FLOAT - quirk[pinentry-fltk] = FLOAT -#+end_src ** Ash *** Options Use the vi editing mode. I still haven't found a good way to show visual feedback of the current mode. Ideally the cursor would change to a beam when in insert mode, and a box when in normal mode. @@ -964,7 +892,7 @@ Use the vi editing mode. I still haven't found a good way to show visual feedbac export PATH="/home/armaa/src/bin:$PATH" export PATH="/home/armaa/src/bin/bin:$PATH" export PATH="/home/armaa/.local/bin:$PATH" - export PATH="$PATH:/usr/sbin" + export PATH="/usr/lib/ccache/bin:$PATH" #+end_src **** Locale #+begin_src shell :tangle ~/.config/ash/ashrc @@ -1221,7 +1149,12 @@ I use tmux in order to keep my st build light. Still learning how it works. #+begin_src conf :tangle ~/.tmux.conf set -g status off set -g mouse on + set-option -g history-limit 50000 + + set -g set-titles on + set -g set-titles-string "#W" + set-window-option -g mode-keys vi bind-key -T copy-mode-vi 'v' send -X begin-selection bind -T copy-mode-vi y send-keys -X copy-pipe-and-cancel 'xclip -in -selection clipboard' @@ -1240,7 +1173,7 @@ I use tmux in order to keep my st build light. Still learning how it works. allow-emacs-pinentry #+end_src ** Xmodmap -#+begin_src conf (if (eq system-name "frost.armaanb.net") ":tangle ~/.config/xmodmap") +#+begin_src conf :tangle (progn (if (string= (system-name) "frost.armaanb.net") "~/.config/xmodmap" "no")) ! Unmap left super clear mod4 @@ -1258,3 +1191,9 @@ I use tmux in order to keep my st build light. Still learning how it works. add Lock = Caps_Lock add Control = Control_L #+end_src +** sx +#+begin_src shell :tangle ~/.config/sx/sxrc :tangle-mode (identity #o755) + autostart & + dwmblocks & + exec dwm +#+end_src