2023-03-29 16:15:06 +02:00
|
|
|
# vim:set ft=zsh
|
2023-06-12 19:48:29 +02:00
|
|
|
|
2023-06-13 16:09:53 +02:00
|
|
|
function _lfwrap () {
|
2023-06-12 19:48:29 +02:00
|
|
|
BUFFER="lfwrap"
|
|
|
|
zle accept-line
|
2023-03-29 16:15:06 +02:00
|
|
|
}
|
2023-06-13 16:09:53 +02:00
|
|
|
zle -N _lfwrap
|
2023-03-29 16:15:06 +02:00
|
|
|
|
|
|
|
# Cursor Shape
|
|
|
|
function zle-keymap-select () {
|
|
|
|
case $KEYMAP in
|
|
|
|
vicmd) echo -ne '\e[1 q';; # block
|
|
|
|
viins|main) echo -ne '\e[5 q';; # beam
|
|
|
|
esac
|
|
|
|
}
|
|
|
|
zle -N zle-keymap-select
|
|
|
|
zle-line-init() {
|
|
|
|
zle -K viins # initiate `vi insert` as keymap (can be removed if `bindkey -V` has been set elsewhere)
|
|
|
|
echo -ne "\e[5 q"
|
|
|
|
}
|
|
|
|
zle -N zle-line-init
|
|
|
|
|
|
|
|
# CMDLine Edit
|
|
|
|
zle -N edit-command-line
|
|
|
|
|
|
|
|
# Lazygit
|
|
|
|
function lg () {
|
2023-06-12 19:48:29 +02:00
|
|
|
[ ! -d "$(pwd)/.git" ] && [[ $(read -erk "?Not in a git repository. Create a new git repository? (y/n): ") =~ ^[Yy]$ ]] && git init
|
|
|
|
[ -d "$(pwd)/.git" ] && lazygit -p "$(pwd)"
|
|
|
|
zle reset-prompt
|
2023-03-29 16:15:06 +02:00
|
|
|
}
|
|
|
|
zle -N lg{,}
|