To use these files, clone this repo into a place on your computer and then symlink them to your home directory. For example, here's how to link the bash prompt file:
ln -s path/to/config-files/.bash_prompt .bash_prompt
To use the .bash_
dotfiles in your .bashrc
or .bash_profile
, you can load
them with:
if [ -f ${HOME}/.bash_prompt ]; then
. ${HOME}/.bash_prompt
fi
I started building the .vimrc
file when I was using pure vim. At some point,
I switched to NeoVim because there was a bug with certain characters that caused
vim to crash (I cannot remember exactly why).
NeoVim uses an init file to start up (in ~/.config/nvim/
), which can either
be init.vim
or init.lua
written in vimscript or luascript, respectively.
I used this to synchronize the plugins between vim and
NeoVim, but had not migrated
to using init.lua
.
In 2024, the Nvim-R plugin has been superseded by R.nvim, and all the configuration instructions use lua script. I had attempted to switch over in early 2024, but I could not find the right tutorials for migrating over and ended up borking my nvim setup (but because I had this repo, I could easily go back).
In July 2024, I found a good walkthrough to convert vimrc to
lua,
which includes the inital steps of calling vimscript from lua and then the
incremental process of conversion. What the author ended up with was a set of
configurations for NeoVim controlled by ~/.config/nvim/init.lua
and auxillary
files and then a set of configurations for vim controlled by ~/.vimrc
.
With this in mind, I have set up my vim to be very similar and have copied over
the nvim configuration into the nvim/
folder and have symlinked that
directory to ~/.config/nvim/
.
To use the .gitconfig in your own .gitconfig, use the [include]
directive:
[user]
name = "Your Name"
email = "[email protected]"
signingkey = "<your GPG or SSH signing key ID>"
[include]
path = "/path/to/config-files/.gitconfig"
[commit]
gpgSign = true
[tag]
gpgSign = true
The kitty config is put in ~/.config/kitty/
I previously had some keyboard mappings to change colors in kitty, but it got
more complicated with the themes kitten
where it would modify the kitty/kitty.conf
file to include the following lines:
# BEGIN_KITTY_THEME
# <theme name>
include current-theme.conf
# END_KITTY_THEME
Every time I changed the theme, my kitty conf would be changed in git's eyes.
The way I rectified this was to use git
filters which would act on the
kitty/kitty.conf
file by removing those lines alltogether:
BIG CAVEAT: This must be done on each computer separately. The git configuration is not replicated across computers.
In .git/config
[filter "badkitty"]
clean=sed '/BEGIN_KITTY_THEME/,/END_KITTY_THEME/ d'
smudge=sed '/BEGIN_KITTY_THEME/,/END_KITTY_THEME/ d'
In .git/info/attributes
kitty/kitty.conf filter=badkitty