Latex with Vim
I make my class notes with Vim in LaTeX using the extensions vim-tex and UltiSnip.
All the work here have been taken from Gilles Castel here, who has documented all the process of improving his workflow with latex and vim insanely well.
vimtex
vim-tex is an extension for vim that allows you to compile and render a .pdf file from a .tex in vim.
UltiSnip
UltiSnip is a vim extension that manages snippets. Snippets are not only used for tex, but I find them incredibly useful when writing .tex files, as allows you to store repetitive and tedious patterns in a few keys. With a good structure of these snippets is possible even write faster than by hand.
Inkscape
I create the figures in my .tex files using Inkscape. Shortcuts for improving the workflow in Inkscape are available in Gilles Castell's webpage