diff --git a/grammars/MagicPython.cson b/grammars/MagicPython.cson
index b6779a35..31801d30 100644
--- a/grammars/MagicPython.cson
+++ b/grammars/MagicPython.cson
@@ -801,7 +801,7 @@ repository:
name: "constant.language.python"
match: "\\\\$"
"string-formatting":
- name: "constant.character.format.python"
+ name: "constant.character.format.placeholder.other.python"
match: '''
(?x)
% (\\([\\w\\s]*\\))?
@@ -814,7 +814,7 @@ repository:
"string-brace-formatting":
patterns: [
{
- name: "constant.character.format.python"
+ name: "constant.character.format.placeholder.other.python"
match: '''
(?x)
(?:
@@ -836,7 +836,7 @@ repository:
name: "support.other.format.python"
}
{
- name: "constant.character.format.python"
+ name: "constant.character.format.placeholder.other.python"
begin: '''
(?x)
\\{
diff --git a/grammars/MagicPython.syntax.yaml b/grammars/MagicPython.syntax.yaml
index 4550ad9c..abca9789 100644
--- a/grammars/MagicPython.syntax.yaml
+++ b/grammars/MagicPython.syntax.yaml
@@ -569,7 +569,7 @@ repository:
match: \\$
string-formatting:
- name: constant.character.format.python
+ name: constant.character.format.placeholder.other.python
match: |
(?x)
% (\([\w\s]*\))?
@@ -580,7 +580,7 @@ repository:
string-brace-formatting:
patterns:
- - name: constant.character.format.python
+ - name: constant.character.format.placeholder.other.python
match: |
(?x)
(?:
@@ -596,7 +596,7 @@ repository:
captures:
'2': {name: storage.type.format.python}
'3': {name: support.other.format.python}
- - name: constant.character.format.python
+ - name: constant.character.format.placeholder.other.python
begin: |
(?x)
\{
diff --git a/grammars/MagicPython.tmLanguage b/grammars/MagicPython.tmLanguage
index 0b454f52..6cdb0420 100644
--- a/grammars/MagicPython.tmLanguage
+++ b/grammars/MagicPython.tmLanguage
@@ -1304,7 +1304,7 @@
string-formatting
name
- constant.character.format.python
+ constant.character.format.placeholder.other.python
match
(?x)
% (\([\w\s]*\))?
@@ -1320,7 +1320,7 @@
name
- constant.character.format.python
+ constant.character.format.placeholder.other.python
match
(?x)
(?:
@@ -1350,7 +1350,7 @@
name
- constant.character.format.python
+ constant.character.format.placeholder.other.python
begin
(?x)
\{
diff --git a/misc/scopes b/misc/scopes
index 64019dbd..e0cb5f9b 100644
--- a/misc/scopes
+++ b/misc/scopes
@@ -6,7 +6,7 @@ comment.typehint.puctuation.notation.python
comment.typehint.type.notation.python
comment.typehint.variable.notation.python
constant.character.escape.regexp
-constant.character.format.python
+constant.character.format.placeholder.other.python
constant.character.python
constant.character.set.regexp
constant.character.unicode.regexp
diff --git a/test/strings/format1.py b/test/strings/format1.py
index 8833e924..add0b45e 100644
--- a/test/strings/format1.py
+++ b/test/strings/format1.py
@@ -8,27 +8,27 @@
= : keyword.operator.assignment.python, source.python
: source.python
" : punctuation.definition.string.begin.python, source.python, string.quoted.single.python
-{0[ ] : constant.character.format.python, source.python, string.quoted.single.python
-:X>+10d : constant.character.format.python, source.python, string.quoted.single.python, support.other.format.python
-} : constant.character.format.python, source.python, string.quoted.single.python
+{0[ ] : constant.character.format.placeholder.other.python, source.python, string.quoted.single.python
+:X>+10d : constant.character.format.placeholder.other.python, source.python, string.quoted.single.python, support.other.format.python
+} : constant.character.format.placeholder.other.python, source.python, string.quoted.single.python
" : punctuation.definition.string.end.python, source.python, string.quoted.single.python
a : source.python
= : keyword.operator.assignment.python, source.python
: source.python
" : punctuation.definition.string.begin.python, source.python, string.quoted.single.python
-{0[ ] : constant.character.format.python, source.python, string.quoted.single.python
-!s : constant.character.format.python, source.python, storage.type.format.python, string.quoted.single.python
-:X>+10d : constant.character.format.python, source.python, string.quoted.single.python, support.other.format.python
-} : constant.character.format.python, source.python, string.quoted.single.python
+{0[ ] : constant.character.format.placeholder.other.python, source.python, string.quoted.single.python
+!s : constant.character.format.placeholder.other.python, source.python, storage.type.format.python, string.quoted.single.python
+:X>+10d : constant.character.format.placeholder.other.python, source.python, string.quoted.single.python, support.other.format.python
+} : constant.character.format.placeholder.other.python, source.python, string.quoted.single.python
" : punctuation.definition.string.end.python, source.python, string.quoted.single.python
a : source.python
= : keyword.operator.assignment.python, source.python
: source.python
" : punctuation.definition.string.begin.python, source.python, string.quoted.single.python
-{0[ ] : constant.character.format.python, source.python, string.quoted.single.python
-: : constant.character.format.python, source.python, string.quoted.single.python, support.other.format.python
-Xd>+10d : constant.character.format.python, source.python, string.quoted.single.python
-} : constant.character.format.python, source.python, string.quoted.single.python
+{0[ ] : constant.character.format.placeholder.other.python, source.python, string.quoted.single.python
+: : constant.character.format.placeholder.other.python, source.python, string.quoted.single.python, support.other.format.python
+Xd>+10d : constant.character.format.placeholder.other.python, source.python, string.quoted.single.python
+} : constant.character.format.placeholder.other.python, source.python, string.quoted.single.python
" : punctuation.definition.string.end.python, source.python, string.quoted.single.python
: source.python
# : comment.line.number-sign.python, punctuation.definition.comment.python, source.python
diff --git a/test/strings/format10.py b/test/strings/format10.py
index dc18398e..0aa65696 100644
--- a/test/strings/format10.py
+++ b/test/strings/format10.py
@@ -10,15 +10,15 @@
: source.python
''' : punctuation.definition.string.begin.python, source.python, string.quoted.multi.python
blah {foo-bar : source.python, string.quoted.multi.python
-%d : constant.character.format.python, source.python, string.quoted.multi.python
+%d : constant.character.format.placeholder.other.python, source.python, string.quoted.multi.python
blah : source.python, string.quoted.multi.python
{foo-bar : source.python, string.quoted.multi.python
-%d : constant.character.format.python, source.python, string.quoted.multi.python
+%d : constant.character.format.placeholder.other.python, source.python, string.quoted.multi.python
} : source.python, string.quoted.multi.python
blah {foo-bar : source.python, string.quoted.multi.python
-%d : constant.character.format.python, source.python, string.quoted.multi.python
+%d : constant.character.format.placeholder.other.python, source.python, string.quoted.multi.python
//insane {}} : source.python, string.quoted.multi.python
{}blah {foo-bar : source.python, string.quoted.multi.python
-%d : constant.character.format.python, source.python, string.quoted.multi.python
+%d : constant.character.format.placeholder.other.python, source.python, string.quoted.multi.python
//insane {}} : source.python, string.quoted.multi.python
''' : punctuation.definition.string.end.python, source.python, string.quoted.multi.python
diff --git a/test/strings/format11.py b/test/strings/format11.py
index 195ba4d1..4522944a 100644
--- a/test/strings/format11.py
+++ b/test/strings/format11.py
@@ -10,9 +10,9 @@
R : source.python, storage.type.string.python, string.quoted.raw.multi.python
''' : punctuation.definition.string.begin.python, source.python, string.quoted.raw.multi.python
\fr : source.python, string.quoted.raw.multi.python
-{still_ok} : constant.character.format.python, source.python, string.quoted.raw.multi.python
+{still_ok} : constant.character.format.placeholder.other.python, source.python, string.quoted.raw.multi.python
ac : source.python, string.quoted.raw.multi.python
{m_{j \rightarrow i}(\mathrm{good})} : source.python, string.quoted.raw.multi.python
{not_ok} : source.python, string.quoted.raw.multi.python
-%d : constant.character.format.python, source.python, string.quoted.raw.multi.python
+%d : constant.character.format.placeholder.other.python, source.python, string.quoted.raw.multi.python
''' : punctuation.definition.string.end.python, source.python, string.quoted.raw.multi.python
diff --git a/test/strings/format12.py b/test/strings/format12.py
index 0c7e48e2..ea33a567 100644
--- a/test/strings/format12.py
+++ b/test/strings/format12.py
@@ -9,8 +9,8 @@
' : punctuation.definition.string.begin.python, source.python, string.quoted.raw.single.python
$\frac : source.python, string.quoted.raw.single.python
{m_{j \ : source.python, string.quoted.raw.single.python
-%s : constant.character.format.python, source.python, string.quoted.raw.single.python
+%s : constant.character.format.placeholder.other.python, source.python, string.quoted.raw.single.python
rightarrow i}(\mathrm{ : source.python, string.quoted.raw.single.python
-%s : constant.character.format.python, source.python, string.quoted.raw.single.python
+%s : constant.character.format.placeholder.other.python, source.python, string.quoted.raw.single.python
good})}{\su%m{m_{j \rightarrow i}}}$ : source.python, string.quoted.raw.single.python
' : punctuation.definition.string.end.python, source.python, string.quoted.raw.single.python
diff --git a/test/strings/format2.py b/test/strings/format2.py
index 2e3afcaa..a93e6591 100644
--- a/test/strings/format2.py
+++ b/test/strings/format2.py
@@ -7,17 +7,17 @@
: source.python
" : punctuation.definition.string.begin.python, source.python, string.quoted.single.python
normal : source.python, string.quoted.single.python
-{{ : constant.character.format.python, source.python, string.quoted.single.python
+{{ : constant.character.format.placeholder.other.python, source.python, string.quoted.single.python
normal : source.python, string.quoted.single.python
-}} : constant.character.format.python, source.python, string.quoted.single.python
+}} : constant.character.format.placeholder.other.python, source.python, string.quoted.single.python
normal : source.python, string.quoted.single.python
-{10 : constant.character.format.python, source.python, string.quoted.single.python
-!r : constant.character.format.python, source.python, storage.type.format.python, string.quoted.single.python
-} : constant.character.format.python, source.python, string.quoted.single.python
+{10 : constant.character.format.placeholder.other.python, source.python, string.quoted.single.python
+!r : constant.character.format.placeholder.other.python, source.python, storage.type.format.python, string.quoted.single.python
+} : constant.character.format.placeholder.other.python, source.python, string.quoted.single.python
normal : source.python, string.quoted.single.python
-{fo.__add__ : constant.character.format.python, source.python, string.quoted.single.python
-!s : constant.character.format.python, source.python, storage.type.format.python, string.quoted.single.python
-} : constant.character.format.python, source.python, string.quoted.single.python
+{fo.__add__ : constant.character.format.placeholder.other.python, source.python, string.quoted.single.python
+!s : constant.character.format.placeholder.other.python, source.python, storage.type.format.python, string.quoted.single.python
+} : constant.character.format.placeholder.other.python, source.python, string.quoted.single.python
" : punctuation.definition.string.end.python, source.python, string.quoted.single.python
. : source.python
format : meta.function-call.generic.python, meta.function-call.python, source.python
diff --git a/test/strings/format3.py b/test/strings/format3.py
index 10e7dd40..ef932184 100644
--- a/test/strings/format3.py
+++ b/test/strings/format3.py
@@ -9,7 +9,7 @@
= : keyword.operator.assignment.python, source.python
: source.python
' : punctuation.definition.string.begin.python, source.python, string.quoted.single.python
-%i : constant.character.format.python, source.python, string.quoted.single.python
+%i : constant.character.format.placeholder.other.python, source.python, string.quoted.single.python
' : punctuation.definition.string.end.python, source.python, string.quoted.single.python
: source.python
% : keyword.operator.arithmetic.python, source.python
@@ -19,9 +19,9 @@
= : keyword.operator.assignment.python, source.python
: source.python
" : punctuation.definition.string.begin.python, source.python, string.quoted.single.python
-%(language)s : constant.character.format.python, source.python, string.quoted.single.python
+%(language)s : constant.character.format.placeholder.other.python, source.python, string.quoted.single.python
has : source.python, string.quoted.single.python
-%(number)03d : constant.character.format.python, source.python, string.quoted.single.python
+%(number)03d : constant.character.format.placeholder.other.python, source.python, string.quoted.single.python
quote types. : source.python, string.quoted.single.python
" : punctuation.definition.string.end.python, source.python, string.quoted.single.python
a : source.python
@@ -29,9 +29,9 @@
: source.python
b : source.python, storage.type.string.python, string.quoted.binary.single.python
" : punctuation.definition.string.begin.python, source.python, string.quoted.binary.single.python
-%(language)s : constant.character.format.python, source.python, string.quoted.binary.single.python
+%(language)s : constant.character.format.placeholder.other.python, source.python, string.quoted.binary.single.python
has : source.python, string.quoted.binary.single.python
-%(number)03d : constant.character.format.python, source.python, string.quoted.binary.single.python
+%(number)03d : constant.character.format.placeholder.other.python, source.python, string.quoted.binary.single.python
quote types. : source.python, string.quoted.binary.single.python
" : punctuation.definition.string.end.python, source.python, string.quoted.binary.single.python
a : source.python
@@ -39,8 +39,8 @@
: source.python
R : source.python, storage.type.string.python, string.quoted.raw.single.python
" : punctuation.definition.string.begin.python, source.python, string.quoted.raw.single.python
-%(language)s : constant.character.format.python, source.python, string.quoted.raw.single.python
+%(language)s : constant.character.format.placeholder.other.python, source.python, string.quoted.raw.single.python
has : source.python, string.quoted.raw.single.python
-%(number)03d : constant.character.format.python, source.python, string.quoted.raw.single.python
+%(number)03d : constant.character.format.placeholder.other.python, source.python, string.quoted.raw.single.python
quote types. : source.python, string.quoted.raw.single.python
" : punctuation.definition.string.end.python, source.python, string.quoted.raw.single.python
diff --git a/test/strings/format4.py b/test/strings/format4.py
index b8553127..53d75b2e 100644
--- a/test/strings/format4.py
+++ b/test/strings/format4.py
@@ -9,10 +9,10 @@
: source.python
' : punctuation.definition.string.begin.python, source.python, string.quoted.single.python
qqq : source.python, string.quoted.single.python
-{ : constant.character.format.python, source.python, string.quoted.single.python
-: : constant.character.format.python, source.python, string.quoted.single.python, support.other.format.python
-%Y-%m-%d %H:%M:%S : constant.character.format.python, source.python, string.quoted.single.python
-} : constant.character.format.python, source.python, string.quoted.single.python
+{ : constant.character.format.placeholder.other.python, source.python, string.quoted.single.python
+: : constant.character.format.placeholder.other.python, source.python, string.quoted.single.python, support.other.format.python
+%Y-%m-%d %H:%M:%S : constant.character.format.placeholder.other.python, source.python, string.quoted.single.python
+} : constant.character.format.placeholder.other.python, source.python, string.quoted.single.python
www : source.python, string.quoted.single.python
' : punctuation.definition.string.end.python, source.python, string.quoted.single.python
a : source.python
@@ -20,11 +20,11 @@
: source.python
' : punctuation.definition.string.begin.python, source.python, string.quoted.single.python
qqq : source.python, string.quoted.single.python
-{0 : constant.character.format.python, source.python, string.quoted.single.python
-: : constant.character.format.python, source.python, string.quoted.single.python, support.other.format.python
-{fill} : constant.character.format.python, source.python, string.quoted.single.python
-{align} : constant.character.format.python, source.python, string.quoted.single.python
-16 : constant.character.format.python, source.python, string.quoted.single.python
-} : constant.character.format.python, source.python, string.quoted.single.python
+{0 : constant.character.format.placeholder.other.python, source.python, string.quoted.single.python
+: : constant.character.format.placeholder.other.python, source.python, string.quoted.single.python, support.other.format.python
+{fill} : constant.character.format.placeholder.other.python, source.python, string.quoted.single.python
+{align} : constant.character.format.placeholder.other.python, source.python, string.quoted.single.python
+16 : constant.character.format.placeholder.other.python, source.python, string.quoted.single.python
+} : constant.character.format.placeholder.other.python, source.python, string.quoted.single.python
www : source.python, string.quoted.single.python
' : punctuation.definition.string.end.python, source.python, string.quoted.single.python
diff --git a/test/strings/format5.py b/test/strings/format5.py
index 89bda573..cc844c9d 100644
--- a/test/strings/format5.py
+++ b/test/strings/format5.py
@@ -10,11 +10,11 @@
: source.python
' : punctuation.definition.string.begin.python, source.python, string.quoted.single.python
qqq : source.python, string.quoted.single.python
-{0 : constant.character.format.python, source.python, string.quoted.single.python
-: : constant.character.format.python, source.python, string.quoted.single.python, support.other.format.python
-{width} : constant.character.format.python, source.python, string.quoted.single.python
-{base} : constant.character.format.python, source.python, string.quoted.single.python
-} : constant.character.format.python, source.python, string.quoted.single.python
+{0 : constant.character.format.placeholder.other.python, source.python, string.quoted.single.python
+: : constant.character.format.placeholder.other.python, source.python, string.quoted.single.python, support.other.format.python
+{width} : constant.character.format.placeholder.other.python, source.python, string.quoted.single.python
+{base} : constant.character.format.placeholder.other.python, source.python, string.quoted.single.python
+} : constant.character.format.placeholder.other.python, source.python, string.quoted.single.python
www : source.python, string.quoted.single.python
' : punctuation.definition.string.end.python, source.python, string.quoted.single.python
a : source.python
@@ -22,10 +22,10 @@
: source.python
' : punctuation.definition.string.begin.python, source.python, string.quoted.single.python
qqq : source.python, string.quoted.single.python
-{0 : constant.character.format.python, source.python, string.quoted.single.python
-: : constant.character.format.python, source.python, string.quoted.single.python, support.other.format.python
-$20 : constant.character.format.python, source.python, string.quoted.single.python
-} : constant.character.format.python, source.python, string.quoted.single.python
+{0 : constant.character.format.placeholder.other.python, source.python, string.quoted.single.python
+: : constant.character.format.placeholder.other.python, source.python, string.quoted.single.python, support.other.format.python
+$20 : constant.character.format.placeholder.other.python, source.python, string.quoted.single.python
+} : constant.character.format.placeholder.other.python, source.python, string.quoted.single.python
www : source.python, string.quoted.single.python
' : punctuation.definition.string.end.python, source.python, string.quoted.single.python
a : source.python
@@ -33,6 +33,6 @@
: source.python
' : punctuation.definition.string.begin.python, source.python, string.quoted.single.python
qqq : source.python, string.quoted.single.python
-{0} : constant.character.format.python, source.python, string.quoted.single.python
+{0} : constant.character.format.placeholder.other.python, source.python, string.quoted.single.python
www : source.python, string.quoted.single.python
' : punctuation.definition.string.end.python, source.python, string.quoted.single.python
diff --git a/test/strings/format6.py b/test/strings/format6.py
index aec866bc..110a288f 100644
--- a/test/strings/format6.py
+++ b/test/strings/format6.py
@@ -28,6 +28,6 @@
: source.python
' : punctuation.definition.string.begin.python, source.python, string.quoted.single.python
h} : source.python, string.quoted.single.python
-{base} : constant.character.format.python, source.python, string.quoted.single.python
+{base} : constant.character.format.placeholder.other.python, source.python, string.quoted.single.python
}www : source.python, string.quoted.single.python
' : punctuation.definition.string.end.python, source.python, string.quoted.single.python
diff --git a/test/strings/format7.py b/test/strings/format7.py
index 637b0be9..80567965 100644
--- a/test/strings/format7.py
+++ b/test/strings/format7.py
@@ -18,9 +18,9 @@
: source.python
' : punctuation.definition.string.begin.python, source.python, string.quoted.single.python
12 : source.python, string.quoted.single.python
-% o : constant.character.format.python, source.python, string.quoted.single.python
+% o : constant.character.format.placeholder.other.python, source.python, string.quoted.single.python
f : source.python, string.quoted.single.python
-%s : constant.character.format.python, source.python, string.quoted.single.python
+%s : constant.character.format.placeholder.other.python, source.python, string.quoted.single.python
' : punctuation.definition.string.end.python, source.python, string.quoted.single.python
: source.python
% : keyword.operator.arithmetic.python, source.python
diff --git a/test/strings/format9.py b/test/strings/format9.py
index 6f337255..0a76b6c9 100644
--- a/test/strings/format9.py
+++ b/test/strings/format9.py
@@ -10,7 +10,7 @@
: source.python
' : punctuation.definition.string.begin.python, source.python, string.quoted.single.python
blah {foo-bar : source.python, string.quoted.single.python
-%d : constant.character.format.python, source.python, string.quoted.single.python
+%d : constant.character.format.placeholder.other.python, source.python, string.quoted.single.python
' : punctuation.definition.string.end.python, source.python, string.quoted.single.python
a : source.python
= : keyword.operator.assignment.python, source.python
@@ -18,7 +18,7 @@
' : punctuation.definition.string.begin.python, source.python, string.quoted.single.python
blah : source.python, string.quoted.single.python
{foo-bar : source.python, string.quoted.single.python
-%d : constant.character.format.python, source.python, string.quoted.single.python
+%d : constant.character.format.placeholder.other.python, source.python, string.quoted.single.python
} : source.python, string.quoted.single.python
' : punctuation.definition.string.end.python, source.python, string.quoted.single.python
a : source.python
@@ -27,16 +27,16 @@
' : punctuation.definition.string.begin.python, source.python, string.quoted.single.python
blah : source.python, string.quoted.single.python
{foo-bar : source.python, string.quoted.single.python
-%d : constant.character.format.python, source.python, string.quoted.single.python
+%d : constant.character.format.placeholder.other.python, source.python, string.quoted.single.python
//insane {}} : source.python, string.quoted.single.python
' : punctuation.definition.string.end.python, source.python, string.quoted.single.python
a : source.python
= : keyword.operator.assignment.python, source.python
: source.python
' : punctuation.definition.string.begin.python, source.python, string.quoted.single.python
-{} : constant.character.format.python, source.python, string.quoted.single.python
+{} : constant.character.format.placeholder.other.python, source.python, string.quoted.single.python
blah : source.python, string.quoted.single.python
{foo-bar : source.python, string.quoted.single.python
-%d : constant.character.format.python, source.python, string.quoted.single.python
+%d : constant.character.format.placeholder.other.python, source.python, string.quoted.single.python
//insane {}} : source.python, string.quoted.single.python
' : punctuation.definition.string.end.python, source.python, string.quoted.single.python