Просто установите свойство width в процентах и все.
"\\(\"\\{3\\}\\(.*\n?\\)*?\"\\{3\\}\\)"
"*?" конструкция является нежадной версией "*".
Новая строка в emacs regexps вводится C-q C-j, поэтому просто засовывают группу, содержащую. и C-q C-j в Ваш regexp. Поскольку я использую regexp-инструмент для создания их, мой не полностью заключается в кавычки как Ваш, но я надеюсь, что изменения очевидны.
\("\{3\}\(.\|
C-qC-j\)+"\{3\}\)
Извините я не могу отформатировать его лучше, stackoverflow не соглашается со мной.
Также это, вероятно, отобразится как новая строка в emacs.
Это работает половина:
(font-lock-add-keywords
'python-mode
'(("\\(\"\\{3\\}\\(.\\|\n\\)*?\"\\{3\\}\\)"
1 font-lock-warning-face prepend)))
Но при добавлении RET не стало разметки.
Предложенный regexp "\\(\"\\{3\\}\\(.*\n?\\)*?\"\\{3\\}\\)"
заставляет мой emacs зависнуть при открытии .py файла.
Возможно, пора посетить emacs mailinglist..