1.4 KiB
1.4 KiB
Overview
Personal dotfiles managed with GNU Stow. Each top-level directory (git, jj,
nvim, vim, tmux, zsh) is a stow package whose contents mirror the home directory structure.
Applying dotfiles
Symlink all configs into $HOME:
stow git zsh nvim vim tmux jj
To apply a single package:
stow nvim
To remove symlinks for a package:
stow -D nvim
Architecture
Stow package layout: Files inside each package directory are symlinked relative to $HOME. For example,
nvim/.config/nvim/init.lua becomes ~/.config/nvim/init.lua.
Neovim (nvim/.config/nvim/):
- Plugin manager: lazy.nvim, configured in
lua/config/lazy.lua - LSPs enabled:
lua_ls,ts_ls,pyright— configured inlua/config/lsp.luaand individual spec files underlsp/ - Formatting via conform.nvim: stylua (Lua), prettier (Markdown, JS) — auto-formats on save
- Plugins live under
lua/plugins/; each file returns a lazy.nvim plugin spec - Leader key is
,
tmux (tmux/.tmux.conf):
- Prefix:
C-a - Copy uses
wl-copy(Wayland clipboard) - vi-mode keys; vim-style pane navigation
JJ (jj/.config/jj/config.toml):
- Uses Jujutsu VCS
- Custom aliases:
tug(move nearest bookmark),init(wrapsjj git init) - Default command:
jj log