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
  • curl for the Unix installer
  • Optional: tmux, zoxide, ripgrep, and a Nerd Font

Install

Clone the repository, then install all components:

git clone https://github.com/Donaldttt/dotfiles.git ~/.dotfiles
~/.dotfiles/install.sh

Components can be installed independently and combined:

~/.dotfiles/install.sh vim
~/.dotfiles/install.sh shell tmux

The installer backs up conflicting files, creates managed links, and installs Vim plugins and TPM. It never updates an existing repository automatically and does not install zoxide; if zoxide is already available, the managed Bash block initializes it.

On Windows, clone the repository and run:

python .\win-install.py

Vim

The Vim setup includes Fuzzbox and NERDTree navigation, Fugitive and GitGutter, Startify, a compact global statusline, and five 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:

:PlugUpdate
:PlugClean

Update and uninstall

Update safely from a clean worktree:

git -C ~/.dotfiles pull --ff-only
~/.dotfiles/install.sh

To remove managed links and the managed Bash block:

~/.dotfiles/uninstall.sh

Uninstalling intentionally retains the repository, backups, Vim data/plugins, and TPM so user data is never removed implicitly.

S
Description
Personal dotfiles
Readme
2.1 MiB
Languages
Shell 46.9%
Vim Script 46.5%
Python 6.6%