Well it sounds like somewhere there's some code causing this mode to be called, non-interactively, with no arguments: (multi-web-mode)
. A common cause would be specifying a mode function symbol for use as a callback, rather than specifying a function which will call that mode function (with an argument).
This certainly used to be bad form, as it would indeed act as a toggle, just as it does in the interactive case (e.g. M-x multi-web-mode
). Since Emacs 24, however, it is actually safe to do (at least for modes defined with the standard macros), as a non-interactive call with no argument to a mode function now always means 'enable'. This might account for the fact that you're not actually seeing a problem.
I don't think stock Emacs has ever generated such a message, so I would presume it's multi-web-mode itself which is detecting and reporting on this. It may need to be updated to reflect the change in Emacs 24. (Edit: looks like I was wrong about that; I guess Emacs 23.4 did produce this warning.)
Your simplest fix is probably to show us any lines from your config which mention multi-web-mode
, so someone can show you how to change it to ensure that it passes an explicit argument (which is typically 1
to enable a mode).
Edit: Okay, your problem is that multi-web-mode
is a minor mode (as opposed to a major mode), but you have specified it in auto-mode-alist
which is a mechanism for mapping filename patterns to major modes.
So the cause is exactly as I suggested above when I said "A common cause would be specifying a mode function symbol for use as a callback", as those auto-mode-alist entries will result in a call to (multi-web-mode)
.
It appears to me that multi-web-global-mode
handles enabling the minor mode as required, so you just need to remove the bad auto-mode-alist
entries.