linux-qubasis
linux oasis port as a qubes template
git clone https://9o.is/git/linux-qubasis.git
commit e321014206bf4f352024c859293755b41aa5a72d parent ef7744ab447a6b58c8f764f0d1da212f8e4007b4 Author: Jul <jul@9o.is> Date: Thu, 7 Aug 2025 08:03:01 -0400 add yash config for fe/fzy/git Diffstat:
| M | pkg/yash/config/00-general | | | 5 | +---- |
| A | pkg/yash/config/10-fzy | | | 15 | +++++++++++++++ |
| M | pkg/yash/config/10-git | | | 69 | +++++++++++++++++++++++++++++++++++---------------------------------- |
3 files changed, 51 insertions(+), 38 deletions(-)
diff --git a/pkg/yash/config/00-general b/pkg/yash/config/00-general @@ -28,14 +28,11 @@ alias --global N='>/dev/null 2>&1' N1='>/dev/null' N2='2>/dev/null' # define some basic variables export PAGER=less export EDITOR=vis -export BROWSER=noice : ${FCEDIT:=$EDITOR} : ${LOGNAME:=$(logname)} # alias-like functions -cp() if [ -t 0 ]; then command cp -r "$@"; else command cp "$@"; fi -rm() if [ -t 0 ]; then command rm -r "$@"; else command rm "$@"; fi df() if [ -t 0 ]; then command df -h "$@"; else command df "$@"; fi du() if [ -t 0 ]; then command du -h "$@"; else command du "$@"; fi mkdir() if [ -t 0 ]; then command mkdir -p "$@"; else command mkdir "$@"; fi @@ -44,7 +41,7 @@ yash() { command yash "$@"; } vi() { if [ ! "$@" ] || [ -d "$1" ]; then - command $BROWSER "$@"; + command $EDITOR $(fe "$@"); else command $EDITOR "$@"; fi diff --git a/pkg/yash/config/10-fzy b/pkg/yash/config/10-fzy @@ -0,0 +1,15 @@ +if command --identify fzy >/dev/null 2>&1; then + alias sf='vi $(find -type f | fzy)' + alias sd='cd $(find -type d | fzy)' + alias skill='ps axo pid,user,pcpu,pmem,stat,comm | fzy | awk "{print \$1}" | xargs kill' + + if command --identify git >/dev/null 2>&1; then + alias sga='git diff --name-only | fzy --prompt="Git Add: " | xargs git add' + alias sgap='git diff --name-only | fzy --prompt="Git Add Patch: " | xargs git add --patch' + alias sgr='git diff --name-only | fzy --prompt="Git Restore: " | xargs git restore' + alias sgrs='git diff --name-only --cached | fzy --prompt="Git Restore Staged: " | xargs git restore --staged' + alias sgco='git log --online | fzy --prompt="Git Checkout: " | awk "{print \$1}" | xargs git checkout' + alias sgcor='git for-each-ref --format="%(refname) %(subject)" | fzy --prompt="Git Checkout: " | awk "{print \$1}" | xargs git checkout' + alias sgrbi='git log --online | fzy --prompt="Git Rebase: " | awk "{print \$1}" | xargs git rebase -i' + fi +fi diff --git a/pkg/yash/config/10-git b/pkg/yash/config/10-git @@ -1,34 +1,35 @@ -alias gs='git status' -alias gl='git log' -alias glp='git lg' -alias gd='git diff' -alias gdc='git diff --cached' -alias gdcw='git diff --cached --word-diff' -alias gds='git diff --staged' -alias gdu='git diff @{upstream}' -alias ga='git add' -alias gaa='git add --all' -alias gap='git add --patch' -alias gr='git restore' -alias grs='git restore --staged' -alias gc='git commit -v' -alias gca='git commit -v -a' -alias gc!='git commit -v --no-edit --amend' -alias gca!='git commit -v -a --no-edit --amend' -alias gcl='git clone' -alias gco='git checkout' -alias gcob='git checkout -b' -alias gcom='git checkout -b main' -alias gf='git fetch' -alias gfa='git fetch --all --prune' -alias gfo='git fetch origin' -alias gp='git push' -alias gpd='git push --dry-run' -alias gpf!='git push --force' -alias grb='git rebase' -alias grba='git rebase --abort' -alias grbc='git rebase --continue' -alias grbm='git rebase origin/main' -alias grbi='git rebase -i' -alias grm='git rm' -alias grmc='git rm --cached' +if command --identify git >/dev/null 2>&1; then + alias gs='git status --short' + alias gl='git lg' + alias gd='git diff' + alias gdc='git diff --cached' + alias gdcw='git diff --cached --word-diff' + alias gds='git diff --staged' + alias gdu='git diff @{upstream}' + alias ga='git add' + alias gaa='git add --all' + alias gap='git add --patch' + alias gr='git restore' + alias grs='git restore --staged' + alias gc='git commit -v' + alias gca='git commit -v -a' + alias gc!='git commit -v --no-edit --amend' + alias gca!='git commit -v -a --no-edit --amend' + alias gcl='git clone' + alias gco='git checkout' + alias gcob='git checkout -b' + alias gcom='git checkout -b main' + alias gf='git fetch' + alias gfa='git fetch --all --prune' + alias gfo='git fetch origin' + alias gp='git push' + alias gpd='git push --dry-run' + alias gpf!='git push --force' + alias grb='git rebase' + alias grba='git rebase --abort' + alias grbc='git rebase --continue' + alias grbm='git rebase origin/main' + alias grbi='git rebase -i' + alias grm='git rm' + alias grmc='git rm --cached' +fi