🤖 Various configuration files and custom executables
This repo synchronizes various settings for bash
, vim
, git
, tmux
, ipython
,
and jupyter
. It also includes some handy shell functions and shell scripts.
The .bashrc
file is utterly massive. Among other things, it provides nc<suffix>
functions that summarize NetCDF files by parsing ncdump
, provides tools for working
over SSH connections and maintaining connections to remote jupyter
sessions, and
configures FZF fuzzy autocompletion and the conda environment. It also evaluates
.dircolors.ansi
to keep color-coding of ls
results consistent between workstations.
The .vimrc
is even more utterly massive. Among other things, it configures a few dozen
vim plugins, configures FZF fuzzy autocompletion integration features, and defines a
billion key mappings as I see fit. In general, I use the prefix <Leader>
for commands,
<Tab>
for window operations, \
for regex replacements, g
for navigation actions,
and z
for folding actions.
You can also find filetype-specific features in the ftplugin
, syntax
, and
after/syntax
folders, including improved syntax highlighting and <Plug>Execute
mappings that "run", "compile", or "open" the current file (mapped to Z
by default).
I have also written a number of vim plugins over the years: vim-succinct,
vim-tags, vim-statusline, vim-tabline, vim-scrollwrapped, and vim-toggle.
You can find various shell script utilities in bin
and git
commands in .gitconfig
,
including a latexmk
shell script integrated with ftplugin
for convenient LaTeX
document rendering and viewing. Also, .jupyter
files are synced to preserve custom
key binding and extension settings across jupyter notebook and jupyter lab sessions.