- Shell 91.5%
- Lua 8.5%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
Restores plugin management after the v0.12 config rewrite dropped the earlier `vim.pack.add` calls. Plugins now live in `config/plugins/`, one file per plugin, so adding the next is a single require. Sets `<leader>` to Space for the gitsigns hunk mappings, and pins 'signcolumn' open so git and diagnostic signs don't shift text. The lockfile moves into the repo and is symlinked by bootstrap.sh, as the vim.pack docs recommend, giving reproducible plugin revisions across machines and a rollback path via git. vim.pack writes it with a truncating open, so it follows the symlink rather than replacing it. Drops the orphaned nvim-tree entry, unreferenced since the rewrite. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> |
||
| bin | ||
| claude | ||
| ghostty | ||
| gnupg | ||
| neovim | ||
| zsh | ||
| bootstrap.sh | ||
| brew.sh | ||
| delta-themes.gitconfig | ||
| gitconfig | ||
| gitignore | ||
| hushlogin | ||
| LICENSE | ||
| macos.sh | ||
| README.md | ||
| sheldon.toml | ||
| tmux | ||
| zshrc.zsh | ||
dotfiles
Here’s my dotfiles, inspired by people like Mathias. See his dotfiles at
https://github.com/mathias/dotfiles.
The idea I’m currently going down is to create a symlink from $HOME to this
directory. There is one exception to this, the .gitconfig file. I don’t want actual commiter details committed into this repo. So my git credentials are
stored in a .extra file which gets sourced. This then calls the relavent git
command, which causes git to edit $HOME/.gitconfig. If that file was a symlink
to this repo, then the repo would see the file as edited and the repo would then
be in a dirty state, permanently.
Usage
First clone the repo.
As mentioned above my git credentials are stored in an untracked file:
$HOME/.extra. This must be manually created, mine looks something like:
# Git credentials
GIT_AUTHOR_NAME="Jonny Barnes"
GIT_COMMITER_NAME="$GIT_AUTHOR_NAME"
git config --global user.name "$GIT_AUTHOR_NAME"
GIT_AUTHOR_EMAIL="jonny@jonnybarnes.uk"
GIT_COMMITER_EMAIL="$GIT_AUTHOR_EMAIL"
git config --global user.email "$GIT_AUTHOR_EMAIL"
Run ./boostrap.sh, this will create all the necessary symlinks, then source
.zshrc.
Warning
This is a destructive process, so backup your dotfiles first.
Auto switch between light and dark mode
To switch between dark and light mode automatically, we use a helper lib.
Clone it from https://github.com/bouk/dark-mode-notify then run make and make install.
Then make a script to run is automatically, put the plist where your system can find it: ~/Library/LaunchAgents/ke.bou.dark-mode-notify.plist with the following content:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN"
"http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>ke.bou.dark-mode-notify</string>
<key>KeepAlive</key>
<true/>
<key>StandardErrorPath</key>
<string>/Users/jonny/.local/var/log/dark-mode-notify-stderr.log</string>
<key>StandardOutPath</key>
<string>/Users/jonny/.local/var/log/dark-mode-notify-stdout.log</string>
<key>ProgramArguments</key>
<array>
<string>/usr/local/bin/dark-mode-notify</string>
<string>/Users/jonny/git/dotfiles/zsh/dark-mode-notify.zsh</string>
</array>
</dict>
</plist>
Make the log file and script file point to the right location. For clarity dark-mode-notify.zsh is in this repo.