Skip to content

Commit 13c9409

Browse files
GuillaumeGomezsyphar
authored andcommitted
Improve templates code
1 parent 4cbb096 commit 13c9409

18 files changed

+83
-79
lines changed

src/web/page/templates.rs

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -104,6 +104,7 @@ impl TemplateData {
104104
pub mod filters {
105105
use super::IconType;
106106
use chrono::{DateTime, Utc};
107+
use rinja::filters::Safe;
107108
use std::borrow::Cow;
108109
use std::fmt;
109110

@@ -229,7 +230,10 @@ pub mod filters {
229230

230231
pub fn highlight(code: impl std::fmt::Display, lang: &str) -> rinja::Result<String> {
231232
let highlighted_code = crate::web::highlight::with_lang(Some(lang), &code.to_string());
232-
Ok(format!("<pre><code>{}</code></pre>", highlighted_code))
233+
Ok(format!(
234+
"<pre><code>{}</code></pre>",
235+
highlighted_code
236+
))
233237
}
234238

235239
pub fn slugify<T: AsRef<str>>(code: T) -> rinja::Result<String> {

templates/about-base.html

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -11,27 +11,27 @@
1111
<h1 id="crate-title" class="no-description">Docs.rs documentation</h1>
1212
<div class="pure-menu pure-menu-horizontal">
1313
<ul class="pure-menu-list">
14-
{% set text = "circle-info"|fas(false, false, "")|safe %}
14+
{% set text = "circle-info"|fas(false, false, "") %}
1515
{% set text = "{} <span class='title'>About</span>"|format(text) %}
1616
{% call macros::active_link(expected="index", href="/about", text=text) %}
1717

1818
{% set text = "fonticons"|fab(false, false, "") %}
1919
{% set text = "{} <span class='title'>Badges</span>"|format(text) %}
2020
{% call macros::active_link(expected="badges", href="/about/badges", text=text) %}
2121

22-
{% set text = "gears"|fas(false, false, "")|safe %}
22+
{% set text = "gears"|fas(false, false, "") %}
2323
{% set text = "{} <span class='title'>Builds</span>"|format(text) %}
2424
{% call macros::active_link(expected="builds", href="/about/builds", text=text) %}
2525

26-
{% set text = "table"|fas(false, false, "")|safe %}
26+
{% set text = "table"|fas(false, false, "") %}
2727
{% set text = "{} <span class='title'>Metadata</span>"|format(text) %}
2828
{% call macros::active_link(expected="metadata", href="/about/metadata", text=text) %}
2929

30-
{% set text = "road"|fas(false, false, "")|safe %}
30+
{% set text = "road"|fas(false, false, "") %}
3131
{% set text = "{} <span class='title'>Shorthand URLs</span>"|format(text) %}
3232
{% call macros::active_link(expected="redirections", href="/about/redirections", text=text) %}
3333

34-
{% set text = "download"|fas(false, false, "")|safe %}
34+
{% set text = "download"|fas(false, false, "") %}
3535
{% set text = "{} <span class='title'>Download</span>"|format(text) %}
3636
{% call macros::active_link(expected="download", href="/about/download", text=text) %}
3737
</ul>

templates/core/about/builds.html

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ <h4 id="setting-a-readme"> <a href="#setting-a-readme">Setting a README</a> </h4
3131
<h4 id="detecting-docsrs"> <a href="#detecting-docsrs">Detecting Docs.rs</a> </h4>
3232
<p>
3333
To recognize Docs.rs from your Rust code, you can test for the <code>docsrs</code> cfg, e.g.:
34-
{% filter dedent(None)|highlight("rust")|safe -%}
34+
{% filter dedent(None)|highlight("rust") -%}
3535
#[cfg(docsrs)]
3636
mod documentation;
3737
{%- endfilter %}
@@ -40,7 +40,7 @@ <h4 id="detecting-docsrs"> <a href="#detecting-docsrs">Detecting Docs.rs</a> </h
4040
</p>
4141
<p>
4242
To recognize Docs.rs from <code>build.rs</code> files, you can test for the environment variable <code>DOCS_RS</code>, e.g.:
43-
{% filter dedent(3)|highlight("rust")|safe -%}
43+
{% filter dedent(3)|highlight("rust") -%}
4444
if std::env::var("DOCS_RS").is_ok() {
4545
// ... your code here ...
4646
}
@@ -55,7 +55,7 @@ <h4 id="cross-compiling"> <a href="#cross-compiling">Cross-compiling</a> </h4>
5555

5656
<p>
5757
You can configure how your crate is built by adding <a href="metadata">package metadata</a> to your <code>Cargo.toml</code>, e.g.:
58-
{% filter dedent(None)|highlight("toml")|safe -%}
58+
{% filter dedent(None)|highlight("toml") -%}
5959
[package.metadata.docs.rs]
6060
rustc-args = ["--cfg", "my_cfg"]
6161
{%- endfilter %}

templates/core/about/metadata.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ <h1>Metadata for custom builds</h1>
1414

1515
<p>The available configuration flags you can customize are:</p>
1616

17-
{% filter highlight("toml")|safe %}
17+
{% filter highlight("toml") %}
1818
{%- include "core/Cargo.toml.example" -%}
1919
{% endfilter %}
2020
</div>

templates/core/home.html

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414

1515
{%- block body -%}
1616
<div class="container landing">
17-
<h1 class="brand">{{ "cubes"|fas(false, false, "")|safe }} Docs.rs</h1>
17+
<h1 class="brand">{{ "cubes"|fas(false, false, "") }} Docs.rs</h1>
1818

1919
<form action="/releases/search" method="GET" class="landing-search-form">
2020
<div>
@@ -38,7 +38,7 @@ <h1 class="brand">{{ "cubes"|fas(false, false, "")|safe }} Docs.rs</h1>
3838
<strong>Recent Releases</strong>
3939
</a>
4040
<a href="/releases/feed" title="Atom feed">
41-
{{ "square-rss"|fas(false, false, "")|safe }}
41+
{{ "square-rss"|fas(false, false, "") }}
4242
</a>
4343
</div>
4444

templates/crate/build_details.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@
3737
<li>
3838
<a href="/crate/{{ metadata.name }}/{{ metadata.version }}/builds/{{ build_details.id }}/{{ filename }}" class="release">
3939
<div class="pure-g">
40-
<div class="pure-u-1 pure-u-sm-1-24 build">{{ "file-lines"|fas(false, false, "")|safe }}</div>
40+
<div class="pure-u-1 pure-u-sm-1-24 build">{{ "file-lines"|fas(false, false, "") }}</div>
4141
<div class="pure-u-1 pure-u-sm-10-24">
4242
{% if current_filename.as_deref().unwrap_or_default() == filename.as_str() %}
4343
<b>{{ filename }}</b>

templates/crate/builds.html

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -43,13 +43,13 @@
4343
<div class="pure-g">
4444
<div class="pure-u-1 pure-u-sm-1-24 build">
4545
{%- if build.build_status == "success" -%}
46-
{{ "check"|fas(false, false, "")|safe }}
46+
{{ "check"|fas(false, false, "") }}
4747
{%- elif build.build_status == "failure" -%}
48-
{{ "times"|fas(false, false, "")|safe }}
48+
{{ "times"|fas(false, false, "") }}
4949
{%- elif build.build_status == "in_progress" -%}
50-
{{ "gear"|fas(false, true, "")|safe }}
50+
{{ "gear"|fas(false, true, "") }}
5151
{%- else -%}
52-
{{ "x"|fas(false, false, "")|safe }}
52+
{{ "x"|fas(false, false, "") }}
5353
{%- endif -%}
5454
</div>
5555
<div class="pure-u-1 pure-u-sm-10-24">

templates/crate/details.html

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@
4848
{%- if let Some(homepage_url) = details.homepage_url -%}
4949
<li class="pure-menu-item">
5050
<a href="{{ homepage_url }}" class="pure-menu-link">
51-
{{ "house"|fas(false, false, "")|safe }} Homepage
51+
{{ "house"|fas(false, false, "") }} Homepage
5252
</a>
5353
</li>
5454
{%- endif -%}
@@ -57,7 +57,7 @@
5757
{%- if let Some(documentation_url) = details.documentation_url -%}
5858
<li class="pure-menu-item">
5959
<a href="{{ documentation_url }}" title="Canonical documentation" class="pure-menu-link">
60-
{{ "file-lines"|far(false, false, "")|safe }} Documentation
60+
{{ "file-lines"|far(false, false, "") }} Documentation
6161
</a>
6262
</li>
6363
{%- endif -%}
@@ -69,20 +69,20 @@
6969
{# If the repo link is for github or gitlab, show some stats #}
7070
{# TODO: add support for hosts besides github and gitlab (#35) #}
7171
{%- if let Some(repository_metadata) = details.repository_metadata -%}
72-
{{ "code-branch"|fab(false, false, "")|safe }}
72+
{{ "code-branch"|fab(false, false, "") }}
7373
{% if let Some(name) = repository_metadata.name %}
7474
{{name}}
7575
{% else %}
7676
Repository
7777
{% endif %}
7878
<br>
79-
{{ "star"|fas(false, false, "left-margin")|safe }} {{ repository_metadata.stars }}
80-
{{ "code-branch"|fas(false, false, "")|safe }} {{ repository_metadata.forks }}
81-
{{ "circle-exclamation"|fas(false, false, "")|safe }} {{ repository_metadata.issues }}
79+
{{ "star"|fas(false, false, "left-margin") }} {{ repository_metadata.stars }}
80+
{{ "code-branch"|fas(false, false, "") }} {{ repository_metadata.forks }}
81+
{{ "circle-exclamation"|fas(false, false, "") }} {{ repository_metadata.issues }}
8282

8383
{# If the repo link is unknown, just show a normal link #}
8484
{%- else -%}
85-
{{ "code-branch"|fas(false, false, "")|safe }} Repository
85+
{{ "code-branch"|fas(false, false, "") }} Repository
8686
{%- endif -%}
8787
</a>
8888
</li>
@@ -92,7 +92,7 @@
9292
<li class="pure-menu-item">
9393
<a href="https://crates.io/crates/{{ details.name }}" class="pure-menu-link"
9494
title="See {{ details.name }} on crates.io">
95-
{{ "cube"|fas(false, false, "")|safe }} crates.io
95+
{{ "cube"|fas(false, false, "") }} crates.io
9696
</a>
9797
</li>
9898

@@ -165,7 +165,7 @@
165165
</div>
166166
{%- elif details.build_status == "in_progress" -%}
167167
<div class="info">
168-
{{ "gear"|fas(false, true, "")|safe }}
168+
{{ "gear"|fas(false, true, "") }}
169169
Build is in progress, it will be available soon
170170
</div>
171171
{%- endif -%}

templates/crate/source.html

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -36,13 +36,13 @@
3636
{# If we are displaying a file, we also add a button to hide the file sidebar #}
3737
{% if has_file_content %}
3838
<li class="pure-menu-item toggle-source">
39-
<button aria-label="Hide source sidebar" title="Hide source sidebar" aria-expanded="true"><span class="left">{{ "chevron-left"|fas(false, false, "")|safe }}</span><span class="right">{{ "chevron-right"|fas(false, false, "")|safe }}</span> <span class="text">Hide files</span></button>
39+
<button aria-label="Hide source sidebar" title="Hide source sidebar" aria-expanded="true"><span class="left">{{ "chevron-left"|fas(false, false, "") }}</span><span class="right">{{ "chevron-right"|fas(false, false, "") }}</span> <span class="text">Hide files</span></button>
4040
</li>
4141
{% endif %}
4242
{# If this isn't the root folder, show a 'back' button #}
4343
{%- if show_parent_link -%}
4444
<li class="pure-menu-item">
45-
<a href="../" class="pure-menu-link">{{ "folder-open"|far(false, false, "")|safe }} <span class="text">..</span></a>
45+
<a href="../" class="pure-menu-link">{{ "folder-open"|far(false, false, "") }} <span class="text">..</span></a>
4646
</li>
4747
{%- endif -%}
4848

@@ -55,23 +55,23 @@
5555
<a href="./{{ file.name }}{% if file.mime == "dir" %}/{% endif %}" class="pure-menu-link">
5656
{# Directories #}
5757
{%- if file.mime == "dir" -%}
58-
{{ "folder-open"|far(false, false, "")|safe }}
58+
{{ "folder-open"|far(false, false, "") }}
5959

6060
{# Rust files #}
6161
{%- elif file.mime == "text/rust" -%}
62-
{{ "rust"|fab(false, false, "")|safe }}
62+
{{ "rust"|fab(false, false, "") }}
6363

6464
{# Cargo.lock #}
6565
{%- elif file.mime == "text/plain" && file.name == "Cargo.lock" -%}
66-
{{ "lock"|fas(false, false, "")|safe }}
66+
{{ "lock"|fas(false, false, "") }}
6767

6868
{# Markdown files #}
6969
{% elif file.mime == "text/markdown" %}
70-
{{ "markdown"|fab(false, false, "")|safe }}
70+
{{ "markdown"|fab(false, false, "") }}
7171

7272
{# .gitignore #}
7373
{% elif file.mime == "text/plain" && file.name == ".gitignore" %}
74-
{{ "git-alt"|fab(false, false, "")|safe }}
74+
{{ "git-alt"|fab(false, false, "") }}
7575

7676
{#
7777
More ideas
@@ -93,11 +93,11 @@
9393

9494
{# Text files or files which mime starts with `text` #}
9595
{%- elif file.mime == "text/plain" || file.mime|split_first("/") == Some("text") -%}
96-
{{ "file-alt"|far(false, false, "")|safe }}
96+
{{ "file-alt"|far(false, false, "") }}
9797

9898
{# Binary files and any unrecognized types #}
9999
{% else -%}
100-
{{ "file-archive"|far(false, false, "")|safe }}
100+
{{ "file-archive"|far(false, false, "") }}
101101
{%- endif -%}
102102

103103
<span class="text">{{ file.name }}</span>
@@ -134,7 +134,7 @@
134134
{%~ endfor -%}
135135
</code></pre></div>
136136
<div id="source-code" class="source-code">
137-
{{- file_content|highlight(file_name)|safe -}}
137+
{{- file_content|highlight(file_name) -}}
138138
</div>
139139
</div>
140140
{%- endif -%}

templates/header/global_alert.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
{%- if let Some(global_alert) = crate::GLOBAL_ALERT -%}
55
<li class="pure-menu-item">
66
<a href="{{ global_alert.url|safe }}" class="pure-menu-link {{ global_alert.css_class }}">
7-
{{- global_alert.fa_icon|fas(false, false, "")|safe }}
7+
{{- global_alert.fa_icon|fas(false, false, "") }}
88
{{ global_alert.text -}}
99
</a>
1010
</li>

0 commit comments

Comments
 (0)