Skip to content

Commit d8230ac

Browse files
committed
Add punctuation highlighting for highlighting punctuation in doctests, fix highlighting in doctests
1 parent e137d9a commit d8230ac

14 files changed

+228
-225
lines changed

crates/ra_ide/src/lib.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -443,13 +443,13 @@ impl Analysis {
443443

444444
/// Computes syntax highlighting for the given file
445445
pub fn highlight(&self, file_id: FileId) -> Cancelable<Vec<HighlightedRange>> {
446-
self.with_db(|db| syntax_highlighting::highlight(db, file_id, None, false, None))
446+
self.with_db(|db| syntax_highlighting::highlight(db, file_id, None, false, false))
447447
}
448448

449449
/// Computes syntax highlighting for the given file range.
450450
pub fn highlight_range(&self, frange: FileRange) -> Cancelable<Vec<HighlightedRange>> {
451451
self.with_db(|db| {
452-
syntax_highlighting::highlight(db, frange.file_id, Some(frange.range), false, None)
452+
syntax_highlighting::highlight(db, frange.file_id, Some(frange.range), false, false)
453453
})
454454
}
455455

crates/ra_ide/src/prime_caches.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,6 @@ use crate::{FileId, RootDatabase};
77

88
pub(crate) fn prime_caches(db: &RootDatabase, files: Vec<FileId>) {
99
for file in files {
10-
let _ = crate::syntax_highlighting::highlight(db, file, None, false, None);
10+
let _ = crate::syntax_highlighting::highlight(db, file, None, false, false);
1111
}
1212
}

crates/ra_ide/src/snapshots/highlight_doctest.html

Lines changed: 42 additions & 42 deletions
Large diffs are not rendered by default.

crates/ra_ide/src/snapshots/highlight_injection.html

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55

66
.lifetime { color: #DFAF8F; font-style: italic; }
77
.comment { color: #7F9F7F; }
8-
.documentation { color: #00CC00; }
8+
.documentation { color: #629755; }
99
.injected { opacity: 0.65 ; }
1010
.struct, .enum { color: #7CB8BB; }
1111
.enum_variant { color: #BDE0F3; }
@@ -34,14 +34,14 @@
3434
.keyword.unsafe { color: #BC8383; font-weight: bold; }
3535
.control { font-style: italic; }
3636
</style>
37-
<pre><code><span class="keyword">fn</span> <span class="function declaration">fixture</span>(<span class="variable declaration">ra_fixture</span>: &<span class="builtin_type">str</span>) {}
37+
<pre><code><span class="keyword">fn</span> <span class="function declaration">fixture</span><span class="punctuation">(</span><span class="variable declaration">ra_fixture</span><span class="punctuation">:</span> <span class="punctuation">&</span><span class="builtin_type">str</span><span class="punctuation">)</span> <span class="punctuation">{</span><span class="punctuation">}</span>
3838

39-
<span class="keyword">fn</span> <span class="function declaration">main</span>() {
40-
<span class="function">fixture</span>(<span class="string_literal">r#"</span>
41-
<span class="keyword">trait</span> <span class="trait declaration">Foo</span> {
42-
<span class="keyword">fn</span> <span class="function declaration">foo</span>() {
43-
<span class="macro">println!</span>(<span class="string_literal">"2 + 2 = {}"</span>, <span class="numeric_literal">4</span>);
44-
}
45-
}<span class="string_literal">"#</span>
46-
);
47-
}</code></pre>
39+
<span class="keyword">fn</span> <span class="function declaration">main</span><span class="punctuation">(</span><span class="punctuation">)</span> <span class="punctuation">{</span>
40+
<span class="function">fixture</span><span class="punctuation">(</span><span class="string_literal">r#"</span>
41+
<span class="keyword">trait</span> <span class="trait declaration">Foo</span> <span class="punctuation">{</span>
42+
<span class="keyword">fn</span> <span class="function declaration">foo</span><span class="punctuation">(</span><span class="punctuation">)</span> <span class="punctuation">{</span>
43+
<span class="macro">println!</span><span class="punctuation">(</span><span class="string_literal">"2 + 2 = {}"</span><span class="punctuation">,</span> <span class="numeric_literal">4</span><span class="punctuation">)</span><span class="punctuation">;</span>
44+
<span class="punctuation">}</span>
45+
<span class="punctuation">}</span><span class="string_literal">"#</span>
46+
<span class="punctuation">)</span><span class="punctuation">;</span>
47+
<span class="punctuation">}</span></code></pre>

crates/ra_ide/src/snapshots/highlight_strings.html

Lines changed: 53 additions & 53 deletions
Large diffs are not rendered by default.

crates/ra_ide/src/snapshots/highlight_unsafe.html

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55

66
.lifetime { color: #DFAF8F; font-style: italic; }
77
.comment { color: #7F9F7F; }
8-
.documentation { color: #00CC00; }
8+
.documentation { color: #629755; }
99
.injected { opacity: 0.65 ; }
1010
.struct, .enum { color: #7CB8BB; }
1111
.enum_variant { color: #BDE0F3; }
@@ -34,20 +34,20 @@
3434
.keyword.unsafe { color: #BC8383; font-weight: bold; }
3535
.control { font-style: italic; }
3636
</style>
37-
<pre><code><span class="keyword unsafe">unsafe</span> <span class="keyword">fn</span> <span class="function declaration unsafe">unsafe_fn</span>() {}
37+
<pre><code><span class="keyword unsafe">unsafe</span> <span class="keyword">fn</span> <span class="function declaration unsafe">unsafe_fn</span><span class="punctuation">(</span><span class="punctuation">)</span> <span class="punctuation">{</span><span class="punctuation">}</span>
3838

39-
<span class="keyword">struct</span> <span class="struct declaration">HasUnsafeFn</span>;
39+
<span class="keyword">struct</span> <span class="struct declaration">HasUnsafeFn</span><span class="punctuation">;</span>
4040

41-
<span class="keyword">impl</span> <span class="struct">HasUnsafeFn</span> {
42-
<span class="keyword unsafe">unsafe</span> <span class="keyword">fn</span> <span class="function declaration unsafe">unsafe_method</span>(&<span class="self_keyword">self</span>) {}
43-
}
41+
<span class="keyword">impl</span> <span class="struct">HasUnsafeFn</span> <span class="punctuation">{</span>
42+
<span class="keyword unsafe">unsafe</span> <span class="keyword">fn</span> <span class="function declaration unsafe">unsafe_method</span><span class="punctuation">(</span><span class="punctuation">&</span><span class="self_keyword">self</span><span class="punctuation">)</span> <span class="punctuation">{</span><span class="punctuation">}</span>
43+
<span class="punctuation">}</span>
4444

45-
<span class="keyword">fn</span> <span class="function declaration">main</span>() {
46-
<span class="keyword">let</span> <span class="variable declaration">x</span> = &<span class="numeric_literal">5</span> <span class="keyword">as</span> *<span class="keyword">const</span> <span class="builtin_type">usize</span>;
47-
<span class="keyword unsafe">unsafe</span> {
48-
<span class="function unsafe">unsafe_fn</span>();
49-
<span class="struct">HasUnsafeFn</span>.<span class="function unsafe">unsafe_method</span>();
50-
<span class="keyword">let</span> <span class="variable declaration">y</span> = <span class="operator unsafe">*</span>(<span class="variable">x</span>);
51-
<span class="keyword">let</span> <span class="variable declaration">z</span> = -<span class="variable">x</span>;
52-
}
53-
}</code></pre>
45+
<span class="keyword">fn</span> <span class="function declaration">main</span><span class="punctuation">(</span><span class="punctuation">)</span> <span class="punctuation">{</span>
46+
<span class="keyword">let</span> <span class="variable declaration">x</span> <span class="punctuation">=</span> <span class="punctuation">&</span><span class="numeric_literal">5</span> <span class="keyword">as</span> *<span class="keyword">const</span> <span class="builtin_type">usize</span><span class="punctuation">;</span>
47+
<span class="keyword unsafe">unsafe</span> <span class="punctuation">{</span>
48+
<span class="function unsafe">unsafe_fn</span><span class="punctuation">(</span><span class="punctuation">)</span><span class="punctuation">;</span>
49+
<span class="struct">HasUnsafeFn</span><span class="punctuation">.</span><span class="function unsafe">unsafe_method</span><span class="punctuation">(</span><span class="punctuation">)</span><span class="punctuation">;</span>
50+
<span class="keyword">let</span> <span class="variable declaration">y</span> <span class="punctuation">=</span> <span class="operator unsafe">*</span><span class="punctuation">(</span><span class="variable">x</span><span class="punctuation">)</span><span class="punctuation">;</span>
51+
<span class="keyword">let</span> <span class="variable declaration">z</span> <span class="punctuation">=</span> <span class="punctuation">-</span><span class="variable">x</span><span class="punctuation">;</span>
52+
<span class="punctuation">}</span>
53+
<span class="punctuation">}</span></code></pre>

0 commit comments

Comments
 (0)