Skip to content

Commit 30deab1

Browse files
authored
(python) don't include ( ) in functions params match (#2490)
- Before: `<params>(x,y,z)</params>` - After: `(<params>x,y,z</params>)` Improves consistency with other grammars.
1 parent 512ae5f commit 30deab1

File tree

6 files changed

+18
-11
lines changed

6 files changed

+18
-11
lines changed

CHANGES.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ Parser Engine Changes:
2222

2323
Language Improvements:
2424

25+
- enh(python) Exclude parens from functions params (#2490) [Álvaro Mondéjar][]
2526
- enh(swift) Add `compactMap` to keywords as built_in (#2478) [Omid Golparvar][]
2627
- enh(nim) adds `func` keyword (#2468) [Adnan Yaqoob][]
2728
- enh(xml) deprecate ActionScript inside script tags (#2444) [Josh Goebel][]
@@ -70,6 +71,7 @@ Developer Tools:
7071
[Josh Goebel]: https://github.com/yyyc514
7172
[Sean Williams]: https://github.com/hmmwhatsthisdo
7273
[Adnan Yaqoob]: https://github.com/adnanyaqoobvirk
74+
[Álvaro Mondéjar]: https://github.com/mondeja
7375

7476

7577
## Version 9.18.1
@@ -2148,4 +2150,3 @@ your comments and question to [highlight.js forum][forum]. And don't be afraid
21482150
if you find there some fancy Cyrillic letters -- it's for Russian users too :-)
21492151

21502152
[forum]: http://softwaremaniacs.org/forum/viewforum.php?id=6
2151-

src/languages/python.js

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -86,8 +86,14 @@ export default function(hljs) {
8686
};
8787
var PARAMS = {
8888
className: 'params',
89-
begin: /\(/, end: /\)/,
90-
contains: ['self', PROMPT, NUMBER, STRING, hljs.HASH_COMMENT_MODE]
89+
variants: [
90+
// Exclude params at functions without params
91+
{begin: /\(\s*\)/, skip: true, className: null },
92+
{
93+
begin: /\(/, end: /\)/, excludeBegin: true, excludeEnd: true,
94+
contains: ['self', PROMPT, NUMBER, STRING, hljs.HASH_COMMENT_MODE],
95+
},
96+
],
9197
};
9298
SUBST.contains = [STRING, NUMBER, PROMPT];
9399
return {

test/markup/python-repl/sample.expect.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ foo = 42"
1111
<span class="hljs-meta">&gt;&gt;&gt;</span> <span class="python"><span class="hljs-string">"""</span></span>
1212
<span class="hljs-meta">...</span> <span class="python"><span class="hljs-string">abc</span></span>
1313
<span class="hljs-meta">...</span> <span class="python"><span class="hljs-string">"""</span></span>
14-
<span class="hljs-meta">&gt;&gt;&gt;</span> <span class="python"><span class="hljs-function"><span class="hljs-keyword">def</span> <span class="hljs-title">test</span><span class="hljs-params">()</span>:</span></span>
14+
<span class="hljs-meta">&gt;&gt;&gt;</span> <span class="python"><span class="hljs-function"><span class="hljs-keyword">def</span> <span class="hljs-title">test</span>():</span></span>
1515
<span class="hljs-meta">...</span> <span class="python"> <span class="hljs-keyword">pass</span></span>
1616
<span class="hljs-meta">&gt;&gt;&gt;</span>
1717
<span class="hljs-meta">&gt;&gt;&gt;</span>
Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
1-
<span class="hljs-function"><span class="hljs-keyword">def</span> <span class="hljs-title">foo</span><span class="hljs-params">(
1+
<span class="hljs-function"><span class="hljs-keyword">def</span> <span class="hljs-title">foo</span>(<span class="hljs-params">
22
bar, <span class="hljs-comment"># commment</span>
3-
)</span>:</span>
3+
</span>):</span>
44
<span class="hljs-keyword">pass</span>
55

66

7-
<span class="hljs-class"><span class="hljs-keyword">class</span> <span class="hljs-title">Foo</span><span class="hljs-params">(collections.namedtuple<span class="hljs-params">(<span class="hljs-string">'Test'</span>)</span>, <span class="hljs-params">(
7+
<span class="hljs-class"><span class="hljs-keyword">class</span> <span class="hljs-title">Foo</span>(<span class="hljs-params">collections.namedtuple(<span class="hljs-params"><span class="hljs-string">'Test'</span></span>), (<span class="hljs-params">
88
<span class="hljs-string">'name'</span>, <span class="hljs-comment"># comment</span>
9-
)</span>)</span>:</span>
10-
<span class="hljs-keyword">pass</span>
9+
</span>)</span>):</span>
10+
<span class="hljs-keyword">pass</span>
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
1-
<span class="hljs-function"><span class="hljs-keyword">def</span> <span class="hljs-title">f</span><span class="hljs-params">(x: int)</span> -&gt; <span class="hljs-keyword">None</span>:</span>
1+
<span class="hljs-function"><span class="hljs-keyword">def</span> <span class="hljs-title">f</span>(<span class="hljs-params">x: int</span>) -&gt; <span class="hljs-keyword">None</span>:</span>
22
<span class="hljs-keyword">pass</span>

test/markup/python/matrix-multiplication.expect.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,6 @@
22
<span class="hljs-class"><span class="hljs-keyword">class</span> <span class="hljs-title">C</span>:</span>
33

44
<span class="hljs-meta"> @decorator</span>
5-
<span class="hljs-function"><span class="hljs-keyword">def</span> <span class="hljs-title">f</span><span class="hljs-params">(self, H, V, beta, r)</span>:</span>
5+
<span class="hljs-function"><span class="hljs-keyword">def</span> <span class="hljs-title">f</span>(<span class="hljs-params">self, H, V, beta, r</span>):</span>
66
S = (H @ beta - r).T @ inv(H @ V @ H.T) @ (H @ beta - r)
77
<span class="hljs-keyword">return</span> S

0 commit comments

Comments
 (0)