2e3412c4106b0147ab6fc6b1d4d48a29c4820506
Since I use which-key I can actually benefit a lot from meaningful descriptions of my custom shortcuts. Whenever I feel like I forgot a multi-key shortcut I can simply type the first letter (in my case usually "Space" or "g") and peek into the preview of whichkey. It lists all possible additional keystrokes and their descriptions, so this change makes it a lot easier for me to find the command I'm looking for.
Dotfiles
I use stow to sync my dotfiles between the OS and this repository.
Requirements
Install git and stow if not already present on the system.
Install via apt on Debian/Ubuntu
sudo apt install git stow
Install via brew on macos
brew install git stow
Setup and usage
My dev-machine setup will install and setup these dotfiles automatically.
So, the only thing I’ve to care about is the stow . --adopt command and to commit changes to the VSC.
|
Checkout this repository into ~/dotfiles and apply run stow to sync the dotfiles.
The directory should be located directly in the HOME directory.
Otherwise stow needs an additional flat -t $HOME every time, which is a bit annoying!
|
git clone git@gitea.nehrke.info:nemoinho/dotfiles.git ~/dotfiles (1)
cd $_
stow --adopt . (2)
[ -n "$(git status --short)" ] && git restore . (3)
| 1 | Clone this repository |
| 2 | Create symlinks for all files managed by this repository, so that the file in the $HOME points to the file in this repository |
| 3 | In case of differences between existing files and the ones from this repository keep the version of the repository |
Removing files
If a file is going to be removed make sure to remove the linked file as well.
Otherwise we end up with a bunch of dangling files in $HOME!
To automatically delete these dangling links we can use a git-hook as the following. That will remove the links pre-commit.
Setup git-hook to automatically remove links to deleted files
cat <<EOF > .git/hooks/pre-commit
#!/usr/bin/env bash
set -e
git status --short | grep -E '^D|^R' | sed 's/...//;s/ -> .*//' | while read f
do
test -L "\$HOME/\$f" && rm "\$HOME/\$f"
done
EOF
chmod +x .git/hooks/pre-commit
Description
Languages
Lua
82.9%
Shell
10.6%
Vim Snippet
5.9%
Python
0.6%