Add files to repos
This commit is contained in:
93
themes/tabi/content/blog/markdown/index.ar.md
Normal file
93
themes/tabi/content/blog/markdown/index.ar.md
Normal file
@@ -0,0 +1,93 @@
|
||||
+++
|
||||
title = "أمثلة على ماركداون"
|
||||
date = 2023-01-31
|
||||
updated = 2023-09-01
|
||||
description = "تعرض هذه التدوينة بعض الأمثلة على تنسيق ماركداون، بما في ذلك الجداول، والشِفرات البرمجية والوسوم، والاقتباسات، والهوامش."
|
||||
|
||||
[taxonomies]
|
||||
tags = ["ماركداون", "توضيحي"]
|
||||
|
||||
[extra]
|
||||
katex = true
|
||||
+++
|
||||
|
||||
{% admonition(type="note", title="ملاحظة عن الاتجاه", icon="info") %}
|
||||
يدعم تابي الكتابة من اليمين إلى اليسار (RTL) بشكل كامل، مما يجعله مثالياً للغة العربية.
|
||||
|
||||
الشفرات البرمجية والمعادلات الرياضية تبقى من اليسار إلى اليمين كما هو متوقع.
|
||||
{% end %}
|
||||
|
||||
## الرياضيات مع $\KaTeX$
|
||||
|
||||
{{ aside(text="تأتي كلمة *ماركداون* من الإنجليزية *Markdown*، وهي لغة ترميز بسيطة صممها جون غروبر وآرون سوارتز في عام 2004.") }}
|
||||
|
||||
[$\KaTeX$](https://katex.org/) هي مكتبة سريعة وسهلة الاستخدام تمكن من عرض الرموز الرياضية باستخدام صيغة LaTeX.
|
||||
|
||||
يمكنك استخدام $\KaTeX$ **ضمن السطر** عن طريق وضع التعبير بين `$` أو بين `\\(` و `\\)`.
|
||||
|
||||
على سبيل المثال، `$ \sin(x) = \sum_{n=0}^{\infty} \frac{(-1)^n}{(2n + 1)!} x^{2n + 1} $` سيظهر هكذا: $ \sin(x) = \sum_{n=0}^{\infty} \frac{(-1)^n}{(2n + 1)!} x^{2n + 1} $
|
||||
|
||||
لعرض التعبير **في سطر منفصل ومتوسط**، ضعه بين `$$` أو بين `\\[` و `\\]`.
|
||||
|
||||
على سبيل المثال، `\\[ r = \frac{\sum_{i=1}^{n}(x_i - \bar{x})(y_i - \bar{y})}{\sqrt{\sum_{i=1}^{n}(x_i - \bar{x})^2}\sqrt{\sum_{i=1}^{n}(y_i - \bar{y})^2}} \\]` سيظهر هكذا: \\[ r = \frac{\sum_{i=1}^{n}(x_i - \bar{x})(y_i - \bar{y})}{\sqrt{\sum_{i=1}^{n}(x_i - \bar{x})^2}\sqrt{\sum_{i=1}^{n}(y_i - \bar{y})^2}} \\]
|
||||
|
||||
لتفعيل $\KaTeX$ لتدوينة أو قسم كامل، أضف `katex = true` داخل قسم `[extra]` في المقدمة. على سبيل المثال:
|
||||
|
||||
```toml,hl_lines=5-6
|
||||
title = "تجربة KaTeX"
|
||||
date = 2002-11-30
|
||||
|
||||
[extra]
|
||||
katex = true
|
||||
```
|
||||
|
||||
يمكنك أيضاً تفعيله بشكل عام عن طريق تعيين `katex = true` في قسم `[extra]` في ملف `config.toml` الخاص بك.
|
||||
|
||||
لتحسين الأداء والأمان، يتم استضافة ملفات جافا سكريبت و CSS والخطوط الخاصة بـ $\KaTeX$ محلياً.
|
||||
|
||||
**ملاحظة**: بعد تفعيل $\KaTeX$، إذا أردت استخدام \$ بدون عرض تعبير رياضي، استخدم شرطة مائلة للخلف قبلها: `\$`.
|
||||
|
||||
## جدول
|
||||
|
||||
هذا مثال على جدول[^1]. تتغير ألوانه حسب سمة التدوينة.
|
||||
|
||||
| الرمز | العنصر | العدد الذري |
|
||||
|--------|----------|--------------|
|
||||
| H | هيدروجين| 1 |
|
||||
| C | كربون | 6 |
|
||||
| Fe | حديد | 26 |
|
||||
| Au | ذهب | 79 |
|
||||
|
||||
## الشِفرات البرمجية
|
||||
|
||||
```rust
|
||||
fn main() {
|
||||
println!("مرحباً يا عالم") -> ();
|
||||
}
|
||||
```
|
||||
|
||||
### من اليمين إلى اليسار
|
||||
{% force_text_direction(direction="rtl") %}
|
||||
|
||||
```
|
||||
نص قل_مرحباً(نص الاسم) {
|
||||
أرجع تنسيق("مرحباً {الاسم}")؛
|
||||
}
|
||||
```
|
||||
|
||||
{% end %}
|
||||
|
||||
## سطر برمجي
|
||||
|
||||
في Rust، تعلن عن متغير متغير باستخدام `let mut x = 5`، بينما في Python، تستخدم ببساطة `x = 5`. وبالمثل، لطباعة قيمة في Rust، تستخدم `println!("القيمة: {}", x)`، ولكن في Python، الأمر بسيط مثل `print(f"القيمة: {x}")`
|
||||
وفي لغة البرمجة العربية هو `مهنة = "صائد فئران"`
|
||||
|
||||
## اقتباس
|
||||
|
||||
> وابِطُكَ قابِضِ الأَرواحِ يَرمي ... بِسَهمِ المَوتِ مِن تَحتِ الثِيابِ
|
||||
>
|
||||
> شَرابُكَ في السَرابِ إِذا عَطِشنا ... وَخُبزُكَ عِندَ مُنقَطِعِ التُرابِ
|
||||
>
|
||||
> — أبو الشمقمق، العصر العباسي
|
||||
|
||||
[^1]: وهذا مثال على الهامش!
|
||||
110
themes/tabi/content/blog/markdown/index.ca.md
Normal file
110
themes/tabi/content/blog/markdown/index.ca.md
Normal file
@@ -0,0 +1,110 @@
|
||||
+++
|
||||
title = "Exemples de Markdown"
|
||||
date = 2023-01-31
|
||||
updated = 2024-11-23
|
||||
description = "Aquesta publicació mostra alguns exemples de format en Markdown, incloent-hi una taula, blocs de codi i etiquetes, citacions, taules i notes a peu de pàgina."
|
||||
|
||||
[taxonomies]
|
||||
tags = ["markdown", "funcionalitat"]
|
||||
|
||||
[extra]
|
||||
katex = true
|
||||
social_media_card = "social_cards/ca_blog_markdown.jpg"
|
||||
+++
|
||||
|
||||
## $\KaTeX$
|
||||
|
||||
[$\KaTeX$](https://katex.org/) és una llibreria ràpida i fàcil d'usar que permet representar notació matemàtica mitjançant la sintaxi LaTeX.
|
||||
|
||||
Pots utilitzar $\KaTeX$ **en línia** embolcallant l'expressió entre `$` o entre `\\(` i `\\)`.
|
||||
|
||||
Per exemple, `$ \sin(x) = \sum_{n=0}^{\infty} \frac{(-1)^n}{(2n + 1)!} x^{2n + 1} $` es renderitzarà com: $ \sin(x) = \sum_{n=0}^{\infty} \frac{(-1)^n}{(2n + 1)!} x^{2n + 1} $
|
||||
|
||||
Per mostrar l'expressió **en una línia pròpia i centrada**, embolcalla-la amb `$$` o entre `\\[` i `\\]`.
|
||||
|
||||
Per exemple, `\\[ r = \frac{\sum_{i=1}^{n}(x_i - \bar{x})(y_i - \bar{y})}{\sqrt{\sum_{i=1}^{n}(x_i - \bar{x})^2}\sqrt{\sum_{i=1}^{n}(y_i - \bar{y})^2}} \\]` es renderitzarà com: \\[ r = \frac{\sum_{i=1}^{n}(x_i - \bar{x})(y_i - \bar{y})}{\sqrt{\sum_{i=1}^{n}(x_i - \bar{x})^2}\sqrt{\sum_{i=1}^{n}(y_i - \bar{y})^2}} \\]
|
||||
|
||||
Per activar $\KaTeX$ en una publicació o secció sencera, inclou `katex = true` dins de la secció `[extra]` de les metadades. Per exemple:
|
||||
|
||||
```toml,hl_lines=5-6
|
||||
title = "Provant KaTeX"
|
||||
date = 2002-11-30
|
||||
|
||||
[extra]
|
||||
katex = true
|
||||
```
|
||||
|
||||
Per activar-lo globalment, afeigeix `katex = true` a la secció `[extra]` del teu `config.toml`.
|
||||
|
||||
Per obtenir un millor rendiment i seguretat, els fitxers JavaScript, CSS i les tipografies de $\KaTeX$ s'allotgen localment.
|
||||
|
||||
**Nota**: Després d'activar $\KaTeX$, si vols utilitzar el caràcter \$ sense renderitzar-lo com a expressió matemàtica, escapa'l amb una barra inversa: `\$`.
|
||||
|
||||
## Taula
|
||||
|
||||
Aquí tens un exemple de taula[^1]. Els seus colors canvien en funció del tema actual.
|
||||
|
||||
| Símbol | Element | Nombre atòmic |
|
||||
|---------|---------|---------------|
|
||||
| H | Hidrogen| 1 |
|
||||
| C | Carboni | 6 |
|
||||
| Fe | Ferro | 26 |
|
||||
| Au | Or | 79 |
|
||||
|
||||
## Bloc de codi
|
||||
|
||||
```rust
|
||||
fn main() {
|
||||
println!("Hola, món!") -> ();
|
||||
}
|
||||
```
|
||||
|
||||
### Amb numeració de línies
|
||||
|
||||
```rust,linenos
|
||||
use std::collections::HashMap;
|
||||
|
||||
#[derive(Debug)]
|
||||
struct TwinPeaksCharacter {
|
||||
name: String,
|
||||
coffee_rating: f32,
|
||||
pie_preference: String,
|
||||
}
|
||||
|
||||
fn main() {
|
||||
let mut black_lodge = HashMap::new();
|
||||
|
||||
black_lodge.insert("agent", TwinPeaksCharacter {
|
||||
name: String::from("Dale Cooper"),
|
||||
coffee_rating: 9999.99,
|
||||
pie_preference: String::from("Damn Fine Cherry"),
|
||||
});
|
||||
|
||||
black_lodge.insert("giant", TwinPeaksCharacter {
|
||||
name: String::from("The Fireman"),
|
||||
coffee_rating: 42.424242,
|
||||
pie_preference: String::from("Garmonbozia"),
|
||||
});
|
||||
|
||||
// Calculate total appreciation of damn fine coffee
|
||||
let total_coffee: f32 = black_lodge.values()
|
||||
.map(|character| character.coffee_rating)
|
||||
.sum();
|
||||
|
||||
println!("☕ Total coffee appreciation: {:.2} cups", total_coffee);
|
||||
}
|
||||
```
|
||||
|
||||
## Etiquetes de codi
|
||||
|
||||
A Rust, declares una variable mutable amb `let mut x = 5;`, mentre que a Python, simplement fas `x = 5`. De manera similar, per imprimir un valor a Rust, utilitzaries `println!("Valor: {}", x);`, però a Python, és tan senzill com `print(f"Valor: {x}")`.
|
||||
|
||||
## Quote
|
||||
|
||||
> «La vida, perquè sigui vida, s'ha de viure a poc a poc…»
|
||||
>
|
||||
> — Mercè Rodoreda, La plaça del Diamant
|
||||
|
||||
---
|
||||
|
||||
[^1]: I aquí tens un exemple de nota a peu de pàgina!
|
||||
110
themes/tabi/content/blog/markdown/index.es.md
Normal file
110
themes/tabi/content/blog/markdown/index.es.md
Normal file
@@ -0,0 +1,110 @@
|
||||
+++
|
||||
title = "Ejemplos de Markdown"
|
||||
date = 2023-01-31
|
||||
updated = 2024-11-23
|
||||
description = "Esta publicación muestra algunos ejemplos de formato Markdown, incluyendo una tabla, bloques de código y etiquetas, citas, tablas y notas al pie de página."
|
||||
|
||||
[taxonomies]
|
||||
tags = ["markdown", "funcionalidad"]
|
||||
|
||||
[extra]
|
||||
katex = true
|
||||
social_media_card = "social_cards/es_blog_markdown.jpg"
|
||||
+++
|
||||
|
||||
## $\KaTeX$
|
||||
|
||||
[$\KaTeX$](https://katex.org/) es una biblioteca rápida y fácil de usar que permite la representación de notación matemática utilizando sintaxis LaTeX.
|
||||
|
||||
Puedes usar $\KaTeX$ **en línea** al envolver la expresión entre `$` o entre `\\(` y `\\)`.
|
||||
|
||||
Por ejemplo, `$ \sin(x) = \sum_{n=0}^{\infty} \frac{(-1)^n}{(2n + 1)!} x^{2n + 1} $` se mostraría como: $ \sin(x) = \sum_{n=0}^{\infty} \frac{(-1)^n}{(2n + 1)!} x^{2n + 1} $
|
||||
|
||||
Para mostrar la expresión **en su propia línea y centrada**, envuélvela entre `$$` o entre `\\[` y `\\]`.
|
||||
|
||||
Por ejemplo, `\\[ r = \frac{\sum_{i=1}^{n}(x_i - \bar{x})(y_i - \bar{y})}{\sqrt{\sum_{i=1}^{n}(x_i - \bar{x})^2}\sqrt{\sum_{i=1}^{n}(y_i - \bar{y})^2}} \\]` se mostraría como: \\[ r = \frac{\sum_{i=1}^{n}(x_i - \bar{x})(y_i - \bar{y})}{\sqrt{\sum_{i=1}^{n}(x_i - \bar{x})^2}\sqrt{\sum_{i=1}^{n}(y_i - \bar{y})^2}} \\]
|
||||
|
||||
Para activar $\KaTeX$ en una publicación o sección entera, incluye `katex = true` dentro de la sección `[extra]` del encabezado. Por ejemplo:
|
||||
|
||||
```toml,hl_lines=5-6
|
||||
title = "Probando KaTeX"
|
||||
date = 2002-11-30
|
||||
|
||||
[extra]
|
||||
katex = true
|
||||
```
|
||||
|
||||
Para activarlo globalmente, añade `katex = true` en la sección `[extra]` de tu `config.toml`.
|
||||
|
||||
Para un mejor rendimiento y seguridad, el JavaScript, CSS y las fuentes de $\KaTeX$ se alojan localmente.
|
||||
|
||||
**Nota**: Después de habilitar $\KaTeX$, si deseas usar \$ sin representar una expresión matemática, escápalo con una sola barra invertida: `\$`.
|
||||
|
||||
## Tabla
|
||||
|
||||
Aquí tienes un ejemplo de una tabla[^1]. Los colores cambian dependiendo del tema actual.
|
||||
|
||||
| Símbolo | Elemento | Número atómico |
|
||||
|---------|----------|----------------|
|
||||
| H | Hidrógeno| 1 |
|
||||
| C | Carbono | 6 |
|
||||
| Fe | Hierro | 26 |
|
||||
| Au | Oro | 79 |
|
||||
|
||||
## Bloque de código
|
||||
|
||||
```rust
|
||||
fn main() {
|
||||
println!("¡Hola, mundo!") -> ();
|
||||
}
|
||||
```
|
||||
|
||||
### Con números de línea
|
||||
|
||||
```rust,linenos
|
||||
use std::collections::HashMap;
|
||||
|
||||
#[derive(Debug)]
|
||||
struct TwinPeaksCharacter {
|
||||
name: String,
|
||||
coffee_rating: f32,
|
||||
pie_preference: String,
|
||||
}
|
||||
|
||||
fn main() {
|
||||
let mut black_lodge = HashMap::new();
|
||||
|
||||
black_lodge.insert("agent", TwinPeaksCharacter {
|
||||
name: String::from("Dale Cooper"),
|
||||
coffee_rating: 9999.99,
|
||||
pie_preference: String::from("Damn Fine Cherry"),
|
||||
});
|
||||
|
||||
black_lodge.insert("giant", TwinPeaksCharacter {
|
||||
name: String::from("The Fireman"),
|
||||
coffee_rating: 42.424242,
|
||||
pie_preference: String::from("Garmonbozia"),
|
||||
});
|
||||
|
||||
// Calculate total appreciation of damn fine coffee
|
||||
let total_coffee: f32 = black_lodge.values()
|
||||
.map(|character| character.coffee_rating)
|
||||
.sum();
|
||||
|
||||
println!("☕ Total coffee appreciation: {:.2} cups", total_coffee);
|
||||
}
|
||||
```
|
||||
|
||||
## Etiquetas de código
|
||||
|
||||
En Rust, declaras una variable mutable con `let mut x = 5;`, mientras que en Python, simplemente usas `x = 5`. De manera similar, para imprimir un valor en Rust, utilizarías `println!("Valor: {}", x);`, pero en Python, es tan sencillo como `print(f"Valor: {x}")`.
|
||||
|
||||
## Cita
|
||||
|
||||
> «A mí me sobra el cuerpo, Orfeo, me sobra el cuerpo porque me falta alma.»
|
||||
>
|
||||
> — Miguel de Unamuno, Niebla
|
||||
|
||||
---
|
||||
|
||||
[^1]: ¡Y aquí tienes un ejemplo de una nota al pie de página!
|
||||
110
themes/tabi/content/blog/markdown/index.md
Normal file
110
themes/tabi/content/blog/markdown/index.md
Normal file
@@ -0,0 +1,110 @@
|
||||
+++
|
||||
title = "Markdown examples"
|
||||
date = 2023-01-31
|
||||
updated = 2024-11-23
|
||||
description = "This post showcases some examples of Markdown formatting, including a table, code blocks and tags, quotes, tables, and footnotes."
|
||||
|
||||
[taxonomies]
|
||||
tags = ["markdown", "showcase"]
|
||||
|
||||
[extra]
|
||||
katex = true
|
||||
social_media_card = "social_cards/blog_markdown.jpg"
|
||||
+++
|
||||
|
||||
## $\KaTeX$
|
||||
|
||||
[$\KaTeX$](https://katex.org/) is a fast and easy-to-use library that enables the rendering of mathematical notation, using LaTeX syntax.
|
||||
|
||||
You can use $\KaTeX$ **inline** by wrapping the expression between `$` or between `\\(` and `\\)`.
|
||||
|
||||
For example, `$ \sin(x) = \sum_{n=0}^{\infty} \frac{(-1)^n}{(2n + 1)!} x^{2n + 1} $` would render: $ \sin(x) = \sum_{n=0}^{\infty} \frac{(-1)^n}{(2n + 1)!} x^{2n + 1} $
|
||||
|
||||
To display the expression **on its own line and centered**, wrap it around `$$` or between `\\[` and `\\]`.
|
||||
|
||||
For example, `\\[ r = \frac{\sum_{i=1}^{n}(x_i - \bar{x})(y_i - \bar{y})}{\sqrt{\sum_{i=1}^{n}(x_i - \bar{x})^2}\sqrt{\sum_{i=1}^{n}(y_i - \bar{y})^2}} \\]` renders: \\[ r = \frac{\sum_{i=1}^{n}(x_i - \bar{x})(y_i - \bar{y})}{\sqrt{\sum_{i=1}^{n}(x_i - \bar{x})^2}\sqrt{\sum_{i=1}^{n}(y_i - \bar{y})^2}} \\]
|
||||
|
||||
To activate $\KaTeX$ for a post or an entire section, include `katex = true` within the `[extra]` section of the front matter. For exemple:
|
||||
|
||||
```toml,hl_lines=5-6
|
||||
title = "Testing KaTeX"
|
||||
date = 2002-11-30
|
||||
|
||||
[extra]
|
||||
katex = true
|
||||
```
|
||||
|
||||
You may enable it globally as well, by setting `katex = true` in the `[extra]` section of your `config.toml`.
|
||||
|
||||
For enhanced performance and security, the $\KaTeX$ JavaScript, CSS, and fonts are hosted locally.
|
||||
|
||||
**Note**: After enabling $\KaTeX$, if you want to use \$ without rendering a mathematical expression, escape it with a single backslash: `\$`.
|
||||
|
||||
## Table
|
||||
|
||||
Here's an example of a table[^1]. Its colours change depending on the current theme.
|
||||
|
||||
| Symbol | Element | Atomic Number |
|
||||
|---------|---------|---------------|
|
||||
| H | Hydrogen| 1 |
|
||||
| C | Carbon | 6 |
|
||||
| Fe | Iron | 26 |
|
||||
| Au | Gold | 79 |
|
||||
|
||||
## Code Block
|
||||
|
||||
```rust
|
||||
fn main() {
|
||||
println!("Hello, world!") -> ();
|
||||
}
|
||||
```
|
||||
|
||||
### With line numbers
|
||||
|
||||
```rust,linenos
|
||||
use std::collections::HashMap;
|
||||
|
||||
#[derive(Debug)]
|
||||
struct TwinPeaksCharacter {
|
||||
name: String,
|
||||
coffee_rating: f32,
|
||||
pie_preference: String,
|
||||
}
|
||||
|
||||
fn main() {
|
||||
let mut black_lodge = HashMap::new();
|
||||
|
||||
black_lodge.insert("agent", TwinPeaksCharacter {
|
||||
name: String::from("Dale Cooper"),
|
||||
coffee_rating: 9999.99,
|
||||
pie_preference: String::from("Damn Fine Cherry"),
|
||||
});
|
||||
|
||||
black_lodge.insert("giant", TwinPeaksCharacter {
|
||||
name: String::from("The Fireman"),
|
||||
coffee_rating: 42.424242,
|
||||
pie_preference: String::from("Garmonbozia"),
|
||||
});
|
||||
|
||||
// Calculate total appreciation of damn fine coffee
|
||||
let total_coffee: f32 = black_lodge.values()
|
||||
.map(|character| character.coffee_rating)
|
||||
.sum();
|
||||
|
||||
println!("☕ Total coffee appreciation: {:.2} cups", total_coffee);
|
||||
}
|
||||
```
|
||||
|
||||
## Code tags
|
||||
|
||||
In Rust, you declare a mutable variable with `let mut x = 5;`, whereas in Python, you simply use `x = 5`. Similarly, to print a value in Rust, you would use `println!("Value: {}", x);`, but in Python, it's as straightforward as `print(f"Value: {x}")`.
|
||||
|
||||
## Quote
|
||||
|
||||
> "We're all hurtling towards death. Yet here we are, for the moment, alive. Each of us knowing we're going to die. Each of us secretly believing we won't."
|
||||
>
|
||||
> — Charlie Kaufman, Synecdoche, New York
|
||||
|
||||
---
|
||||
|
||||
[^1]: And here's an example of a footnote!
|
||||
BIN
themes/tabi/content/blog/markdown/social_cards/blog_markdown.jpg
Normal file
BIN
themes/tabi/content/blog/markdown/social_cards/blog_markdown.jpg
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 59 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 63 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 64 KiB |
Reference in New Issue
Block a user