Edit rc.py

This commit is contained in:
Andy Kipp
2025-12-22 18:05:56 +00:00
parent 03a4de751e
commit 292b814c07

View File

@@ -6,22 +6,19 @@
#
# My xonsh config written in python as opposed to using the standard .xonshrc format.
from pathlib import Path
from xonsh.xontribs import xontribs_load
import os
# EXPAND THE HOME DIR IN THE PATH
local_bin = os.path.expanduser("~/.local/bin")
applications_dir = os.path.expanduser("~/Applications")
xenv = __xonsh__.env
### ADDING DIRS TO PATH ###
if local_bin not in __xonsh__.env["PATH"]:
__xonsh__.env["PATH"].append(local_bin)
for d in ["~/.local/bin", "~/Applications"]:
xenv["PATH"].append(Path(d).expanduser())
if applications_dir not in __xonsh__.env["PATH"]:
__xonsh__.env["PATH"].append(applications_dir)
### XONSH THEME ###
__xonsh__.env['XONSH_COLOR_STYLE'] = 'one-dark'
xenv['XONSH_COLOR_STYLE'] = 'one-dark'
### STARSHIP PROMPT ###
xontribs_load(['prompt_starship'])
@@ -30,95 +27,97 @@ xontribs_load(['prompt_starship'])
__xonsh__.subproc_uncaptured(['colorscript', 'random'])
### SET EDITORS ###
__xonsh__.env['EDITOR'] = "emacsclient -t -a ''"
__xonsh__.env['VISUAL'] = "emacsclient -c -a emacs"
xenv['EDITOR'] = "emacsclient -t -a ''"
xenv['VISUAL'] = "emacsclient -c -a emacs"
### SET FZF DEFAULTS
__xonsh__.env['FZF_DEFAULT_OPTS'] = "--layout=reverse --exact --border=bold --border=rounded --margin=3% --color=dark"
xenv['FZF_DEFAULT_OPTS'] = "--layout=reverse --exact --border=bold --border=rounded --margin=3% --color=dark"
### SET MANPAGER ###
__xonsh__.env['MANPAGER'] = 'nvim +Man!'
#__xonsh__.env['MANPAGER'] = 'less'
xenv['MANPAGER'] = 'nvim +Man!'
#xenv['MANPAGER'] = 'less'
### ALIASES ###
# Navigation
__xonsh__.aliases['..'] = 'cd ..'
__xonsh__.aliases['...'] = 'cd ../..'
__xonsh__.aliases['.3'] = 'cd ../../..'
__xonsh__.aliases['.4'] = 'cd ../../../..'
__xonsh__.aliases['.5'] = 'cd ../../../../..'
aliases['..'] = 'cd ..'
aliases['-'] = 'cd -'
for i in range(1, 10):
aliases[','*i] = lambda: $[cd @("../" * len($__ALIAS_NAME))]
# Vim and Emacs
__xonsh__.aliases['vim'] = 'nvim'
__xonsh__.aliases['emacs'] = "emacsclient -c -a 'emacs'"
__xonsh__.aliases['em'] = '/usr/bin/emacs -nw'
__xonsh__.aliases['rem'] = "killall emacs || echo 'Emacs server not running'; /usr/bin/emacs --daemon"
aliases |= {
'vim': 'nvim',
'emacs': "emacsclient -c -a 'emacs'",
'em': '/usr/bin/emacs -nw',
'rem': "killall emacs || echo 'Emacs server not running'; /usr/bin/emacs --daemon",
}
# Eza (ls replacement)
eza_base = 'eza --color=always --group-directories-first'
__xonsh__.aliases['ls'] = f'{eza_base} -al'
__xonsh__.aliases['la'] = f'{eza_base} -a'
__xonsh__.aliases['ll'] = f'{eza_base} -l'
__xonsh__.aliases['lt'] = f'{eza_base} -aT'
__xonsh__.aliases['l.'] = 'eza -a | grep "^\\."'
__xonsh__.aliases['l..'] = f'{eza_base} -al ../'
__xonsh__.aliases['l...'] = f'{eza_base} -al ../../'
__xonsh__.aliases['l....'] = f'{eza_base} -al ../../../'
aliases['ls'] = f'{eza_base} -al'
aliases['la'] = f'{eza_base} -a'
aliases['ll'] = f'{eza_base} -l'
aliases['lt'] = f'{eza_base} -aT'
aliases['l.'] = 'eza -a | grep "^\\."'
aliases['l..'] = f'{eza_base} -al ../'
aliases['l...'] = f'{eza_base} -al ../../'
aliases['l....'] = f'{eza_base} -al ../../../'
# Pacman and Yay/Paru
__xonsh__.aliases['pacsyu'] = 'sudo pacman -Syu'
__xonsh__.aliases['pacsyyu'] = 'sudo pacman -Syyu'
__xonsh__.aliases['parsua'] = 'paru -Sua --noconfirm'
__xonsh__.aliases['parsyu'] = 'paru -Syu --noconfirm'
__xonsh__.aliases['unlock'] = 'sudo rm /var/lib/pacman/db.lck'
__xonsh__.aliases['orphan'] = 'sudo pacman -Rns $(pacman -Qtdq)'
aliases['pacsyu'] = 'sudo pacman -Syu'
aliases['pacsyyu'] = 'sudo pacman -Syyu'
aliases['parsua'] = 'paru -Sua --noconfirm'
aliases['parsyu'] = 'paru -Syu --noconfirm'
aliases['unlock'] = 'sudo rm /var/lib/pacman/db.lck'
aliases['orphan'] = 'sudo pacman -Rns $(pacman -Qtdq)'
# Reflector (Mirrors)
__xonsh__.aliases['mirror'] = "sudo reflector -f 30 -l 30 --number 10 --verbose --save /etc/pacman.d/mirrorlist"
__xonsh__.aliases['mirrord'] = "sudo reflector --latest 50 --number 20 --sort delay --save /etc/pacman.d/mirrorlist"
__xonsh__.aliases['mirrors'] = "sudo reflector --latest 50 --number 20 --sort score --save /etc/pacman.d/mirrorlist"
__xonsh__.aliases['mirrora'] = "sudo reflector --latest 50 --number 20 --sort age --save /etc/pacman.d/mirrorlist"
aliases['mirror'] = "sudo reflector -f 30 -l 30 --number 10 --verbose --save /etc/pacman.d/mirrorlist"
aliases['mirrord'] = "sudo reflector --latest 50 --number 20 --sort delay --save /etc/pacman.d/mirrorlist"
aliases['mirrors'] = "sudo reflector --latest 50 --number 20 --sort score --save /etc/pacman.d/mirrorlist"
aliases['mirrora'] = "sudo reflector --latest 50 --number 20 --sort age --save /etc/pacman.d/mirrorlist"
# System Tools
__xonsh__.aliases['df'] = 'df -h'
__xonsh__.aliases['free'] = 'free -m'
__xonsh__.aliases['grep'] = 'grep --color=auto'
__xonsh__.aliases['psa'] = "ps auxf"
__xonsh__.aliases['psgrep'] = "ps aux | grep -v grep | grep -i -e VSZ -e"
__xonsh__.aliases['psmem'] = 'ps auxf | sort -nr -k 4'
__xonsh__.aliases['pscpu'] = 'ps auxf | sort -nr -k 3'
__xonsh__.aliases['merge'] = 'xrdb -merge ~/.Xresources'
__xonsh__.aliases['jctl'] = "journalctl -p 3 -xb"
aliases['df'] = 'df -h'
aliases['free'] = 'free -m'
aliases['grep'] = 'grep --color=auto'
aliases['psa'] = "ps auxf"
aliases['psgrep'] = "ps aux | grep -v grep | grep -i -e VSZ -e"
aliases['psmem'] = 'ps auxf | sort -nr -k 4'
aliases['pscpu'] = 'ps auxf | sort -nr -k 3'
aliases['merge'] = 'xrdb -merge ~/.Xresources'
aliases['jctl'] = "journalctl -p 3 -xb"
# Git
__xonsh__.aliases['addup'] = 'git add -u'
__xonsh__.aliases['addall'] = 'git add .'
__xonsh__.aliases['branch'] = 'git branch'
__xonsh__.aliases['checkout'] = 'git checkout'
__xonsh__.aliases['clone'] = 'git clone'
__xonsh__.aliases['commit'] = 'git commit -m'
__xonsh__.aliases['fetch'] = 'git fetch'
__xonsh__.aliases['pull'] = 'git pull origin'
__xonsh__.aliases['push'] = 'git push origin'
__xonsh__.aliases['tag'] = 'git tag'
__xonsh__.aliases['newtag'] = 'git tag -a'
aliases['addup'] = 'git add -u'
aliases['addall'] = 'git add .'
aliases['branch'] = 'git branch'
aliases['checkout'] = 'git checkout'
aliases['clone'] = 'git clone'
aliases['commit'] = 'git commit -m'
aliases['fetch'] = 'git fetch'
aliases['pull'] = 'git pull origin'
aliases['push'] = 'git push origin'
aliases['tag'] = 'git tag'
aliases['newtag'] = 'git tag -a'
# GPG
__xonsh__.aliases['gpg-check'] = "gpg2 --keyserver-options auto-key-retrieve --verify"
__xonsh__.aliases['gpg-retrieve'] = "gpg2 --keyserver-options auto-key-retrieve --receive-keys"
aliases['gpg-check'] = "gpg2 --keyserver-options auto-key-retrieve --verify"
aliases['gpg-retrieve'] = "gpg2 --keyserver-options auto-key-retrieve --receive-keys"
# Shell Switching (using $USER env variable from xonsh)
user = __xonsh__.env.get('USER')
__xonsh__.aliases['tobash'] = f"chsh {user} -s /bin/bash && echo 'Log out and log back in.'"
__xonsh__.aliases['tozsh'] = f"chsh {user} -s /bin/zsh && echo 'Log out and log back in.'"
__xonsh__.aliases['tofish'] = f"chsh {user} -s /bin/fish && echo 'Log out and log back in.'"
user = xenv.get('USER')
aliases['tobash'] = f"chsh {user} -s /bin/bash && echo 'Log out and log back in.'"
aliases['tozsh'] = f"chsh {user} -s /bin/zsh && echo 'Log out and log back in.'"
aliases['tofish'] = f"chsh {user} -s /bin/fish && echo 'Log out and log back in.'"
# TTY Fonts
__xonsh__.aliases['bigfont'] = "setfont ter-132b"
__xonsh__.aliases['regfont'] = "setfont default8x16"
aliases['bigfont'] = "setfont ter-132b"
aliases['regfont'] = "setfont default8x16"
# Misc
__xonsh__.aliases['config'] = f"/usr/bin/git --git-dir={__xonsh__.env.get('HOME')}/dotfiles --work-tree={__xonsh__.env.get('HOME')}"
__xonsh__.aliases['tb'] = "nc termbin.com 9999"
__xonsh__.aliases['rr'] = 'curl -s -L https://raw.githubusercontent.com/keroserene/rickrollrc/master/roll.sh | bash'
__xonsh__.aliases['mocp'] = "bash -c mocp"
aliases['config'] = f"/usr/bin/git --git-dir={xenv.get('HOME')}/dotfiles --work-tree={xenv.get('HOME')}"
aliases['tb'] = "nc termbin.com 9999"
aliases['rr'] = 'curl -s -L https://raw.githubusercontent.com/keroserene/rickrollrc/master/roll.sh | bash'
aliases['mocp'] = "bash -c mocp"