O mais curto é que você realmente não pode, pelo menos não sem alguns hackers sérios de flyspell e / ou seu modo principal.
Da fonte flyspell
;;;###autoload
(defun flyspell-prog-mode ()
"Turn on 'flyspell-mode' for comments and strings."
(interactive)
(setq flyspell-generic-check-word-p 'flyspell-generic-progmode-verify)
(flyspell-mode 1)
(run-hooks 'flyspell-prog-mode-hook))
A linha relevante é onde definimos a função flyspell-generic-check-word-p
para flyspell-generic-progmode-verify
que a função se parece com esta
(defun flyspell-generic-progmode-verify ()
"Used for 'flyspell-generic-check-word-p' in programming modes."
(let ((f (get-text-property (point) 'face)))
(memq f flyspell-prog-text-faces)))
Finalmente, precisamos analisar flyspell-prog-text-faces
(defvar flyspell-prog-text-faces
'(font-lock-string-face font-lock-comment-face font-lock-doc-face)
"Faces corresponding to text in programming-mode buffers.")
Assim como agora pode ser facilmente visto, flyspell está usando a fonte do texto para verificar o que foi digitado (provavelmente é a maneira mais eficiente para o flyspell lidar com esse problema. Isso significa que não tem que analisar novamente seu código).
Suas opções são uma versão personalizada de flyspell-generic-progmode-verify
para carregar em flyspell-generic-check-word-p
ou modificar o modo principal de forma que produza diferentes faces para suas várias strings.