Code Markdown
Markdown propose plusieurs façons d'afficher du code, du simple code en ligne aux blocs de code complexes, pour répondre aux besoins d'affichage de code dans différents scénarios.
Code en ligne
S'il s'agit d'une fonction ou d'un extrait de code dans un paragraphe, vous pouvez l'entourer d'accents graves (`), par exemple :
`printf()` 函数
Le résultat affiché est le suivant :

Exemples d'utilisation courants :
- Nom de fonction : utiliser
console.log()afficher des informations - Nom de variable : affecter une valeur à
userNamevariable - Ligne de commande : exécuter
npm installinstaller les dépendances - Touche de clavier : appuyer
Ctrl+Ccopier le contenu - Nom de fichier : modifier
index.htmlfichier

Échappement des caractères spéciaux
Lorsque vous devez afficher des backticks ou d'autres caractères spéciaux dans du code en ligne, vous devez effectuer un échappement.
Méthodes pour afficher des backticks :
Utilisez des doubles backticks pour entourer un seul backtick :
``Use `backticks` to surround code``
Effet rendu :

Utilisez plusieurs backticks pour entourer :
```Code containing `` double backticks```
Effet rendu :

Gestion des autres caractères spéciaux :
- Balises HTML :
<div>élément - Symbole mathématique : calculer
x + y = z - Symbole spécial : utiliser
pour représenter un espace
Blocs de code
Blocs de code indentés
Les blocs de code utilisent4 espacesou uncaractère de tabulation (touche Tab)。
Format de syntaxe:
Normal text paragraph
This is an indented code block
Each line is preceded by four spaces
Keep the original format of the code
Continue normal text

Exemple :

Le résultat affiché est le suivant :

Blocs de code à triple backtick
Vous pouvez également utiliser```pour encadrer un morceau de code, et spécifier un langage (ou non) :
``` Multi-line code content Can contain blank lines Keep original indentation ```

Les triples backticks (```) sont la syntaxe de bloc de code la plus couramment utilisée, prenant en charge la coloration syntaxique et l'affichage de code multiligne.
```javascript
$(document).ready(function () {
alert('EXAMPLE');
});
```
Le résultat affiché est le suivant :

Notes :
- Les blocs de code indentés nécessitent des lignes vides avant et après pour les séparer
- Toutes les lignes de code doivent maintenir une indentation constante
- Aucune coloration syntaxique prise en charge
- En cas d'utilisation dans une liste, une indentation de 8 espaces est requise
Identificateurs de langage et coloration syntaxique
Ajouter un identificateur de langage après les triples accents graves peut activer la coloration syntaxique.
Liste des identificateurs de langage courants :
javascript/js- JavaScriptpython/py- Pythonhtml- HTMLcss- CSSsql- SQLjson- JSONxml- XMLyaml/yml- YAMLbash/shell- Shell scriptjava- Javacpp/c++- C++csharp/c#- C#php- PHPruby/rb- Rubygo- Langage Gorust- Rusttypescript/ts- TypeScript
JavaScript :
```javascript
const users = [
{ name: "Alice", age: 25 },
{ name: "Bob", age: 30 }
];
const adults = users.filter(user => user.age >= 18);
console.log(adults);
```
Python :
```python
def calculate_area(radius):
"""计算圆的面积"""
import math
return math.pi * radius ** 2
# 使用函数
area = calculate_area(5)
print(f"圆的面积是: {area:.2f}")
```
SQL :
```sql SELECT u.name, u.email, COUNT(o.id) as order_count FROM users u LEFT JOIN orders o ON u.id = o.user_id WHERE u.created_at >= '2024-01-01' GROUP BY u.id, u.name, u.email ORDER BY order_count DESC LIMIT 10; ```

Fonctionnalités avancées des blocs de code
Affichage des numéros de ligne
Certains moteurs de rendu Markdown prennent en charge l'affichage des numéros de ligne, mis en œuvre au moyen d'une syntaxe ou d'une configuration spécifique.
Exemple de syntaxe (partiellement pris en charge) :
```javascript {.line-numbers}
function fibonacci(n) {
if (n <= 1) return n;
return fibonacci(n - 1) + fibonacci(n - 2);
}
console.log(fibonacci(10));
```
Ou utilisez :
```javascript showLineNumbers
const numbers = [1, 2, 3, 4, 5];
const doubled = numbers.map(x => x * 2);
const sum = doubled.reduce((a, b) => a + b, 0);
console.log(`总和: ${sum}`);
```
Comparaison de diff de code
Utilisé pour afficher les ajouts, suppressions ou modifications de code, souvent utilisé pour montrer les changements dans le contrôle de version.
Syntaxe du diff :
```diff
function calculateTotal(items) {
- let total = 0;
+ let total = 0.0;
for (let item of items) {
- total += item.price;
+ total += parseFloat(item.price);
}
+ // 保留两位小数
+ total = Math.round(total * 100) / 100;
return total;
}
```

Affichage de diff de style Git :
```diff
@@ -1,5 +1,8 @@
function greetUser(name) {
- console.log("Hello " + name);
+ if (!name) {
+ throw new Error("Name is required");
+ }
+ console.log(`Hello, ${name}!`);
}
```Comparaison de diff spécifique au langage :
```javascript
// 之前的代码
const oldFunction = () => {
var x = 10; // ❌ 使用 var
console.log("Value: " + x); // ❌ 字符串拼接
}
// 改进后的代码
const newFunction = () => {
const x = 10; // ✅ 使用 const
console.log(`Value: ${x}`); // ✅ 模板字符串
}
```
