From 6cc2c8523f55644e35d411399d82dc7789854e86 Mon Sep 17 00:00:00 2001 From: Gergely Polonkai Date: Thu, 13 Feb 2020 09:14:33 +0100 Subject: [PATCH] Font lock variables in F-strings --- configuration.org | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/configuration.org b/configuration.org index 9884f70..4cf3f9f 100644 --- a/configuration.org +++ b/configuration.org @@ -830,6 +830,28 @@ to the beginning of the file." (goto-char point-pos)))) #+END_SRC +*** Font-lock variables in f-strings +:PROPERTIES: +:SOURCE: https://emacs.stackexchange.com/a/55186/507 +:END: + +#+BEGIN_SRC emacs-lisp +(with-eval-after-load "python" + (setq python-font-lock-keywords + (append python-font-lock-keywords + '(;; this is the full string. + ;; group 1 is the quote type and a closing quote is matched + ;; group 2 is the string part + ("f\\(['\"]\\{1,3\\}\\)\\([^\\1]+?\\)\\1" + ;; these are the {keywords} + ("{[^}]*?}" + ;; Pre-match form + (progn (goto-char (match-beginning 0)) (match-end 0)) + ;; Post-match form + (goto-char (match-end 0)) + ;; face for this match + (0 font-lock-variable-name-face t))))))) +#+END_SRC ** ~idm~ (ID manager) related functions *** Get specific fields from a record in ~idm~