mirror of
https://github.com/explosion/spaCy.git
synced 2024-11-11 04:08:09 +03:00
Add styleguide
This commit is contained in:
parent
319fac14fe
commit
23019d1daa
623
website/styleguide.jade
Normal file
623
website/styleguide.jade
Normal file
|
@ -0,0 +1,623 @@
|
|||
//- 💫 STYLEGUIDE
|
||||
|
||||
include _includes/_mixins
|
||||
|
||||
+section("intro")
|
||||
p
|
||||
| This styleguide is loosely based on the concept and principles of
|
||||
| #[+a("http://bradfrost.com/blog/post/atomic-web-design/") Atomic Design].
|
||||
| The templates consist of small elements (atoms) which are combined
|
||||
| and connected to form larger molecules and full components. The site
|
||||
| is compiled using #[+a("http://harpjs.com/") Harp], a static web
|
||||
| server with built-in preprocessing. Templates are written entirely in
|
||||
| #[+a("http://jade-lang.com") Jade] (aka. Pug), a clean,
|
||||
| whitespace-sensitive templating language that compiles to HTML.
|
||||
| CSS is written in #[+a("http://sass-lang.com") Sass] and preprocessed
|
||||
| via Harp, JavaScript is written in ES6 syntax and compiled using
|
||||
| #[+a("https://babeljs.io") Babel].
|
||||
|
||||
+section("logo")
|
||||
+h(2, "logo", "website/assets/img/logo.svg") Logo
|
||||
|
||||
p
|
||||
| If you would like to use the spaCy logo on your site, please get in
|
||||
| touch and ask us first. However, if you want to show support and tell
|
||||
| others that your project is using spaCy, you can grab one of our
|
||||
| #[+a("/usage/spacy-101#faq-project-with-spacy") spaCy badges].
|
||||
|
||||
+grid
|
||||
each color in [["#09a3d5", "#fff"], ["#fff", "#09a3d5"]]
|
||||
+grid-col("half").o-box.u-text-center.u-padding-medium(style="background: #{color[1]}; color: #{color[0]}")
|
||||
+icon("spacy", 338, 108)(style="max-width: 100%")
|
||||
|
||||
+section("colors")
|
||||
+h(2, "colors", "website/assets/css/_variables.sass") Colors
|
||||
|
||||
+grid
|
||||
each color, label in {"dark": "#1a1e23", "medium": "#45505e", "light": "#dddddd", "faint": "#f6f6f6", "blue": "#09a3d5", "dark blue": "#077ea4", "green": "#05b083", "dark green": "#047e5e"}
|
||||
+grid-col("quarter").u-text-small.o-card
|
||||
div(style="height: 75px; background: #{color}; border-top-left-radius: 6px; border-top-right-radius: 6px")
|
||||
.u-text-center.u-padding-medium
|
||||
+label=label
|
||||
code=color
|
||||
|
||||
each pattern in ["blue", "green"]
|
||||
+grid-col("half").u-text-small.o-card
|
||||
div(style="background: url('/assets/img/pattern_#{pattern}.jpg') center/100% repeat; height: 125px; border-top-left-radius: 6px; border-top-right-radius: 6px")
|
||||
.u-text-center.u-padding-medium
|
||||
+label #{pattern} pattern
|
||||
.u-text-tiny.u-color-subtle by #[+a("https://dribbble.com/kemal").u-color-dark Kemal Şanlı]
|
||||
|
||||
+section("typography")
|
||||
+h(2, "typography") Typography
|
||||
|
||||
+aside-code("Usage", "jade").
|
||||
+h(2) Headline two
|
||||
+h(3, "some-id") Headline three
|
||||
|
||||
p
|
||||
| Headlines are set in
|
||||
| #[+a("http://cargocollective.com/hanken/HK-Grotesk-Open-Source-Font") HK Grotesk]
|
||||
| by Hanken Design. All other body text and code uses the best-matching
|
||||
| default system font to provide a "native" reading experience.
|
||||
|
||||
each heading in [0, 1, 2, 3, 4, 5]
|
||||
.o-block-small(class="u-heading-" + heading) Heading #{heading}
|
||||
+label Label
|
||||
|
||||
+section("elements")
|
||||
+h(2, "elements", "website/_includes/_mixins.jade") Elements
|
||||
|
||||
p
|
||||
| The site comes with a collection of simple content elements,
|
||||
| implemented as mixins. These elements can be used individually, or as
|
||||
| part of larger components.
|
||||
|
||||
+h(3, "text-links") Special text & links
|
||||
|
||||
+aside-code("Usage", "jade").
|
||||
+api("token") #[code Token]
|
||||
+src("https://github.com") GitHub source
|
||||
+help("Help text here")
|
||||
+fn(1, "bibliography")
|
||||
|
||||
p
|
||||
| Special link styles are implemented as mixins and can be used to
|
||||
| mark links to the API documentation, or links to source code.
|
||||
| Additionally a "help" icon can be added to provide more information
|
||||
| via a tooltip.
|
||||
|
||||
p.o-inline-list
|
||||
+a("#") Link
|
||||
code Inline Code
|
||||
+api("token") #[code Token]
|
||||
+src(gh("spacy")) Source
|
||||
span.u-color-dark.u-nowrap Help #[+help("Help text here")]
|
||||
span Footnote#[+fn(1, "", "This marks a footnote and can link to a section")]
|
||||
|
||||
+h(3, "buttons") Buttons
|
||||
|
||||
+aside-code("Usage", "jade").
|
||||
+button("https://spacy.io", true, "secondary")
|
||||
+button("https://spacy.io", true, "primary", "small")
|
||||
|
||||
p
|
||||
| Link buttons come in two variants, #[code primary] and
|
||||
| #[code secondary] and two sizes, with an optional #[code small] size
|
||||
| modifier.Since they're mostly used as enhanced links, the buttons are
|
||||
| implemented as styled links instead of native button elements.
|
||||
|
||||
p.o-inline-list
|
||||
+button("#", false, "primary") Primary
|
||||
+button("#", false, "secondary") Secondary
|
||||
+button("#", false, "primary", "small") Primary small
|
||||
+button("#", false, "secondary", "small") Secondary small
|
||||
|
||||
+h(3, "tags") Tags
|
||||
|
||||
+aside-code("Usage", "jade").
|
||||
+tag I'm a tag
|
||||
+tag-new(2)
|
||||
+tag-model("Named entities")
|
||||
|
||||
p
|
||||
| Tags can be used together with headlines, or next to properties
|
||||
| across the documentation, and combined with tooltips to provide
|
||||
| additional information. The #[code +tag-new] mixin takes a version
|
||||
| number and can mark new features. Using the mixin, visibility of this
|
||||
| tag can be toggled once the feature isn't considered new anymore.
|
||||
| The #[code +tag-model] mixin takes a description of model
|
||||
| capabilities and can be used to mark features that require a
|
||||
| respective model to be installed.
|
||||
|
||||
p.o-inline-list
|
||||
+tag I'm a tag
|
||||
+tag-new(2)
|
||||
+tag-model("Named entities")
|
||||
|
||||
+h(3, "icons", "website/_includes/_svg.jade") Icons
|
||||
|
||||
+aside-code("Usage", "jade").
|
||||
+icon("github", 18)
|
||||
|
||||
p
|
||||
| Icons are implemented via a SVG sprite and can be included as a
|
||||
| mixin, using their name and an optional size value in #[code px].
|
||||
|
||||
+infobox.u-text-center
|
||||
each icon in ["code", "arrow-right", "book", "circle", "chat", "star", "help", "accept", "reject", "markdown", "course", "github", "jupyter"]
|
||||
.u-inline-block.u-padding-small.u-color-dark(data-tooltip=icon data-tooltip-style="code" aria-label=icon)
|
||||
+icon(icon, 20)
|
||||
|
||||
+section("components")
|
||||
+h(2, "components", "website/_includes/_mixins.jade") Components
|
||||
|
||||
p
|
||||
| The site uses a collection of Jade mixins to make it easy to use
|
||||
| complex content elements across templates and blog posts. To read
|
||||
| more about the concept of modular markup components, check out our
|
||||
| #[+a("https://explosion.ai/blog/modular-markup", true) blog post] on
|
||||
| the subject.
|
||||
|
||||
+h(3, "grid") Grid
|
||||
|
||||
+aside-code("Usage", "jade").
|
||||
+grid
|
||||
+grid-col("half") Half
|
||||
+grid-col("half") Half
|
||||
|
||||
p
|
||||
| For now, the grid is still implemented as a standard #[code flexbox]
|
||||
| grid, although it may be refactored to use CSS #[code grid] going
|
||||
| forward. The grid supports up to four columns and collapses on
|
||||
| small screens.
|
||||
|
||||
+grid
|
||||
each count, label in {"full": 1, "half": 2, "third": 3, "quarter": 4}
|
||||
each _ in Array(count)
|
||||
+grid-col(label).o-box.u-text-center.u-text-label.u-color-dark=label
|
||||
|
||||
+h(3, "table") Table
|
||||
|
||||
+aside-code("Usage", "jade").
|
||||
+table(["Header 1", "Header 2"])
|
||||
+row
|
||||
+cell Cell
|
||||
+cell Cell
|
||||
|
||||
p
|
||||
| Tables are used to present data and API documentation. If a list of
|
||||
| headings is specified, those will be rendered as the table header.
|
||||
| An optional #[code +row("foot")] can be used to mark a footer row
|
||||
| with a distinct style, for example to visualise the return values
|
||||
| of a documented function.
|
||||
|
||||
- var table_cols = ["Header 1", "Header 2", "Header 3"]
|
||||
+table(table_cols)
|
||||
each row, i in Array(4)
|
||||
+row((i == 3) ? "foot" : null)
|
||||
each col, j in table_cols
|
||||
+cell
|
||||
if i == 3 && j == 0
|
||||
| Footer
|
||||
|
||||
else
|
||||
| Row #{i + 1}, cell #{j + 1}
|
||||
|
||||
+h(3, "list") List
|
||||
|
||||
+aside-code("Usage", "jade").
|
||||
+list("numbers", 3)
|
||||
+item List item
|
||||
+item List item
|
||||
|
||||
p
|
||||
| Lists are available as bulleted, numbered, lettered and lower roman.
|
||||
| Optionally, a start index can be defined as the second argument
|
||||
| on ordered lists.
|
||||
|
||||
+grid
|
||||
+list
|
||||
+item I am a bulleted list
|
||||
+item I have nice bullets
|
||||
+item Lorem ipsum dolor
|
||||
+item consectetur adipiscing elit
|
||||
|
||||
+list("numbers")
|
||||
+item I am an ordered list
|
||||
+item I have nice numbers
|
||||
+item Lorem ipsum dolor
|
||||
+item consectetur adipiscing elit
|
||||
|
||||
+list("numbers", 10)
|
||||
+item I am an numbered list
|
||||
+item with a custom start number
|
||||
+item Lorem ipsum dolor
|
||||
+item consectetur adipiscing elit
|
||||
|
||||
+list("letters")
|
||||
+item I am an ordered list
|
||||
+item I have uppercase letters
|
||||
+item Lorem ipsum dolor
|
||||
+item consectetur adipiscing elit
|
||||
|
||||
+list("letters", 18)
|
||||
+item I am an ordered list
|
||||
+item with a custom start letter
|
||||
+item Lorem ipsum dolor
|
||||
+item consectetur adipiscing elit
|
||||
|
||||
+list("roman")
|
||||
+item I am an ordered list
|
||||
+item I have roman numerals
|
||||
+item Lorem ipsum dolor
|
||||
+item consectetur adipiscing elit
|
||||
|
||||
+h(3, "code") Code
|
||||
|
||||
+aside-code("Usage", "jade").
|
||||
+code("Label", "python").
|
||||
import spacy
|
||||
nlp = spacy.load('en')
|
||||
doc = nlp(u"This is a sentence.")
|
||||
|
||||
p
|
||||
| Code blocks use the #[+a("http://prismjs.com/") Prism] syntax
|
||||
| highlighter with a custom theme. The language can be set individually
|
||||
| on each block, and defaults to Python. An optional label can be
|
||||
| added as the first argument, which is displayed above the block.
|
||||
| When using the #[code +code] mixin, don't forget to append a period
|
||||
| #[code .] to the mixin call. This tells Jade to interpret the
|
||||
| indented block as plain text and preserve whitespace.
|
||||
|
||||
+code("Using spaCy").
|
||||
import spacy
|
||||
nlp = spacy.load('en')
|
||||
doc = nlp(u"This is a sentence.")
|
||||
|
||||
+h(3, "aside") Aside
|
||||
|
||||
+aside-code("Usage", "jade").
|
||||
+aside("Title") This is an aside
|
||||
+aside-code("Title", "python").
|
||||
nlp = spacy.load('en')
|
||||
|
||||
p
|
||||
| Asides can be used to display additional notes and content in the
|
||||
| right-hand column. Two mixins are available: #[code +aside] for
|
||||
| regular text with an optional title, #[code +aside-code], which
|
||||
| roughly mimicks the #[code +code] component. Visually, asides are
|
||||
| moved to the side on the X-axis, and displayed at the same level
|
||||
| they were inserted. On small screens, they collapse and are rendered
|
||||
| in their original position, in between the text.
|
||||
|
||||
+h(3, "infobox") Infobox
|
||||
|
||||
+aside-code("Usage", "jade").
|
||||
+infobox("Label") This is text.
|
||||
+infobox("Label", "⚠️") This is text.
|
||||
|
||||
p
|
||||
| Infoboxes can be used to add notes, updates, warnings or additional
|
||||
| information to a page or section. Semantically, they're implemented
|
||||
| and interpreted as an #[code aside] element. Since infobox titles
|
||||
| are especially nice with emoji, an emoji can be specified as the
|
||||
| second argument for optimal rendering and spacing.
|
||||
|
||||
+infobox("Infobox label") Lorem ipsum dolor sit amet, consectetur adipiscing elit. Quisque enim ante, pretium a orci eget, varius dignissim augue. Nam eu dictum mauris, id tincidunt nisi. Integer commodo pellentesque tincidunt.
|
||||
|
||||
+infobox("Infobox label with emoji", "⚠️") Lorem ipsum dolor sit amet, consectetur adipiscing elit. Quisque enim ante, pretium a orci eget, varius dignissim augue. Nam eu dictum mauris, id tincidunt nisi. Integer commodo pellentesque tincidunt.
|
||||
|
||||
+h(3, "card") Card
|
||||
|
||||
+aside-code("Usage", "jade").
|
||||
+grid
|
||||
+card("Title", "https://", "Author", "github")
|
||||
| Card content goes here
|
||||
p
|
||||
| Cards can be used to present external content and links, like GitHub
|
||||
| projects, websites, books or articles. They can take an optional
|
||||
| value for the content author and icon, which is displayed in the
|
||||
| corner. The content supplied via an indented block can also include
|
||||
| formatting or other elements like images. Under the hood, cards are
|
||||
| styled grid columns and should therefore always be used as children
|
||||
| of #[code +grid].
|
||||
|
||||
+grid
|
||||
+card("spaCy", "https://github.com/explosion/spaCy", "Explosion AI", "github")
|
||||
| An open-source library for industrial-strength Natural Language
|
||||
| Processing in Python.
|
||||
|
||||
+card("Prodigy", "https://prodi.gy", "Explosion AI", "star")
|
||||
| A new annotation tool for radically efficient machine teaching,
|
||||
| powered by active learning.
|
||||
|
||||
+section("embeds")
|
||||
+h(2, "embeds") Embeds
|
||||
|
||||
p
|
||||
| The framework also allows embedding content from selected sites via
|
||||
| mixins, usually styled wrappers for the respective embed codes.
|
||||
|
||||
+h(3, "codepen") CodePen
|
||||
|
||||
p
|
||||
| #[+a("https://codepen.io") CodePen] is a platform to share and
|
||||
| collaborate on front-end code. It comes with a powerful live editor,
|
||||
| and is mostly used on this site to present visualizations created by
|
||||
| spaCy's built-in visualizers. Embeds use a
|
||||
| #[+a("https://blog.codepen.io/documentation/pro-features/unlimited-embed-themes/") custom theme]
|
||||
| and are included using a mixin that takes the pen ID, and an optional
|
||||
| height to prevent content reflow on load.
|
||||
|
||||
+aside-code("Usage", "jade").
|
||||
+codepen("2f2ad1408ff79fc6a326ea3aedbb353b", 160)
|
||||
|
||||
+codepen("2f2ad1408ff79fc6a326ea3aedbb353b", 160)
|
||||
|
||||
+h(3, "github") GitHub
|
||||
|
||||
p
|
||||
| GitHub only allows native embedding of Gists, but Gists are only
|
||||
| available for users, not organisations. So in order to be able to
|
||||
| embed examples from spaCy's #[+src(gh("spacy", "examples")) examples],
|
||||
| we ended up developing our own micro library. A #[code data-gh-embed]
|
||||
| attribute on the code block, set via the mixin, specifies the file
|
||||
| to load. The script then fetches the raw text via the GitHub API and
|
||||
| renders it in the container. This way, the example previews on the
|
||||
| site are always in sync with the examples in the repository.
|
||||
|
||||
+aside-code("Usage", "jade").
|
||||
+github("spacy", "examples/training/train_textcat.py")
|
||||
|
||||
+github("spacy", "examples/training/train_textcat.py")
|
||||
|
||||
+section("markup")
|
||||
+h(2, "markup") Markup reference
|
||||
|
||||
p
|
||||
| The spaCy website is implemented
|
||||
| in #[+a("https://www.jade-lang.org") Jade (aka Pug)], and is built or
|
||||
| served by #[+a("(https://harpjs.com") Harp]. Jade is an extensible
|
||||
| templating language with a readable syntax, that compiles to HTML.
|
||||
| The website source makes extensive use of Jade mixins, so that the
|
||||
| design system is abstracted away from the content you're writing. You
|
||||
| can read more about our approach in our blog post,
|
||||
| #[+a("https://explosion.ai/blog/modular-markup", true) "Rebuilding a Website with Modular Markup"].
|
||||
|
||||
+code("Viewing the site locally", "bash").
|
||||
sudo npm install --global harp
|
||||
git clone #{gh("spacy")}
|
||||
cd spacy/website
|
||||
harp server --port 9000
|
||||
|
||||
+h(3, "jade") Jade conventions
|
||||
|
||||
p
|
||||
| Jade/Pug is a whitespace-sensitive markup language that compiles to
|
||||
| HTML. Indentation is used to nest elements, and for template logic,
|
||||
| like #[code if], #[code else] or #[code for], mainly used to iterate
|
||||
| over objects and arrays in the meta data. It also allows inline
|
||||
| JavaScript expressions.
|
||||
|
||||
+grid.o-no-block
|
||||
+grid-col("half")
|
||||
+code("Input", "jade").
|
||||
ul#some-id
|
||||
for item in ['a', 'b', 'c']
|
||||
li.test=item.toUpperCase()
|
||||
if item == 'a'
|
||||
| 🎉
|
||||
|
||||
+grid-col("half")
|
||||
+code("Output", "markup").
|
||||
<ul id="some-id">
|
||||
<li class="test">A 🎉<li>
|
||||
<li class="test">B<li>
|
||||
<li class="test">C<li>
|
||||
</ul>
|
||||
|
||||
p
|
||||
| For an overview of Harp and Jade, see
|
||||
| #[+a("https://ines.io/blog/the-ultimate-guide-static-websites-harp-jade") this blog post].
|
||||
| For more info on the Jade/Pug syntax, check out their
|
||||
| #[+a("https://pugjs.org") documentation]. In the spacy.io source, we
|
||||
| use 4 spaces to indent and hard-wrap at 80 characters.
|
||||
|
||||
+code(false, "jade").
|
||||
p This is a very short paragraph. It stays inline.
|
||||
|
||||
p
|
||||
| This is a much longer paragraph. It's hard-wrapped at 80 characters to
|
||||
| make it easier to read on GitHub and in editors that do not have soft
|
||||
| wrapping enabled. To prevent Jade from interpreting each line as a new
|
||||
| element, it's prefixed with a pipe and two spaces. This ensures that no
|
||||
| spaces are dropped – for example, if your editor strips out trailing
|
||||
| whitespace by default. Inline links are added using the inline syntax,
|
||||
| like this: #[+a("https://google.com") Google].
|
||||
|
||||
+aside("Plain HTML elements used")
|
||||
+list.o-no-block
|
||||
+item #[code p]: Regular paragraph.
|
||||
+item #[code code]: Inline #[code code].
|
||||
+item #[code em]: #[em Italicized] text.
|
||||
+item #[code strong]: #[strong Bold] text.
|
||||
|
||||
p
|
||||
| Note that for external links, #[code +a("...")] is used instead
|
||||
| of #[code a(href="...")] – it's a mixin that takes care of adding all
|
||||
| required attributes. If possible, always use a mixin instead of
|
||||
| regular HTML elements. With a few exceptions for practical reasons,
|
||||
| class names and other HTML attributes should
|
||||
| #[strong only live in mixins] and not in the site content.
|
||||
|
||||
+infobox("Mixins documentation")
|
||||
| For a more detailed overview and API documentation of the available
|
||||
| mixins and their arguments, see the source of the
|
||||
| #[+src(gh("spacy", "website/_includes/_mixins.jade")) #[code _includes/_mixins.jade]]
|
||||
| file.
|
||||
|
||||
+h(3, "directory-structure") Directory structure
|
||||
|
||||
p
|
||||
| Each section is represented by its own subdirectory, containing a
|
||||
| #[code _data.json] to store its meta information. All #[code .jade]
|
||||
| files that are not prefixed with an underscore are later converted to
|
||||
| #[code .html]. Site assets like images, styles, fonts and scripts are
|
||||
| loaded from a directory #[code assets]. Global variables like titles,
|
||||
| navigations, URLs and other settings are defined in the global
|
||||
| #[code _harp.json].
|
||||
|
||||
+code("website", "yaml").
|
||||
├── _includes # layout partials, shared mixins, functions
|
||||
├── api
|
||||
| ├── _data.json # meta data for API section
|
||||
| └── ... # other pages and partials
|
||||
├── assets
|
||||
| ├── css # Sass styles, will be converted to CSS
|
||||
| ├── fonts # web fonts
|
||||
| ├── img # images and icons
|
||||
| └── js # scripts, custom and third-party
|
||||
├── models
|
||||
| ├── _data.json # model meta data and meta for models section
|
||||
| └── ... # other pages and partials
|
||||
├── usage
|
||||
| ├── _data.json # meta data for usage section
|
||||
| └── ... # other pages and partials
|
||||
├── _data.json # meta data for pages in the root
|
||||
├── _harp.json # global site configuration and variables
|
||||
├── _layout.jade # global layout
|
||||
├── 404.jade # 404 page
|
||||
└── index.jade # landing page
|
||||
|
||||
+h(3, "data-structure") Data structure
|
||||
|
||||
p
|
||||
| While all page content lives in the #[code .jade] files, article meta
|
||||
| (page titles, sidebars etc.) is stored as JSON. Each folder contains
|
||||
| a #[code _data.json] with all required meta for its files. Meta
|
||||
| information is keyed by the page's filename or slug, and becomes
|
||||
| available to the templates as variables. The #[code menu] specifies
|
||||
| the sub-navigation in the sidebar and maps titles to section IDs.
|
||||
|
||||
+code(false, "json").
|
||||
"resources": {
|
||||
"title": "Resources",
|
||||
"teaser": "Libraries, demos, books, courses and research systems featuring spaCy.",
|
||||
"menu": {
|
||||
"Third-party libraries": "libraries",
|
||||
"Demos & Visualizations": "demos",
|
||||
"Books & Courses": "books",
|
||||
"Jupyter Notebooks": "notebooks",
|
||||
"Research": "research"
|
||||
}
|
||||
}
|
||||
|
||||
p
|
||||
| Long pages with multiple sections are often split into separate
|
||||
| partials that live in their own subdirectory. Those partials can be
|
||||
| included on the page, and if needed, across the site to avoid content
|
||||
| duplication. Partials and partial directories are prefixed with an
|
||||
| underscore #[code _] to prevent Harp from building them as separate
|
||||
| files.
|
||||
|
||||
+code("spacy-101.jade", "jade").
|
||||
+section("architecture")
|
||||
+h(2, "architecture") Architecture
|
||||
include _spacy-101/_architecture
|
||||
|
||||
+h(3, "model-data", "website/models/_data.json") Model data
|
||||
|
||||
p
|
||||
| The new #[+a("/models") models directory] uses the GitHub API to
|
||||
| fetch meta information from the latest
|
||||
| #[+a(gh("spacy-models") + "/releases") model releases]. This ensures
|
||||
| that the website is always up to date. However, some details, like
|
||||
| human-readable descriptions and the list of available models and
|
||||
| languages, is stored in the static CMS and used across the site.
|
||||
| This info only lives in one place, #[code models/_data.json].
|
||||
| Wherever possible, the model info is generated dynamically – for
|
||||
| example, in installation examples, quickstart widgets and even in the
|
||||
| total model and language count on the landing page.
|
||||
|
||||
p
|
||||
| The following data is stored and made available in the global scope:
|
||||
|
||||
+table(["Variable", "Description", "Example"])
|
||||
+row
|
||||
+cell #[code LANGUAGES]
|
||||
+cell All languages supported by spaCy, code mapped to name.
|
||||
+cell
|
||||
+code(false, "json").o-no-block "en": "English"
|
||||
|
||||
+row
|
||||
+cell #[code MODELS]
|
||||
+cell Model names (without version). Language codes mapped to list of names.
|
||||
+cell
|
||||
+code(false, "json").o-no-block "xx": ["xx_ent_wiki_sm"]
|
||||
|
||||
+row
|
||||
+cell #[code MODEL_META]
|
||||
+cell Description for model name components and meta data, ID mapped to string.
|
||||
+cell
|
||||
+code(false, "json").o-no-block "vectors": "Word vectors",
|
||||
|
||||
+row
|
||||
+cell #[code MODEL_LICENSES]
|
||||
+cell License types mapped to license URL.
|
||||
+cell
|
||||
+code(false, "json").o-no-block "CC BY-SA 3.0": "http://..."
|
||||
|
||||
+row
|
||||
+cell #[code MODEL_ACCURACY]
|
||||
+cell Display labels for accuracy keys.
|
||||
+cell
|
||||
+code(false, "json").o-no-block "ents_f": "NER F"
|
||||
|
||||
+row
|
||||
+cell #[code EXAMPLE_SENTENCES]
|
||||
+cell Example sentences for different languages.
|
||||
+cell
|
||||
+code(false, "json").o-no-block "es": "Esto es una frase."
|
||||
|
||||
+h(3, "functions", "website/_includes/_functions.jade") Template functions
|
||||
|
||||
p
|
||||
| Jade allows you to implement any custom logic as inline JavaScript
|
||||
| expressions. Reusable functions are organised in a
|
||||
| #[code _functions.jade], which is included via the mixins file and
|
||||
| makes them accessible on each page. However, most functions deal
|
||||
| with internals only, e.g. prefixing class names in mixins or
|
||||
| converting paths and links.
|
||||
|
||||
+h(4, "gh") gh
|
||||
+tag function
|
||||
|
||||
p
|
||||
| Since GitHub links can be long and tricky, this function takes care
|
||||
| generating them automatically for spaCy and all repositories owned
|
||||
| by the #[+a(gh())=SOCIAL.github] organisation.
|
||||
|
||||
+aside-code("Example", "jade").
|
||||
+a(gh("spacy", "spacy/language.py")) This is a link
|
||||
|
||||
+table(["Name", "Type", "Description"])
|
||||
+row
|
||||
+cell #[code repo]
|
||||
+cell String
|
||||
+cell Name of the repository, e.g. #[code "spacy"].
|
||||
|
||||
+row
|
||||
+cell #[code filepath]
|
||||
+cell String
|
||||
+cell Logical path to the file, relative to the repository root.
|
||||
|
||||
+row
|
||||
+cell #[code branch]
|
||||
+cell String
|
||||
+cell Optional branch. Defaults to #[code "master"].
|
||||
|
||||
+row("foot")
|
||||
+cell returns
|
||||
+cell String
|
||||
+cell The full GitHub link to the file.
|
Loading…
Reference in New Issue
Block a user