# Dotfiles Focused Vim 9, Bash, and tmux configuration for Linux, WSL, and macOS. The Windows installer manages the same Vim configuration. ## Requirements - Git - Vim 9 or newer - Python 3 (Windows installer) - Optional: tmux, zoxide, ripgrep, and a Nerd Font ## Install ### Linux, WSL, and macOS (Bash) Clone the repository, then install all components: ```bash git clone https://git.justconn.top/gitea-admin/dotfiles.git ~/.dotfiles ~/.dotfiles/install.sh ``` Components can be installed independently and combined: ```bash ~/.dotfiles/install.sh vim ~/.dotfiles/install.sh shell tmux ``` The installer backs up conflicting files, creates managed links, and installs Vim plugins. It does not install zoxide; if zoxide is already available, the managed Bash block initializes it. ### Windows (PowerShell) Clone into your user directory, then run the Windows installer: ```powershell git clone https://git.justconn.top/gitea-admin/dotfiles.git "$HOME\.dotfiles" python "$HOME\.dotfiles\win-install.py" ``` Use `$HOME` explicitly in PowerShell: `~` passed to external commands such as Git may be treated as a literal directory name instead of your user directory. In Command Prompt (CMD), use `%USERPROFILE%` instead: ```cmd git clone https://git.justconn.top/gitea-admin/dotfiles.git "%USERPROFILE%\.dotfiles" python "%USERPROFILE%\.dotfiles\win-install.py" ``` ## Vim The Vim setup includes Fuzzbox and NERDTree navigation, Startify, a compact global statusline, and three color schemes. Useful mappings use `,` as the leader key: - `,ff`: files - `,fg`: text search - `,e`: NERDTree - `,cbg`: light/dark mode - `,ctb`: transparency - `:FuzzyColors`: choose a color scheme Plugin maintenance is explicit: ```vim :PlugUpdate :PlugClean ``` ## Update and uninstall On Linux, WSL, and macOS, update safely from a clean worktree: ```bash git -C ~/.dotfiles pull --ff-only ~/.dotfiles/install.sh ``` On Windows, update from a clean worktree in PowerShell: ```powershell git -C "$HOME\.dotfiles" pull --ff-only python "$HOME\.dotfiles\win-install.py" ``` On Linux, WSL, and macOS, remove managed links and the managed Bash block with: ```bash ~/.dotfiles/install.sh uninstall ``` Uninstalling intentionally retains the repository, backups, and Vim data/plugins so user data is never removed implicitly.