Ah, yay is an AUR helper, though I personally see it as a pacman helper as well. Link here. Some of the flags and options that can be used for pacman can be used for yay, thus, some of the flags in the aliases I use are actually for pacman. Anyways, on to the breakdown.
This one is what I use to look up for packages. The result of runnning yy «search term» would be a list of packages matching the search term and prompting the user on which package(s) to install.
flag
description
-Y
performs yay-specific operations.
--needed
(pacman) do not reinstall up to date packages
--norebuild
skips package build if in cache and up to date
--nocleanafter
do not remove package sources after successful build
--noredownlod
skip pkgbuild download if in cache and up to date
--nodiffmenu
don't show diffs for build files
--nocleanmenu
don't clean build PKGBUILDS
--removemake
remove makedepends after install
--sudoloop
loop sudo calls in the background to avoid timeout
This one is what I use for installing packages. Useful if I already know what package I would be installing.
flag
description
-S
(pacman, extended by Yay to cover AUR as well) Synchronize packages. Packages are installed directly from the remote repositories, including all dependencies required to run the packages.
alias yu='yay -R --recursive --nosave'
This one is what I use when uninstalling packages. I usually check the package name with something like yay -Qi «package-name-guess» beforehand.
flag
description
-R
(pacman, extended by Yay to also remove cached data about devel packages) Remove package(s) from the system.
--recursive
(pacman) Remove each target specified including all of their dependencies, provided that (A) they are not required by other packages; and (B) they were not explicitly installed by the user. This operation is recurisve and analogous to a backwards --sync operation.
--nosave
(pacman) Instructs pacman to ignore file backup designations. (This avoids the removed files being renamed with a .pacsave extension.)
I actually don't know much about both yay and pacman myself, since the aliases were just passed onto me by the same friend who helped me (re-)install my system (long story) and set-up the aliases. Having looked all these up, however, I might make a few changes (like changing the --nocleanafter and --nocleanmenu options to their clean ones`).
I like the idea of binding numbers to parent directory traversal. I do cd ../.. a lot in one of my projects (switching between source code and terraform folder), it'd be handy to get out of the terraform folder by just typing 2.
I actually would do cd .. and then do a pwd (and so on, repeatedly) because I often get confused and have a very short attention span that the aliases ended up unused.