Files
dotfiles/README.md
T
2026-10-19 14:47:12 +00:00

117 lines
3.1 KiB
Markdown

# 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)
Install Git, Python 3, and [Vim for Windows](https://www.vim.org/download.php)
first. Include the console version (`vim.exe`) and add each program's directory
to PATH. Open a new PowerShell window and verify:
```powershell
git --version
python --version
vim --version
```
Vim must be version 9 or newer. If a command is not recognized, fix its
installation or PATH before continuing. If Python is available through the
`py` launcher instead, use `py -3` in place of `python` below.
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"
```
After installation, run `vim` in your terminal or open `gvim` for the graphical
editor. The configuration is loaded through `$HOME\_vimrc`; plugins are stored
in `$HOME\vimfiles`. Keep Git on PATH for plugin updates and Git-based file search.
The installer downloads plugins from GitHub, so that host must be reachable.
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.