I’m not using use-package, therefore I can only guess.
I can’t see here that you associate flycheck-mode to elixir-mode. So unless you do global-flycheck-mode anywere, you need to (add-hook 'elixir-mode-hook flycheck-mode) at a place where it is appropriate, maybe use-package has some special syntax for it.
PS: Even though I generally prefer emacs over everything else, I currently use VScode for elixir, because language server support is so much better. I hope LS support will be available in alchemist.el soon!
When you are in an elixir buffer, have you tried M-x flycheck-mix-setup RET?
I’m not sure how :init works in use-package. To be honest, I do not see much sense in it. I prefer a simple helper function which installs packages when required and plain elisp, that makes it much easier to understand what is going on…
Okay, I took a closer look at use-packages documentation. As I understand it, :defer t will defer loading the package to the latest point possible, while :init will only be called when the package is loaded, this might mean, that you only add to the hook after it has already been applied.
And again, since I am not using use-package, I’m not sure if I understand the docs correctly, or if I do, how to workaround.
I usually have (add-hook 'flycheck-mode-hook #'flycheck-foo-setup) plain in the config, while I also have (add-hook 'after-init-hook 'global-flycheck-mode) at the toplevel of my config.
This way, I fill up the hook during load time, while postponing the start of flycheck until after init has fully been evaluated.
But maybe, it helps when you add flycheck-credo-setup into elixir-mode-hook? But still, I’m not sure if you should :defer…
I’ve made the changes you suggested but unfortunately i’m still not getting any flycheck support for my scripts. Anyway VSCode seems to be doing a much better job for me at the moment so I’ll defer using Emacs for Elixir coding for later when hopefully the tools improve. Thanks again you’ve been very helpful.
Thanks @maruks for answering my post. I’ve moved to now using doom-emacs and it’s elixir setup which works okay for my needs. I can therefore not confirm if your solution works for my situation or not. I’ve however made a note and will revert to it should I find the need to role out my own emacs config again. Cheers.