2.3 KiB
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:
git clone https://git.justconn.top/gitea-admin/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. 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:
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:
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:
:PlugUpdate
:PlugClean
Update and uninstall
On Linux, WSL, and macOS, update safely from a clean worktree:
git -C ~/.dotfiles pull --ff-only
~/.dotfiles/install.sh
On Windows, update from a clean worktree in 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:
~/.dotfiles/install.sh uninstall
Uninstalling intentionally retains the repository, backups, and Vim data/plugins so user data is never removed implicitly.