213 lines
5.6 KiB
Bash
213 lines
5.6 KiB
Bash
# bindkey -r '^S'
|
|
bindkey -r '\ex'
|
|
ZSH="$HOME/.oh-my-zsh"
|
|
export DISABLE_LS_COLORS=true
|
|
# export W3M_DIR="$HOME/.cache/w3m"
|
|
# export PAGER=ov
|
|
# export MANPAGER="ov --section-delimiter '^[^\s]' --section-header"
|
|
export EGET_BIN="/home/fic/.eget/bin"
|
|
# plugins=(ssh-agent git github zsh-autosuggestions zsh-syntax-highlighting aliases copybuffer copyfile copypath fancy-ctrl-z systemd )
|
|
plugins=(ssh-agent git github zsh-autosuggestions zsh-syntax-highlighting aliases colored-man-pages copybuffer copyfile copypath fancy-ctrl-z systemd)
|
|
source ~/.profile
|
|
source $ZSH/oh-my-zsh.sh
|
|
ASHEN="$HOME/dev/ashen/monorepo"
|
|
source $ASHEN/fzf/ashen.sh
|
|
unset LS_COLORS
|
|
|
|
if whence -w helix &>/dev/null; then
|
|
# Stable
|
|
HELIX="hx"
|
|
export EDITOR="hx"
|
|
alias helix="hx"
|
|
# alias hx="helix"
|
|
else
|
|
# Latest
|
|
HELIX="hx"
|
|
alias helix="hx"
|
|
export EDITOR="hx"
|
|
fi
|
|
|
|
# Note: if I do get Obsidian Bridge working, this is
|
|
# a really bad way to load the env because
|
|
# it slows down shell initialization significantly.
|
|
# Would be better to find a way to have the plugin
|
|
# call this script dynamically instead!
|
|
# source ~/scripts/obsidian-bridge.sh
|
|
|
|
# autoload -U promptinit; promptinit
|
|
# prompt purer
|
|
autoload -U edit-command-line
|
|
zle -N edit-command-line
|
|
bindkey "^e" edit-command-line
|
|
bindkey "^h" beginning-of-line
|
|
bindkey "^l" end-of-line
|
|
bindkey "^b" backward-word
|
|
bindkey "^d" backward-kill-word
|
|
bindkey "^w" forward-word
|
|
|
|
# autoload -Uz compinit
|
|
# compinit
|
|
|
|
# Set up fzf key bindings and fuzzy completion
|
|
source ~/.config/zsh/fzf.zsh
|
|
# Not working for some reason...
|
|
# source ~/.config/zsh/fzf-git.sh
|
|
|
|
alias xcheck="env DISPLAY=:0 xlsclients"
|
|
alias mailconf="y ~/.config/mail"
|
|
alias nm=notmuch
|
|
|
|
# alias ls="eza -lh --git"
|
|
# alias ls="eza --long --color=always --git --header --icons --no-user"
|
|
# alias vlc="env -u DISPLAY vlc"
|
|
alias ts="tree-sitter"
|
|
alias c="clear"
|
|
alias top=btop
|
|
alias minvim='NVIM_APPNAME="nvim-min" nvim'
|
|
alias vimclean='nvim --clean'
|
|
alias catkeys='/bin/cat -v'
|
|
alias e="$EDITOR"
|
|
alias edit="$EDITOR"
|
|
alias h="$HELIX"
|
|
# alias v='nvim'
|
|
# alias vim='nvim'
|
|
# alias vi='nvim'
|
|
alias vm='nvim --clean'
|
|
alias mktdir='cd $(mktemp -d)'
|
|
# alias n='nvim'
|
|
alias lg=lazygit
|
|
alias ylg="yadm enter lazygit"
|
|
# tmux aliases
|
|
alias tmuxclean="tmux -L test -f /dev/null"
|
|
alias tm="tmux"
|
|
alias ta="tmux attach-session"
|
|
alias tat="tmux attach-session -t"
|
|
alias tka="tmux kill-session -a"
|
|
alias tkt="tmux kill-session -t"
|
|
alias tl="tmux list-sessions"
|
|
alias tn="tmux new-session"
|
|
alias tnt="tmux new-session -t"
|
|
|
|
# alias zj=zellij
|
|
# alias yeet="yay -Rns"
|
|
|
|
alias svenv="source .venv/bin/activate"
|
|
alias szsh="source ~/.zshrc"
|
|
alias ezsh="$EDITOR ~/.zshrc"
|
|
alias vzsh="vim ~/.zshrc"
|
|
alias vtmux="vim ~/.config/tmux/tmux.conf"
|
|
alias icat=chafa
|
|
# alias icat="kitty +kitten icat"
|
|
alias iecho="xclip -selection clipboard -t image/png -o >"
|
|
alias vn=viewnior
|
|
alias mermaid=mmdc
|
|
alias dnd=dragon-drop
|
|
# alias cat=bat
|
|
|
|
alias autoyadm="AUTOYADMPUSH=1 ~/dev/autoyadm/autoyadm.sh"
|
|
alias yadmadd="~/dev/autoyadm/yadmadd.sh"
|
|
|
|
# Created by `pipx` on 2024-09-20 02:14:00
|
|
export PATH="$PATH:$HOME/.local/bin:$HOME/.cargo/bin:$HOME/go/bin"
|
|
export PATH="$PATH:/home/fic/.eget/bin"
|
|
export PATH="$PATH:/home/fic/.local/share/bob/nvim-bin"
|
|
export PATH="$PATH:/home/fic/.luarocks/bin"
|
|
export PATH="$PATH:/home/fic/.local/share/npm/bin"
|
|
fpath=(~/.zsh/functions $fpath)
|
|
autoload -Uz syncthing_menu
|
|
# fpath=(~/.zsh.d/ $fpath)
|
|
function noh() {
|
|
nohup "$@" >/dev/null 2>&1 &
|
|
}
|
|
function ls() {
|
|
eza --long --color=always --git --header --icons "$@"
|
|
}
|
|
function copyl() {
|
|
wl-copy -t 'text/uri-list' <<<"file://$PWD/$@"
|
|
}
|
|
function y() {
|
|
local tmp="$(mktemp -t "yazi-cwd.XXXXXX")" cwd
|
|
yazi "$@" --cwd-file="$tmp"
|
|
if cwd="$(command cat -- "$tmp")" && [ -n "$cwd" ] && [ "$cwd" != "$PWD" ]; then
|
|
builtin cd -- "$cwd"
|
|
fi
|
|
rm -f -- "$tmp"
|
|
}
|
|
function cat() {
|
|
bat "$@"
|
|
}
|
|
# . /opt/asdf-vm/asdf.sh
|
|
# Need this to fix the cursor in tmux
|
|
print -n '\033[6 q'
|
|
function zle-keymap-select zle-line-init zle-line-finish
|
|
{
|
|
case $KEYMAP in
|
|
vicmd) print -n '\033[1 q' ;; # block cursor
|
|
viins | main) print -n '\033[6 q' ;; # line cursor
|
|
esac
|
|
}
|
|
# DISABLE_AUTO_TITLE="true"
|
|
# function set_win_title() {
|
|
# echo -ne "\033]0; ${PWD/#$HOME/~} \007"
|
|
# }
|
|
# function viewport_osc() {
|
|
# print -Pn "\e]133;A\e\\"
|
|
# }
|
|
|
|
function mksh() {
|
|
local filepath="$1.sh"
|
|
if [[ ! -f "$filepath" && "$1" != "" ]]; then
|
|
echo '#!/bin/env bash\n\necho "Hello, World!"' >>"$filepath"
|
|
/usr/bin/chmod +x "$filepath"
|
|
echo "$filepath created."
|
|
else
|
|
if [[ "$filepath" == ".sh" ]]; then
|
|
echo "You must supply an argument!"
|
|
else
|
|
echo "$filepath already exists"
|
|
fi
|
|
fi
|
|
}
|
|
|
|
function osc7-pwd() {
|
|
emulate -L zsh # also sets localoptions for us
|
|
setopt extendedglob
|
|
local LC_ALL=C
|
|
printf '\e]7;file://%s%s\e\' $HOST ${PWD//(#m)([^@-Za-z&-;_~])/%${(l:2::0:)$(([##16]#MATCH))}}
|
|
}
|
|
|
|
function chpwd-osc7-pwd() {
|
|
(( ZSH_SUBSHELL )) || osc7-pwd
|
|
}
|
|
add-zsh-hook -Uz chpwd chpwd-osc7-pwd
|
|
|
|
function preexec {
|
|
print -n "\e]133;C\e\\"
|
|
}
|
|
|
|
precmd() {
|
|
print -Pn "\e]133;A\e\\"
|
|
if ! builtin zle; then
|
|
print -n "\e]133;D\e\\"
|
|
fi
|
|
}
|
|
|
|
# precmd_functions+=(set_win_title viewport_osc)
|
|
# precmd_functions+=(viewport_osc)
|
|
# zle -N zle-line-init
|
|
# zle -N zle-line-finish
|
|
# zle -N zle-keymap-select
|
|
eval $(thefuck --alias)
|
|
eval "$(starship init zsh)"
|
|
eval "$(zoxide init zsh)"
|
|
eval "$(rip completions zsh)"
|
|
export DIRENV_LOG_FORMAT=""
|
|
export GPG_TTY=$(tty)
|
|
gpg-connect-agent updatestartuptty /bye >/dev/null
|
|
# gpg-connect-agent updatestartuptty /bye >/dev/null
|
|
# export SSH_AUTH_SOCK=$(gpgconf --list-dirs agent-ssh-socket)
|
|
# gpg-connect-agent /bye > /dev/null
|
|
eval "$(direnv hook zsh)"
|
|
# colorscript -e 36
|
|
# source ~/scripts/obsidian-bridge.sh
|
|
source <(cdhist -i)
|