]> git.armaanb.net Git - config.org.git/blobdiff - config.org
spectrwm: rearrange emacs-everywhere and firefox
[config.org.git] / config.org
index 567dc32f29c57289eee3cfb578b3d0a2adb91d0a..f038ed098e1ef0c1395775974d4fe8d23451d688 100644 (file)
@@ -1,5 +1,7 @@
 #+TITLE: System Configuration
-#+DESCRIPTION: Armaan's system configuration.
+#+DESCRIPTION: Personal system configuration in org-mode format.
+#+AUTHOR: Armaan Bhojwani
+#+EMAIL: me@armaanb.net
 
 * Welcome
 Welcome to my system configuration! This file contains my Emacs configuration, but also my config files for many of the other programs on my system!
@@ -148,13 +150,6 @@ Whenever starting a key chord, show possible future steps.
     :config (which-key-mode)
     :custom (which-key-idle-delay 0.3))
 #+end_src
-** Visual highlights of changes
-Highlight when changes are made.
-#+begin_src emacs-lisp
-  (use-package evil-goggles
-    :config (evil-goggles-mode)
-    (evil-goggles-use-diff-faces))
-#+end_src
 ** Highlight TODOs in comments
 #+begin_src emacs-lisp
   (use-package hl-todo
@@ -295,8 +290,13 @@ Add back C-a/C-x
     (add-to-list 'org-structure-template-alist '("pi" . "src conf :tangle ~/.config/picom/picom.conf"))
     (add-to-list 'org-structure-template-alist '("git" . "src conf :tangle ~/.gitconfig"))
     (add-to-list 'org-structure-template-alist '("du" . "src conf :tangle ~/.config/dunst/dunstrc"))
-    (add-to-list 'org-structure-template-alist '("ro" . "src plain :tangle ~/.config/rofi/config.rasi"))
-    (add-to-list 'org-structure-template-alist '("za" . "src plain :tangle ~/.config/zathura/zathurarc")))
+    (add-to-list 'org-structure-template-alist '("ro" . "src javascript :tangle ~/.config/rofi/config.rasi"))
+    (add-to-list 'org-structure-template-alist '("za" . "src conf :tangle ~/.config/zathura/zathurarc")))
+#+end_src
+** Presentations
+#+begin_src emacs-lisp
+  (use-package org-present
+    :straight (org-present :type git :host github :repo "rlister/org-present"))
 #+end_src
 * Autocompletion
 ** Ivy
@@ -511,51 +511,16 @@ Use Emacs globally. Use the Emacs daemon and bind a key in your wm to
 #+begin_src emacs-lisp
   (use-package emacs-everywhere)
 #+end_src
-* Emacs IDE
-** LSP
-*** General
-#+begin_src emacs-lisp
-  (use-package lsp-mode
-    :commands (lsp lsp-deferred)
-    :custom (lsp-keymap-prefix "C-c l")
-    :hook ((lsp-mode . lsp-enable-which-key-integration)))
-
-  (use-package lsp-ivy)
-
-  (use-package lsp-ui
-    :commands lsp-ui-mode
-    :custom (lsp-ui-doc-position 'bottom))
-  (use-package lsp-ui-flycheck
-    :after lsp-ui
-    :straight (:type built-in))
-#+end_src
-*** Company
-Company-box adds icons.
-#+begin_src emacs-lisp
-  (use-package company
-    :after lsp-mode
-    :hook (lsp-mode . company-mode)
-    :bind (:map company-active-map
-                ("<tab>" . company-complete-selection))
-    (:map lsp-mode-map
-          ("<tab>" . company-indent-or-complete-common))
-    :custom
-    (company-minimum-prefix-length 1)
-    (setq company-dabbrev-downcase 0)
-    (company-idle-delay 0.0))
-
-  (use-package company-box
-    :hook (company-mode . company-box-mode))
-#+end_src
-*** Language servers
-**** Python
+** Eshell
 #+begin_src emacs-lisp
-  (use-package lsp-pyright
-    :hook (python-mode . (lambda ()
-                           (use-package lsp-pyright
-                             :straight (:type built-in))
-                           (lsp-deferred))))
+  (setq eshell-prompt-function
+        (lambda nil
+          (propertize (concat
+                       "\n" (eshell/pwd) " ➤ ")
+                      'face '(:foreground "cyan")))
+        eshell-highlight-prompt nil)
 #+end_src
+* Emacs IDE
 ** Code cleanup
 #+begin_src emacs-lisp
   (use-package blacken
@@ -860,27 +825,23 @@ No more clogging up init.el.
   program[k] = xdotool keyup k key --clearmodifiers Up
   program[l] = xdotool keyup l key --clearmodifiers Right
 
-  bind[h] = Mod1 + Tab + h
-  bind[j] = Mod1 + Tab + j
-  bind[k] = Mod1 + Tab + k
-  bind[l] = Mod1 + Tab + l
+  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[aerc] = alacritty -e aerc
-  program[weechat] = alacritty --hold -e sh -c "while : ; do ssh -p 23 -t root@armaanb.net tmux attach-session -t weechat; sleep 2; done"
+  program[catgirl] = alacritty --hold -e sh -c "while : ; do ssh -p 23 -t root@armaanb.net abduco -a catgirl; sleep 2; done"
   program[emacs] = emacsclient -c
-  program[emacs-anywhere] = emacsclient --eval "(emacs-everywhere)"
   program[firefox] = firefox
-  program[thunderbird] = thunderbird
-  program[slack] = slack
+  program[emacs-anywhere] = emacsclient --eval "(emacs-everywhere)"
 
   bind[aerc] = MOD+Control+1
-  bind[weechat] = MOD+Control+2
-  bind[emacs-anywhere] = MOD+Control+3
-  bind[firefox] = MOD+Control+4
-  bind[thunderbird] = MOD+Control+5
-  bind[slack] = MOD+Control+6
+  bind[catgirl] = MOD+Control+2
+  bind[firefox] = MOD+Control+3
+  bind[emacs-anywhere] = MOD+Control+4
   bind[emacs] = MOD+Control+Return
 #+end_src
 ** Zsh
@@ -921,7 +882,7 @@ No more clogging up init.el.
 *** Plugins
 I manage plugins using my own plugin manager, ZPE. https://git.sr.ht/~armaan/zpe
 **** ZPE
-#+begin_src plain :tangle ~/.config/zpe/repositories
+#+begin_src conf :tangle ~/.config/zpe/repositories
     https://github.com/Aloxaf/fzf-tab
     https://github.com/zdharma/fast-syntax-highlighting
     https://github.com/rupa/z
@@ -1010,6 +971,20 @@ I manage plugins using my own plugin manager, ZPE. https://git.sr.ht/~armaan/zpe
       exa -lh --icons --git --group-directories-first
   }
 #+end_src
+**** Change default enter behavior
+If no command given, =ls=, if in a Git repo, =git status= as well.
+#+begin_src shell :tangle ~/.config/zsh/zshrc
+  acheam-accept-line () {
+      zle accept-line
+      if [ ${#${(z)BUFFER}} -eq 0 ]; then
+          echo
+          exa -lh --icons --git --group-directories-first
+          [ -d ".git" ] && git status
+      fi
+  }
+  zle -N acheam-accept-line
+  bindkey '^M' acheam-accept-line
+#+end_src
 **** Setup anaconda
 #+begin_src shell :tangle ~/.config/zsh/zshrc
   zconda() {
@@ -1047,10 +1022,11 @@ I manage plugins using my own plugin manager, ZPE. https://git.sr.ht/~armaan/zpe
 **** SSH
 #+begin_src shell :tangle ~/.config/zsh/zshrc
   alias bhoji-drop='ssh -p 23 root@armaanb.net'
-  alias weechat='ssh -p 23 -t root@armaanb.net tmux attach-session -t weechat'
+  alias catgirl='ssh -p 23 -t root@armaanb.net abduco -a catgirl'
   alias tcf='ssh root@204.48.23.68'
   alias ngmun='ssh root@157.245.89.25'
   alias prox='ssh root@192.168.1.224'
+  alias ncq='ssh root@143.198.123.17'
   alias dock='ssh root@192.168.1.225'
   alias jenkins='ssh root@192.168.1.226'
   alias envs='ssh acheam@envs.net'
@@ -1067,6 +1043,7 @@ I manage plugins using my own plugin manager, ZPE. https://git.sr.ht/~armaan/zpe
   alias mv='mv -iv'
   alias ln='ln -iv'
   alias grep='grep -in --exclude-dir=.git --color=auto'
+  alias fname='find -name'
   alias mkdir='mkdir -pv'
   alias unar='atool -x'
   alias wget='wget -e robots=off'
@@ -1090,8 +1067,9 @@ I manage plugins using my own plugin manager, ZPE. https://git.sr.ht/~armaan/zpe
   alias jctl='journalctl -p 3 -xb'
   alias pkill='pkill -i'
   alias cx='chmod +x'
-  alias please='sudo $(fc -ln -1)'
-  alias sudo='sudo ' # allows aliases to be run with sudo
+  alias redoas='doas $(fc -ln -1)'
+  alias crontab='crontab-argh'
+  alias sudo='doas ' # allows aliases to be run with doas
 #+end_src
 **** Networking
 #+begin_src shell :tangle ~/.config/zsh/zshrc
@@ -1174,6 +1152,11 @@ I manage plugins using my own plugin manager, ZPE. https://git.sr.ht/~armaan/zpe
   alias reflect='reflector --verbose --sort rate --save \
      ~/.local/etc/pacman.d/mirrorlist --download-timeout 60' # Takes ~45m to run
 #+end_src
+**** Package management (KISS)
+#+begin_src shell :tangle ~/.config/zsh/zshrc
+  alias kzf="kiss s \* | xargs -l basename | \
+    fzf --preview 'kiss search {} | xargs -l dirname'"
+#+end_src
 *** Exports
 #+begin_src shell :tangle ~/.config/zsh/zshrc
   export EDITOR="emacsclient -c"
@@ -1187,7 +1170,8 @@ I manage plugins using my own plugin manager, ZPE. https://git.sr.ht/~armaan/zpe
   export GTK_USE_PORTAL=1
 
   export PATH="/home/armaa/.local/bin:$PATH" # prioritize .local/bin
-  export PATH="$PATH:/home/armaa/Code/scripts"
+  export PATH="/home/armaa/Code/scripts:$PATH" # prioritize my scripts
+  export PATH="/home/armaa/Code/scripts/bin:$PATH" # prioritize my bins
   export PATH="$PATH:/home/armaa/.cargo/bin"
   export PATH="$PATH:/home/armaa/.local/share/gem/ruby/2.7.0/bin"
   export PATH="$PATH:/usr/sbin"
@@ -1197,7 +1181,7 @@ I manage plugins using my own plugin manager, ZPE. https://git.sr.ht/~armaan/zpe
   export LC_CTYPE="en_US.UTF-8"
   export LANGUAGE="en_US.UTF-8"
 
-  export KISS_PATH="/home/armaa/kiss/home/armaa/kiss-repo"
+  export KISS_PATH="/home/armaa/Virtual/kiss/home/armaa/kiss-repo"
   export KISS_PATH="$KISS_PATH:/home/armaa/Clone/repo-main/core"
   export KISS_PATH="$KISS_PATH:/home/armaa/Clone/repo-main/extra"
   export KISS_PATH="$KISS_PATH:/home/armaa/Clone/repo-main/xorg"
@@ -1225,21 +1209,6 @@ window:
 
 background_opacity: 1
 #+end_src
-*** Keybindings
-Send <RET> + modifier through
-#+begin_src yml :tangle ~/.config/alacritty/alacritty.yml
-key_bindings:
-  - {
-    key: Return,
-    mods: Shift,
-    chars: "\x1b[13;2u"
-  }
-  - {
-    key: Return,
-    mods: Control,
-    chars: "\x1b[13;5u"
-  }
-#+end_src
 *** Color scheme
 Modus vivendi. Source: https://github.com/ishan9299/Nixos/blob/d4bbb7536be95b59466bb9cca4d671be46e04e81/user/alacritty/alacritty.yml#L30-L118
 #+begin_src yml :tangle ~/.config/alacritty/alacritty.yml
@@ -1324,7 +1293,7 @@ Make MPV play a little bit smoother.
 #+end_src
 ** Inputrc
 For any GNU Readline programs
-#+begin_src plain :tangle ~/.inputrc
+#+begin_src conf :tangle ~/.inputrc
   set editing-mode vi
 #+end_src
 ** Git
@@ -1377,6 +1346,7 @@ For any GNU Readline programs
 #+begin_src conf :tangle ~/.gitconfig
 [commit]
   gpgsign = true
+  verbose = true
 #+end_src
 ** Dunst
 Lightweight notification daemon.
@@ -1437,40 +1407,40 @@ Lightweight notification daemon.
 #+end_src
 ** Rofi
 Modus vivendi theme that extends DarkBlue.
-#+begin_src plain :tangle ~/.config/rofi/config.rasi
-@import "/usr/share/rofi/themes/DarkBlue.rasi"
- * {
-    white:                        rgba ( 255, 255, 255, 100 % );
-    foreground:                   @white;
-    selected-normal-background:   @white;
-    separatorcolor:               @white;
-    background:                   rgba ( 34, 34, 34, 100 % );
-}
+#+begin_src javascript :tangle ~/.config/rofi/config.rasi
+  @import "/usr/share/rofi/themes/DarkBlue.rasi"
     ,* {
+          white:                        rgba ( 255, 255, 255, 100 % );
+          foreground:                   @white;
+          selected-normal-background:   @white;
+          separatorcolor:               @white;
+          background:                   rgba ( 34, 34, 34, 100 % );
+      }
 
-window {
-    border: 3;
-}
+  window {
+      border: 3;
+  }
 #+end_src
 ** Zathura
 *** Options
-#+begin_src plain :tangle ~/.config/zathura/zathurarc
-map <C-i> recolor
-map <A-b> toggle_statusbar
-set selection-clipboard clipboard
-set scroll-step 200
+#+begin_src conf :tangle ~/.config/zathura/zathurarc
+  map <C-i> recolor
+  map <A-b> toggle_statusbar
+  set selection-clipboard clipboard
+  set scroll-step 200
 
-set window-title-basename "true"
-set selection-clipboard "clipboard"
+  set window-title-basename "true"
+  set selection-clipboard "clipboard"
 #+end_src
 *** Colors
-#+begin_src plain :tangle ~/.config/zathura/zathurarc
-set default-bg         "#000000"
-set default-fg         "#ffffff"
-set render-loading     true
-set render-loading-bg  "#000000"
-set render-loading-fg  "#ffffff"
+#+begin_src conf :tangle ~/.config/zathura/zathurarc
+  set default-bg         "#000000"
+  set default-fg         "#ffffff"
+  set render-loading     true
+  set render-loading-bg  "#000000"
+  set render-loading-fg  "#ffffff"
 
-set recolor-lightcolor "#000000" # bg
-set recolor-darkcolor  "#ffffff" # fg
-set recolor            "true"
+  set recolor-lightcolor "#000000" # bg
+  set recolor-darkcolor  "#ffffff" # fg
+  set recolor            "true"
 #+end_src