mirror of
https://github.com/NNTmux/newznab-tmux.git
synced 2026-08-28 17:01:16 +00:00
Improve look of tmux panes
This commit is contained in:
@@ -0,0 +1,152 @@
|
||||
#!/bin/bash
|
||||
# Quick Font Installation Script for Tmux
|
||||
# Installs powerline fonts for better tmux appearance
|
||||
|
||||
echo "🎨 Tmux Font Installer"
|
||||
echo "====================="
|
||||
echo ""
|
||||
|
||||
# Check if running in WSL or native Linux
|
||||
if grep -qi microsoft /proc/version; then
|
||||
echo "ℹ️ Detected WSL environment"
|
||||
echo "⚠️ Note: You'll also need to configure your Windows Terminal font"
|
||||
echo ""
|
||||
fi
|
||||
|
||||
# Function to install powerline fonts
|
||||
install_powerline() {
|
||||
echo "📦 Installing Powerline Fonts..."
|
||||
|
||||
if command -v apt-get &> /dev/null; then
|
||||
# Debian/Ubuntu
|
||||
sudo apt-get update
|
||||
sudo apt-get install -y fonts-powerline
|
||||
echo "✅ Powerline fonts installed via apt"
|
||||
elif command -v pacman &> /dev/null; then
|
||||
# Arch Linux
|
||||
sudo pacman -S --noconfirm powerline-fonts
|
||||
echo "✅ Powerline fonts installed via pacman"
|
||||
elif command -v dnf &> /dev/null; then
|
||||
# Fedora
|
||||
sudo dnf install -y powerline-fonts
|
||||
echo "✅ Powerline fonts installed via dnf"
|
||||
else
|
||||
# Install from source
|
||||
echo "📥 Installing from source..."
|
||||
git clone https://github.com/powerline/fonts.git --depth=1
|
||||
cd fonts
|
||||
./install.sh
|
||||
cd ..
|
||||
rm -rf fonts
|
||||
echo "✅ Powerline fonts installed from source"
|
||||
fi
|
||||
}
|
||||
|
||||
# Function to install nerd fonts
|
||||
install_nerd_fonts() {
|
||||
echo ""
|
||||
echo "📦 Installing Nerd Fonts (FiraCode)..."
|
||||
|
||||
# Create fonts directory
|
||||
mkdir -p ~/.local/share/fonts
|
||||
|
||||
# Download FiraCode Nerd Font
|
||||
cd ~/.local/share/fonts
|
||||
|
||||
if command -v wget &> /dev/null; then
|
||||
wget -q --show-progress https://github.com/ryanoasis/nerd-fonts/releases/latest/download/FiraCode.zip
|
||||
elif command -v curl &> /dev/null; then
|
||||
curl -L -o FiraCode.zip https://github.com/ryanoasis/nerd-fonts/releases/latest/download/FiraCode.zip
|
||||
else
|
||||
echo "❌ Neither wget nor curl found. Please install one and try again."
|
||||
return 1
|
||||
fi
|
||||
|
||||
# Extract
|
||||
if command -v unzip &> /dev/null; then
|
||||
unzip -q FiraCode.zip
|
||||
rm FiraCode.zip
|
||||
echo "✅ FiraCode Nerd Font installed"
|
||||
else
|
||||
echo "❌ unzip not found. Please install unzip and try again."
|
||||
return 1
|
||||
fi
|
||||
|
||||
cd - > /dev/null
|
||||
}
|
||||
|
||||
# Function to refresh font cache
|
||||
refresh_fonts() {
|
||||
echo ""
|
||||
echo "🔄 Refreshing font cache..."
|
||||
fc-cache -fv > /dev/null 2>&1
|
||||
echo "✅ Font cache refreshed"
|
||||
}
|
||||
|
||||
# Function to test fonts
|
||||
test_fonts() {
|
||||
echo ""
|
||||
echo "🧪 Testing font symbols..."
|
||||
echo ""
|
||||
echo "Powerline arrows: "
|
||||
echo "Icons: ❐ "
|
||||
echo ""
|
||||
echo "If you see boxes or question marks, the fonts aren't working."
|
||||
echo "Make sure your terminal is configured to use a Nerd Font."
|
||||
}
|
||||
|
||||
# Main installation
|
||||
echo "Choose installation option:"
|
||||
echo "1) Powerline Fonts Only (lightweight, ~5MB)"
|
||||
echo "2) Nerd Fonts (FiraCode) (complete, ~50MB)"
|
||||
echo "3) Both (recommended)"
|
||||
echo ""
|
||||
read -p "Enter choice [1-3]: " choice
|
||||
|
||||
case $choice in
|
||||
1)
|
||||
install_powerline
|
||||
;;
|
||||
2)
|
||||
install_nerd_fonts
|
||||
;;
|
||||
3)
|
||||
install_powerline
|
||||
install_nerd_fonts
|
||||
;;
|
||||
*)
|
||||
echo "❌ Invalid choice"
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
|
||||
refresh_fonts
|
||||
test_fonts
|
||||
|
||||
echo ""
|
||||
echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
|
||||
echo "✅ Font installation complete!"
|
||||
echo ""
|
||||
echo "📋 Next steps:"
|
||||
echo ""
|
||||
echo "1. Configure your terminal to use 'FiraCode Nerd Font Mono'"
|
||||
echo ""
|
||||
echo " Windows Terminal (WSL):"
|
||||
echo " - Open Settings (Ctrl+,)"
|
||||
echo " - Select your WSL profile"
|
||||
echo " - Appearance → Font face → FiraCode Nerd Font Mono"
|
||||
echo ""
|
||||
echo " Gnome Terminal:"
|
||||
echo " - Preferences → Profile → Text → Custom font"
|
||||
echo " - Select 'FiraCode Nerd Font Mono'"
|
||||
echo ""
|
||||
echo "2. Reload tmux configuration:"
|
||||
echo " tmux source-file ~/.tmux.conf"
|
||||
echo ""
|
||||
echo "3. Or restart tmux:"
|
||||
echo " php artisan tmux:stop --force"
|
||||
echo " php artisan tmux:start"
|
||||
echo ""
|
||||
echo "📖 Full guide: TMUX_FONTS_GUIDE.md"
|
||||
echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
|
||||
|
||||
Reference in New Issue
Block a user