Skip to content

Commit

Permalink
feat: add Russian language support (#145)
Browse files Browse the repository at this point in the history
* feat: add russian language

* feat: add russian version in example site and config file
  • Loading branch information
kirill-zak authored Nov 17, 2023
1 parent e9befdb commit fc80687
Show file tree
Hide file tree
Showing 13 changed files with 513 additions and 1 deletion.
65 changes: 65 additions & 0 deletions exampleSite/config.toml
Original file line number Diff line number Diff line change
Expand Up @@ -161,6 +161,71 @@ disqusShortname = ''
background_color = "#fff" # by default depend on "params.defaultColor" for "light" or "auto" will be set to "#fff" for dark will be "#131418" (color of dark mode background)
display = "standalone"

############################## Russian language ################################
[Languages.ru-ru]
languageName = "Russian"
languageCode = "ru-ru"
contentDir = "content/ru"
weight = 1

[Languages.ru-ru.menu]
[[Languages.ru-ru.menu.main]]
# The page reference (pageRef) is useful for menu highlighting
# When pageRef is set, setting `url` is optional; it will be used as a fallback if the page is not found.
pageRef="/"
name = 'Главная'
url = '/'
weight = 10
[[Languages.ru-ru.menu.main]]
pageRef="posts"
name = 'Записи'
url = '/posts/'
weight = 20
[[Languages.ru-ru.menu.main]]
pageRef="about"
name = 'О проекте'
url = '/about/'
weight = 30

[Languages.ru-ru.params]
sitename = "Превосходный hugo блог"
defaultColor = "dark" # set color mode: dark, light, auto
# Setting it to 'auto' applies the color scheme based on the visitor's device color preference.If you don't specify anything, ignore this parameter, or leave it blank,
# the default value is set to 'auto'.
# You can take a look at layouts/index.html for more information.
description = "Минималистичная тема для блога на Hugo с поддержкой светлого и тёмного режима"
mainSections = ['posts']
toc = true # set to false to disable table of contents 'globally'
tocOpen = false # set to true to open table of contents by default
goToTop = true # set to false to disable 'go to top' button
additionalScripts = ['js/custom.js', 'js/custom-2.js']
# Will try to load 'assets/js/custom.js' and 'assets/js/custom-2.js'.
# Your custom scripts will be concatinated to one file `custom.js`.
# When building for production it will be minified.
# The file `custom.js` is loaded on each page (before body tag ends).
dateFormat = "" # date format used to show dates on various pages. If nothing is specified, then "2 Jan 2006" format is used.
# See https://gohugo.io/functions/format/#hugo-date-and-time-templating-reference for available date formats.
rssFeedDescription = "summary" # available options: 1) summary 2) full
# summary - includes a short summary of the blog post in the RSS feed. Generated using Hugo .Summary .
# full - includes full blog post in the RSS feed. Generated using Hugo .Content .
# By default (or if nothing is specified), summary is used.

[Languages.ru-ru.params.author]
avatar = "avatar.jpg" # put the file in assets folder; also ensure that image has same height and width
# Note: image is not rendered if the resource(avatar image) is not found. No error is displayed.
intro = "Превосходный hugo блог"
name = "Sidharth R"
description = "Быстрая, минималистичная тема для Hugo с поддержкой светлого и тёмного режима для использования на персональных сайтах и блогах."

# Allow to override webmanifest options
[Languages.ru-ru.params.webmanifest]
name = "sitename" # will use "params.sitename" or "title" by default
short_name = "sitename" # same as name
start_url = "/" # will use homepage url by default
theme_color = "#434648" # default is "#434648" (base color of text). Also will override html `<meta name="theme-color" />`
background_color = "#fff" # by default depend on "params.defaultColor" for "light" or "auto" will be set to "#fff" for dark will be "#131418" (color of dark mode background)
display = "standalone"

###################################################################

# Allow to override `browserconfig.xml` params (configuration for windows embeded browsers)
Expand Down
2 changes: 1 addition & 1 deletion exampleSite/content/en/posts/markdown-syntax/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,7 @@ The blockquote element represents content that is quoted from another source, op

## Tables

Tables aren't part of the core Markdown spec, but Hugo supports supports them out-of-the-box.
Tables aren't part of the core Markdown spec, but Hugo supports them out-of-the-box.

Name | Age
--------|------
Expand Down
4 changes: 4 additions & 0 deletions exampleSite/content/ru/_index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
---
title: "Домашняя"
author : "Hugo Authors"
---
23 changes: 23 additions & 0 deletions exampleSite/content/ru/pages/about.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
---
title: О проекте
description: 'Hugo - самый быстрый фреймворк для создания сайтов'
author: Hugo Authors
---

Написанный на Go, Hugo - это генератор статических сайтов с открытом исходным кодом и лицензией [Apache Licence 2.0.](https://github.com/gohugoio/hugo/blob/master/LICENSE). Hugo поддерживает TOML, YAML и JSON типы файлов с данными, Markdown, HTML файлы и использует шорт коды для добавления богатого содержания. Другие возможности: таксономия, режим нескольких языков, обработка изображений, настраиваемые выходные форматы, сжатие HTML/CSS/JS и поддержка Sass SCSS рабочих процессов.

Hugo использует множество проектов с исходным кодом, такие как:

* https://github.com/yuin/goldmark
* https://github.com/alecthomas/chroma
* https://github.com/muesli/smartcrop
* https://github.com/spf13/cobra
* https://github.com/spf13/viper

Использование Hugo идеально для блогов, корпоративных вебсайтов, творческих портфолио, on-line журналов, одностраничных приложений или вебсайтов с тысячью страниц.

Hugo для людей, которые хотят иметь контроль на кодов их веб сайтов и не беспокоиться о настройке полноценного окружения, зависимостей и баз данных.

Вебсайты, которые созданы с помощью Hugo, очень быстры, безопасны и могут быть загружены куда угодно, включая AWS, GitHub Pages, Heroku, Netlify и любые другие хостинг провайдеры.

Узнайте больше и сотрудничайте на [GitHub](https://github.com/gohugoio).
3 changes: 3 additions & 0 deletions exampleSite/content/ru/posts/_index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
---
title: "Записи"
---
46 changes: 46 additions & 0 deletions exampleSite/content/ru/posts/emoji-support/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
---
title: Поддержка смайликов
date: 2023-02-01
author: Hugo Authors
description: Инструкция для использования смайликов в Hugo
tags:
- emoji
---

Смайлики могут быть задействован в проекте Hugo несколькими способами.
<!--more-->
[`emojify`](https://gohugo.io/functions/emojify/) функция может быть напрямую вызвана в шаблоне или [встроенный короткий код](https://gohugo.io/templates/shortcode-templates/#inline-shortcodes).

Для включения смайликов на весь проект, установите значение `enableEmoji = true` в файле `config.toml` вашего сайта. Вы можете набрать смайлик shorthand codes непосредственно в файле с содержимым; К примеру,

`:see_no_evil:` :see_no_evil: `:hear_no_evil:` :hear_no_evil: `:speak_no_evil:` :speak_no_evil:

Я :heart: Hugo! 😁

[Emoji cheat sheet](http://www.emoji-cheat-sheet.com/) полезное руководство по коротким кодам для смайликов.

***

**Заметка** Следующие шаги включат стандартные Unicode символы смайликов и последовательно в Hugo, однако отрисовка этих глифов зависит от браузера и платформы. Для добавления стиля к смайликам Вы можете использовать сторонние шрифты или наборы шрифтов; К примеру:

{{< highlight css >}}
.emoji {
font-family: Apple Color Emoji, Segoe UI Emoji, NotoColorEmoji, Segoe UI Symbol, Android Emoji, EmojiSymbols;
}
{{< /highlight >}}

{{< css.inline >}}
<style>
.emojify {
font-family: Apple Color Emoji, Segoe UI Emoji, NotoColorEmoji, Segoe UI Symbol, Android Emoji, EmojiSymbols;
font-size: 2rem;
vertical-align: middle;
}
@media screen and (max-width:650px) {
.nowrap {
display: block;
margin: 25px 0;
}
}
</style>
{{< /css.inline >}}
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
164 changes: 164 additions & 0 deletions exampleSite/content/ru/posts/markdown-syntax/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,164 @@
---
title: Инструкция по использованию Markdown
date: 2023-02-11
author: Hugo Authors
description: Пример статьи, демонстрирующей базовый синтаксис Markdown и форматирование элементов HTML.
---

В этой статье предлагается образец базового синтаксиса Markdown, который можно использовать в файлах контента Hugo, а также показано как расширенна разметка базовые элементы HTML CSS в теме Hugo.
<!--more-->

## Headings

Следующий HTML `<h1>``<h6>` элементы показывают шесть уровней заголовков разделов. От самого большого уровня `<h1>` до самого малого `<h6>`.

# H1

## H2

### H3

#### H4

##### H5

###### H6

## Параграф

Xerum, quo qui aut unt expliquam qui dolut labo. Aque venitatiusda cum, voluptionse latur sitiae dolessi aut parist aut dollo enim qui voluptate ma dolestendit peritin re plis aut quas inctum laceat est volestemque commosa as cus endigna tectur, offic to cor sequas etum rerum idem sintibus eiur? Quianimin porecus evelectur, cum que nis nust voloribus ratem aut omnimi, sitatur? Quiatem. Nam, omnis sum am facea corem alique molestrunt et eos evelece arcillit ut aut eos eos nus, sin conecerem erum fuga. Ri oditatquam, ad quibus unda veliamenimin cusam et facea ipsamus es exerum sitate dolores editium rerore eost, temped molorro ratiae volorro te reribus dolorer sperchicium faceata tiustia prat.

Itatur? Quiatae cullecum rem ent aut odis in re eossequodi nonsequ idebis ne sapicia is sinveli squiatum, core et que aut hariosam ex eat.

## Изображение

Вы можете использовать следующий синтаксис для добавления изображения. Путь до изображения должна быть относителен к файлу `index.md`.

```markdown
![Landscape](1.jpg)
```

![Landscape](1.jpg)

Вы так же можете использовать изображение из внешних источников.

```markdown
![Image](https://source.unsplash.com/random/600x400/?tech)
```

![Image](https://source.unsplash.com/random/600x400/?tech)

## Blockquote

Blockquote может подсветить контент который был процитирован из других источников. Опционально, необязательно с цитатой, которая должна находиться в пределах `footer` или `cite` элементов, и опционально, со встроенными изменениями, такими как аннотации и сокращения.

### Blockquote без атрибутов

> Вы можете использовать синтаксис Markdown совместно с blockquote, к примеру, **bold**, _italics_, [links](https://gohugo.io/), `code`.
### Blockquote с атрибутов

> Don't communicate by sharing memory, share memory by communicating.<br>
> — <cite>Rob Pike[^1]</cite>
[^1]: Приведенная выше цитата взята из выступления Роба Пайка [talk](https://www.youtube.com/watch?v=PAAkCSZUG1c) на Gopherfest, 18 ноября 2015.

## Таблицы

Таблицы не часть основных спецификаций Markdown. Но Hugo поддерживает их из коробки.

Name | Age
--------|------
Bob | 27
Alice | 23

### Markdown в таблицах

| Italics | Bold | Code |
| -------- | -------- | ------ |
| *italics* | **bold** | `code` |

## Блок кода

### Блок кода с обратными кавычками

```html
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Example HTML5 Document</title>
</head>
<body>
<p>Test</p>
</body>
</html>
```

### Блок кода с отступом в четыре пробела

<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Example HTML5 Document</title>
</head>
<body>
<p>Test</p>
</body>
</html>

### Блок кода с коротким кодом внутренней подсветки Hugo

{{< highlight html >}}
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Example HTML5 Document</title>
</head>
<body>
<p>Test</p>
</body>
</html>
{{< /highlight >}}

### Встроенный код

Используйте обратные кавычки для отсылки к `variable` в пределах предложения.

## Списки

### Упорядоченный список

1. First item
2. Second item
3. Third item

### Неупорядоченный список

* List item
* Another item
* And another item

### Вложенные списки

* Fruit
* Apple
* Orange
* Banana
* Dairy
* Milk
* Cheese

## Остальные элементы — abbr, sub, sup, kbd, mark

<abbr title="Graphics Interchange Format">GIF</abbr> bitmap формат изображений.

H<sub>2</sub>O

X<sup>n</sup> + Y<sup>n</sup> = Z<sup>n</sup>

Нажмите <kbd>CTRL</kbd>+<kbd>ALT</kbd>+<kbd>Delete</kbd> для завершения сессии.

Большинство <mark>саламандр</mark> ведут ночной образ жизни и охотятся на насекомых, червей и других мелких существ.
49 changes: 49 additions & 0 deletions exampleSite/content/ru/posts/math-typesetting/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
---
author: Hugo Authors
title: Текст с математическими символами
date: 2023-04-01
description: Краткое руководство по настройке KaTeX
math: true
---

Математические обозначения в проекте Hugo можно включить с помощью
[сторонние библиотеки JavaScript](https://github.com/hugo-sid/hugo-blog-awesome/blob/main/layouts/partials/helpers/katex.html).

<!--more-->

В этом примере, мы будем использовать [KaTeX](https://katex.org/).

- Для включения KaTeX глобально, установите параметр `math` в `true` в конфигурационный файл проекта в формате, который вы используете.
- `config.toml`
```toml
[params]
math = true
```
- `config.yaml`
```yaml
params:
math: true
```
- Для включения KaTeX для каждой страницы, добавьте параметр `math: true` в
Markdown настройки файла с контентом как показано.

```
---
math: true
---
```

**Заметка:** Онлайн заметка
[Supported TeX Functions](https://katex.org/docs/supported.html) полезный ресурс.

### Пример

- Блок с математикой:

$$
\varphi = 1+\frac{1} {1+\frac{1} {1+\frac{1} {1+\cdots} } }
$$

- Встроенная математика:

Это полином: $5x^2 + 2y -7$.
Loading

0 comments on commit fc80687

Please sign in to comment.