Ecto schemas vs. Ecto migrations
Data types in migrations can either be Ecto "primitive" types, or database types.
But, in schemas, you can only use the primitive data types.
Vim and ALE and elixir-ls
elixir-ls compiles your project in TEST mode in order to provide navigation/linting, so if there is something broken in that mode/environment, it will just not work.
Also, sometimes elixir-ls will just choke on the files it reads, and it will
require a reboot; ALE's :ALEStopAllLSPs
command will take care of that.
Elixir code formatting from vim
use mix format $FILENAME
. From vim, it can be called with :!mix format %