Stop flyspell claiming m-tab
flyspell{,-prog}-mode likes to take control of M-tab, which is a shame since that is usually bound to complete-symbol.
(setq flyspell-use-meta-tab nil)
doesn’t work, but:
(eval-after-load "flyspell"
'(progn
(define-key flyspell-mode-map (kbd "M-TAB") nil)))
does.