Compare commits

...

5 commits

Author SHA1 Message Date
Danielle McLean d2e6e2f3aa
Turn on p10k segments useful to me personally 2023-11-20 13:43:02 +11:00
Danielle McLean 6515d9b257
Simplify and update bindkeys 2023-11-20 13:41:29 +11:00
Danielle McLean fcb897de80
Swap from zinit to Zim: much simpler and just as fast 2023-11-20 13:41:08 +11:00
Danielle McLean ddb6433bb9
Autoload zcalc for quick arithmetic 2023-11-20 12:57:54 +11:00
Danielle McLean 81b476bcf4
Move background-jobs indicator to more prominent spot 2023-11-20 12:57:31 +11:00
6 changed files with 59 additions and 65 deletions

View file

@ -1,10 +0,0 @@
#! zsh
typeset -A ZINIT
ZINIT[HOME_DIR]=${XDG_CACHE_HOME:-~/.cache}/zinit
ZINIT[BIN_DIR]=${ZINIT[HOME_DIR]}/zinit.git
ZINIT[ZCOMPDUMP_PATH]=${XDG_CACHE_HOME:-~/.cache}/zsh/zcompdump.zsh
if [[ -e ${ZINIT[HOME_DIR]}/module/Src/zdharma_continuum/zinit.so ]]; then
module_path+=( ${ZINIT[HOME_DIR]}/module/Src )
zmodload zdharma_continuum/zinit
fi

View file

@ -4,4 +4,4 @@
# to call one in a script so non-interactive shells need them.
autoload count
autoload enphp
autoload -Uz zargs zmv
autoload -Uz zargs zcalc zmv

View file

@ -1,34 +1,17 @@
#! zsh
_zsh_highlight() {}
zle-line-init() {}
zle -N zle-line-init
autoload -Uz select-word-style
select-word-style shell
# Allow S-Tab to backtrack through the completion menu.
bindkey $terminfo[kcbt] reverse-menu-complete
# Tweaks to vi mode:
bindkey '^?' backward-delete-char # backspace over the start of Insert mode
bindkey 'jj' vi-cmd-mode # inoremap jj <Esc>
bindkey -M vicmd K run-help # 'keywordprg'
# Backward-kill long paths one directory at a time.
bindkey '^W' backward-kill-word
zstyle ':zle:backward-kill-word' word-style unspecified
zstyle ':zle:backward-kill-word' word-chars ' /'
autoload -U backward-kill-word-match
zle -N backward-kill-word-match
bindkey '^W' backward-kill-word-match
zstyle ':zle:backward-kill-word-match' word-style unspecified
zstyle ':zle:backward-kill-word-match' word-chars ' /'
# Make ^Z resume your suspended job if there is one.
autoload fancy-ctrl-z
zle -N fancy-ctrl-z
bindkey '^Z' fancy-ctrl-z
__fzf-z() {
z -l | tac | cut -c 12- | fzf --preview 'tree -FCL 2 {}'
}
fzf-z() {
LBUFFER+="$(__fzf-z)"
zle redisplay
}
zle -N fzf-z
bindkey '^G' fzf-z

View file

@ -37,6 +37,7 @@
vcs # git status
# =========================[ Line #2 ]=========================
newline # \n
background_jobs # presence of background jobs
prompt_char # prompt symbol
)
@ -48,7 +49,6 @@
# =========================[ Line #1 ]=========================
status # exit code of the last command
command_execution_time # duration of the last command
background_jobs # presence of background jobs
direnv # direnv status (https://direnv.net/)
asdf # asdf version manager (https://github.com/asdf-vm/asdf)
virtualenv # python virtual environment (https://docs.python.org/3/library/venv.html)
@ -58,14 +58,14 @@
# nodenv # node.js version from nodenv (https://github.com/nodenv/nodenv)
# nvm # node.js version from nvm (https://github.com/nvm-sh/nvm)
# nodeenv # node.js environment (https://github.com/ekalinin/nodeenv)
# node_version # node.js version
node_version # node.js version
# go_version # go version (https://golang.org)
# rust_version # rustc version (https://www.rust-lang.org)
# dotnet_version # .NET version (https://dotnet.microsoft.com)
# php_version # php version (https://www.php.net/)
php_version # php version (https://www.php.net/)
# laravel_version # laravel php framework version (https://laravel.com/)
# java_version # java version (https://www.java.com/)
# package # name@version from package.json (https://docs.npmjs.com/files/package.json)
package # name@version from package.json (https://docs.npmjs.com/files/package.json)
# rbenv # ruby version from rbenv (https://github.com/rbenv/rbenv)
# rvm # ruby version from rvm (https://rvm.io)
# fvm # flutter version management (https://github.com/leoafarias/fvm)
@ -111,7 +111,7 @@
# ip # ip address and bandwidth usage for a specified network interface
# public_ip # public IP address
# proxy # system-wide http/https/ftp proxy
# battery # internal battery
battery # internal battery
# wifi # wifi speed
# example # example user-defined segment (see prompt_example function below)
)

View file

@ -1,30 +1,22 @@
#! zsh
: ${ZIM_HOME:=$XDG_CACHE_HOME/zim}
: ${ZIM_CONFIG_FILE:=$XDG_CONFIG_HOME/zsh/zimrc.zsh}
zstyle :zim:completion dumpfile ${XDG_CACHE_HOME:-~/.cache}/zsh/zcompdump.zsh
[[ ! -d $ZINIT[HOME_DIR] ]] && mkdir -p $ZINIT[HOME_DIR]
if [[ ! -d $ZINIT[BIN_DIR]/.git ]]; then
git clone https://github.com/zdharma-continuum/zinit.git $ZINIT[BIN_DIR]
zcompile $ZINIT[BIN_DIR]/zinit.zsh
# Sure, I typically run MacOS, which uses a case-insensitive filesystem, but
# that doesn't mean I have to like it. ;)
zstyle ':zim:*' case-sensitivity sensitive
zstyle :zim:termtitle hooks preexec precmd
zstyle :zim:termtitle:preexec format '${${(A)=1}[1]}'
zstyle :zim:termtitle:precmd format '%1~'
if [[ ! -e $ZIM_HOME/zimfw.zsh ]]; then
curl -fsSL --create-dirs -o $ZIM_HOME/zimfw.zsh https://github.com/zimfw/zimfw/releases/latest/download/zimfw.zsh
zcompile $ZIM_HOME/zimfw.zsh
fi
if [[ ! $ZIM_HOME/init.zsh -nt $ZIM_CONFIG_FILE ]]; then
source $ZIM_HOME/zimfw.zsh init -q
fi
source $ZINIT[BIN_DIR]/zinit.zsh
load=light
zinit $load willghatch/zsh-saneopt
zinit $load mafredri/zsh-async
zinit ice depth'1'
zinit $load romkatv/powerlevel10k
vivid_theme=molokai
(( $+commands[vivid] )) && zinit ice atclone'./build.sh' atpull'%atclone' run-atpull
zinit $load ryanccn/vivid-zsh
zinit wait lucid light-mode for \
hlissner/zsh-autopair \
mollifier/cd-gitroot \
atinit"dot-zsh-compinit" \
zdharma-continuum/fast-syntax-highlighting \
atload"_zsh_autosuggest_start" \
zsh-users/zsh-autosuggestions \
blockf atpull'zinit creinstall -q .' \
zsh-users/zsh-completions
source $ZIM_HOME/init.zsh

29
dot-config/zsh/zimrc.zsh Normal file
View file

@ -0,0 +1,29 @@
zmodule willghatch/zsh-saneopt --source saneopt.plugin.zsh
zmodule environment
zmodule mafredri/zsh-async --source async.zsh
zmodule input
zmodule run-help
zmodule magic-enter
zmodule termtitle
zmodule utility
zmodule romkatv/powerlevel10k --use degit
zmodule ryanccn/vivid-zsh --cmd 'vivid_theme=molokai source {}/vivid-zsh.plugin.zsh' --on-pull '(( ${+commands[vivid]} )) && ./build.sh'
zmodule hlissner/zsh-autopair
zmodule mollifier/cd-gitroot --fpath . --autoload cd-gitroot
zmodule kiesman99/zim-zoxide
zmodule zsh-users/zsh-autosuggestions
(( ${+commands[brew]} )) && zmodule homebrew
# Additional completion definitions for Zsh.
zmodule zsh-users/zsh-completions --fpath src
# Enables and configures smart and extensive tab completion.
# completion *must* be sourced after all modules that add completion definitions.
zmodule completion
# Fish-style syntax highlighting as you type, making the Zsh experience much more friendly!
zmodule zdharma-continuum/fast-syntax-highlighting