# Shared Aliases
# Compatible with both bash and zsh

# Navigation
alias ..='cd ..'
alias ...='cd ../..'
alias ....='cd ../../..'
alias ~='cd ~'
alias -- -='cd -'

# List files
alias l='ls -lah'
alias la='ls -la'
alias ll='ls -l'
alias ls='ls --color=auto'

# Grep with color
alias grep='grep --color=auto'
alias fgrep='fgrep --color=auto'
alias egrep='egrep --color=auto'

# Safety nets
alias rm='rm -i'
alias cp='cp -i'
alias mv='mv -i'

# Git shortcuts
alias g='git'
alias ga='git add'
alias gc='git commit'
alias gp='git push'
alias gl='git pull'
alias gs='git status'
alias gd='git diff'
alias gb='git branch'
alias gco='git checkout'

# System monitoring
alias df='df -h'
alias du='du -h'
alias free='free -h'
alias ps='ps aux'

# Network
alias ping='ping -c 5'
alias ports='netstat -tuln'

# Package management (Debian/Ubuntu)
alias apt-update='sudo apt update && sudo apt upgrade'
alias apt-install='sudo apt install'
alias apt-search='sudo apt search'

# Quick edits
alias bashrc='$EDITOR ~/.bashrc'
alias zshrc='$EDITOR ~/.zshrc'
alias vimrc='$EDITOR ~/.vimrc'

# Utilities
alias weather='curl wttr.in'
alias myip='curl ifconfig.me'
alias path='echo $PATH | tr ":" "\n"'
alias reload='exec $SHELL'

# Modern Dotfiles Management - Unified Command Interface
alias dot='$HOME/.dotfiles/shared/dot-command'

# Task Master aliases
alias tm='task-master'
alias taskmaster='task-master'

# SSH tunnel aliases
alias sshuttle-vpn='sudo sshuttle -e "ssh -F /home/eric/.ssh/config" -NH'
alias sshuttle-txtwire='sshuttle-vpn -r root@208.76.194.2 192.168.0.0/21'

# Project control alias
alias ta="/home/eric/projects/misc/terraform/projectctl.sh"

# Git remote URL conversion aliases
alias git-remote-toggle='git_remote_toggle'
alias git-remote-ssh='git_remote_to_ssh'
alias git-remote-https='git_remote_to_https'
alias git-convert='git_remote_convert'