(global-set-key (kbd "C-c w") 'eww)
#+end_src
** IRC
+Circe is a really nice IRC client, that claims to be above RCIRC and below ERC in terms of features. ERC felt a bit messy and finicky to me, and Circe has all the features that I need. This setup gets the password for my bouncer (Pounce) instances via my =~/.authinfo.gpg= file.
#+begin_src emacs-lisp
(defun fetch-password (&rest params)
(require 'auth-source)
:config
(enable-lui-track)
(enable-circe-color-nicks)
- (circe "pounce")
- :custom
- (circe-network-options . '(("pounce"
- :host "irc.armaanb.net"
- :nick "emacs"
- :use-tls t
- :port "6697"
- :pass (lambda (fetch-password
- :login "emacs"
- :machine "irc.armaanb.net"
- :port 6697)))))
- (circe-default-part-message "goodbye!"))
+ (circe "libera")
+ (circe "oftc")
+ (circe "tilde")
+ (setq circe-networks '(("libera"
+ :host "irc.armaanb.net"
+ :nick "emacs"
+ :user "emacs"
+ :use-tls t
+ :port "6698"
+ :pass (lambda (null) (fetch-password
+ :login "emacs"
+ :machine "irc.armaanb.net"
+ :port 6698)))
+ ("oftc"
+ :host "irc.armaanb.net"
+ :nick "emacs"
+ :user "emacs"
+ :use-tls t
+ :port "6699"
+ :pass (lambda (null) (fetch-password
+ :login "emacs"
+ :machine "irc.armaanb.net"
+ :port 6699)))
+ ("tilde"
+ :host "irc.armaanb.net"
+ :nick "emacs"
+ :user "emacs"
+ :use-tls t
+ :port "6696"
+ :pass (lambda (null) (fetch-password
+ :login "emacs"
+ :machine "irc.armaanb.net"
+ :port 6696)))
+ ))
+ :custom (circe-default-part-message "goodbye!")
+ :bind (:map circe-mode-map ("C-c C-r" . circe-reconnect-all)))
+#+end_src
+** Calendar
+#+begin_src emacs-lisp
+ (defun sync-calendar ()
+ "Sync calendars with vdirsyncer"
+ (interactive)
+ (shell-command "vdirsyncer -vcritical sync"))
+
+ (use-package calfw
+ :bind (:map cfw:calendar-mode-map ("C-S-u" . sync-calendar)))
+ (use-package calfw-ical)
+ (use-package calfw-org)
+
+ (defun acheam-calendar ()
+ "Open calendars"
+ (interactive)
+ (cfw:open-calendar-buffer
+ :contents-sources (list
+ (cfw:org-create-source "Green")
+ (cfw:ical-create-source
+ "Personal"
+ "~/.local/share/vdirsyncer/mailbox/Y2FsOi8vMC8zMQ.ics"
+ "Gray")
+ (cfw:ical-create-source
+ "Personal"
+ "~/.local/share/vdirsyncer/mailbox/Y2FsOi8vMC8zMQ.ics"
+ "Red")
+ (cfw:ical-create-source
+ "School"
+ "~/.local/share/vdirsyncer/school/abhojwani22@nobles.edu.ics"
+ "Cyan"))))
+
+ (global-set-key (kbd "C-c c") 'acheam-calendar)
#+end_src
* Emacs IDE
** Code cleanup
**** Programs
#+begin_src conf :tangle ~/.spectrwm.conf
program[email] = emacsclient -c --eval "(mu4e)"
- program[irc] = emacsclient -c --eval '(switch-to-buffer "irc.armaanb.net:6697")'
+ program[irc] = emacsclient -c --eval '(switch-to-buffer "irc.armaanb.net:6698")'
program[rss] = emacsclient -c --eval '(elfeed)'
program[emacs] = emacsclient -c
program[firefox] = firefox
alias grep='grep -in --color=auto'
alias mkdir='mkdir -pv'
alias lanex='java -jar ~/.local/share/lxc/lanxchange.jar'
- alias vim="$EDITOR &"
- alias emacs="$EDITOR &"
+ emacs() { $EDITOR "$@" & }
+ alias vim="emacs"
#+end_src
**** System management
#+begin_src shell :tangle ~/.config/ash/ashrc
- alias pkill='pkill -i'
alias crontab='crontab-argh'
alias sudo='doas'
alias pasu='git -C ~/.password-store push'
set -g status off
set -g mouse on
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'
#+end_src
** GPG
*** Config