#+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!
:config
(ligature-set-ligatures
'(prog-mode text-mode)
- '("-|" "-~" "---" "-<<" "-<" "--" "->" "->>" "-->" "///" "/=" "/=="
+ '("-|" "-~" "---" "-<<" "-<" "--" "->" "->>" "-->" "/=" "/=="
"/>" "//" "/*" "*>" "*/" "<-" "<<-" "<=>" "<=" "<|" "<||"
- "<|||" "<|>" "<:" "<>" "<-<" "<<<" "<==" "<<=" "<=<" "<==>" "<-|"
- "<<" "<~>" "<=|" "<~~" "<~" "<$>" "<$" "<+>" "<+" "</>" "</" "<*"
- "<*>" "<->" "<!--" ":>" ":<" ":::" "::" ":?" ":?>" ":=" "::=" "=>>"
- "==>" "=/=" "=!=" "=>" "===" "=:=" "==" "!==" "!!" "!=" ">]" ">:"
- ">>-" ">>=" ">=>" ">>>" ">-" ">=" "&&&" "&&" "|||>" "||>" "|>" "|]"
- "|}" "|=>" "|->" "|=" "||-" "|-" "||=" "||" ".." ".?" ".=" ".-" "..<"
- "..." "+++" "+>" "++" "[||]" "[<" "[|" "{|" "??" "?." "?=" "?:" "##"
- "###" "####" "#[" "#{" "#=" "#!" "#:" "#_(" "#_" "#?" "#(" ";;" "_|_"
- "__" "~~" "~~>" "~>" "~-" "~@" "$>" "^=" "]#"))
+ "<|||" "<|>" "<:" "<>" "<-<" "<<<" "<==" "<<=" "<=<" "<==>"
+ "<-|" "<<" "<~>" "<=|" "<~~" "<~" "<$>" "<$" "<+>" "<+" "</>"
+ "</" "<*" "<*>" "<->" "<!--" ":>" ":<" ":::" "::" ":?" ":?>"
+ ":=" "::=" "=>>" "==>" "=/=" "=!=" "=>" "===" "=:=" "==" "!=="
+ "!!" "!=" ">]" ">:" ">>-" ">>=" ">=>" ">>>" ">-" ">=" "&&&"
+ "&&" "|||>" "||>" "|>" "|]" "|}" "|=>" "|->" "|=" "||-" "|-"
+ "||=" "||" ".." ".?" ".=" ".-" "..<" "..." "+++" "+>" "++"
+ "[||]" "[<" "[|" "{|" "??" "?." "?=" "?:" "##" "###" "####"
+ "#[" "#{" "#=" "#!" "#:" "#_(" "#_" "#?" "#(" ";;" "_|_" "__"
+ "~~" "~~>" "~>" "~-" "~@" "$>" "^=" "]#"))
(global-ligature-mode t))
#+end_src
*** Emoji
(use-package minions
:config (minions-mode))
#+end_src
+** Word count
+#+begin_src emacs-lisp
+ (use-package wc-mode
+ :straight (wc-mode :type git :host github :repo "bnbeckwith/wc-mode")
+ :hook (text-mode-hook . wc-mode))
+#+end_src
** Ruler
Show a ruler at a certain number of chars depending on mode.
#+begin_src emacs-lisp
** Undo redo
Fix the oopsies!
#+begin_src emacs-lisp
- (evil-set-undo-system 'undo-tree)
+ (evil-set-undo-system 'undo-redo)
#+end_src
** Number incrementing
Add back C-a/C-x
(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")))
#+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
Simple, but not too simple autocompletion.
#+begin_src emacs-lisp
(use-package emacs-everywhere)
#+end_src
+** Eshell
+#+begin_src emacs-lisp
+ (setq eshell-prompt-function
+ (lambda nil
+ (propertize (concat
+ "\n" (eshell/pwd) " ➤ ")
+ 'face '(:foreground "cyan")))
+ eshell-highlight-prompt nil)
+#+end_src
* Emacs IDE
** LSP
*** General
program[thunderbird] = thunderbird
program[slack] = slack
- bind[aerc] = MOD+Control+s
- bind[weechat] = MOD+Control+d
+ 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[emacs] = MOD+Control+Return
- bind[emacs-anywhere] = MOD+Control+f
- bind[firefox] = MOD+Control+u
- bind[thunderbird] = MOD+Control+i
- bind[slack] = MOD+Control+o
#+end_src
** Zsh
*** Settings
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 sudo='doas ' # allows aliases to be run with doas
#+end_src
**** Networking
#+begin_src shell :tangle ~/.config/zsh/zshrc
*** Exports
#+begin_src shell :tangle ~/.config/zsh/zshrc
export EDITOR="emacsclient -c"
- export VISUAL="$VISUAL"
+ export VISUAL="$EDITOR"
export TERM=xterm-256color # for compatability
export GPG_TTY="$(tty)"
#+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"
+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