(add-to-list 'org-structure-template-alist '("du" . "src conf :tangle ~/.config/dunst/dunstrc"))
(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"))
- (add-to-list 'org-structure-template-alist '("ff1" . "src css :tangle ~/.mozilla/firefox/armaan-release/chrome/userChrome.css")))
+ (add-to-list 'org-structure-template-alist '("ff1" . "src css :tangle ~/.mozilla/firefox/armaan-release/chrome/userChrome.css"))
(add-to-list 'org-structure-template-alist '("ff2" . "src css :tangle ~/.mozilla/firefox/armaan-release/chrome/userContent.css")))
#+end_src
** Presentations
(setq browse-url-handlers
(quote
(("youtu\\.?be" . browse-url-mpv)
+ ("peertube.*" . browse-url-mpv)
+ ("vid.*" . browse-url-mpv)
+ ("vid.*" . browse-url-mpv)
("." . eww-browse-url)
)))
#+end_src
program[catgirl] = alacritty --hold -e sh -c "while : ; do ssh root@armaanb.net -t abduco -A irc catgirl freenode; sleep 2; done"
program[emacs] = emacsclient -c
program[firefox] = firefox
+ program[calc] = alacritty -e bc
program[emacs-anywhere] = emacsclient --eval "(emacs-everywhere)"
+ program[pass] = rofi-pass
bind[aerc] = MOD+Control+1
bind[catgirl] = MOD+Control+2
bind[firefox] = MOD+Control+3
bind[emacs-anywhere] = MOD+Control+4
+ bind[calc] = MOD+Control+5
bind[emacs] = MOD+Control+Return
+ bind[pass] = MOD+Shift+P
#+end_src
** Zsh
*** Settings
setopt no_case_glob
unsetopt glob_complete
+
+ # Fragment completions
+ zstyle ':completion:*' list-suffixes
zstyle ':completion:*' expand prefix suffix
+
+ # Menu completions
+ zstyle ':completion:*' menu select
+ zmodload zsh/complist
+ bindkey -M menuselect '^n' expand-or-complete
+ bindkey -M menuselect '^p' reverse-menu-complete
+
#+end_src
**** Vim bindings
#+begin_src shell :tangle ~/.config/zsh/zshrc
#+end_src
*** Plugins
I manage plugins using my own plugin manager, ZPE. https://git.sr.ht/~armaan/zpe
+
+Right now, I'm only using fast-syntax-highlighting. It's a really nice visual addition.
**** ZPE
#+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
+ https://github.com/zdharma/fast-syntax-highlighting
#+end_src
**** Zshrc
#+begin_src shell :tangle ~/.config/zsh/zshrc
source ~/Code/admone/admone.zsh
source ~/.config/zsh/fzf-bindings.zsh
- zpe-source fzf-tab/fzf-tab.zsh
- zstyle ':completion:*:descriptions' format '[%d]'
- zstyle ':fzf-tab:complete:cd:*' fzf-preview 'exa -1 --color=always $realpath'
- zstyle ':completion:*' completer _complete
- zstyle ':completion:*' matcher-list 'm:{a-zA-Z}={A-Za-z}' \
- 'm:{a-zA-Z}={A-Za-z} l:|=* r:|=*'
- enable-fzf-tab
zpe-source fast-syntax-highlighting/fast-syntax-highlighting.plugin.zsh
- export _Z_DATA="/home/armaa/.local/share/z"
- zpe-source z/z.sh
#+end_src
*** Functions
-**** Alert after long command
-#+begin_src shell :tangle ~/.config/zsh/zshrc
- alert() {
- notify-send --urgency=low -i ${(%):-%(?.terminal.error)} \
- ${history[$HISTCMD]%[;&|][[:space:]]##alert}
- }
-#+end_src
**** Time Zsh startup
#+begin_src shell :tangle ~/.config/zsh/zshrc
- timezsh() {
- for i in $(seq 1 10); do
- time "zsh" -i -c exit;
- done
+ timer() {
+ for i in $(seq 1 10); do time "$1" -i -c exit; done
}
#+end_src
**** Update all packages
echo "${color}All orphans cleaned!${reset}"
}
#+end_src
-**** ls every cd
-#+begin_src shell :tangle ~/.config/zsh/zshrc
- chpwd() {
- emulate -L zsh
- 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() {
0short() { curl -F"shorten=$1" "$zxz" ; }
0clip() { xclip -out | curl -F"file=@-;" "$zxz" ; }
#+end_src
-**** Swap two files
-#+begin_src shell :tangle ~/.config/zsh/zshrc
- sw() {
- mv $1 $1.tmp
- mv $2 $1
- mv $1.tmp $2
- }
-#+end_src
**** Finger
#+begin_src shell :tangle ~/.config/zsh/zshrc
finger() {
alias bhoji-drop='ssh -p 23 root@armaanb.net'
alias catgirl='ssh root@armaanb.net -t abduco -A irc catgirl freenode'
alias union='ssh 192.168.1.18'
- alias mine='ssh -p 23 root@71.184.142.155'
- alias minec='ssh -p 23 root@71.184.142.155 su minecraft -c "tmux a -t minecraft"'
+ alias mine='ssh -p 23 root@pickupserver.cc'
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 unar='atool -x'
alias wget='wget -e robots=off'
alias lanex='~/.local/share/lxc/lxc'
-#+end_src
-**** Dotfiles
-#+begin_src shell :tangle ~/.config/zsh/zshrc
- alias padm='yadm --yadm-repo ~/Code/dotfiles/repo.git'
- alias yadu='yadm add -u && yadm commit -m "Updated `date -Iseconds`" && \
- yadm push'
- alias padu='padm add -u && padm commit && padm push && yadu'
-#+end_src
**** Editing
#+begin_src shell :tangle ~/.config/zsh/zshrc
alias v='nvim'
alias redoas='doas $(fc -ln -1)'
alias crontab='crontab-argh'
alias sudo='doas ' # allows aliases to be run with doas
+ alias pasc='pass -c'
+ alias pasu='\pass git push'
+ alias yadu='yadm add -u && yadm commit -m "Updated `date -Iseconds`" && \
+ yadm push'
#+end_src
**** Networking
#+begin_src shell :tangle ~/.config/zsh/zshrc