-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
void soul
committed
May 1, 2021
1 parent
1aa2152
commit c54a799
Showing
1 changed file
with
99 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,99 @@ | ||
# Luke's config for the Zoomer Shell | ||
# Enable colors and change prompt: | ||
#eval "$(starship init zsh)" | ||
autoload -U colors && colors # Load colors | ||
|
||
# hogwarts >_ | ||
#PS1="%B%{$fg[yellow]%}%1~ %{$fg[red]%}>_ %{$reset_color%}" | ||
|
||
# 5:33AM >_ studies | ||
#PS1="%B%{$fg[red]%}%@ %{$fg[yellow]%}>_ %1~ %{$reset_color%}" | ||
|
||
# >_ studies | ||
#PS1="%B%{$fg[yellow]%}%(?.%1~.%?) >_ " | ||
|
||
#castelobruxo >_ | ||
PS1="%B%{$fg[yellow]%}%(?.%1~.%{$fg[blue]%}%?) %{$fg[green]%}>_ %{$reset_color%}" | ||
|
||
#√ castelobruxo % | ||
#PS1='%(?.%F{green}√.%F{red}?%?)%f %B%F{240}%1~%f%b %# ' | ||
|
||
# [me@rubius ~t/hogwarts/studies]$ | ||
#PS1="%B%{$fg[red]%}[%{$fg[yellow]%}%n%{$fg[green]%}@%{$fg[blue]%}%M %{$fg[magenta]%}%~%{$fg[red]%}]%{$reset_color%}$%b " | ||
|
||
setopt autocd # Automatically cd into typed directory. | ||
stty stop undef # Disable ctrl-s to freeze terminal. | ||
|
||
# History in cache directory: | ||
HISTSIZE=10000 | ||
SAVEHIST=10000 | ||
HISTFILE=~/.cache/zsh/history | ||
|
||
# Load aliases and shortcuts if existent. | ||
[ -f "${XDG_CONFIG_HOME:-$HOME/.config}/shortcutrc" ] && source "${XDG_CONFIG_HOME:-$HOME/.config}/shortcutrc" | ||
[ -f "${XDG_CONFIG_HOME:-$HOME/.config}/aliasrc" ] && source "${XDG_CONFIG_HOME:-$HOME/.config}/aliasrc" | ||
[ -f "${XDG_CONFIG_HOME:-$HOME/.config}/zshnameddirrc" ] && source "${XDG_CONFIG_HOME:-$HOME/.config}/zshnameddirrc" | ||
|
||
# Basic auto/tab complete: | ||
autoload -U compinit | ||
zstyle ':completion:*' menu select | ||
zmodload zsh/complist | ||
compinit | ||
_comp_options+=(globdots) # Include hidden files. | ||
|
||
# vi mode | ||
bindkey -v | ||
export KEYTIMEOUT=1 | ||
|
||
# Use vim keys in tab complete menu: | ||
bindkey -M menuselect 'h' vi-backward-char | ||
bindkey -M menuselect 'k' vi-up-line-or-history | ||
bindkey -M menuselect 'l' vi-forward-char | ||
bindkey -M menuselect 'j' vi-down-line-or-history | ||
bindkey -v '^?' backward-delete-char | ||
|
||
# Change cursor shape for different vi modes. | ||
function zle-keymap-select { | ||
if [[ ${KEYMAP} == vicmd ]] || | ||
[[ $1 = 'block' ]]; then | ||
echo -ne '\e[1 q' | ||
elif [[ ${KEYMAP} == main ]] || | ||
[[ ${KEYMAP} == viins ]] || | ||
[[ ${KEYMAP} = '' ]] || | ||
[[ $1 = 'beam' ]]; then | ||
echo -ne '\e[5 q' | ||
fi | ||
} | ||
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 | ||
echo -ne '\e[5 q' # Use beam shape cursor on startup. | ||
preexec() { echo -ne '\e[5 q' ;} # Use beam shape cursor for each new prompt. | ||
|
||
# Use lf to switch directories and bind it to ctrl-o | ||
lfcd () { | ||
tmp="$(mktemp)" | ||
lf -last-dir-path="$tmp" "$@" | ||
if [ -f "$tmp" ]; then | ||
dir="$(cat "$tmp")" | ||
rm -f "$tmp" >/dev/null | ||
[ -d "$dir" ] && [ "$dir" != "$(pwd)" ] && cd "$dir" | ||
fi | ||
} | ||
bindkey -s '^o' 'lfcd\n' | ||
|
||
bindkey -s '^a' 'bc -l\n' | ||
|
||
bindkey -s '^f' 'cd "$(dirname "$(fzf)")"\n' | ||
|
||
bindkey '^[[P' delete-char | ||
|
||
# Edit line in vim with ctrl-e: | ||
autoload edit-command-line; zle -N edit-command-line | ||
bindkey '^e' edit-command-line | ||
|
||
# Load syntax highlighting; should be last. | ||
source /usr/share/zsh/plugins/fast-syntax-highlighting/fast-syntax-highlighting.plugin.zsh 2>/dev/null |