Skip to content

Commit d566e7e

Browse files
Add Tools page
1 parent bc00173 commit d566e7e

File tree

6 files changed

+122
-0
lines changed

6 files changed

+122
-0
lines changed

_data/navigation.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,9 @@
1010
- header: Packages
1111
url: /packages/
1212
# ------------------------------------------------------------------------------
13+
- header: Tools
14+
url: /tools/
15+
# ------------------------------------------------------------------------------
1316
- header: Community
1417
url: /community/
1518
pages:

_data/tools/editors.yml

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
- name: Xcode
2+
description: Xcode helps improve your productivity by simplifying Swift development on macOS.
3+
link: https://xcode.apple.com
4+
officially-supported: true
5+
- name: Visual Studio Code
6+
description: Visual Studio Code provides a modern development environment for Swift through the Swift extension.
7+
link: https://code.visualstudio.com
8+
guide: /documentation/articles/getting-started-with-vscode-swift.html
9+
officially-supported: true
10+
- name: Emacs
11+
description: Emacs provides a flexible and powerful environment for writing Swift code.
12+
link: https://www.gnu.org/software/emacs/
13+
community-supported: true
14+
guide: /documentation/articles/zero-to-swift-emacs.html
15+
- name: Neovim
16+
description: Neovim is a robust and adaptable editing environment that boosts productivity and efficiency for Swift development.
17+
link: https://neovim.io/
18+
guide: /documentation/articles/zero-to-swift-nvim.html
19+
community-supported: true
20+
- name: Other Editors
21+
description: Any editor that supports the Language Server Protocol (LSP) can use SourceKit-LSP to provide Swift support.
22+
link: https://github.com/apple/sourcekit-lsp/tree/main/Editors#other-editors
23+
officially-supported: true
24+
guide: /documentation/articles/other-swift-editors.html

assets/stylesheets/_pages.scss

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,3 +3,4 @@
33
@import "pages/swift-evolution";
44
@import "pages/packages";
55
@import "pages/download";
6+
@import "pages/tools";

assets/stylesheets/pages/_tools.scss

Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
.tool-list {
2+
$grid-breakpoint: 1000px;
3+
list-style: none;
4+
padding-left: 0;
5+
display: grid;
6+
gap: 1rem;
7+
8+
.tool {
9+
border: 1px solid var(--color-fill-tertiary);
10+
padding: 1rem;
11+
border-radius: 4px;
12+
display: flex;
13+
flex-direction: column;
14+
15+
h3 {
16+
line-height: 1.4;
17+
font-size: 1.4rem;
18+
padding-top: 0;
19+
display: flex;
20+
justify-content: space-between;
21+
}
22+
23+
p {
24+
flex-grow: 1;
25+
color: var(--color-secondary-label);
26+
}
27+
28+
img {
29+
width: 26px;
30+
}
31+
32+
.supported {
33+
display: inline-flex;
34+
align-items: center;
35+
justify-content: center;
36+
border-radius: 4px;
37+
border: 1px #f05138 solid;
38+
font-size: 12px;
39+
line-height: 1;
40+
white-space: nowrap;
41+
color: #f05138;
42+
padding: 4px 5px;
43+
44+
&.community {
45+
border: 1px #3ea639 solid;
46+
color: #3ea639;
47+
}
48+
}
49+
}
50+
51+
@media (min-width: 1000px) {
52+
grid-template-columns: repeat(2, 1fr);
53+
}
54+
}

tools/_editors.md

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
## Editors
2+
3+
The listed text editors provide code completion and navigation, syntax highlighting, debugging, and build system integration enhancing code quality and productivity for Swift developers.
4+
5+
<ul class="tool-list">
6+
{%- for editor in site.data.tools.editors %}
7+
<li class="tool">
8+
<h3>
9+
<a target="_blank" href="{{ editor.link }}">
10+
{{ editor.name }}
11+
</a>
12+
{% if editor.officially-supported or editor.community-supported %}
13+
<span class="supported {% if editor.community-supported %} community{% endif %}">
14+
{% if editor.officially-supported %}
15+
Officially supported
16+
{% else %}
17+
Community supported
18+
{% endif %}
19+
</span>
20+
{% endif %}
21+
</h3>
22+
<p class="description">
23+
{{ editor.description }}
24+
</p>
25+
{% if editor.guide %}
26+
<a href="{{ editor.guide }}" class="cta-secondary">
27+
Learn more
28+
</a>
29+
{% endif %}
30+
</li>
31+
{%- endfor %}
32+
</ul>

tools/index.md

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
---
2+
layout: page-wide
3+
title: Tools
4+
---
5+
6+
Developers can use Swift editing tools to create and maintain Swift code more efficiently, leading to better outcomes and higher-quality software applications.
7+
8+
{% include_relative _editors.md %}

0 commit comments

Comments
 (0)