diff options
author | Alexander Neonxp Kiryukhin <i@neonxp.ru> | 2024-12-15 14:37:33 +0300 |
---|---|---|
committer | Alexander Neonxp Kiryukhin <i@neonxp.ru> | 2024-12-15 14:37:33 +0300 |
commit | 47fc02a8c71af4926148beb5d5cc0fc221aa5429 (patch) | |
tree | e2e5922b7fc16f3d25b02cd345ad534991d38629 /content | |
parent | 017c7b792f3e679f61b004ec132a36f866b39e9b (diff) |
Auto-commit 2024-12-15
Diffstat (limited to 'content')
-rw-r--r-- | content/pages/guestbook.md | 2 | ||||
-rw-r--r-- | content/posts/2021-02-13-jsonnet/index.md | 53 | ||||
-rw-r--r-- | content/posts/2021-02-13-jsonnet/logo.png | bin | 0 -> 221249 bytes | |||
-rw-r--r-- | content/posts/2024-11-17-obsidian/index.md | 6 | ||||
-rw-r--r-- | content/posts/_index.md | 4 |
5 files changed, 54 insertions, 11 deletions
diff --git a/content/pages/guestbook.md b/content/pages/guestbook.md index 54bfc21..8810303 100644 --- a/content/pages/guestbook.md +++ b/content/pages/guestbook.md @@ -1,7 +1,5 @@ +++ comments = true -date = '2024-11-03T16:10:32+03:00' -draft = false slug = 'guestbook' title = 'Гостевая книга' +++ diff --git a/content/posts/2021-02-13-jsonnet/index.md b/content/posts/2021-02-13-jsonnet/index.md index 64a7fcc..7402880 100644 --- a/content/posts/2021-02-13-jsonnet/index.md +++ b/content/posts/2021-02-13-jsonnet/index.md @@ -3,11 +3,12 @@ categories = ['Без рубрики'] date = '2021-02-13T22:08:19Z' tags = ['go', 'it', 'разное'] title = 'Jsonnet' +image = 'logo.png' +++ Редко такое бывает, что случайно натыкаешься на какую-то технологию и она вызывает вау-эффект и буквально переворачивает всё верх дном. На днях для меня такой технологией стал [Jsonnet](https://jsonnet.org/) от Google. -<figure class="wp-block-image">![Jsonnet logo](/img/jsonnet.svg)</figure>В кратце, это надмножество JSON являющееся языком описания шаблонов. Пока звучит не очень круто, да? На деле это офигенный Тьюринг полный функциональный язык, результатом выполнения которого будет сформированый JSON (и не только) документ([или несколько документов](https://jsonnet.org/learning/getting_started.html#multi)). +В кратце, это надмножество JSON являющееся языком описания шаблонов. Пока звучит не очень круто, да? На деле это офигенный Тьюринг полный функциональный язык, результатом выполнения которого будет сформированый JSON (и не только) документ([или несколько документов](https://jsonnet.org/learning/getting_started.html#multi)). [Если интересно, рекомендую сразу переходить к туториалу.](https://jsonnet.org/learning/tutorial.html) @@ -23,14 +24,56 @@ title = 'Jsonnet' Накидал простенький пример который формирует конфигурацию пайплайна для гипотетической CI системы: -``` -local map(arr, predicate) = // определяем функцию map if std.length(arr) == 0 then [] else [predicate(arr[0])] + map(arr[1:], predicate) // функциональненько!;local tasks = [['go1.14', '1.14-alpine'],['go1.15', '1.15-alpine'],['go1.16-RC', '1.16-rc-alpine']];local commands = ['go build', 'go test']; // Общая часть{ // Результирующий JSON pipeline: map(tasks, function (task) { // Вызов map от tasks name: task[0], image: "golang:"+task[1], commands: commands, })} +```json +local map(arr, predicate) = // определяем функцию map +if std.length(arr) == 0 then + [] + else + [ + predicate(arr[0]) + ] + map(arr[1:], predicate); // функциональненько! +local tasks = [['go1.14', '1.14-alpine'],['go1.15', '1.15-alpine'],['go1.16-RC', '1.16-rc-alpine']]; +local commands = ['go build', 'go test']; // Общая часть +{ // Результирующий JSON + pipeline: map(tasks, function (task) { // Вызов map от tasks + name: task[0], + image: "golang:"+task[1], + commands: commands, + }) +} ``` Результат: -``` -{ "pipeline": [ { "commands": [ "go build", "go test" ], "image": "golang:1.14-alpine", "name": "go1.14" }, { "commands": [ "go build", "go test" ], "image": "golang:1.15-alpine", "name": "go1.15" }, { "commands": [ "go build", "go test" ], "image": "golang:1.16-rc-alpine", "name": "go1.16-RC" } ]} +```json +{ + "pipeline": [ + { + "commands": [ + "go build", + "go test" + ], + "image": "golang:1.14-alpine", + "name": "go1.14" + }, + { + "commands": [ + "go build", + "go test" + ], + "image": "golang:1.15-alpine", + "name": "go1.15" + }, + { + "commands": [ + "go build", + "go test" + ], + "image": "golang:1.16-rc-alpine", + "name": "go1.16-RC" + } + ] +} ``` Круть же! diff --git a/content/posts/2021-02-13-jsonnet/logo.png b/content/posts/2021-02-13-jsonnet/logo.png Binary files differnew file mode 100644 index 0000000..c87fd63 --- /dev/null +++ b/content/posts/2021-02-13-jsonnet/logo.png diff --git a/content/posts/2024-11-17-obsidian/index.md b/content/posts/2024-11-17-obsidian/index.md index 07fd259..7d45ff3 100644 --- a/content/posts/2024-11-17-obsidian/index.md +++ b/content/posts/2024-11-17-obsidian/index.md @@ -152,7 +152,7 @@ ___ и переходя к сегодняшней заметке я сразу получаю такую заготовку: -{{< figure src="/posts/2024-11-17-obsidian/templater.png" title="Заметка из шаблона" >}} +![Заметка из шаблона](/posts/2024-11-17-obsidian/templater.png "Заметка из шаблона") ### Остальные плагины @@ -179,7 +179,7 @@ ___ «Но Hugo это же генератор статичных сайтов, куда ты ему будешь отправлять заметку для публикации?» — можешь спросить меня ты. А я отвечу что у меня вот такой план: -{{< graph >}} +```mermaid graph TB b1["Заметка в Obsidian"] b2["Плагин obsidian-micropub"] @@ -195,7 +195,7 @@ style b2 fill:#2e2121, stroke:#c81319 style b3 fill:#2e2121, stroke:#c81319 style b4 fill:#222c2c, stroke:#20acaa style b5 fill:#222c2c, stroke:#20acaa -{{< /graph >}} +``` То что выделено красным — ещё не существует в природе. diff --git a/content/posts/_index.md b/content/posts/_index.md index 918766b..7b974b0 100644 --- a/content/posts/_index.md +++ b/content/posts/_index.md @@ -7,4 +7,6 @@ title = 'Блог' toc = true +++ -Мой бортжурнал
\ No newline at end of file +Мой бортжурнал. + +Пишу как про околоайти, так и просто что придёт в голову.
\ No newline at end of file |