Instead of stowing dotfiles individually by software, and instead of
stowing dotfiles based on working environment, I now just stow all
dotfiles at once, so the extra hierarchy isn't needed.
This commit gets rid of unused aliases and in general makes everything a
lot cleaner. Since we use abbreviations to memorize the actual commands,
making an .aliases.sh file that supports multiple shells is no longer
needed. If you aren't using fish yet, I highly recommend it.
"tput reset" isn't needed anymore now that we use tmux. Vim aliases have
been removed since they weren't being used (at all). tree aliases have
been simplified in attempt to memorize the options used instead of
relying on the alias.
Since "where" is not common to all shells, aliasing it instead of simply
using type does more harm than good, since any other machines you work
with will not have this alias.
Aliasing rm to "rm -i" and mkdir to "mkdir -p" is dangerous because
these same safeguards may not be present on the other machines you ssh
into. Using pwd instead of simply p (and showing the $HOME directory
as ~) is a way to reinforce the idea that the current directory is just
one part of a complete system, even if that directory so happens to be
in $HOME.
As much as I *not* want to use ranger, it is still very much useful for
easily seeing the structure of your files at a glance. To make
maintenance simpler for me, I removed some of the config settings I
never used and removed image previews since I can just use a proper
desktop environment for that.
Went from termite to urxvt and back to termite again. Now the circle is
complete! Joking aside, the reason urxvt was chosen over termite in the
first place was because of better image support and less memory usage
with multiple terminals open (due to urxvtc and urxvtd).
Along the way, some things like emojis and other features only worked in
termite. Since termite still works exceptionally well, and since image
support isn't really an issue, termite should be more than good enough
here. Plus, my config files work pretty well across both bspwm and
Plasma. The extra memory saved from urxvtcd isn't needed on modern
hardware, and even if it was, I could just use tmux. Getting rid of this
extra dependency helps make my dotfiles cleaner.
This commit adds fish support for the other functions I used to use in
zsh. Since my dotfiles are now separated by environment, it's easy to
see which environment depends on which dotfiles, instead of stowing them
one by one based on software name.
Really, there is no reason to use zsh when fish exists, at least not for
my use case. Maintaining one set of shell config files is easier than
two, so I'm removing the zsh files.
Some other changes in this commit include:
- The addition of the current user and hostname to the fish prompt
- The addition of some zsh functions I re-implemented in fish
- The removal of the dircolors file (not needed with exa anyway)
- The removal of some aliases I never used
-
It doesn't make sense to manage an entire neofetch config file since the
majority of the settings required to produce a decent output can be
achieved by just passing options at runtime.
This commit puts all common dotfiles in the same directory. This makes
it really easy to stow all my dotfiles that are common across all the
setups I use, and also makes it easy for me to verify that all the
dotfiles I need are already stowed with one simple command.
Now that I've read the man pages for `stow` and actually know how to use
it properly, I can organize my repositiory by using a separate dots
directory specifically for my dotfiles.
Additionally, similar dotfiles are now grouped together. This means less
stow work for me with files that would otherwise only be used in one
environment (e.g. bspwm).
As much as one would like to show off browsing the internet with w3m,
such a setup is highly impractical for daily use. Remembering the
keybindings I set up was also becoming an issue, so I simply removed
them in favor of the defaults, assuming I ever need to use w3m at a
later date (probably not).