🍻 Fix everything that was broken
Note to self - maybe consider testing things as you write them instead of just making one thousand edits and then moving on.
This commit is contained in:
parent
017efbb202
commit
52a8da2336
12 changed files with 209 additions and 217 deletions
70
.tmux.conf
Normal file
70
.tmux.conf
Normal file
|
@ -0,0 +1,70 @@
|
||||||
|
set -g @plugin 'tmux-plugins/tpm'
|
||||||
|
set -g @plugin 'tmux-plugins/tmux-sensible'
|
||||||
|
set -g @plugin 'tmux-plugins/tmux-resurrect'
|
||||||
|
set -g @plugin 'catppuccin/tmux'
|
||||||
|
set -g @plugin 'Morantron/tmux-fingers'
|
||||||
|
|
||||||
|
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
|
||||||
|
# catppuccin
|
||||||
|
set -g @catppuccin_flavour 'mocha'
|
||||||
|
|
||||||
|
set -g @catppuccin_window_left_separator " "
|
||||||
|
set -g @catppuccin_window_right_separator ""
|
||||||
|
set -g @catppuccin_window_middle_separator "█ "
|
||||||
|
set -g @catppuccin_window_number_position "left"
|
||||||
|
|
||||||
|
set -g @catppuccin_window_default_fill "number"
|
||||||
|
set -g @catppuccin_window_default_text "#W"
|
||||||
|
|
||||||
|
set -g @catppuccin_window_current_fill "number"
|
||||||
|
set -g @catppuccin_window_current_text "#W"
|
||||||
|
|
||||||
|
set -g @catppuccin_status_modules_left "directory"
|
||||||
|
set -g @catppuccin_status_modules_right "user host session date_time"
|
||||||
|
set -g @catppuccin_status_left_separator " "
|
||||||
|
set -g @catppuccin_status_right_separator ""
|
||||||
|
set -g @catppuccin_status_right_separator_inverse "no"
|
||||||
|
set -g @catppuccin_status_fill "icon"
|
||||||
|
set -g @catppuccin_status_connect_separator "no"
|
||||||
|
|
||||||
|
set -g @catppuccin_directory_text "#{pane_current_path}"
|
||||||
|
set -g @catppuccin_date_time_text "%b %d • %I:%M %p"
|
||||||
|
|
||||||
|
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
|
||||||
|
# Remap prefix.
|
||||||
|
unbind C-b
|
||||||
|
set-option -g prefix C-a
|
||||||
|
bind-key C-a send-prefix
|
||||||
|
|
||||||
|
# Vi copy mode.
|
||||||
|
set-window-option -g mode-keys vi
|
||||||
|
|
||||||
|
bind-key -T copy-mode-vi 'v' send -X begin-selection
|
||||||
|
bind-key -T copy-mode-vi 'y' send -X copy-selection-and-cancel
|
||||||
|
|
||||||
|
# Better split commands.
|
||||||
|
bind | split-window -h -c "#{pane_current_path}" # cmd-| in iTerm2
|
||||||
|
bind - split-window -v -c "#{pane_current_path}" # cmd-- in iTerm2
|
||||||
|
unbind '"'
|
||||||
|
unbind %
|
||||||
|
|
||||||
|
# Vi-like resizing.
|
||||||
|
bind-key j resize-pane -D # cmd-j in iTerm2
|
||||||
|
bind-key k resize-pane -U # cmd-k in iTerm2
|
||||||
|
bind-key h resize-pane -L # cmd-h in iTerm2
|
||||||
|
bind-key l resize-pane -R # cmd-l in iTerm2
|
||||||
|
|
||||||
|
# Easy reload config.
|
||||||
|
bind r source-file ~/.tmux.conf
|
||||||
|
|
||||||
|
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
|
||||||
|
# Install tpm if not already installed.
|
||||||
|
if "test ! -d ~/.tmux/plugins/tpm" \
|
||||||
|
"run 'git clone https://github.com/tmux-plugins/tpm ~/.tmux/plugins/tpm && ~/.tmux/plugins/tpm/bin/install_plugins'"
|
||||||
|
|
||||||
|
# Init tmux plugin manager.
|
||||||
|
# Must be very last line!!
|
||||||
|
run '~/.tmux/plugins/tpm/tpm'
|
5
fish/.config/fish/functions/dscleanup.fish.symlink
Normal file
5
fish/.config/fish/functions/dscleanup.fish.symlink
Normal file
|
@ -0,0 +1,5 @@
|
||||||
|
#!/usr/bin/env fish
|
||||||
|
|
||||||
|
function dscleanup -d "Recursively delete '.DS_Store' files"
|
||||||
|
find . -type f -name '*.DS_Store' -ls -delete
|
||||||
|
end
|
22
fish/.config/fish/functions/up.fish.symlink
Normal file
22
fish/.config/fish/functions/up.fish.symlink
Normal file
|
@ -0,0 +1,22 @@
|
||||||
|
#!/usr/bin/env fish
|
||||||
|
|
||||||
|
source "$DOT/script/utils.fish"
|
||||||
|
|
||||||
|
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
|
||||||
|
function up -d "Update all software across all package managers"
|
||||||
|
set -f cmd "brew update && brew upgrade && brew cleanup"
|
||||||
|
set -a cmd "npm install npm -g && npm update -g"
|
||||||
|
|
||||||
|
if cmd_exists 'gem'
|
||||||
|
set -a cmd "sudo gem update --system && sudo gem update && sudo gem cleanup"
|
||||||
|
end
|
||||||
|
|
||||||
|
if [ "$(uname)" = "Darwin" ]
|
||||||
|
set -p cmd "sudo softwareupdate --install --all"
|
||||||
|
else if [ "$(uname)" = "Linux" ]
|
||||||
|
set -p cmd "sudo apt update && sudo apt upgrade"
|
||||||
|
end
|
||||||
|
|
||||||
|
echo (string join '; ' $cmd)
|
||||||
|
end
|
47
fish/aliases.config.fish
Normal file
47
fish/aliases.config.fish
Normal file
|
@ -0,0 +1,47 @@
|
||||||
|
#!/usr/bin/env fish
|
||||||
|
|
||||||
|
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
|
||||||
|
# Shell aliases.
|
||||||
|
abbr -a rl --position command "source ~/.config/fish/config.fish"
|
||||||
|
abbr -a c --position command "clear"
|
||||||
|
abbr -a e --position command "$EDITOR"
|
||||||
|
abbr -a v --position command "$EDITOR"
|
||||||
|
|
||||||
|
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
|
||||||
|
# Location aliases.
|
||||||
|
abbr -a hack --position command "cd ~/hackin"
|
||||||
|
|
||||||
|
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
|
||||||
|
# Default command options.
|
||||||
|
|
||||||
|
abbr -a cp --position command "cp -iv"
|
||||||
|
# │└─ list copied files
|
||||||
|
# └─ prompt before overwriting an existing file
|
||||||
|
|
||||||
|
abbr -a mkdir --position command "mkdir -pv"
|
||||||
|
# │└─ list created directories
|
||||||
|
# └─ create intermediate directories
|
||||||
|
|
||||||
|
abbr -a mv --position command "mv -iv"
|
||||||
|
# │└─ list moved files
|
||||||
|
# └─ prompt before overwriting an existing file
|
||||||
|
|
||||||
|
abbr -a rm --position command "rm -rf"
|
||||||
|
# │└─ do not ask for confirmation
|
||||||
|
# └─ recursively remove directories and files
|
||||||
|
|
||||||
|
# Colored grep output.
|
||||||
|
abbr -a grep --position command "grep --color=auto"
|
||||||
|
abbr -a fgrep --position command "fgrep --color=auto"
|
||||||
|
abbr -a egrep --position command "egrep --color=auto"
|
||||||
|
|
||||||
|
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
|
||||||
|
if [ "$(uname)" = "Darwin" ]
|
||||||
|
abbr -a o --position command "open"
|
||||||
|
else if [ "$(uname)" = "Linux" ]
|
||||||
|
abbr -a o --position command "xdg-open"
|
||||||
|
end
|
|
@ -217,7 +217,7 @@ abbr -a glap --position command "git log --pretty=lf --graph --all --cc --patch"
|
||||||
# Shortcuts to Feel Smart #
|
# Shortcuts to Feel Smart #
|
||||||
################################################################################
|
################################################################################
|
||||||
|
|
||||||
function gprevision -a $N $path
|
function gprevision -a N path
|
||||||
git checkout \
|
git checkout \
|
||||||
(git log --online $path | awk -v commit="$N" "FNR == -commit+1 {print $N}") \
|
(git log --online $path | awk -v commit="$N" "FNR == -commit+1 {print $N}") \
|
||||||
$path
|
$path
|
||||||
|
|
0
git/install.fish
Normal file → Executable file
0
git/install.fish
Normal file → Executable file
|
@ -1,6 +1,6 @@
|
||||||
#!/user/bin/env fish
|
#!/user/bin/env fish
|
||||||
|
|
||||||
source "$DOT/script/utils"
|
source "$DOT/script/utils.fish"
|
||||||
|
|
||||||
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
|
||||||
|
@ -16,7 +16,7 @@ function brew_prefix
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
function brew_tap -a $tap
|
function brew_tap -a tap
|
||||||
brew tap "$tap" &>/dev/null
|
brew tap "$tap" &>/dev/null
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -30,7 +30,7 @@ end
|
||||||
|
|
||||||
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
|
||||||
function brew_install -a $formula_readable_name $formula $arguments $tap_value
|
function brew_install -a formula_readable_name formula arguments tap_value
|
||||||
# Check that Homebrew is installed
|
# Check that Homebrew is installed
|
||||||
if ! cmd_exists "brew"
|
if ! cmd_exists "brew"
|
||||||
print_error "$formula_readable_name ('Homebrew' is not installed)"
|
print_error "$formula_readable_name ('Homebrew' is not installed)"
|
||||||
|
|
|
@ -4,7 +4,7 @@ source "$DOT/script/utils.fish"
|
||||||
|
|
||||||
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
|
||||||
function npm_install -a $msg $pkg
|
function npm_install -a msg pkg
|
||||||
execute \
|
execute \
|
||||||
"source $DOT/node/path.config.fish && npm install --global --silent $pkg" \
|
"source $DOT/node/path.config.fish && npm install --global --silent $pkg" \
|
||||||
"$msg"
|
"$msg"
|
||||||
|
|
|
@ -12,19 +12,26 @@ source "$DOT/script/utils.fish"
|
||||||
function set_os_prefs
|
function set_os_prefs
|
||||||
print_title "OS Preferences"
|
print_title "OS Preferences"
|
||||||
|
|
||||||
set os $(uname | string lower)
|
set -f os $(uname | string lower)
|
||||||
|
set -f file "{$DOT}/os/{$os}.fish"
|
||||||
|
|
||||||
"$DOT/os/$os.fish"
|
if [ -e "$file" -a -x "$file" ]
|
||||||
|
"$file"
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
################################################################################
|
################################################################################
|
||||||
# Symlink Dotfiles #
|
# Symlink Dotfiles #
|
||||||
################################################################################
|
################################################################################
|
||||||
|
|
||||||
function link_file -a $src $dst
|
function link_file -a src dst
|
||||||
set -f action
|
set -f action
|
||||||
|
|
||||||
if [ -f "$dst" ] || [ -d "$dst" ] || [ -L "$dst" ]
|
set -f overwrite ""
|
||||||
|
set -f backup ""
|
||||||
|
set -f skip ""
|
||||||
|
|
||||||
|
if [ -f "$dst" -o -d "$dst" -o -L "$dst" ]
|
||||||
|
|
||||||
if ! $overwrite_all && ! $backup_all && ! $skip_all
|
if ! $overwrite_all && ! $backup_all && ! $skip_all
|
||||||
set -f current_src (readlink "$dst")
|
set -f current_src (readlink "$dst")
|
||||||
|
@ -38,24 +45,32 @@ function link_file -a $src $dst
|
||||||
|
|
||||||
switch $action
|
switch $action
|
||||||
case o
|
case o
|
||||||
set -f overwrite true
|
set overwrite true
|
||||||
case O
|
case O
|
||||||
set -f overwrite_all true
|
set overwrite_all true
|
||||||
case b
|
case b
|
||||||
set -f backup true
|
set backup true
|
||||||
case B
|
case B
|
||||||
set -f backup_all true
|
set backup_all true
|
||||||
case s
|
case s
|
||||||
set -f skip true
|
set skip true
|
||||||
case S
|
case S
|
||||||
set -f skip_all true
|
set skip_all true
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
set -q overwrite || set overwrite $overwrite_all
|
if [ -z "$overwrite" ]
|
||||||
set -q backup || set backup $backup_all
|
set overwrite $overwrite_all
|
||||||
set -q skip || set skip $skip_all
|
end
|
||||||
|
|
||||||
|
if [ -z "$backup" ]
|
||||||
|
set backup $backup_all
|
||||||
|
end
|
||||||
|
|
||||||
|
if [ -z $skip ]
|
||||||
|
set skip $skip_all
|
||||||
|
end
|
||||||
|
|
||||||
if $overwrite
|
if $overwrite
|
||||||
rm -rf "$dst"
|
rm -rf "$dst"
|
||||||
|
@ -72,7 +87,7 @@ function link_file -a $src $dst
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
if ! $skip
|
if [ -z $skip ] || ! $skip
|
||||||
# See of any directories need to be created.
|
# See of any directories need to be created.
|
||||||
if echo "$dst" | grep -q '/' 2> /dev/null
|
if echo "$dst" | grep -q '/' 2> /dev/null
|
||||||
mkdir -p (string replace -r '\/[^\/]+$' '' "$dst")
|
mkdir -p (string replace -r '\/[^\/]+$' '' "$dst")
|
||||||
|
@ -88,14 +103,6 @@ function link_file -a $src $dst
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
function make_dst -a $src
|
|
||||||
set -l path (string replace -a '/' '\/' "$DOT")
|
|
||||||
set -l regex (string join '' '^' "$path" '\/[a-zA-Z]+\/(.+)\.symlink$')
|
|
||||||
set -l dst (string replace -r $regex '$1' "$src")
|
|
||||||
|
|
||||||
printf '%s' "$HOME/$dst"
|
|
||||||
end
|
|
||||||
|
|
||||||
function install_dotfiles
|
function install_dotfiles
|
||||||
print_title "Installing Dotfiles"
|
print_title "Installing Dotfiles"
|
||||||
|
|
||||||
|
@ -103,8 +110,11 @@ function install_dotfiles
|
||||||
set -g backup_all false
|
set -g backup_all false
|
||||||
set -g skip_all false
|
set -g skip_all false
|
||||||
|
|
||||||
for src in (find -H "$DOT" -name "*.symlink" -not -path ".git")
|
set -l path (string replace -a '/' '\/' "$DOT")
|
||||||
link_file $src (make_dst $src)
|
set -l regex (string join '' '^' "$path" '\/[a-zA-Z]+\/(.+)\.(sym|hard)link$')
|
||||||
|
|
||||||
|
for src in (find -H "$DOT" -name "*.symlink" -or -name "*.hardlink" -not -path ".git")
|
||||||
|
link_file $src "$(string replace -r $regex '$1' "$src")"
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
|
@ -2,50 +2,50 @@
|
||||||
|
|
||||||
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
|
||||||
function print_in_color -a $color $text
|
function print_in_color -a text color
|
||||||
printf '%b' \
|
printf '%b' \
|
||||||
"$(tput setaf $color 2> /dev/null)" \
|
"$(tput setaf $color 2> /dev/null)" \
|
||||||
$text \
|
$text \
|
||||||
"$(tput sgr0 2> /dev/null)"
|
"$(tput sgr0 2> /dev/null)"
|
||||||
end
|
end
|
||||||
|
|
||||||
function print_in_red -a $text
|
function print_in_red -a text
|
||||||
print_in_color $text 1
|
print_in_color $text 1
|
||||||
end
|
end
|
||||||
|
|
||||||
function print_in_yellow -a $text
|
function print_in_yellow -a text
|
||||||
print_in_color $text 3
|
print_in_color $text 3
|
||||||
end
|
end
|
||||||
|
|
||||||
function print_in_green -a $text
|
function print_in_green -a text
|
||||||
print_in_color $text 2
|
print_in_color $text 2
|
||||||
end
|
end
|
||||||
|
|
||||||
function print_in_purple -a $text
|
function print_in_purple -a text
|
||||||
print_in_color $text 5
|
print_in_color $text 5
|
||||||
end
|
end
|
||||||
|
|
||||||
function print_title -a $text
|
function print_title -a text
|
||||||
print_in_purple "\n • $text\n\n"
|
print_in_purple "\n • $text\n\n"
|
||||||
end
|
end
|
||||||
|
|
||||||
function print_success -a $text
|
function print_success -a text
|
||||||
print_in_green " [✔] $text\n"
|
print_in_green " [✔] $text\n"
|
||||||
end
|
end
|
||||||
|
|
||||||
function print_warning -a $text
|
function print_warning -a text
|
||||||
print_in_yellow " [!] $text\n"
|
print_in_yellow " [!] $text\n"
|
||||||
end
|
end
|
||||||
|
|
||||||
function print_error -a $text $text2
|
function print_error -a text text2
|
||||||
print_in_red " [✖] $text $text2\n"
|
print_in_red " [✖] $text $text2\n"
|
||||||
end
|
end
|
||||||
|
|
||||||
function print_question -a $text
|
function print_question -a text
|
||||||
print_in_yellow " [?] $text\n"
|
print_in_yellow " [?] $text\n"
|
||||||
end
|
end
|
||||||
|
|
||||||
function print_result -a $exit_code $text
|
function print_result -a exit_code text
|
||||||
if [ "$exit_code" -eq 0 ]
|
if [ "$exit_code" -eq 0 ]
|
||||||
print_success $text
|
print_success $text
|
||||||
else
|
else
|
||||||
|
@ -63,7 +63,7 @@ end
|
||||||
|
|
||||||
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
|
||||||
function show_spinner -a $pid $cmds $msg
|
function show_spinner -a pid cmds msg
|
||||||
set -l frames '/-\|'
|
set -l frames '/-\|'
|
||||||
|
|
||||||
set -l number_of_frames (string length $FRAMES)
|
set -l number_of_frames (string length $FRAMES)
|
||||||
|
@ -91,7 +91,7 @@ end
|
||||||
|
|
||||||
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
|
||||||
function set_trap -a $sig $func
|
function set_trap -a sig func
|
||||||
trap -p "$sig" | grep "$func" &> /dev/null \
|
trap -p "$sig" | grep "$func" &> /dev/null \
|
||||||
|| trap "$func" "$sig"
|
|| trap "$func" "$sig"
|
||||||
end
|
end
|
||||||
|
@ -107,10 +107,12 @@ end
|
||||||
|
|
||||||
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
|
||||||
function execute -a $cmds
|
function execute -a cmds msg
|
||||||
set -q $argv[2] and set -l msg $argv[2] or set -l msg "$cmds"
|
if ! set -q msg
|
||||||
|
set -f msg "$cmds"
|
||||||
|
end
|
||||||
|
|
||||||
set -l tmp_file "$(mktmp /tmp/XXXXX)"
|
set -l tmp_file "$(mktemp /tmp/XXXXX)"
|
||||||
|
|
||||||
set -l exit_code 0
|
set -l exit_code 0
|
||||||
|
|
||||||
|
@ -134,3 +136,9 @@ function execute -a $cmds
|
||||||
|
|
||||||
return $exit_code
|
return $exit_code
|
||||||
end
|
end
|
||||||
|
|
||||||
|
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
|
||||||
|
function cmd_exists -a cmd
|
||||||
|
command -v "$cmd" &>/dev/null
|
||||||
|
end
|
||||||
|
|
|
@ -1,97 +0,0 @@
|
||||||
#!/usr/bin/env zsh
|
|
||||||
|
|
||||||
# Base path.
|
|
||||||
export PATH="$HOME/bin:/usr/local/bin:$PATH"
|
|
||||||
|
|
||||||
# Path to your oh-my-zsh installation.
|
|
||||||
export ZSH="$HOME/.oh-my-zsh"
|
|
||||||
|
|
||||||
# Dotfiles root dir.
|
|
||||||
export DOT="$HOME/dotfiles"
|
|
||||||
|
|
||||||
# Projects dir.
|
|
||||||
export HACK="$HOME/hackin"
|
|
||||||
|
|
||||||
# Theme.
|
|
||||||
ZSH_THEME=""
|
|
||||||
|
|
||||||
# Use hyphen-insensitive completion.
|
|
||||||
# Case-sensitive completion must be off. _ and - will be interchangeable.
|
|
||||||
HYPHEN_INSENSITIVE="true"
|
|
||||||
|
|
||||||
# Auto-update behavior.
|
|
||||||
# zstyle ':omz:update' mode disabled # disable automatic updates
|
|
||||||
# zstyle ':omz:update' mode auto # update automatically without asking
|
|
||||||
zstyle ':omz:update' mode reminder # just remind me to update when it's time
|
|
||||||
|
|
||||||
# Display red dots whilst waiting for completion.
|
|
||||||
# You can also set it to another string to have that shown instead of the
|
|
||||||
# default red dots.
|
|
||||||
# e.g. COMPLETION_WAITING_DOTS="%F{yellow}waiting...%f"
|
|
||||||
COMPLETION_WAITING_DOTS="true"
|
|
||||||
|
|
||||||
# Plugins to load.
|
|
||||||
# Standard plugins can be found in $ZSH/plugins/
|
|
||||||
# Custom plugins may be added to $ZSH_CUSTOM/plugins/
|
|
||||||
plugins=(git zsh-syntax-highlighting zsh-autosuggestions colored-man-pages gh gulp iterm2 laravel macos npm nvm sudo thefuck)
|
|
||||||
|
|
||||||
# iTerm2 Shell Integration
|
|
||||||
if [[ "$(uname)" == "Darwin" ]] && [[ $(mdfind "iTerm.app") ]]; then
|
|
||||||
zstyle ':omz:plugins:iterm2' shell-integration yes
|
|
||||||
fi
|
|
||||||
|
|
||||||
# the fuck
|
|
||||||
eval $(thefuck --alias)
|
|
||||||
|
|
||||||
# zsh completions
|
|
||||||
fpath+=${ZSH_CUSTOM:-${ZSH:-~/.oh-my-zsh}/custom}/plugins/zsh-completions/src
|
|
||||||
|
|
||||||
source $ZSH/oh-my-zsh.sh
|
|
||||||
|
|
||||||
# Local environment variables.
|
|
||||||
if [[ -e $HOME/.local.env ]]; then
|
|
||||||
source ~/.local.env
|
|
||||||
fi
|
|
||||||
|
|
||||||
# All zsh dotfiles.
|
|
||||||
typeset -U config_files
|
|
||||||
config_files=($DOT/**/*.zsh)
|
|
||||||
|
|
||||||
# Load path files first.
|
|
||||||
for file in ${(M)config_files:#*/path.zsh}; do
|
|
||||||
source $file
|
|
||||||
done
|
|
||||||
|
|
||||||
# Load everything else, except completion.
|
|
||||||
for file in ${${config_files:#*/path.zsh}:#*/completion.zsh}; do
|
|
||||||
source $file
|
|
||||||
done
|
|
||||||
|
|
||||||
# Initialize autocomplete.
|
|
||||||
autoload -U compinit
|
|
||||||
compinit
|
|
||||||
|
|
||||||
# Load autocompletions.
|
|
||||||
for file in ${(M)config_files:#*/completion.zsh}; do
|
|
||||||
source $file
|
|
||||||
done
|
|
||||||
|
|
||||||
unset config_files
|
|
||||||
|
|
||||||
# Starship
|
|
||||||
eval "$(starship init zsh)"
|
|
||||||
|
|
||||||
# Herd injected PHP binary.
|
|
||||||
export PATH="/Users/marley/Library/Application Support/Herd/bin/":$PATH
|
|
||||||
|
|
||||||
|
|
||||||
# Herd injected PHP 8.2 configuration.
|
|
||||||
export HERD_PHP_82_INI_SCAN_DIR="/Users/marley/Library/Application Support/Herd/config/php/82/"
|
|
||||||
|
|
||||||
|
|
||||||
# Herd injected PHP 8.3 configuration.
|
|
||||||
export HERD_PHP_83_INI_SCAN_DIR="/Users/marley/Library/Application Support/Herd/config/php/83/"
|
|
||||||
|
|
||||||
|
|
||||||
# Herd injected PHP 8.1 configuration.
|
|
||||||
export HERD_PHP_81_INI_SCAN_DIR="/Users/marley/Library/Application Support/Herd/config/php/81/"
|
|
|
@ -1,73 +0,0 @@
|
||||||
#!/usr/bin/env zsh
|
|
||||||
|
|
||||||
# Remove that annoying 'last logged in' message.
|
|
||||||
# Tested this method vs in iTerm settings - latter is less portable and slower.
|
|
||||||
printf '\33c\e[3J'
|
|
||||||
|
|
||||||
# Base path.
|
|
||||||
export PATH="$HOME/bin:/usr/local/bin:$HOME/dotfiles/bin:$PATH"
|
|
||||||
|
|
||||||
# Dotfiles root dir.
|
|
||||||
export DOT="$HOME/dotfiles"
|
|
||||||
|
|
||||||
# Projects dir.
|
|
||||||
export HACK="$HOME/hackin"
|
|
||||||
|
|
||||||
# Local environment variables.
|
|
||||||
if [[ -e $HOME/.local.env ]]; then
|
|
||||||
source ~/.local.env
|
|
||||||
fi
|
|
||||||
|
|
||||||
# All zsh dotfiles.
|
|
||||||
typeset -U config_files
|
|
||||||
config_files=($DOT/**/*.zsh)
|
|
||||||
|
|
||||||
# Load path files first.
|
|
||||||
for file in ${(M)config_files:#*/path.zsh}; do
|
|
||||||
source $file
|
|
||||||
done
|
|
||||||
#
|
|
||||||
# Initialize autocomplete.
|
|
||||||
autoload -U compinit
|
|
||||||
compinit
|
|
||||||
|
|
||||||
# Load everything else, except completion.
|
|
||||||
for file in ${${config_files:#*/path.zsh}:#*/completion.zsh}; do
|
|
||||||
source $file
|
|
||||||
done
|
|
||||||
|
|
||||||
# Load autocompletions.
|
|
||||||
for file in ${(M)config_files:#*/completion.zsh}; do
|
|
||||||
source $file
|
|
||||||
done
|
|
||||||
|
|
||||||
unset config_files
|
|
||||||
|
|
||||||
# Starship
|
|
||||||
export STARSHIP_CONFIG=$DOT/zsh/starship.toml
|
|
||||||
eval "$(starship init zsh)"
|
|
||||||
|
|
||||||
# Zsh Autosuggestions
|
|
||||||
source $(brew --prefix)/share/zsh-autosuggestions/zsh-autosuggestions.zsh
|
|
||||||
|
|
||||||
# The Fuck
|
|
||||||
eval "$(thefuck --alias)"
|
|
||||||
|
|
||||||
# Zsh Syntax Highlighting
|
|
||||||
# Must go last!!!
|
|
||||||
source $(brew --prefix)/share/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh
|
|
||||||
|
|
||||||
# Herd injected PHP binary.
|
|
||||||
export PATH="/Users/marley/Library/Application Support/Herd/bin/":$PATH
|
|
||||||
|
|
||||||
|
|
||||||
# Herd injected PHP 8.2 configuration.
|
|
||||||
export HERD_PHP_82_INI_SCAN_DIR="/Users/marley/Library/Application Support/Herd/config/php/82/"
|
|
||||||
|
|
||||||
|
|
||||||
# Herd injected PHP 8.3 configuration.
|
|
||||||
export HERD_PHP_83_INI_SCAN_DIR="/Users/marley/Library/Application Support/Herd/config/php/83/"
|
|
||||||
|
|
||||||
|
|
||||||
# Herd injected PHP 8.1 configuration.
|
|
||||||
export HERD_PHP_81_INI_SCAN_DIR="/Users/marley/Library/Application Support/Herd/config/php/81/"
|
|
Loading…
Reference in a new issue